SymmetricAlgorithm.IV Vlastnost

Definice

Získá nebo nastaví inicializační vektor ( IV ) pro symetrický algoritmus.

public:
 virtual property cli::array <System::Byte> ^ IV { cli::array <System::Byte> ^ get(); void set(cli::array <System::Byte> ^ value); };
public virtual byte[] IV { get; set; }
member this.IV : byte[] with get, set
Public Overridable Property IV As Byte()

Hodnota vlastnosti

Byte[]

Inicializační vektor.

Výjimky

Byl proveden pokus o nastavení vektoru inicializace na hodnotu null .

Byl proveden pokus o nastavení vektoru inicializace na neplatnou velikost.

Poznámky

IVVlastnost je automaticky nastavena na novou náhodnou hodnotu při každém vytvoření nové instance jedné z SymmetricAlgorithm tříd nebo při ručním volání GenerateIV metody. Velikost IV vlastnosti musí být stejná jako BlockSize vlastnost dělená 8.

Třídy, které jsou odvozeny z SymmetricAlgorithm třídy, používají režim zřetězení označovaný jako CBC (Cipher Block Chaining), který vyžaduje klíč a inicializační vektor k provádění kryptografických transformací pro data. Chcete-li dešifrovat data zašifrovaná pomocí jedné ze SymmetricAlgorithm tříd, je nutné nastavit Key vlastnost a IV vlastnost na stejné hodnoty, které byly použity pro šifrování.

Pro daný tajný klíč k, jednoduchá bloková šifra, která nepoužívá inicializační vektor, zašifruje stejný vstupní blok prostého textu do stejného výstupního bloku textu šifry. Pokud máte v rámci datového proudu s prostým textem duplicitní bloky, budete mít v šifrovacím streamu textu duplicitní bloky. Pokud neautorizovaní uživatelé znají něco o struktuře bloku s prostým textem, můžou tyto informace použít k dekódování známého bloku šifrovaných textů a pravděpodobně obnovení klíče. Pro boj proti tomuto problému jsou informace z předchozího bloku smíchány do procesu šifrování dalšího bloku. Proto se výstup dvou stejných bloků prostého textu liší. Vzhledem k tomu, že tato technika používá předchozí blok k zašifrování dalšího bloku, je pro šifrování prvního bloku dat nutný inicializační vektor.

Platí pro

Viz také