symm/eax.h, symm/eax-def.h: Implement the EAX authenticated encryption mode.
[catacomb] / symm / t / blowfish
CommitLineData
d03ab969 1# Test vectors for Blowfish
d03ab969 2
3blowfish {
9eff9dad 4
5 # --- Main block cipher ---
6 #
7 # Taken from Bruce Schneier's web pages, I think...
8
d03ab969 9 0000000000000000 0000000000000000 4ef997456198dd78;
10 ffffffffffffffff ffffffffffffffff 51866fd5b85ecb8a;
11 3000000000000000 1000000000000001 7d856f9a613063f2;
12 1111111111111111 1111111111111111 2466dd878b963c9d;
13 0123456789abcdef 1111111111111111 61f9c3802281b096;
14 1111111111111111 0123456789abcdef 7d0cc630afda1ec7;
15 0000000000000000 0000000000000000 4ef997456198dd78;
16 fedcba9876543210 0123456789abcdef 0aceab0fc6a0a28d;
17 7ca110454a1a6e57 01a1d6d039776742 59c68245eb05282b;
18 0131d9619dc1376e 5cd54ca83def57da b1b8cc0b250f09a0;
19 07a1133e4a0b2686 0248d43806f67172 1730e5778bea1da4;
20 3849674c2602319e 51454b582ddf440a a25e7856cf2651eb;
21 04b915ba43feb5b6 42fd443059577fa2 353882b109ce8f1a;
22 0113b970fd34f2ce 059b5e0851cf143a 48f4d0884c379918;
23 0170f175468fb5e6 0756d8e0774761d2 432193b78951fc98;
24 43297fad38e373fe 762514b829bf486a 13f04154d69d1ae5;
25 07a7137045da2a16 3bdd119049372802 2eedda93ffd39c79;
26 04689104c2fd3b2f 26955f6835af609a d887e0393c2da6e3;
27 37d06bb516cb7546 164d5e404f275232 5f99d04f5b163969;
28 1f08260d1ac2465e 6b056e18759f5cca 4a057a3b24d3977b;
29 584023641aba6176 004bd6ef09176062 452031c1e4fada8e;
30 025816164629b007 480d39006ee762f2 7555ae39f59b87bd;
31 49793ebc79b3258f 437540c8698f3cfa 53c55f9cb49fc019;
32 4fb05e1515ab73a7 072d43a077075292 7a8e7bfa937e89a3;
33 49e95d6d4ca229bf 02fe55778117f12a cf9c5d7a4986adb5;
34 018310dc409b26d6 1d9d5c5018f728c2 d1abb290658bc778;
35 1c587f1c13924fef 305532286d6f295a 55cb3774d13ef201;
36 0101010101010101 0123456789abcdef fa34ec4847b268b2;
37 1f1f1f1f0e0e0e0e 0123456789abcdef a790795108ea3cae;
38 e0fee0fef1fef1fe 0123456789abcdef c39e072d9fac631d;
39 0000000000000000 ffffffffffffffff 014933e0cdaff6e4;
40 ffffffffffffffff 0000000000000000 f21e9a77b71c49bc;
41 0123456789abcdef 0000000000000000 245946885754369a;
42 fedcba9876543210 ffffffffffffffff 6b5c5a9c5d9e0a5a;
d03ab969 43
9eff9dad 44 # --- Key schedule test ---
45 #
46 # From wherever the previous tests came from.
d03ab969 47
45c0fd36 48 f0
d03ab969 49 fedcba9876543210 f9ad597c49db005e;
50
45c0fd36 51 f0e1
d03ab969 52 fedcba9876543210 e91d21c1d961a6d6;
53
45c0fd36 54 f0e1d2
d03ab969 55 fedcba9876543210 e9c2b70a1bc65cf3;
56
45c0fd36 57 f0e1d2c3
d03ab969 58 fedcba9876543210 be1e639408640f05;
59
45c0fd36 60 f0e1d2c3b4
d03ab969 61 fedcba9876543210 b39e44481bdb1e6e;
62
45c0fd36 63 f0e1d2c3b4a5
d03ab969 64 fedcba9876543210 9457aa83b1928c0d;
65
45c0fd36 66 f0e1d2c3b4a596
d03ab969 67 fedcba9876543210 8bb77032f960629d;
68
45c0fd36 69 f0e1d2c3b4a59687
d03ab969 70 fedcba9876543210 e87a244e2cc85e82;
71
45c0fd36 72 f0e1d2c3b4a5968778
d03ab969 73 fedcba9876543210 15750e7a4f4ec577;
74
45c0fd36 75 f0e1d2c3b4a596877869
d03ab969 76 fedcba9876543210 122ba70b3ab64ae0;
77
45c0fd36 78 f0e1d2c3b4a5968778695a
d03ab969 79 fedcba9876543210 3a833c9affc537f6;
80
45c0fd36 81 f0e1d2c3b4a5968778695a4b
d03ab969 82 fedcba9876543210 9409da87a90f6bf2;
83
45c0fd36 84 f0e1d2c3b4a5968778695a4b3c
d03ab969 85 fedcba9876543210 884f80625060b8b4;
86
45c0fd36 87 f0e1d2c3b4a5968778695a4b3c2d
d03ab969 88 fedcba9876543210 1f85031c19e11968;
89
45c0fd36 90 f0e1d2c3b4a5968778695a4b3c2d1e
d03ab969 91 fedcba9876543210 79d9373a714ca34f;
92
45c0fd36 93 f0e1d2c3b4a5968778695a4b3c2d1e0f
d03ab969 94 fedcba9876543210 93142887ee3be15c;
95
45c0fd36 96 f0e1d2c3b4a5968778695a4b3c2d1e0f00
d03ab969 97 fedcba9876543210 03429e838ce2d14b;
98
45c0fd36 99 f0e1d2c3b4a5968778695a4b3c2d1e0f0011
d03ab969 100 fedcba9876543210 a4299e27469ff67b;
101
45c0fd36 102 f0e1d2c3b4a5968778695a4b3c2d1e0f001122
d03ab969 103 fedcba9876543210 afd5aed1c1bc96a8;
104
45c0fd36 105 f0e1d2c3b4a5968778695a4b3c2d1e0f00112233
d03ab969 106 fedcba9876543210 10851c0e3858da9f;
107
45c0fd36 108 f0e1d2c3b4a5968778695a4b3c2d1e0f0011223344
d03ab969 109 fedcba9876543210 e6f51ed79b9db21f;
110
45c0fd36 111 f0e1d2c3b4a5968778695a4b3c2d1e0f001122334455
d03ab969 112 fedcba9876543210 64a6e14afd36b46f;
113
45c0fd36 114 f0e1d2c3b4a5968778695a4b3c2d1e0f00112233445566
d03ab969 115 fedcba9876543210 80c7d7d45a5479ad;
116
117 f0e1d2c3b4a5968778695a4b3c2d1e0f0011223344556677
118 fedcba9876543210 05044b62fa52d080;
d03ab969 119}
ea054059
MW
120
121blowfish-cmac {
122 60d7bcda163547d348b7551195e77022907dd1dff7dac5c9941d26d0c6eb14ad568f86edd1dc9268eeee533285a6ed810c9b689daaa906
123 ""
124 233f464f6f4fed40;
125 0d2d4b6003062365b0a54364c76c160f11896c4794846ecfa14a7130c9f137120634c9519848a877ff77bf79192a5b50ade5d9cd739a3d
126 1f
127 f80086d1f74c3c25;
128 337f29549e6b0d27a4ba234085406a6136512061f7080cc07df0591d8fa21f2dd88374d8cde8e160ad10997a21635c6d62c9269029df3e
129 6057acc87638f508046733d9ff61cdbda3b3e9878731ebfe
130 88141768f1834980;
131 dd4705e505da1435dceaa7b1cc49ae1d50c38201a894476b3f102b752eb9529533966f27043eb621b7f65b000961040ef2f9b2fc5fa450
132 727a9b542cde52ebfda19d0ccc520f215eb57b
133 8b2e3c8554c039c5;
134 b3a4f3ebbbb18ac6c95a97
135 ""
136 992c2d7bae553fa1;
137 a48030370c33d090c54215
138 ab
139 3ef759021e0bd2c2;
140 d6b3ad54efc9a38378c5b9
141 3bf4f2aad2605faee2b03fb648e27fff63102758fe2b69ac
142 7ef83257367f4dcf;
143 26afa3349829b94586306f
144 ed54154f8f28523c03d4de1600157846b710ee
145 595b0c57e4ecd664;
146 72807a2219
147 ""
148 c17ded27f35e843b;
149 bfb474fd71
150 d8
151 063d632b053cfb61;
152 91f24bb65d
153 1563259f9eb53b571ea629c54d57dd2d42f70800df9fcbac
154 aefe8538008cd029;
155 a48b77dba1
156 89196d1ebba10b0467cb9fc2712a199e533fa9
157 296073d2f0263834;
158 156308cdec3f768281e040a9b9a222bd689aef66f5306c
159 ""
160 fc5dcde84c290e8e;
161 eb0c6b08ac8b0a22260c571b4a42bb8fdb233bfa6a5cfb
162 0b
163 f0e70394d6b143c9;
164 ad7d95214ade49cb3b6f5fe8368131115c037ba323fe1d
165 c8151784873f0eb5b647da6794c18b5337685a96ed65b9ac
166 a9be9c5120820347;
167 a338527ef19b09c063c46f88de9fd41e72d7b97e23e6ea
168 bdff3bcd211499268878dbf30f1dad89d4b9b1
169 a54fb7e239aeec4c;
170}
2964c388
MW
171
172blowfish-eax {
173 60d7bcda163547d348b7551195e77022907dd1dff7dac5c9941d26d0c6eb14ad568f86edd1dc9268eeee533285a6ed810c9b689daaa906
174 ""
175 ""
176 ""
177 ""
178 a6e2fbebaf974200;
179 0d2d4b6003062365b0a54364c76c160f11896c4794846ecfa14a7130c9f137120634c9519848a877ff77bf79192a5b50ade5d9cd739a3d
180 1f
181 ""
182 ""
183 ""
184 4cc58c2f4cf91137;
185 337f29549e6b0d27a4ba234085406a6136512061f7080cc07df0591d8fa21f2dd88374d8cde8e160ad10997a21635c6d62c9269029df3e
186 ""
187 60
188 ""
189 ""
190 c35fc08fda46f599;
191 57acc87638f508046733d9ff61cdbda3b3e9878731ebfedd4705e505da1435dceaa7b1cc49ae1d50c38201a894476b3f102b752eb95295
192 ""
193 ""
194 33
195 9c
196 b7c0dcb87a8b86c9;
197 966f27043eb621b7f65b000961040ef2f9b2fc5fa450727a9b542cde52ebfda19d0ccc520f215eb57bb3a4f3ebbbb18ac6c95a97a48030
198 370c33d090c54215
199 abd6b3ad54efc9a38378c5b93bf4f2aad2605faee2b03fb6
200 48e27fff63102758fe2b69ac26afa3349829b94586306fed
201 783ab2ee6ea73b63906caf73ceb4376b2e9ebee34fc490c5
202 3fff7a36718ab82c;
203 54154f8f28523c03d4de1600157846b710ee72807a2219bfb474fd71d891f24bb65d1563259f9eb53b571ea629c54d57dd2d42f70800df
204 9fcbaca48b77db
205 a189196d1ebba10b0467cb9fc2712a199e533f
206 a9156308cdec3f768281e040a9b9a222bd689aef66f5306ceb0c6b08ac
207 43bfef92d8c8ba5641fb2523e92ef24d60a41da2e8bb3112aee7b80ce3
208 07ad2ca904227df7;
209 8b0a22260c571b4a42bb8f
210 ""
211 ""
212 ""
213 ""
214 bd94df689662060a;
215 db233bfa6a5cfb0bad7d95
216 21
217 ""
218 ""
219 ""
220 a43ffffe35e1b8a4;
221 4ade49cb3b6f5fe8368131
222 ""
223 11
224 ""
225 ""
226 d32da332498a6950;
227 5c037ba323fe1dc8151784
228 ""
229 ""
230 87
231 12
232 0943c4cb5e3fc7eb;
233 3f0eb5b647da6794c18b53
234 37685a96ed65b9ac
235 a338527ef19b09c063c46f88de9fd41e72d7b97e23e6eabd
236 ff3bcd211499268878dbf30f1dad89d4b9b12012e4713df4
237 aebee82a01e138a7229636ee0eb746f6ce13584936f56bb4
238 5bddd65c9a111ec7;
239 6795630e7952d22bb02d71
240 00b8b649377d20
241 a8f083455b663e4ee1315f3c8f2aebfa921451
242 dcd1af5813b70d30ce2f1fef6ef315d0798391805da08da3aefc5f8584
243 8a298eafedf8c1e183dfa50569cda59c9f93e56fde173e750e2fa185c7
244 78a05a55f474688a;
245 b7c5e61766
246 ""
247 ""
248 ""
249 ""
250 6e8da28b2d84682a;
251 9c0f16e398
252 15
253 ""
254 ""
255 ""
256 a6660ae3f78c52b7;
257 d4e9cfce3e
258 ""
259 d1
260 ""
261 ""
262 caa08d52fd0d87cf;
263 ecdf3d264a
264 ""
265 ""
266 7f
267 b7
268 af92632b8a903cfd;
269 16cb16c2e8
270 15f422cdf0c8e303
271 08be3c31e6bc58c0b7cadcb658b970e47479a684b5aefa69
272 a4cd52147ed12ca986981a874498ad0abef8bc4fcb70e27e
273 773aeb0f1ffbc8b9f0a642275761a79598ab37c4a531e157
274 7b4483789e1768fc;
275 98ef1f0446
276 b42fb144d44b6d
277 00f06dc188d472a784e0c6f21195a3b9f4ae98
278 5511265febd11c164720eef9eb1c8dd0b00951f284649016ed00456331
279 08d772c882d1d700f980b349e40c3cb563743f62b966fe38ce39831c37
280 62662279f37c6a9b;
281 854bc78bf43966eb0cfa9138ddc39908445608fe95e81c
282 ""
283 ""
284 ""
285 ""
286 99eb415cd27dfb9d;
287 2533e31c9c1a9851bc2810d858cbbc8424d126b807e6da
288 a0
289 ""
290 ""
291 ""
292 c90ad3bb5ff737a9;
293 89c3f9099c5ffb824173d7634c04226f30cbb7f0e4a973
294 ""
295 a8
296 ""
297 ""
298 dc32c7a1d4f99131;
299 cd190107314717a77456f3ff669c732b58db8f48af65f7
300 ""
301 ""
302 cc
303 86
304 5a32c09bf86a0f69;
305 9e3fb90e1721b730374ffc9bc597f56ccbb2f294b38766
306 fc69f6a9f2c0945f
307 fd505003cc0cae9ce021a5f1fa4ffa91544485f1a1258b2b
308 9b8f0911e32d65cc1770a18cbfe6effd1ff6778554acf127
309 c9d09215bfda6368733b83186710d656bd900f072a02173d
310 1e35ed44860e1cb0;
311 0485b203a3c1c4c967c0a458cb948bdd409b687fa3a682
312 7b480aa3a4c84c
313 ef64f6c9b53bf8f957f4b03cf43e89957f9a3e
314 8128f8743d16687b7bb8deb9bd205b70e04c091d205cdad9e9a79b1abf
315 1b485cb8f21d2744e6fdb19989d90693a8d2b935d0eae05facba546e91
316 8b86611191b4bdf3;
317}