4 #include "AES_config.h"
65 byte
set_key (byte key[],
int keylen) ;
94 byte
encrypt (byte plain [N_BLOCK], byte cipher [N_BLOCK]) ;
105 byte
cbc_encrypt (byte * plain, byte * cipher,
int n_block, byte
iv [N_BLOCK]) ;
115 byte
cbc_encrypt (byte * plain, byte * cipher,
int n_block) ;
130 byte
decrypt (byte cipher [N_BLOCK], byte plain [N_BLOCK]) ;
141 byte
cbc_decrypt (byte * cipher, byte * plain,
int n_block, byte
iv [N_BLOCK]) ;
151 byte
cbc_decrypt (byte * cipher, byte * plain,
int n_block) ;
160 void set_IV(
unsigned long long int IVCl);
231 void printArray(byte output[],
bool p_pad =
true);
252 void do_aes_encrypt(byte *plain,
int size_p,byte *cipher,byte *key,
int bits, byte ivl [N_BLOCK]);
263 void do_aes_encrypt(byte *plain,
int size_p,byte *cipher,byte *key,
int bits);
275 void do_aes_decrypt(byte *cipher,
int size_c,byte *plain,byte *key,
int bits, byte ivl [N_BLOCK]);
286 void do_aes_decrypt(byte *cipher,
int size_c,byte *plain,byte *key,
int bits);
288 #if defined(AES_LINUX)
299 unsigned long long int IVC;
303 #if defined(AES_LINUX)
307 byte arr_pad[15] = { 0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,0x0a,0x0b,0x0c,0x0d,0x0e,0x0f };
bool CheckPad(byte *in, int size)
Definition: AES.cpp:507
void do_aes_encrypt(byte *plain, int size_p, byte *cipher, byte *key, int bits, byte ivl[N_BLOCK])
Definition: AES.cpp:552
byte cbc_decrypt(byte *cipher, byte *plain, int n_block, byte iv[N_BLOCK])
Definition: AES.cpp:413
byte key_sched[KEY_SCHEDULE_BYTES]
Definition: AES.h:298
byte encrypt(byte plain[N_BLOCK], byte cipher[N_BLOCK])
Definition: AES.cpp:335
unsigned long long int IVC
Definition: AES.h:299
void do_aes_decrypt(byte *cipher, int size_c, byte *plain, byte *key, int bits, byte ivl[N_BLOCK])
Definition: AES.cpp:574
byte decrypt(byte cipher[N_BLOCK], byte plain[N_BLOCK])
Definition: AES.cpp:390
void iv_inc()
Definition: AES.cpp:457
void clean()
Definition: AES.cpp:310
double millis()
Definition: AES.cpp:594
byte arr_pad[15]
Definition: AES.h:305
void padPlaintext(void *in, byte *out)
Definition: AES.cpp:497
timeval tv
Definition: AES.h:304
byte iv[16]
Definition: AES.h:300
void calc_size_n_pad(int p_size)
Definition: AES.cpp:485
int size
Definition: AES.h:302
void set_IV(unsigned long long int IVCl)
Definition: AES.cpp:449
int pad
Definition: AES.h:301
void get_IV(byte *out)
Definition: AES.cpp:478
int round
Definition: AES.h:297
void set_size(int sizel)
Definition: AES.cpp:471
int get_size()
Definition: AES.cpp:465
void copy_n_bytes(byte *AESt, byte *src, byte n)
Definition: AES.cpp:319
void printArray(byte output[], bool p_pad=true)
Definition: AES.cpp:523
AES()
AES constructor.
Definition: AES.cpp:231
byte set_key(byte key[], int keylen)
Definition: AES.cpp:254
byte cbc_encrypt(byte *plain, byte *cipher, int n_block, byte iv[N_BLOCK])
Definition: AES.cpp:358