chiark / gitweb /
Merge branch '2.4.x' into 2.5.x
[catacomb] / symm / t / skipjack
1 # Test vectors for Skipjack
2
3 # --- From the Skipjack definition ---
4
5 skipjack {
6
7   # --- The official Skipjack test vector ---
8   #
9   # It's a bit piss-poor that they only provide one test-vector here.
10
11   00998877665544332211 33221100ddccbbaa 2587cae27a12d300;
12
13   # --- From KEA test vectors ---
14   #
15   # The Skipjack algorithm is used by the KEA to derive the final key.
16   # Unfortunately, the test vectors given in the Skipjack/KEA spec don't
17   # match my (or anyone else's!) implementation.  These are the values
18   # which seem to be generally agreed.
19
20   e7496e99e4628b7f9ffb 99ccfe2b90fd550b 60a73d387b517fca;
21   e7496e99e4628b7f9ffb 60a73d387b517fca 24c90cb05d668b27;
22   e5caf4dcc70e55f1dd90 b71cb0d009af2765 64f4877ae68a8a62;
23   e5caf4dcc70e55f1dd90 64f4877ae68a8a62 fee778a838a601cd;
24
25   # --- These are the results expected from the KEA spec ---
26   #
27   # A `?' indicates that I don't know what that digit's meant to be.  I've
28   # derived the top 16 bits of the intermediate results from the spec.
29
30 # e7496e99e4628b7f9ffb 99ccfe2b90fd550b 2f30????????????;
31 # e7496e99e4628b7f9ffb 2f30???????????? 740839dee833add4;
32 # e5caf4dcc70e55f1dd90 b71cb0d009af2765 8e27????????????;
33 # e5caf4dcc70e55f1dd90 8e27???????????? 97fd1c6bd86bc439;
34
35   # --- Some more test vectors ---
36   #
37   # These are dreamed up by me.  The above tests don't actually exhaustively
38   # test the F-table.  There are 16 entries unaccounted for.  The keys and
39   # plaintexts were generated using fibrand with seed 0.
40
41   cde4bef260d7bcda1635 47d348b7551195e7 f17b3070144aebea;
42   7022907dd1dff7dac5c9 941d26d0c6eb14ad a055d02c5e0eae8d;
43   568f86edd1dc9268eeee 533285a6ed810c9b b4c22f4fb74c35dc;
44   689daaa9060d2d4b6003 062365b0a54364c7 08698d8786f80d16;
45   6c160f11896c4794846e cfa14a7130c9f137 d6db848b7cecdd39;
46
47   # --- And some more, posted to Usenet ---
48   #
49   # Message-id <8m7slq$1i1$1@hecate.umd.edu>
50
51   f8da02647722f7103adf 1ddf39abf5cd711e c92d22324c6b31ae;
52   82760ac137948821eee4 dd6c6cce8f83e69e e32877c1d9527fff;
53   843c1687d3cdca5fc5c3 beaacf177fa41a11 4745783f75b8861a;
54   ae870cd7ff33a995f7e5 c4c09f216c1bc60a 5c101636b8a57a72;
55   5ccbd913ea8b73bd6391 d3f814b000245856 b4fc0f8e54728f91;
56   f65e74cd599c68a40cc7 356ec7d93832329c 93b750608f5701f8;
57   aa106e46d7087c4e93dc 209ecf1c537ad56c d823d45510099e61;
58   a93f9789a20c3cc34fea 892eea9d64e17d66 0959e231b275d95f;
59   88b163cbd61616888899 991390fd760fc91b e7700209886767ae;
60   fb6cd1ff70487561df10 daebc947ddca9c9e e7cc49a56bd6a322;
61   5edc1ac0c4e7ef5f002c 6419ddefe2cd8f2e e48a05cf26e242fd;
62   8e3090c19aa32f94496a 322998ecbd068112 62c0e537b14df2c1;
63   b96e3fd46fa4263f9092 3aae2aee20da93cc 54d1e58a6b624d71;
64   9e6635baee28c5bce2bc 14311112ca11f727 5d0f235a9d221ce0;
65   04127ce16dc1b1726a66 300e4313e7ad6796 8e5b03522e68cbeb;
66   f0b89d75e979ccc9b172 09cd1c1accbe7797 572c9b4025a9134b;
67   f9bfc78798cbf1bcd4b5 31b30ca354af3cd8 8c959c904789fbda;
68   f43a51b4273bde27d2b0 08c59b0db99ec267 b7d7f5fa342988fb;
69   cd51f0a75aa73c48edd2 9784b1e3e7e60e60 763aa8ee109397b3;
70   b3319a3f6622aa726bb3 f65216373d4b43c7 0325600337b8ad3c;
71   493254c9596e993f5f9c cba4c1215d5d36ce 68e1c551c59108c0;
72   76150c2c3ced1c7ca021 82294851288e75cb 7eb6325d82a2096c;
73   7140d6c5486305872df6 c3a7b7e4a52e407b 2483f385a42ee3c6;
74   3c2c3901f0ee9a3b2b0e 1bfde32ab559e13a d6fa9db8685fd88a;
75   606a8b4bdfaae8a0ba51 d205f7486c782838 0330489170b85293;
76   7847a47a0fe79ab770ce d96ff1f7c7fc60e0 1f9b3301c9b2708c;
77   73b9ab0c36c99e91a891 241d4bde19a75f8f 2b86c57ffe168895;
78   a37f2ad5a85e170741f5 7be1b8d58321c619 5af7ceb3eed9dca1;
79   f7b0c2a8170e3c4e48b3 c9214ea01ec14948 1b587736e116c04b;
80   a1fc67e44eacacf4a902 e2a3091feb581588 f3ecf0f1789a3923;
81   f14430affc5fe82a9ae9 3cb466d301b60854 e8d114c20ffa1c79;
82   fd26df50486a4cd96d9b b0684f8a5e63d935 222903994d64fe3a;
83   a6d46d46ca287e1a332a ba1f37e88edec55f 91f2baad6fa0de55;
84   83c3f1cb8d06efc6196b e9fed8501b7a6579 83f9f08f89a854ee;
85   0edfa44c7d4a4ef0725e eb5ca8b3fa1fcdbb 2b1b6670a6be0324;
86   b8edcf167d99a711ccee b8b525c6382af277 211a695da473766f;
87   4f639e0d5a5d2ad7e9a4 9162e781ff683853 eb2976370d22ef22;
88   37e006256a4ae6d320c4 c9f23a20a39ded11 dba4c0ef0ea098c0;
89   e41d0bd25f931ba1d85c 5a6f12f32f7eefdf 923daee8000709f9;
90   fdf65bbc5fe600f3cd68 cad5414c1c64f194 d5771e78b6f1fe1e;
91   1c269af2ff166acb27ef 063a58a20b45378f 634f7a3861af97a1;
92   1179f64acb6122ccf649 08fbf42b4313347b 3a803a4bd0e8c3e6;
93   078c87265eb8da323e90 6d4ed0e9930532d1 f4fa372e7e1441a1;
94   2fff35f8eb774c843bb0 40b699812345661d 63a9197f7b75f53f;
95   09f77346a4393ce99856 22ed54626a51e505 e91a050a7481b3dd;
96   5b878e0b22a705acf8fb 0c489b66e2da531b 6e9370a91b994878;
97   9d72c1ab2092c1b10877 c64b10f8b191bc2c 5bdecded96d656c9;
98   72865f289725e1b55502 91fdf7236f85bdd6 1a5680e51736026f;
99   06e3c0e541f4aae6fe93 40009f8a465a9feb 0e7aace421bc79d8;
100   2ea09f1cc89e064f09bc 543208b05bfa3858 a95d87fad12c3593;
101 }
102
103 skipjack-cmac {
104   e4bef260d7bcda163547
105     ""
106     5a0fba9745b5a83e;
107   d348b7551195e7702290
108     7d
109     8610508eeee08d29;
110   d1dff7dac5c9941d26d0
111     c6eb14ad568f86edd1dc9268eeee533285a6ed810c9b689d
112     46b1504483d84dff;
113   aaa9060d2d4b60030623
114     65b0a54364c76c160f11896c4794846ecfa14a
115     cffcc55881902725;
116 }
117
118 skipjack-ccm {
119   e4bef260d7bcda163547
120     d348b7
121     ""
122     ""
123     ""
124     a8e3e588;
125   551195e77022907dd1df
126     f7dac5
127     c9
128     ""
129     ""
130     3b47dc26;
131   941d26d0c6eb14ad568f
132     86edd1
133     ""
134     dc
135     fe
136     61bfe011;
137   9268eeee533285a6ed81
138     0c9b689daa
139     a9060d2d4b6003062365b0a54364c76c160f11896c479484
140     6ecfa14a7130c9f137120634c9519848a877ff77bf79192a
141     3599e35441a20dab5e973151a0f3d8dbde983d9a896d3463
142     dee97ef167dde431;
143   5b50ade5d9cd739a3d1f
144     337f29549e
145     6b0d27a4ba234085406a6136512061f7080cc0
146     7df0591d8fa21f2dd88374d8cde8e160ad10997a21635c6d62c9269029
147     a72ba97fe436bdad5e7416aa41b733be94324faf2d70cc67a31559f7d7
148     d14f0eba040f800d;
149 }
150
151 skipjack-eax {
152   e4bef260d7bcda163547
153     ""
154     ""
155     ""
156     ""
157     b15f1791e4065ebd;
158   d348b7551195e7702290
159     7d
160     ""
161     ""
162     ""
163     58aed98d9796d86e;
164   d1dff7dac5c9941d26d0
165     ""
166     c6
167     ""
168     ""
169     ed16d102bdd549c9;
170   eb14ad568f86edd1dc92
171     ""
172     ""
173     68
174     1c
175     c1a5644ab08ad1dc;
176   eeee533285a6ed810c9b
177     689daaa9060d2d4b
178     6003062365b0a54364c76c160f11896c4794846ecfa14a71
179     30c9f137120634c9519848a877ff77bf79192a5b50ade5d9
180     b4bb56af916bc1a14e6a106346b9fbc1989b20d12275469f
181     06a4958aa50a4260;
182   cd739a3d1f337f29549e
183     6b0d27a4ba2340
184     85406a6136512061f7080cc07df0591d8fa21f
185     2dd88374d8cde8e160ad10997a21635c6d62c9269029df3e6057acc876
186     1e9afd31797d761c4f9ffbf0031a227872fa8b21de658b8fdb22514c48
187     44adbb6a2eae0a93;
188 }
189
190 skipjack-gcm {
191   e4bef260d7bcda163547
192     ""
193     ""
194     ""
195     ""
196     6fa498e64c57905e;
197   d348b7551195e7702290
198     7d
199     ""
200     ""
201     ""
202     cc2fd0c06756c545;
203   d1dff7dac5c9941d26d0
204     ""
205     c6
206     ""
207     ""
208     d6c1997db60c0a1c;
209   eb14ad568f86edd1dc92
210     ""
211     ""
212     68
213     98
214     08825f061a3ea120;
215   eeee533285a6ed810c9b
216     689daaa9060d2d4b
217     6003062365b0a54364c76c160f11896c4794846ecfa14a71
218     30c9f137120634c9519848a877ff77bf79192a5b50ade5d9
219     0a048d8b451ed2cd53dc70a177834525881e84046c4dd904
220     222801fac5bfd46c;
221   cd739a3d1f337f29549e
222     6b0d27a4
223     ba234085406a6136512061
224     f7080cc07df0591d8fa21f2dd88374d8cde8e160ad10997a21635c6d62c9269029
225     f3bf97b9c9c15761437a42c826abadf01e9207fd4b172e200a6d7aea3a77c85c3a
226     fff6db552209b7b8;
227   df3e6057acc87638f508
228     046733d9ff61cd
229     bda3b3e9878731ebfedd4705e505da1435dcea
230     a7b1cc49ae1d50c38201a894476b3f102b752eb9529533966f27043eb6
231     b96e1e6d2db5000c5bbbd06e86ab26c3a2a060b3eeeb1899793a743bc9
232     74694b07f5866d80;
233 }
234
235 skipjack-ocb1 {
236   e4bef260d7bcda163547
237     d348b7551195e770
238     ""
239     ""
240     ""
241     28afba7b57208bb2;
242   22907dd1dff7dac5c994
243     1d26d0c6eb14ad56
244     8f
245     ""
246     ""
247     62f000b7bdb0d1dc;
248   86edd1dc9268eeee5332
249     85a6ed810c9b689d
250     ""
251     aa
252     84
253     c92bec4a841eab50;
254   a9060d2d4b6003062365
255     b0a54364c76c160f
256     ""
257     11896c4794846ecfa14a7130c9f137120634c9519848a877
258     50d328a84a166d75e1574aafc3a6847451f766a4e5b1d506
259     c155363b2c86bd70;
260   ff77bf79192a5b50ade5
261     d9cd739a3d1f337f
262     29549e6b0d27a4ba234085406a6136512061f7080cc07df0
263     591d8fa21f2dd88374d8cde8e160ad10997a21635c6d62c9
264     b9f8bca7a0f1024a232217f4d9acd0187997bdb2348287f9
265     d8d3f45231b59769;
266   269029df3e6057acc876
267     38f508046733d9ff
268     ""
269     61cdbda3b3e9878731ebfedd4705e505da1435dceaa7b1cc49ae1d50c3
270     3b5a6606907f297d26827ab95798171debff551df36e0ae8f6f29026f8
271     24734c1d6c3da996;
272   8201a894476b3f102b75
273     2eb9529533966f27
274     043eb621b7f65b000961040ef2f9b2fc5fa450
275     727a9b542cde52ebfda19d0ccc520f215eb57bb3a4f3ebbbb18ac6c95a
276     694a1412b0ab1b6fb698a9eb920fd2910c7625b68558fbe9ffda426f55
277     19c658ead145b558;
278 }
279
280 skipjack-pmac1 {
281   e4bef260d7bcda163547
282     ""
283     b663da5674ffc5d1;
284   d348b7551195e7702290
285     7d
286     554a2fb9de2d30ae;
287   d1dff7dac5c9941d26d0
288     c6eb14ad568f86edd1dc9268eeee533285a6ed810c9b689d
289     0318df96a103a2f1;
290   aaa9060d2d4b60030623
291     65b0a54364c76c160f11896c4794846ecfa14a
292     b3a737b39bf1c95d;
293 }
294
295 skipjack-ocb3 {
296   e4bef260d7bcda163547
297     d348b7551195
298     ""
299     ""
300     ""
301     306c2123c229d86a;
302   e77022907dd1dff7dac5
303     c9941d26d0c6
304     eb
305     ""
306     ""
307     a0f5e0a9d6193d8e;
308   14ad568f86edd1dc9268
309     eeee533285a6
310     ""
311     ed
312     76
313     b1f29902bbde9441;
314   810c9b689daaa9060d2d
315     4b6003
316     ""
317     062365b0a54364c76c160f11896c4794846ecfa14a7130c9
318     62299168f2ce7ea1488f71fbde61613002efcc4815d4674b
319     f9d14a84093df62a;
320   f137120634c9519848a8
321     77ff77bf79
322     192a5b50ade5d9cd739a3d1f337f29549e6b0d27a4ba2340
323     85406a6136512061f7080cc07df0591d8fa21f2dd88374d8
324     7ee7aa9e2d4e7e5f4b9c9e254ffd3868f8ce577bc82b0239
325     0560b1fcaba5682f;
326   cde8e160ad10997a2163
327     5c6d62c92690
328     ""
329     29df3e6057acc87638f508046733d9ff61cdbda3b3e9878731ebfedd47
330     914f81636ba12b551c60b41dcf566e447d02d15d2113c09678b1fca4ae
331     b7161acf1efb88ec;
332   05e505da1435dceaa7b1
333     cc49ae1d50c3
334     8201a894476b3f102b752eb9529533966f2704
335     3eb621b7f65b000961040ef2f9b2fc5fa450727a9b542cde52ebfda19d
336     78498440ea075861116531b9ad62fa7d399948260edc0bdd04e04a4327
337     39de18c8572cfd02;
338 }
339
340 skipjack-ocb3-mct {
341   10 63be3f7aef5a5f98;
342   10 dbe0b1ff8673;
343   10 b26e14c0;
344 }