67 #define _MAX_KEY_COLUMNS (256 / 32) 68 #define _MAX_ROUNDS 14 69 #define MAX_IV_SIZE 16 77 #define RIJNDAEL_SUCCESS 0 78 #define RIJNDAEL_UNSUPPORTED_MODE -1 79 #define RIJNDAEL_UNSUPPORTED_DIRECTION -2 80 #define RIJNDAEL_UNSUPPORTED_KEY_LENGTH -3 81 #define RIJNDAEL_BAD_KEY -4 82 #define RIJNDAEL_NOT_INITIALIZED -5 83 #define RIJNDAEL_BAD_DIRECTION -6 84 #define RIJNDAEL_CORRUPTED_DATA -7 123 Direction m_direction;
124 uint8_t m_initVector[MAX_IV_SIZE];
126 uint8_t m_expandedKey[_MAX_ROUNDS + 1][4][4];
147 int init(Mode mode, Direction dir,
const uint8_t *key, KeyLength keyLen, uint8_t *initVector = 0);
155 int blockEncrypt(
const uint8_t *input,
int inputLen, uint8_t *outBuffer);
161 int padEncrypt(
const uint8_t *input,
int inputOctets, uint8_t *outBuffer);
166 int blockDecrypt(
const uint8_t *input,
int inputLen, uint8_t *outBuffer);
171 int padDecrypt(
const uint8_t *input,
int inputOctets, uint8_t *outBuffer);
174 void keySched(uint8_t key[_MAX_KEY_COLUMNS][4]);
176 void encrypt(
const uint8_t a[16], uint8_t b[16]);
177 void decrypt(
const uint8_t a[16], uint8_t b[16]);
180 #endif // _RIJNDAEL_H_ Definition: apps/elftosb/common/rijndael.h:86