]> git.saurik.com Git - apple/security.git/blob - AppleCSP/AES/boxes-ref.h
Security-28.tar.gz
[apple/security.git] / AppleCSP / AES / boxes-ref.h
1 /*
2 * Copyright (c) 2000-2001 Apple Computer, Inc. All Rights Reserved.
3 *
4 * The contents of this file constitute Original Code as defined in and are
5 * subject to the Apple Public Source License Version 1.2 (the 'License').
6 * You may not use this file except in compliance with the License. Please obtain
7 * a copy of the License at http://www.apple.com/publicsource and read it before
8 * using this file.
9 *
10 * This Original Code and all software distributed under the License are
11 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS
12 * OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, INCLUDING WITHOUT
13 * LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
14 * PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT. Please see the License for the
15 * specific language governing rights and limitations under the License.
16 */
17
18
19 #ifndef _AES_BOXES_H_
20 #define _AES_BOXES_H_
21
22 #include "rijndael-alg-ref.h"
23
24 #ifdef __cplusplus
25 extern "C" {
26 #endif
27
28 #define AES_MUL_BY_LOOKUP 1
29
30 #if AES_MUL_BY_LOOKUP
31 extern const word8 mulBy0x02[256];
32 extern const word8 mulBy0x03[256];
33 extern const word8 mulBy0x0e[256];
34 extern const word8 mulBy0x0b[256];
35 extern const word8 mulBy0x0d[256];
36 extern const word8 mulBy0x09[256];
37 #else
38 extern const unsigned char Logtable[256];
39 extern const unsigned char Alogtable[256];
40 #endif /* AES_MUL_BY_LOOKUP */
41
42 extern const unsigned char S[256];
43 extern const unsigned char Si[256];
44 extern const unsigned char iG[4][4];
45 extern const unsigned long rcon[30];
46
47 #ifdef __cplusplus
48 }
49 #endif
50
51 #endif /* _AES_BOXES_H_ */