00001
00002
00003 #include "pch.h"
00004
00005 #ifndef CRYPTOPP_IMPORTS
00006
00007 #include "rijndael.h"
00008
00009
00010
00011
00012 void Rijndael_VC60Workaround()
00013 {
00014 }
00015
00016 NAMESPACE_BEGIN(CryptoPP)
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 const byte Rijndael::Base::Se[256] = {
00031 0x63, 0x7c, 0x77, 0x7b,
00032 0xf2, 0x6b, 0x6f, 0xc5,
00033 0x30, 0x01, 0x67, 0x2b,
00034 0xfe, 0xd7, 0xab, 0x76,
00035 0xca, 0x82, 0xc9, 0x7d,
00036 0xfa, 0x59, 0x47, 0xf0,
00037 0xad, 0xd4, 0xa2, 0xaf,
00038 0x9c, 0xa4, 0x72, 0xc0,
00039 0xb7, 0xfd, 0x93, 0x26,
00040 0x36, 0x3f, 0xf7, 0xcc,
00041 0x34, 0xa5, 0xe5, 0xf1,
00042 0x71, 0xd8, 0x31, 0x15,
00043 0x04, 0xc7, 0x23, 0xc3,
00044 0x18, 0x96, 0x05, 0x9a,
00045 0x07, 0x12, 0x80, 0xe2,
00046 0xeb, 0x27, 0xb2, 0x75,
00047 0x09, 0x83, 0x2c, 0x1a,
00048 0x1b, 0x6e, 0x5a, 0xa0,
00049 0x52, 0x3b, 0xd6, 0xb3,
00050 0x29, 0xe3, 0x2f, 0x84,
00051 0x53, 0xd1, 0x00, 0xed,
00052 0x20, 0xfc, 0xb1, 0x5b,
00053 0x6a, 0xcb, 0xbe, 0x39,
00054 0x4a, 0x4c, 0x58, 0xcf,
00055 0xd0, 0xef, 0xaa, 0xfb,
00056 0x43, 0x4d, 0x33, 0x85,
00057 0x45, 0xf9, 0x02, 0x7f,
00058 0x50, 0x3c, 0x9f, 0xa8,
00059 0x51, 0xa3, 0x40, 0x8f,
00060 0x92, 0x9d, 0x38, 0xf5,
00061 0xbc, 0xb6, 0xda, 0x21,
00062 0x10, 0xff, 0xf3, 0xd2,
00063 0xcd, 0x0c, 0x13, 0xec,
00064 0x5f, 0x97, 0x44, 0x17,
00065 0xc4, 0xa7, 0x7e, 0x3d,
00066 0x64, 0x5d, 0x19, 0x73,
00067 0x60, 0x81, 0x4f, 0xdc,
00068 0x22, 0x2a, 0x90, 0x88,
00069 0x46, 0xee, 0xb8, 0x14,
00070 0xde, 0x5e, 0x0b, 0xdb,
00071 0xe0, 0x32, 0x3a, 0x0a,
00072 0x49, 0x06, 0x24, 0x5c,
00073 0xc2, 0xd3, 0xac, 0x62,
00074 0x91, 0x95, 0xe4, 0x79,
00075 0xe7, 0xc8, 0x37, 0x6d,
00076 0x8d, 0xd5, 0x4e, 0xa9,
00077 0x6c, 0x56, 0xf4, 0xea,
00078 0x65, 0x7a, 0xae, 0x08,
00079 0xba, 0x78, 0x25, 0x2e,
00080 0x1c, 0xa6, 0xb4, 0xc6,
00081 0xe8, 0xdd, 0x74, 0x1f,
00082 0x4b, 0xbd, 0x8b, 0x8a,
00083 0x70, 0x3e, 0xb5, 0x66,
00084 0x48, 0x03, 0xf6, 0x0e,
00085 0x61, 0x35, 0x57, 0xb9,
00086 0x86, 0xc1, 0x1d, 0x9e,
00087 0xe1, 0xf8, 0x98, 0x11,
00088 0x69, 0xd9, 0x8e, 0x94,
00089 0x9b, 0x1e, 0x87, 0xe9,
00090 0xce, 0x55, 0x28, 0xdf,
00091 0x8c, 0xa1, 0x89, 0x0d,
00092 0xbf, 0xe6, 0x42, 0x68,
00093 0x41, 0x99, 0x2d, 0x0f,
00094 0xb0, 0x54, 0xbb, 0x16,
00095 };
00096
00097 const byte Rijndael::Base::Sd[256] = {
00098 0x52, 0x09, 0x6a, 0xd5,
00099 0x30, 0x36, 0xa5, 0x38,
00100 0xbf, 0x40, 0xa3, 0x9e,
00101 0x81, 0xf3, 0xd7, 0xfb,
00102 0x7c, 0xe3, 0x39, 0x82,
00103 0x9b, 0x2f, 0xff, 0x87,
00104 0x34, 0x8e, 0x43, 0x44,
00105 0xc4, 0xde, 0xe9, 0xcb,
00106 0x54, 0x7b, 0x94, 0x32,
00107 0xa6, 0xc2, 0x23, 0x3d,
00108 0xee, 0x4c, 0x95, 0x0b,
00109 0x42, 0xfa, 0xc3, 0x4e,
00110 0x08, 0x2e, 0xa1, 0x66,
00111 0x28, 0xd9, 0x24, 0xb2,
00112 0x76, 0x5b, 0xa2, 0x49,
00113 0x6d, 0x8b, 0xd1, 0x25,
00114 0x72, 0xf8, 0xf6, 0x64,
00115 0x86, 0x68, 0x98, 0x16,
00116 0xd4, 0xa4, 0x5c, 0xcc,
00117 0x5d, 0x65, 0xb6, 0x92,
00118 0x6c, 0x70, 0x48, 0x50,
00119 0xfd, 0xed, 0xb9, 0xda,
00120 0x5e, 0x15, 0x46, 0x57,
00121 0xa7, 0x8d, 0x9d, 0x84,
00122 0x90, 0xd8, 0xab, 0x00,
00123 0x8c, 0xbc, 0xd3, 0x0a,
00124 0xf7, 0xe4, 0x58, 0x05,
00125 0xb8, 0xb3, 0x45, 0x06,
00126 0xd0, 0x2c, 0x1e, 0x8f,
00127 0xca, 0x3f, 0x0f, 0x02,
00128 0xc1, 0xaf, 0xbd, 0x03,
00129 0x01, 0x13, 0x8a, 0x6b,
00130 0x3a, 0x91, 0x11, 0x41,
00131 0x4f, 0x67, 0xdc, 0xea,
00132 0x97, 0xf2, 0xcf, 0xce,
00133 0xf0, 0xb4, 0xe6, 0x73,
00134 0x96, 0xac, 0x74, 0x22,
00135 0xe7, 0xad, 0x35, 0x85,
00136 0xe2, 0xf9, 0x37, 0xe8,
00137 0x1c, 0x75, 0xdf, 0x6e,
00138 0x47, 0xf1, 0x1a, 0x71,
00139 0x1d, 0x29, 0xc5, 0x89,
00140 0x6f, 0xb7, 0x62, 0x0e,
00141 0xaa, 0x18, 0xbe, 0x1b,
00142 0xfc, 0x56, 0x3e, 0x4b,
00143 0xc6, 0xd2, 0x79, 0x20,
00144 0x9a, 0xdb, 0xc0, 0xfe,
00145 0x78, 0xcd, 0x5a, 0xf4,
00146 0x1f, 0xdd, 0xa8, 0x33,
00147 0x88, 0x07, 0xc7, 0x31,
00148 0xb1, 0x12, 0x10, 0x59,
00149 0x27, 0x80, 0xec, 0x5f,
00150 0x60, 0x51, 0x7f, 0xa9,
00151 0x19, 0xb5, 0x4a, 0x0d,
00152 0x2d, 0xe5, 0x7a, 0x9f,
00153 0x93, 0xc9, 0x9c, 0xef,
00154 0xa0, 0xe0, 0x3b, 0x4d,
00155 0xae, 0x2a, 0xf5, 0xb0,
00156 0xc8, 0xeb, 0xbb, 0x3c,
00157 0x83, 0x53, 0x99, 0x61,
00158 0x17, 0x2b, 0x04, 0x7e,
00159 0xba, 0x77, 0xd6, 0x26,
00160 0xe1, 0x69, 0x14, 0x63,
00161 0x55, 0x21, 0x0c, 0x7d,
00162 };
00163
00164 const word32 Rijndael::Base::rcon[] = {
00165 0x01000000, 0x02000000, 0x04000000, 0x08000000,
00166 0x10000000, 0x20000000, 0x40000000, 0x80000000,
00167 0x1B000000, 0x36000000,
00168 };
00169
00170 NAMESPACE_END
00171
00172 #endif