ige method
The Infinite Garble Extension (IGE) mode is specifically designed to provide error propagation, which is useful in certain cryptographic applications.
Error propagation is designed so that a single-bit error in the ciphertext affects all subsequent blocks during decryption. It is possible due to the usage of unique Initialization Vector (IV) for each pass.
Parameters:
iv
(initialization vector) is the random 16-byte salt.
+----------------------------------------------+
| IV1 (Key) IV2 |
| | | | |
| v v V |
PT1 ---> (XOR) ---> [AES] ---> (XOR) ---> CT1 |
_______________________________| |
| |
| (Key) ______________|
| | |
v v v
PT2 ---> (XOR) ---> [AES] ---> (XOR) ---> CT2
Implementation
AESInIGEMode ige(List<int> iv) => AESInIGEMode(
key,
iv: iv,
padding: padding,
);