xref: /minix3/minix/drivers/system/random/aes/rijndael-alg.h (revision 433d6423c39e34ec4b79c950597bb2d236f886be)
1 /*
2  * rijndael-alg.h   v2.4   April '2000
3  *
4  * Optimised ANSI C code
5  */
6 
7 #ifndef __RIJNDAEL_ALG_H
8 #define __RIJNDAEL_ALG_H
9 
10 #define MAXKC			(256/32)
11 #define MAXROUNDS		14
12 
13 /* Fix me: something generic based on inttypes.h */
14 #include "word_i386.h"
15 
16 int rijndael_KeySched(word8 k[MAXKC][4], word8 rk[MAXROUNDS+1][4][4], int ROUNDS);
17 
18 int rijndael_KeyEncToDec(word8 W[MAXROUNDS+1][4][4], int ROUNDS);
19 
20 int rijndael_Encrypt(const void *a, void *b, word8 rk[MAXROUNDS+1][4][4], int ROUNDS);
21 
22 #ifdef INTERMEDIATE_VALUE_KAT
23 int rijndaelEncryptRound(word8 a[4][4], word8 rk[MAXROUNDS+1][4][4], int ROUNDS, int rounds);
24 #endif /* INTERMEDIATE_VALUE_KAT */
25 
26 int rijndael_Decrypt(const void *a, void *b, word8 rk[MAXROUNDS+1][4][4], int ROUNDS);
27 
28 #ifdef INTERMEDIATE_VALUE_KAT
29 int rijndaelDecryptRound(word8 a[4][4], word8 rk[MAXROUNDS+1][4][4], int ROUNDS, int rounds);
30 #endif /* INTERMEDIATE_VALUE_KAT */
31 
32 #endif /* __RIJNDAEL_ALG_H */
33 
34 /*
35  * $PchId: rijndael-alg.h,v 1.3 2003/09/29 09:19:17 philip Exp $
36  */
37