AesCryptoServiceProvider.IV Özellik
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Simetrik algoritma için başlatma vektörlerini (IV) alır veya ayarlar.
public:
virtual property cli::array <System::Byte> ^ IV { cli::array <System::Byte> ^ get(); void set(cli::array <System::Byte> ^ value); };
public override byte[] IV { get; set; }
member this.IV : byte[] with get, set
Public Overrides Property IV As Byte()
Özellik Değeri
Başlatma vektöru.
Özel durumlar
Başlatma vektöru null
olarak ayarlı bir girişimde bulunuldu.
Başlatma vektörunu geçersiz bir boyuta ayarlama girişiminde bulunuldu.
Açıklamalar
Sınıflardan IV birinin SymmetricAlgorithm yeni bir örneğini her oluşturduğunuzda veya yöntemini el ile çağırdığınızda özelliği otomatik olarak yeni bir rastgele değere GenerateIV ayarlanır. Özelliğin IV boyutu, özelliğin 8'e bölünmesi BlockSize ile aynı olmalıdır.
sınıfından SymmetricAlgorithm türetilen sınıflar, veriler üzerinde şifreleme dönüştürmeleri gerçekleştirmek için anahtar ve başlatma vektörü gerektiren şifreleme bloğu zincirleme (CBC) adlı bir zincirleme modunu kullanır. Sınıflardan biri SymmetricAlgorithm kullanılarak şifrelenen verilerin şifresini çözmek için, özelliği ve IV özelliğini şifreleme için kullanılan değerlere ayarlamanız Key gerekir.
Belirli bir gizli anahtar k için, başlatma vektörü kullanmayan basit bir blok şifrelemesi, aynı düz metin giriş bloğunu aynı şifre metni çıkış bloğuna şifreler. Düz metin akışınızda yinelenen bloklarınız varsa, şifre metin akışınızda yinelenen bloklarınız olur. Yetkisiz kullanıcılar düz metin bloğunuzun yapısı hakkında herhangi bir şey biliyorsa, bilinen şifre metin bloğunu çözmek ve anahtarınızı kurtarmak için bu bilgileri kullanabilirler. Bu sorunla mücadele etmek için, önceki blokta yer alan bilgiler bir sonraki bloğu şifreleme işlemiyle karıştırılır. Bu nedenle, iki özdeş düz metin bloğunun çıkışı farklıdır. Bu teknik bir sonraki bloğu şifrelemek için önceki bloğu kullandığından, ilk veri bloğunu şifrelemek için bir başlatma vektörünün olması gerekir.