AES-192 decryption class (running in Cipher Block Chaining mode) More...
#include <aes192_decrypt.h>
| Public Member Functions | |
| AES192_Decrypt () | |
| Constructs a AES-192 generator (running in Cipher Block Chaining mode) | |
| void | add (const DataBuffer &data) | 
| Add data to be decrypted. | |
| void | add (const void *data, int size) | 
| Adds data to be decrypted. | |
| bool | calculate () | 
| Finalize decryption. | |
| DataBuffer | get_data () const | 
| Get decrypted data. | |
| void | reset () | 
| Resets the decryption. | |
| void | set_iv (const unsigned char iv[iv_size]) | 
| Sets the initialisation vector. | |
| void | set_key (const unsigned char key[key_size]) | 
| Sets the cipher key. | |
| void | set_padding (bool value=true, bool use_pkcs7=true) | 
| Enable AES Padding. | |
| Static Public Attributes | |
| static const int | iv_size = 16 | 
| static const int | key_size = 24 | 
AES-192 decryption class (running in Cipher Block Chaining mode)
| clan::AES192_Decrypt::AES192_Decrypt | ( | ) | 
Constructs a AES-192 generator (running in Cipher Block Chaining mode)
| void clan::AES192_Decrypt::add | ( | const DataBuffer & | data | ) | 
Add data to be decrypted.
| data | = Data Buffer | 
| void clan::AES192_Decrypt::add | ( | const void * | data, | 
| int | size ) | 
Adds data to be decrypted.
| bool clan::AES192_Decrypt::calculate | ( | ) | 
Finalize decryption.
IMPORTANT, to avoid timing attacks, if this function fails, you should still validate the data (via a hash or otherwise), then throw an error
| DataBuffer clan::AES192_Decrypt::get_data | ( | ) | const | 
Get decrypted data.
This is the databuffer used internally to store the decrypted data. You may call "set_size()" to clear the buffer, inbetween calls to "add()" You may call "set_capacity()" to optimise storage requirements before the add() call
| void clan::AES192_Decrypt::reset | ( | ) | 
Resets the decryption.
| void clan::AES192_Decrypt::set_iv | ( | const unsigned char | iv[iv_size] | ) | 
Sets the initialisation vector.
This should be a random number
This must be called before the initial add() 
| void clan::AES192_Decrypt::set_key | ( | const unsigned char | key[key_size] | ) | 
Sets the cipher key.
This must be called before the initial add()
| void clan::AES192_Decrypt::set_padding | ( | bool | value = true, | 
| bool | use_pkcs7 = true ) | 
Enable AES Padding.
Example (use_pkcs7==true) : ... 0x03 0x03 0x03 (3 octets of padding) Example (use_pkcs7==false) : ... 0x02 0x02 0x02 (3 octets of padding, the last octet is the length)
| value | = true = Enable padding (default) | 
| use_pkcs7 | = true = This uses the PKCS#7/RFC3369 method (Enabled by default). false = use the TLS method (rfc2246) | 
| 
 | static | 
| 
 | static |