]>
Commit | Line | Data |
---|---|---|
6b7b3433 | 1 | # |
1212818e | 2 | # Copyright 2001-2018 The OpenSSL Project Authors. All Rights Reserved. |
6b7b3433 | 3 | # |
909f1a2e | 4 | # Licensed under the Apache License 2.0 (the "License"). You may not use |
6b7b3433 RS |
5 | # this file except in compliance with the License. You can obtain a copy |
6 | # in the file LICENSE in the source distribution or at | |
7 | # https://www.openssl.org/source/license.html | |
8 | ||
9 | # Tests start with one of these keywords | |
10 | # Cipher Decrypt Derive Digest Encoding KDF MAC PBE | |
11 | # PrivPubKeyPair Sign Verify VerifyRecover | |
12 | # and continue until a blank line. Lines starting with a pound sign, | |
13 | # like this prolog, are ignored. | |
14 | ||
15 | # SIPHASH tests - default values: 2,4 rounds, 16-byte mac | |
16 | # There are no official test vectors, they are simple vectors 1, 2, 3, etc | |
17 | ||
1d0f116e | 18 | Title = SIPHASH tests |
5a7bc0be | 19 | |
6b7b3433 RS |
20 | MAC = SipHash |
21 | Key = 000102030405060708090A0B0C0D0E0F | |
22 | Input = | |
23 | Output = a3817f04ba25a8e66df67214c7550293 | |
24 | ||
25 | MAC = SipHash | |
26 | Key = 000102030405060708090A0B0C0D0E0F | |
27 | Input = 00 | |
28 | Output = da87c1d86b99af44347659119b22fc45 | |
29 | ||
30 | MAC = SipHash | |
31 | Key = 000102030405060708090A0B0C0D0E0F | |
32 | Input = 0001 | |
33 | Output = 8177228da4a45dc7fca38bdef60affe4 | |
34 | ||
35 | MAC = SipHash | |
36 | Key = 000102030405060708090A0B0C0D0E0F | |
37 | Input = 000102 | |
38 | Output = 9c70b60c5267a94e5f33b6b02985ed51 | |
39 | ||
40 | MAC = SipHash | |
41 | Key = 000102030405060708090A0B0C0D0E0F | |
42 | Input = 00010203 | |
43 | Output = f88164c12d9c8faf7d0f6e7c7bcd5579 | |
44 | ||
45 | MAC = SipHash | |
46 | Key = 000102030405060708090A0B0C0D0E0F | |
47 | Input = 0001020304 | |
48 | Output = 1368875980776f8854527a07690e9627 | |
49 | ||
50 | MAC = SipHash | |
51 | Key = 000102030405060708090A0B0C0D0E0F | |
52 | Input = 000102030405 | |
53 | Output = 14eeca338b208613485ea0308fd7a15e | |
54 | ||
55 | MAC = SipHash | |
56 | Key = 000102030405060708090A0B0C0D0E0F | |
57 | Input = 00010203040506 | |
58 | Output = a1f1ebbed8dbc153c0b84aa61ff08239 | |
59 | ||
60 | MAC = SipHash | |
61 | Key = 000102030405060708090A0B0C0D0E0F | |
62 | Input = 0001020304050607 | |
63 | Output = 3b62a9ba6258f5610f83e264f31497b4 | |
64 | ||
65 | MAC = SipHash | |
66 | Key = 000102030405060708090A0B0C0D0E0F | |
67 | Input = 000102030405060708 | |
68 | Output = 264499060ad9baabc47f8b02bb6d71ed | |
69 | ||
70 | MAC = SipHash | |
71 | Key = 000102030405060708090A0B0C0D0E0F | |
72 | Input = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E | |
73 | Output = 5150d1772f50834a503e069a973fbd7c | |
74 | ||
75 | ||
76 | MAC = SipHash | |
77 | Key = 000102030405060708090A0B0C0D0E0F | |
78 | Input = | |
79 | Output = a3817f04ba25a8e66df67214c7550293 | |
80 | ||
81 | MAC = SipHash | |
82 | Key = 000102030405060708090A0B0C0D0E0F | |
83 | Input = 00 | |
84 | Output = da87c1d86b99af44347659119b22fc45 | |
85 | ||
86 | MAC = SipHash | |
87 | Key = 000102030405060708090A0B0C0D0E0F | |
88 | Input = 0001 | |
89 | Output = 8177228da4a45dc7fca38bdef60affe4 | |
90 | ||
91 | MAC = SipHash | |
92 | Key = 000102030405060708090A0B0C0D0E0F | |
93 | Input = 000102 | |
94 | Output = 9c70b60c5267a94e5f33b6b02985ed51 | |
95 | ||
96 | MAC = SipHash | |
97 | Key = 000102030405060708090A0B0C0D0E0F | |
98 | Input = 00010203 | |
99 | Output = f88164c12d9c8faf7d0f6e7c7bcd5579 | |
100 | ||
101 | MAC = SipHash | |
102 | Key = 000102030405060708090A0B0C0D0E0F | |
103 | Input = 0001020304 | |
104 | Output = 1368875980776f8854527a07690e9627 | |
105 | ||
106 | MAC = SipHash | |
107 | Key = 000102030405060708090A0B0C0D0E0F | |
108 | Input = 000102030405 | |
109 | Output = 14eeca338b208613485ea0308fd7a15e | |
110 | ||
111 | MAC = SipHash | |
112 | Key = 000102030405060708090A0B0C0D0E0F | |
113 | Input = 00010203040506 | |
114 | Output = a1f1ebbed8dbc153c0b84aa61ff08239 | |
115 | ||
116 | MAC = SipHash | |
117 | Key = 000102030405060708090A0B0C0D0E0F | |
118 | Input = 0001020304050607 | |
119 | Output = 3b62a9ba6258f5610f83e264f31497b4 | |
120 | ||
9f2e1811 | 121 | MAC = SipHash by EVP_PKEY |
6b7b3433 RS |
122 | Key = 000102030405060708090A0B0C0D0E0F |
123 | Input = 000102030405060708 | |
124 | Output = 264499060ad9baabc47f8b02bb6d71ed | |
125 | ||
126 | MAC = SipHash | |
127 | Key = 000102030405060708090A0B0C0D0E0F | |
128 | Input = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E | |
129 | Output = 5150d1772f50834a503e069a973fbd7c | |
130 | ||
27252321 RL |
131 | # SIPHASH - default values: 2,4 rounds, explicit 8-byte mac |
132 | ||
133 | MAC = SipHash | |
134 | Ctrl = digestsize:8 | |
135 | Key = 000102030405060708090A0B0C0D0E0F | |
136 | Input = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E | |
42503613 | 137 | Output = 724506EB4C328A95 |
27252321 RL |
138 | |
139 | # SIPHASH - default values: 2,4 rounds, explicit 16-byte mac | |
140 | ||
141 | MAC = SipHash | |
142 | Ctrl = digestsize:16 | |
143 | Key = 000102030405060708090A0B0C0D0E0F | |
144 | Input = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E | |
145 | Output = 5150d1772f50834a503e069a973fbd7c | |
146 | ||
147 | # SIPHASH - default values: 2,4 rounds, explicit 16-byte mac (set as 0) | |
148 | ||
149 | MAC = SipHash | |
150 | Ctrl = digestsize:0 | |
151 | Key = 000102030405060708090A0B0C0D0E0F | |
152 | Input = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E | |
153 | Output = 5150d1772f50834a503e069a973fbd7c | |
154 | ||
155 | # SIPHASH - default values: 2,4 rounds, explicit 13-byte mac (invalid size) | |
156 | ||
157 | MAC = SipHash | |
158 | Ctrl = digestsize:13 | |
159 | Key = 000102030405060708090A0B0C0D0E0F | |
c89d9cda | 160 | Result = MAC_CTRL_ERROR |
27252321 | 161 | |
9f2e1811 RL |
162 | # SIPHASH - default values: 2,4 rounds, explicit 13-byte mac (invalid size) |
163 | # by EVP_PKEY this time | |
164 | ||
165 | MAC = SipHash by EVP_PKEY | |
166 | Ctrl = digestsize:13 | |
167 | Key = 000102030405060708090A0B0C0D0E0F | |
168 | Result = EVPPKEYCTXCTRL_ERROR | |
169 | ||
5a7bc0be RS |
170 | Title = HMAC tests (from RFC2104 and others) |
171 | ||
6b7b3433 RS |
172 | MAC = HMAC |
173 | Algorithm = MD5 | |
174 | Key = 0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b | |
175 | Input = "Hi There" | |
176 | Output = 9294727a3638bb1c13f48ef8158bfc9d | |
177 | ||
178 | MAC = HMAC | |
179 | Algorithm = MD5 | |
180 | Key = "Jefe" | |
181 | Input = "what do ya want for nothing?" | |
182 | Output = 750c783e6ab0b503eaa86e310a5db738 | |
183 | ||
184 | MAC = HMAC | |
185 | Algorithm = MD5 | |
186 | Key = AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA | |
187 | Input = DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD | |
188 | Output = 56be34521d144c88dbb8c733f0e8b3f6 | |
189 | ||
58094ab6 P |
190 | Title = SHA1 |
191 | ||
6b7b3433 RS |
192 | # HMAC tests from NIST test data |
193 | ||
194 | MAC = HMAC | |
195 | Algorithm = SHA1 | |
196 | Input = "Sample message for keylen=blocklen" | |
197 | Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F | |
198 | Output = 5FD596EE78D5553C8FF4E72D266DFD192366DA29 | |
199 | ||
200 | MAC = HMAC | |
201 | Algorithm = SHA1 | |
202 | Input = "Sample message for keylen<blocklen" | |
203 | Key = 000102030405060708090A0B0C0D0E0F10111213 | |
204 | Output = 4C99FF0CB1B31BD33F8431DBAF4D17FCD356A807 | |
205 | ||
206 | MAC = HMAC | |
207 | Algorithm = SHA1 | |
208 | Input = "Sample message for keylen=blocklen" | |
209 | Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F60616263 | |
210 | Output = 2D51B2F7750E410584662E38F133435F4C4FD42A | |
211 | ||
58094ab6 P |
212 | Title = SHA2 |
213 | ||
6b7b3433 RS |
214 | MAC = HMAC |
215 | Algorithm = SHA224 | |
216 | Input = "Sample message for keylen=blocklen" | |
217 | Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F | |
218 | Output = C7405E3AE058E8CD30B08B4140248581ED174CB34E1224BCC1EFC81B | |
219 | ||
220 | MAC = HMAC | |
221 | Algorithm = SHA224 | |
222 | Input = "Sample message for keylen<blocklen" | |
223 | Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B | |
224 | Output = E3D249A8CFB67EF8B7A169E9A0A599714A2CECBA65999A51BEB8FBBE | |
225 | ||
226 | MAC = HMAC | |
227 | Algorithm = SHA224 | |
228 | Input = "Sample message for keylen=blocklen" | |
229 | Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F60616263 | |
230 | Output = 91C52509E5AF8531601AE6230099D90BEF88AAEFB961F4080ABC014D | |
231 | ||
232 | MAC = HMAC | |
233 | Algorithm = SHA256 | |
234 | Input = "Sample message for keylen=blocklen" | |
235 | Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F | |
236 | Output = 8BB9A1DB9806F20DF7F77B82138C7914D174D59E13DC4D0169C9057B133E1D62 | |
237 | ||
238 | MAC = HMAC | |
239 | Algorithm = SHA256 | |
240 | Input = "Sample message for keylen<blocklen" | |
241 | Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F | |
242 | Output = A28CF43130EE696A98F14A37678B56BCFCBDD9E5CF69717FECF5480F0EBDF790 | |
243 | ||
244 | MAC = HMAC | |
245 | Algorithm = SHA256 | |
246 | Input = "Sample message for keylen=blocklen" | |
247 | Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F60616263 | |
248 | Output = BDCCB6C72DDEADB500AE768386CB38CC41C63DBB0878DDB9C7A38A431B78378D | |
249 | ||
250 | MAC = HMAC | |
251 | Algorithm = SHA384 | |
252 | Input = "Sample message for keylen=blocklen" | |
253 | Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F | |
254 | Output = 63C5DAA5E651847CA897C95814AB830BEDEDC7D25E83EEF9195CD45857A37F448947858F5AF50CC2B1B730DDF29671A9 | |
255 | ||
256 | MAC = HMAC | |
257 | Algorithm = SHA384 | |
258 | Input = "Sample message for keylen<blocklen" | |
259 | Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F | |
260 | Output = 6EB242BDBB582CA17BEBFA481B1E23211464D2B7F8C20B9FF2201637B93646AF5AE9AC316E98DB45D9CAE773675EEED0 | |
261 | ||
262 | MAC = HMAC | |
263 | Algorithm = SHA384 | |
264 | Input = "Sample message for keylen=blocklen" | |
265 | Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F808182838485868788898A8B8C8D8E8F909192939495969798999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B7B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7 | |
266 | Output = 5B664436DF69B0CA22551231A3F0A3D5B4F97991713CFA84BFF4D0792EFF96C27DCCBBB6F79B65D548B40E8564CEF594 | |
267 | ||
268 | MAC = HMAC | |
269 | Algorithm = SHA512 | |
270 | Input = "Sample message for keylen=blocklen" | |
271 | Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F | |
272 | Output = FC25E240658CA785B7A811A8D3F7B4CA48CFA26A8A366BF2CD1F836B05FCB024BD36853081811D6CEA4216EBAD79DA1CFCB95EA4586B8A0CE356596A55FB1347 | |
273 | ||
274 | MAC = HMAC | |
275 | Algorithm = SHA512 | |
276 | Input = "Sample message for keylen<blocklen" | |
277 | Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F | |
278 | Output = FD44C18BDA0BB0A6CE0E82B031BF2818F6539BD56EC00BDC10A8A2D730B3634DE2545D639B0F2CF710D0692C72A1896F1F211C2B922D1A96C392E07E7EA9FEDC | |
279 | ||
280 | MAC = HMAC | |
281 | Algorithm = SHA512 | |
282 | Input = "Sample message for keylen=blocklen" | |
283 | Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F808182838485868788898A8B8C8D8E8F909192939495969798999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B7B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7 | |
284 | Output = D93EC8D2DE1AD2A9957CB9B83F14E76AD6B5E0CCE285079A127D3B14BCCB7AA7286D4AC0D4CE64215F2BC9E6870B33D97438BE4AAA20CDA5C5A912B48B8E27F3 | |
285 | ||
58094ab6 P |
286 | Title = SHA3 |
287 | ||
288 | # NIST's test vectors | |
289 | ||
e0810e35 P |
290 | MAC = HMAC |
291 | Algorithm = SHA3-224 | |
292 | Input = "Sample message for keylen<blocklen" | |
293 | Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b | |
294 | Output = 332cfd59347fdb8e576e77260be4aba2d6dc53117b3bfb52c6d18c04 | |
295 | ||
296 | MAC = HMAC | |
297 | Algorithm = SHA3-224 | |
298 | Input = "Sample message for keylen=blocklen" | |
299 | Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f | |
300 | Output = d8b733bcf66c644a12323d564e24dcf3fc75f231f3b67968359100c7 | |
301 | ||
302 | MAC = HMAC | |
303 | Algorithm = SHA3-224 | |
304 | Input = "Sample message for keylen>blocklen" | |
305 | Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaab | |
306 | Output = 078695eecc227c636ad31d063a15dd05a7e819a66ec6d8de1e193e59 | |
307 | ||
308 | MAC = HMAC | |
309 | Algorithm = SHA3-256 | |
310 | Input = "Sample message for keylen<blocklen" | |
311 | Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f | |
312 | Output = 4fe8e202c4f058e8dddc23d8c34e467343e23555e24fc2f025d598f558f67205 | |
313 | ||
314 | MAC = HMAC | |
315 | Algorithm = SHA3-256 | |
316 | Input = "Sample message for keylen=blocklen" | |
317 | Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f8081828384858687 | |
318 | Output = 68b94e2e538a9be4103bebb5aa016d47961d4d1aa906061313b557f8af2c3faa | |
319 | ||
320 | MAC = HMAC | |
321 | Algorithm = SHA3-256 | |
322 | Input = "Sample message for keylen>blocklen" | |
323 | Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7 | |
324 | Output = 9bcf2c238e235c3ce88404e813bd2f3a97185ac6f238c63d6229a00b07974258 | |
325 | ||
58094ab6 P |
326 | MAC = HMAC |
327 | Algorithm = SHA3-384 | |
328 | Input = "Sample message for keylen<blocklen" | |
329 | Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f | |
330 | Output = d588a3c51f3f2d906e8298c1199aa8ff6296218127f6b38a90b6afe2c5617725bc99987f79b22a557b6520db710b7f42 | |
331 | ||
332 | MAC = HMAC | |
333 | Algorithm = SHA3-384 | |
334 | Input = "Sample message for keylen=blocklen" | |
335 | Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f6061626364656667 | |
336 | Output = a27d24b592e8c8cbf6d4ce6fc5bf62d8fc98bf2d486640d9eb8099e24047837f5f3bffbe92dcce90b4ed5b1e7e44fa90 | |
337 | ||
338 | MAC = HMAC | |
339 | Algorithm = SHA3-384 | |
340 | Input = "Sample message for keylen>blocklen" | |
341 | Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f9091929394959697 | |
342 | Output = e5ae4c739f455279368ebf36d4f5354c95aa184c899d3870e460ebc288ef1f9470053f73f7c6da2a71bcaec38ce7d6ac | |
343 | ||
344 | MAC = HMAC | |
345 | Algorithm = SHA3-512 | |
346 | Input = "Sample message for keylen<blocklen" | |
347 | Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f | |
348 | Output = 4efd629d6c71bf86162658f29943b1c308ce27cdfa6db0d9c3ce81763f9cbce5f7ebe9868031db1a8f8eb7b6b95e5c5e3f657a8996c86a2f6527e307f0213196 | |
349 | ||
350 | MAC = HMAC | |
351 | Algorithm = SHA3-512 | |
352 | Input = "Sample message for keylen=blocklen" | |
353 | Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f4041424344454647 | |
354 | Output = 544e257ea2a3e5ea19a590e6a24b724ce6327757723fe2751b75bf007d80f6b360744bf1b7a88ea585f9765b47911976d3191cf83c039f5ffab0d29cc9d9b6da | |
355 | ||
388de53c | 356 | MAC = HMAC by EVP_PKEY |
58094ab6 P |
357 | Algorithm = SHA3-512 |
358 | Input = "Sample message for keylen>blocklen" | |
359 | Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f8081828384858687 | |
360 | Output = 5f464f5e5b7848e3885e49b2c385f0694985d0e38966242dc4a5fe3fea4b37d46b65ceced5dcf59438dd840bab22269f0ba7febdb9fcf74602a35666b2a32915 | |
361 | ||
362 | ||
5a7bc0be | 363 | Title = CMAC tests (from FIPS module) |
6b7b3433 RS |
364 | |
365 | MAC = CMAC | |
366 | Algorithm = AES-128-CBC | |
367 | Key = 77A77FAF290C1FA30C683DF16BA7A77B | |
368 | Input = 020683E1F0392F4CAC54318B6029259E9C553DBC4B6AD998E64D58E4E7DC2E13 | |
369 | Output = FBFEA41BF9740CB501F1292C21CEBB40 | |
370 | ||
56adb7d9 | 371 | MAC = CMAC by EVP_PKEY |
6b7b3433 RS |
372 | Algorithm = AES-192-CBC |
373 | Key = 7B32391369AA4CA97558095BE3C3EC862BD057CEF1E32D62 | |
374 | Input = | |
375 | Output = E4D9340B03E67DEFD4969CC1ED3735E6 | |
376 | ||
377 | MAC = CMAC | |
378 | Algorithm = AES-256-CBC | |
379 | Key = 0B122AC8F34ED1FE082A3625D157561454167AC145A10BBF77C6A70596D574F1 | |
380 | Input = 498B53FDEC87EDCBF07097DCCDE93A084BAD7501A224E388DF349CE18959FE8485F8AD1537F0D896EA73BEDC7214713F | |
381 | Output = F62C46329B41085625669BAF51DEA66A | |
382 | ||
383 | MAC = CMAC | |
384 | Algorithm = DES-EDE3-CBC | |
385 | Key = 89BCD952A8C8AB371AF48AC7D07085D5EFF702E6D62CDC23 | |
386 | Input = FA620C1BBE97319E9A0CF0492121F7A20EB08A6A709DCBD00AAF38E4F99E754E | |
387 | Output = 8F49A1B7D6AA2258 | |
388 | ||
afc580b9 P |
389 | |
390 | Title = GMAC Tests (from NIST) | |
391 | ||
392 | MAC = GMAC | |
393 | Algorithm = AES-128-GCM | |
394 | Key = 77BE63708971C4E240D1CB79E8D77FEB | |
395 | IV = E0E00F19FED7BA0136A797F3 | |
396 | Input = 7A43EC1D9C0A5A78A0B16533A6213CAB | |
397 | Output = 209FCC8D3675ED938E9C7166709DD946 | |
398 | ||
399 | Title = GMAC Tests (from http://www.ieee802.org/1/files/public/docs2011/bn-randall-test-vectors-0511-v1.pdf) | |
400 | ||
401 | MAC = GMAC | |
402 | Algorithm = AES-128-GCM | |
403 | Key = AD7A2BD03EAC835A6F620FDCB506B345 | |
404 | IV = 12153524C0895E81B2C28465 | |
405 | Input = D609B1F056637A0D46DF998D88E5222AB2C2846512153524C0895E8108000F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F30313233340001 | |
406 | Output = F09478A9B09007D06F46E9B6A1DA25DD | |
407 | ||
408 | MAC = GMAC | |
409 | Algorithm = AES-256-GCM | |
410 | Key = E3C08A8F06C6E3AD95A70557B23F75483CE33021A9C72B7025666204C69C0B72 | |
411 | IV = 12153524C0895E81B2C28465 | |
412 | Input = D609B1F056637A0D46DF998D88E5222AB2C2846512153524C0895E8108000F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F30313233340001 | |
413 | Output = 2F0BC5AF409E06D609EA8B7D0FA5EA50 | |
414 | ||
415 | MAC = GMAC | |
416 | Algorithm = AES-128-GCM | |
417 | Key = 071B113B0CA743FECCCF3D051F737382 | |
418 | IV = F0761E8DCD3D000176D457ED | |
419 | Input = E20106D7CD0DF0761E8DCD3D88E5400076D457ED08000F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A0003 | |
420 | Output = 0C017BC73B227DFCC9BAFA1C41ACC353 | |
421 | ||
422 | MAC = GMAC | |
423 | Algorithm = AES-256-GCM | |
424 | Key = 691D3EE909D7F54167FD1CA0B5D769081F2BDE1AEE655FDBAB80BD5295AE6BE7 | |
425 | IV = F0761E8DCD3D000176D457ED | |
426 | Input = E20106D7CD0DF0761E8DCD3D88E5400076D457ED08000F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A0003 | |
427 | Output = 35217C774BBC31B63166BCF9D4ABED07 | |
428 | ||
429 | MAC = GMAC | |
430 | Algorithm = AES-128-GCM | |
431 | Key = 013FE00B5F11BE7F866D0CBBC55A7A90 | |
432 | IV = 7CFDE9F9E33724C68932D612 | |
433 | Input = 84C5D513D2AAF6E5BBD2727788E523008932D6127CFDE9F9E33724C608000F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F0005 | |
434 | Output = 217867E50C2DAD74C28C3B50ABDF695A | |
435 | ||
436 | MAC = GMAC | |
437 | Algorithm = AES-256-GCM | |
438 | Key = 83C093B58DE7FFE1C0DA926AC43FB3609AC1C80FEE1B624497EF942E2F79A823 | |
439 | IV = 7CFDE9F9E33724C68932D612 | |
440 | Input = 84C5D513D2AAF6E5BBD2727788E523008932D6127CFDE9F9E33724C608000F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F0005 | |
441 | Output = 6EE160E8FAECA4B36C86B234920CA975 | |
442 | ||
443 | MAC = GMAC | |
444 | Algorithm = AES-128-GCM | |
445 | Key = 88EE087FD95DA9FBF6725AA9D757B0CD | |
446 | IV = 7AE8E2CA4EC500012E58495C | |
447 | Input = 68F2E77696CE7AE8E2CA4EC588E541002E58495C08000F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D0007 | |
448 | Output = 07922B8EBCF10BB2297588CA4C614523 | |
449 | ||
450 | MAC = GMAC | |
451 | Algorithm = AES-256-GCM | |
452 | Key = 4C973DBC7364621674F8B5B89E5C15511FCED9216490FB1C1A2CAA0FFE0407E5 | |
453 | IV = 7AE8E2CA4EC500012E58495C | |
454 | Input = 68F2E77696CE7AE8E2CA4EC588E541002E58495C08000F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D0007 | |
455 | Output = 00BDA1B7E87608BCBF470F12157F4C07 | |
456 | ||
457 | ||
6e624a64 SL |
458 | Title = KMAC Tests (From NIST) |
459 | MAC = KMAC128 | |
460 | Key = 404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F | |
461 | Input = 00010203 | |
462 | Custom = "" | |
463 | Output = E5780B0D3EA6F7D3A429C5706AA43A00FADBD7D49628839E3187243F456EE14E | |
464 | Ctrl = xof:0 | |
465 | ||
466 | MAC = KMAC128 | |
467 | Key = 404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F | |
468 | Input = 00010203 | |
469 | Custom = "My Tagged Application" | |
470 | Output = 3B1FBA963CD8B0B59E8C1A6D71888B7143651AF8BA0A7070C0979E2811324AA5 | |
471 | ||
472 | MAC = KMAC128 | |
473 | Key = 404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F | |
474 | Input = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F808182838485868788898A8B8C8D8E8F909192939495969798999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B7B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7 | |
475 | Custom = "My Tagged Application" | |
476 | Output = 1F5B4E6CCA02209E0DCB5CA635B89A15E271ECC760071DFD805FAA38F9729230 | |
477 | Ctrl = outlen:32 | |
478 | ||
479 | MAC = KMAC256 | |
480 | Key = 404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F | |
481 | Input = 00010203 | |
482 | Custom = "My Tagged Application" | |
483 | Output = 20C570C31346F703C9AC36C61C03CB64C3970D0CFC787E9B79599D273A68D2F7F69D4CC3DE9D104A351689F27CF6F5951F0103F33F4F24871024D9C27773A8DD | |
484 | ||
485 | MAC = KMAC256 | |
486 | Key = 404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F | |
487 | Input = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F808182838485868788898A8B8C8D8E8F909192939495969798999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B7B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7 | |
488 | Custom = "" | |
489 | Output = 75358CF39E41494E949707927CEE0AF20A3FF553904C86B08F21CC414BCFD691589D27CF5E15369CBBFF8B9A4C2EB17800855D0235FF635DA82533EC6B759B69 | |
490 | ||
491 | MAC = KMAC256 | |
492 | Key = 404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F | |
493 | Input = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F808182838485868788898A8B8C8D8E8F909192939495969798999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B7B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7 | |
494 | Custom = "My Tagged Application" | |
495 | Output = B58618F71F92E1D56C1B8C55DDD7CD188B97B4CA4D99831EB2699A837DA2E4D970FBACFDE50033AEA585F1A2708510C32D07880801BD182898FE476876FC8965 | |
496 | Ctrl = outlen:64 | |
497 | ||
498 | Title = KMAC XOF Tests (From NIST) | |
499 | ||
500 | MAC = KMAC128 | |
501 | Key = 404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F | |
502 | Input = 00010203 | |
503 | Output = CD83740BBD92CCC8CF032B1481A0F4460E7CA9DD12B08A0C4031178BACD6EC35 | |
504 | Ctrl = xof:1 | |
505 | ||
506 | MAC = KMAC128 | |
507 | Key = 404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F | |
508 | Input = 00010203 | |
509 | Custom = "My Tagged Application" | |
510 | Output = 31A44527B4ED9F5C6101D11DE6D26F0620AA5C341DEF41299657FE9DF1A3B16C | |
511 | Ctrl = xof:1 | |
512 | ||
513 | MAC = KMAC128 | |
514 | Key = 404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F | |
515 | Input = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F808182838485868788898A8B8C8D8E8F909192939495969798999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B7B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7 | |
516 | Custom = "My Tagged Application" | |
517 | Output = 47026C7CD793084AA0283C253EF658490C0DB61438B8326FE9BDDF281B83AE0F | |
518 | Ctrl = xof:1 | |
519 | Ctrl = outlen:32 | |
520 | ||
521 | MAC = KMAC256 | |
522 | Key = 404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F | |
523 | Input = 00010203 | |
524 | Custom = "My Tagged Application" | |
525 | Output = 1755133F1534752AAD0748F2C706FB5C784512CAB835CD15676B16C0C6647FA96FAA7AF634A0BF8FF6DF39374FA00FAD9A39E322A7C92065A64EB1FB0801EB2B | |
526 | Ctrl = xof:1 | |
527 | ||
528 | MAC = KMAC256 | |
529 | Key = 404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F | |
530 | Input = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F808182838485868788898A8B8C8D8E8F909192939495969798999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B7B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7 | |
531 | Custom = "" | |
532 | Output = FF7B171F1E8A2B24683EED37830EE797538BA8DC563F6DA1E667391A75EDC02CA633079F81CE12A25F45615EC89972031D18337331D24CEB8F8CA8E6A19FD98B | |
533 | Ctrl = xof:1 | |
534 | ||
535 | MAC = KMAC256 | |
536 | Key = 404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F | |
537 | Input = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F808182838485868788898A8B8C8D8E8F909192939495969798999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B7B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7 | |
538 | Custom = "My Tagged Application" | |
539 | Output = D5BE731C954ED7732846BB59DBE3A8E30F83E77A4BFF4459F2F1C2B4ECEBB8CE67BA01C62E8AB8578D2D499BD1BB276768781190020A306A97DE281DCC30305D | |
540 | Ctrl = outlen:64 | |
541 | Ctrl = xof:1 | |
542 | ||
543 | ||
5a7bc0be | 544 | Title = Poly1305 Tests (from RFC 7539 and others) |
6b7b3433 RS |
545 | |
546 | MAC = Poly1305 | |
547 | Key = 0000000000000000000000000000000000000000000000000000000000000000 | |
548 | Input = 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
549 | Output = 00000000000000000000000000000000 | |
550 | ||
551 | MAC = Poly1305 | |
552 | Key = 0000000000000000000000000000000036e5f6b5c5e06070f0efca96227a863e | |
553 | Input = 416e79207375626d697373696f6e20746f20746865204945544620696e74656e6465642062792074686520436f6e7472696275746f7220666f72207075626c69636174696f6e20617320616c6c206f722070617274206f6620616e204945544620496e7465726e65742d4472616674206f722052464320616e6420616e792073746174656d656e74206d6164652077697468696e2074686520636f6e74657874206f6620616e204945544620616374697669747920697320636f6e7369646572656420616e20224945544620436f6e747269627574696f6e222e20537563682073746174656d656e747320696e636c756465206f72616c2073746174656d656e747320696e20494554462073657373696f6e732c2061732077656c6c206173207772697474656e20616e6420656c656374726f6e696320636f6d6d756e69636174696f6e73206d61646520617420616e792074696d65206f7220706c6163652c207768696368206172652061646472657373656420746f | |
554 | Output = 36e5f6b5c5e06070f0efca96227a863e | |
555 | ||
556 | MAC = Poly1305 | |
557 | Key = 36e5f6b5c5e06070f0efca96227a863e00000000000000000000000000000000 | |
558 | Input = 416e79207375626d697373696f6e20746f20746865204945544620696e74656e6465642062792074686520436f6e7472696275746f7220666f72207075626c69636174696f6e20617320616c6c206f722070617274206f6620616e204945544620496e7465726e65742d4472616674206f722052464320616e6420616e792073746174656d656e74206d6164652077697468696e2074686520636f6e74657874206f6620616e204945544620616374697669747920697320636f6e7369646572656420616e20224945544620436f6e747269627574696f6e222e20537563682073746174656d656e747320696e636c756465206f72616c2073746174656d656e747320696e20494554462073657373696f6e732c2061732077656c6c206173207772697474656e20616e6420656c656374726f6e696320636f6d6d756e69636174696f6e73206d61646520617420616e792074696d65206f7220706c6163652c207768696368206172652061646472657373656420746f | |
559 | Output = f3477e7cd95417af89a6b8794c310cf0 | |
560 | ||
561 | MAC = Poly1305 | |
562 | Key = 1c9240a5eb55d38af333888604f6b5f0473917c1402b80099dca5cbc207075c0 | |
563 | Input = 2754776173206272696c6c69672c20616e642074686520736c6974687920746f7665730a446964206779726520616e642067696d626c6520696e2074686520776162653a0a416c6c206d696d737920776572652074686520626f726f676f7665732c0a416e6420746865206d6f6d65207261746873206f757467726162652e | |
564 | Output = 4541669a7eaaee61e708dc7cbcc5eb62 | |
565 | ||
566 | # If one uses 130-bit partial reduction, does the code handle the case where partially reduced final result is not fully reduced? | |
567 | MAC = Poly1305 | |
568 | Key = 0200000000000000000000000000000000000000000000000000000000000000 | |
569 | Input = FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF | |
570 | Output = 03000000000000000000000000000000 | |
571 | ||
572 | # What happens if addition of s overflows modulo 2^128? | |
573 | MAC = Poly1305 | |
574 | Key = 02000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF | |
575 | Input = 02000000000000000000000000000000 | |
576 | Output = 03000000000000000000000000000000 | |
577 | ||
578 | # What happens if data limb is all ones and there is carry from lower limb? | |
579 | MAC = Poly1305 | |
580 | Key = 0100000000000000000000000000000000000000000000000000000000000000 | |
581 | Input = FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF11000000000000000000000000000000 | |
582 | Output = 05000000000000000000000000000000 | |
583 | ||
584 | # What happens if final result from polynomial part is exactly 2^130-5? | |
585 | MAC = Poly1305 | |
586 | Key = 0100000000000000000000000000000000000000000000000000000000000000 | |
587 | Input = FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE01010101010101010101010101010101 | |
588 | Output = 00000000000000000000000000000000 | |
589 | ||
590 | # What happens if final result from polynomial part is exactly 2^130-6? | |
591 | MAC = Poly1305 | |
592 | Key = 0200000000000000000000000000000000000000000000000000000000000000 | |
593 | Input = FDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF | |
594 | Output = FAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF | |
595 | ||
596 | # Taken from poly1305_internal_test.c | |
597 | # More RFC7539 | |
598 | ||
599 | MAC = Poly1305 | |
600 | Input = 43727970746f6772617068696320466f72756d2052657365617263682047726f7570 | |
601 | Key = 85d6be7857556d337f4452fe42d506a80103808afb0db2fd4abff6af4149f51b | |
602 | Output = a8061dc1305136c6c22b8baf0c0127a9 | |
603 | ||
604 | # test vectors from "The Poly1305-AES message-authentication code" | |
605 | ||
606 | MAC = Poly1305 | |
607 | Input = f3f6 | |
608 | Key = 851fc40c3467ac0be05cc20404f3f700580b3b0f9447bb1e69d095b5928b6dbc | |
609 | Output = f4c633c3044fc145f84f335cb81953de | |
610 | ||
611 | # No input? | |
612 | # MAC = Poly1305 | |
613 | # Input = | |
614 | # Key = a0f3080000f46400d0c7e9076c834403dd3fab2251f11ac759f0887129cc2ee7 | |
615 | # Output = dd3fab2251f11ac759f0887129cc2ee7 | |
616 | ||
617 | MAC = Poly1305 | |
618 | Input = 663cea190ffb83d89593f3f476b6bc24d7e679107ea26adb8caf6652d0656136 | |
619 | Key = 48443d0bb0d21109c89a100b5ce2c20883149c69b561dd88298a1798b10716ef | |
620 | Output = 0ee1c16bb73f0f4fd19881753c01cdbe | |
621 | ||
622 | MAC = Poly1305 | |
623 | Input = ab0812724a7f1e342742cbed374d94d136c6b8795d45b3819830f2c04491faf0990c62e48b8018b2c3e4a0fa3134cb67fa83e158c994d961c4cb21095c1bf9 | |
624 | Key = 12976a08c4426d0ce8a82407c4f4820780f8c20aa71202d1e29179cbcb555a57 | |
625 | Output = 5154ad0d2cb26e01274fc51148491f1b | |
626 | ||
627 | # self-generated vectors exercise "significant" length such that* are handled by different code paths | |
628 | ||
629 | MAC = Poly1305 | |
630 | Input = ab0812724a7f1e342742cbed374d94d136c6b8795d45b3819830f2c04491faf0990c62e48b8018b2c3e4a0fa3134cb67fa83e158c994d961c4cb21095c1bf9af | |
631 | Key = 12976a08c4426d0ce8a82407c4f4820780f8c20aa71202d1e29179cbcb555a57 | |
632 | Output = 812059a5da198637cac7c4a631bee466 | |
633 | ||
634 | MAC = Poly1305 | |
635 | Input = ab0812724a7f1e342742cbed374d94d136c6b8795d45b3819830f2c04491faf0990c62e48b8018b2c3e4a0fa3134cb67 | |
636 | Key = 12976a08c4426d0ce8a82407c4f4820780f8c20aa71202d1e29179cbcb555a57 | |
637 | Output = 5b88d7f6228b11e2e28579a5c0c1f761 | |
638 | ||
639 | MAC = Poly1305 | |
640 | Input = ab0812724a7f1e342742cbed374d94d136c6b8795d45b3819830f2c04491faf0990c62e48b8018b2c3e4a0fa3134cb67fa83e158c994d961c4cb21095c1bf9af663cea190ffb83d89593f3f476b6bc24d7e679107ea26adb8caf6652d0656136 | |
641 | Key = 12976a08c4426d0ce8a82407c4f4820780f8c20aa71202d1e29179cbcb555a57 | |
642 | Output = bbb613b2b6d753ba07395b916aaece15 | |
643 | ||
644 | MAC = Poly1305 | |
645 | Input = ab0812724a7f1e342742cbed374d94d136c6b8795d45b3819830f2c04491faf0990c62e48b8018b2c3e4a0fa3134cb67fa83e158c994d961c4cb21095c1bf9af48443d0bb0d21109c89a100b5ce2c20883149c69b561dd88298a1798b10716ef663cea190ffb83d89593f3f476b6bc24 | |
646 | Key = 12976a08c4426d0ce8a82407c4f4820780f8c20aa71202d1e29179cbcb555a57 | |
647 | Output = c794d7057d1778c4bbee0a39b3d97342 | |
648 | ||
649 | MAC = Poly1305 | |
650 | Input = ab0812724a7f1e342742cbed374d94d136c6b8795d45b3819830f2c04491faf0990c62e48b8018b2c3e4a0fa3134cb67fa83e158c994d961c4cb21095c1bf9af48443d0bb0d21109c89a100b5ce2c20883149c69b561dd88298a1798b10716ef663cea190ffb83d89593f3f476b6bc24d7e679107ea26adb8caf6652d0656136 | |
651 | Key = 12976a08c4426d0ce8a82407c4f4820780f8c20aa71202d1e29179cbcb555a57 | |
652 | Output = ffbcb9b371423152d7fca5ad042fbaa9 | |
653 | ||
654 | MAC = Poly1305 | |
655 | Input = ab0812724a7f1e342742cbed374d94d136c6b8795d45b3819830f2c04491faf0990c62e48b8018b2c3e4a0fa3134cb67fa83e158c994d961c4cb21095c1bf9af48443d0bb0d21109c89a100b5ce2c20883149c69b561dd88298a1798b10716ef663cea190ffb83d89593f3f476b6bc24d7e679107ea26adb8caf6652d0656136812059a5da198637cac7c4a631bee466 | |
656 | Key = 12976a08c4426d0ce8a82407c4f4820780f8c20aa71202d1e29179cbcb555a57 | |
657 | Output = 069ed6b8ef0f207b3e243bb1019fe632 | |
658 | ||
659 | MAC = Poly1305 | |
660 | Input = ab0812724a7f1e342742cbed374d94d136c6b8795d45b3819830f2c04491faf0990c62e48b8018b2c3e4a0fa3134cb67fa83e158c994d961c4cb21095c1bf9af48443d0bb0d21109c89a100b5ce2c20883149c69b561dd88298a1798b10716ef663cea190ffb83d89593f3f476b6bc24d7e679107ea26adb8caf6652d0656136812059a5da198637cac7c4a631bee4665b88d7f6228b11e2e28579a5c0c1f761 | |
661 | Key = 12976a08c4426d0ce8a82407c4f4820780f8c20aa71202d1e29179cbcb555a57 | |
662 | Output = cca339d9a45fa2368c2c68b3a4179133 | |
663 | ||
664 | MAC = Poly1305 | |
665 | Input = ab0812724a7f1e342742cbed374d94d136c6b8795d45b3819830f2c04491faf0990c62e48b8018b2c3e4a0fa3134cb67fa83e158c994d961c4cb21095c1bf9af48443d0bb0d21109c89a100b5ce2c20883149c69b561dd88298a1798b10716ef663cea190ffb83d89593f3f476b6bc24d7e679107ea26adb8caf6652d0656136812059a5da198637cac7c4a631bee4665b88d7f6228b11e2e28579a5c0c1f761ab0812724a7f1e342742cbed374d94d136c6b8795d45b3819830f2c04491faf0990c62e48b8018b2c3e4a0fa3134cb67fa83e158c994d961c4cb21095c1bf9af48443d0bb0d21109c89a100b5ce2c20883149c69b561dd88298a1798b10716ef663cea190ffb83d89593f3f476b6bc24d7e679107ea26adb8caf6652d0656136 | |
666 | Key = 12976a08c4426d0ce8a82407c4f4820780f8c20aa71202d1e29179cbcb555a57 | |
667 | Output = 53f6e828a2f0fe0ee815bf0bd5841a34 | |
668 | ||
669 | MAC = Poly1305 | |
670 | Input = ab0812724a7f1e342742cbed374d94d136c6b8795d45b3819830f2c04491faf0990c62e48b8018b2c3e4a0fa3134cb67fa83e158c994d961c4cb21095c1bf9af48443d0bb0d21109c89a100b5ce2c20883149c69b561dd88298a1798b10716ef663cea190ffb83d89593f3f476b6bc24d7e679107ea26adb8caf6652d0656136812059a5da198637cac7c4a631bee4665b88d7f6228b11e2e28579a5c0c1f761ab0812724a7f1e342742cbed374d94d136c6b8795d45b3819830f2c04491faf0990c62e48b8018b2c3e4a0fa3134cb67fa83e158c994d961c4cb21095c1bf9af48443d0bb0d21109c89a100b5ce2c20883149c69b561dd88298a1798b10716ef663cea190ffb83d89593f3f476b6bc24d7e679107ea26adb8caf6652d0656136812059a5da198637cac7c4a631bee4665b88d7f6228b11e2e28579a5c0c1f761 | |
671 | Key = 12976a08c4426d0ce8a82407c4f4820780f8c20aa71202d1e29179cbcb555a57 | |
672 | Output = b846d44e9bbd53cedffbfbb6b7fa4933 | |
673 | ||
674 | # 4th power of the key spills to 131th bit in SIMD key setup | |
675 | ||
676 | MAC = Poly1305 | |
677 | Input = ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff | |
678 | Key = ad628107e8351d0f2c231a05dc4a410600000000000000000000000000000000 | |
679 | Output = 07145a4c02fe5fa32036de68fabe9066 | |
680 | ||
681 | # poly1305_ieee754.c failed this in final stage | |
682 | ||
683 | MAC = Poly1305 | |
684 | Input = 842364e156336c0998b933a6237726180d9e3fdcbde4cd5d17080fc3beb49614d7122c037463ff104d73f19c12704628d417c4c54a3fe30d3c3d7714382d43b0382a50a5dee54be844b076e8df88201a1cd43b90eb21643fa96f39b518aa8340c942ff3c31baf7c9bdbf0f31ae3fa096bf8c63030609829fe72e179824890bc8e08c315c1cce2a83144dbbff09f74e3efc770b54d0984a8f19b14719e63635641d6b1eedf63efbf080e1783d32445412114c20de0b837a0dfa33d6b82825fff44c9a70ea54ce47f07df698e6b03323b53079364a5fc3e9dd034392bdde86dccdda94321c5e44060489336cb65bf3989c36f7282c2f5d2b882c171e74 | |
685 | Key = 95d5c005503e510d8cd0aa072c4a4d066eabc52d11653df47fbf63ab198bcc26 | |
686 | Output = f248312e578d9d58f8b7bb4d19105431 | |
687 | ||
688 | # AVX2 in poly1305-x86.pl failed this with 176+32 split | |
689 | ||
690 | MAC = Poly1305 | |
691 | Input = 248ac31085b6c2adaaa38259a0d7192c5c35d1bb4ef39ad94c38d1c82479e2dd2159a077024b0589bc8a20101b506f0a1ad0bbab76e83a83f1b94be6beae74e874cab692c5963a75436b776121ec9f62399a3e66b2d22707dae81933b6277f3c8516bcbe26dbbd86f373103d7cf4cad1888c952118fbfbd0d7b4bedc4ae4936aff91157e7aa47c54442ea78d6ac251d324a0fbe49d89cc3521b66d16e9c66a3709894e4eb0a4eedc4ae19468e66b81f271351b1d921ea551047abcc6b87a901fde7db79fa1818c11336dbc07244a40eb | |
692 | Key = 000102030405060708090a0b0c0d0e0f00000000000000000000000000000000 | |
693 | Output = bc939bc5281480fa99c6d68c258ec42f | |
694 | ||
695 | # test vectors from Google | |
696 | ||
697 | # No input? | |
698 | # MAC = Poly1305 | |
699 | # Input = | |
700 | # Key = c8afaac331ee372cd6082de134943b174710130e9f6fea8d72293850a667d86c | |
701 | # Output = 4710130e9f6fea8d72293850a667d86c | |
702 | ||
703 | MAC = Poly1305 | |
704 | Input = 48656c6c6f20776f726c6421 | |
705 | Key = 746869732069732033322d62797465206b657920666f7220506f6c7931333035 | |
706 | Output = a6f745008f81c916a20dcc74eef2b2f0 | |
707 | ||
708 | MAC = Poly1305 | |
709 | Input = 0000000000000000000000000000000000000000000000000000000000000000 | |
710 | Key = 746869732069732033322d62797465206b657920666f7220506f6c7931333035 | |
711 | Output = 49ec78090e481ec6c26b33b91ccc0307 | |
712 | ||
713 | MAC = Poly1305 | |
714 | Input = 89dab80b7717c1db5db437860a3f70218e93e1b8f461fb677f16f35f6f87e2a91c99bc3a47ace47640cc95c345be5ecca5a3523c35cc01893af0b64a620334270372ec12482d1b1e363561698a578b359803495bb4e2ef1930b17a5190b580f141300df30adbeca28f6427a8bc1a999fd51c554a017d095d8c3e3127daf9f595 | |
715 | Key = 2d773be37adb1e4d683bf0075e79c4ee037918535a7f99ccb7040fb5f5f43aea | |
716 | Output = c85d15ed44c378d6b00e23064c7bcd51 | |
717 | ||
718 | MAC = Poly1305 | |
719 | Input = 000000000000000b170303020000000006db1f1f368d696a810a349c0c714c9a5e7850c2407d721acded95e018d7a85266a6e1289cdb4aeb18da5ac8a2b0026d24a59ad485227f3eaedbb2e7e35e1c66cd60f9abf716dcc9ac42682dd7dab287a7024c4eefc321cc0574e16793e37cec03c5bda42b54c114a80b57af26416c7be742005e20855c73e21dc8e2edc9d435cb6f6059280011c270b71570051c1c9b3052126620bc1e2730fa066c7a509d53c60e5ae1b40aa6e39e49669228c90eecb4a50db32a50bc49e90b4f4b359a1dfd11749cd3867fcf2fb7bb6cd4738f6a4ad6f7ca5058f7618845af9f020f6c3b967b8f4cd4a91e2813b507ae66f2d35c18284f7292186062e10fd5510d18775351ef334e7634ab4743f5b68f49adcab384d3fd75f7390f4006ef2a295c8c7a076ad54546cd25d2107fbe1436c840924aaebe5b370893cd63d1325b8616fc4810886bc152c53221b6df373119393255ee72bcaa880174f1717f9184fa91646f17a24ac55d16bfddca9581a92eda479201f0edbf633600d6066d1ab36d5d2415d71351bbcd608a25108d25641992c1f26c531cf9f90203bc4cc19f5927d834b0a47116d3884bbb164b8ec883d1ac832e56b3918a98601a08d171881541d594db399c6ae6151221745aec814c45b0b05b565436fd6f137aa10a0c0b643761dbd6f9a9dcb99b1a6e690854ce0769cde39761d82fcdec15f0d92d7d8e94ade8eb83fbe0 | |
720 | Key = 99e5822dd4173c995e3dae0ddefb97743fde3b080134b39f76e9bf8d0e88d546 | |
721 | Output = 2637408fe13086ea73f971e3425e2820 | |
722 | ||
723 | # test vectors from Hanno Bock | |
724 | ||
725 | MAC = Poly1305 | |
726 | Input = cccccccccccccccccccccccccccccccccccccccccccccccccc80ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccceccccccccccccccccccccccccccccccccccccc5cccccccccccccccccccccccccccccccccccccccccce3ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccaccccccccccccccccccccce6cccccccccc000000afccccccccccccccccccfffffff5000000000000000000000000000000000000000000000000000000ffffffe70000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000719205a8521dfc | |
727 | Key = 7f1b02640000000000000000000000000000000000000000cccccccccccccccc | |
728 | Output = 8559b876eceed66eb37798c0457baff9 | |
729 | ||
730 | MAC = Poly1305 | |
731 | Input = aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa000000000000000000800264 | |
732 | Key = e00016000000000000000000000000000000aaaaaaaaaaaaaaaaaaaaaaaaaaaa | |
733 | Output = 00bd1258978e205444c9aaaa82006fed | |
734 | ||
735 | MAC = Poly1305 | |
736 | Input = 02fc | |
737 | Key = 0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c | |
738 | Output = 06120c0c0c0c0c0c0c0c0c0c0c0c0c0c | |
739 | ||
740 | MAC = Poly1305 | |
741 | Input = 7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7a7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b5c7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b6e7b007b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7a7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b5c7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b6e7b001300000000b300000000000000000000000000000000000000000000f20000000000000000000000000000000000002000efff0009000000000000000000000000100000000009000000640000000000000000000000001300000000b300000000000000000000000000000000000000000000f20000000000000000000000000000000000002000efff00090000000000000000007a000010000000000900000064000000000000000000000000000000000000000000000000fc | |
742 | Key = 00ff000000000000000000000000000000000000001e00000000000000007b7b | |
743 | Output = 33205bbf9e9f8f7212ab9e2ab9b7e4a5 | |
744 | ||
745 | MAC = Poly1305 | |
746 | Input = 77777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777ffffffe9e9acacacacacacacacacacac0000acacec0100acacac2caca2acacacacacacacacacacac64f2 | |
747 | Key = 0000007f0000007f01000020000000000000cf77777777777777777777777777 | |
748 | Output = 02ee7c8c546ddeb1a467e4c3981158b9 | |
749 | ||
750 | # test vectors from Andrew Moon - nacl | |
751 | ||
752 | MAC = Poly1305 | |
753 | Input = 8e993b9f48681273c29650ba32fc76ce48332ea7164d96a4476fb8c531a1186ac0dfc17c98dce87b4da7f011ec48c97271d2c20f9b928fe2270d6fb863d51738b48eeee314a7cc8ab932164548e526ae90224368517acfeabd6bb3732bc0e9da99832b61ca01b6de56244a9e88d5f9b37973f622a43d14a6599b1f654cb45a74e355a5 | |
754 | Key = eea6a7251c1e72916d11c2cb214d3c252539121d8e234e652d651fa4c8cff880 | |
755 | Output = f3ffc7703f9400e52a7dfb4b3d3305d9 | |
756 | ||
757 | # wrap 2^130-5 | |
758 | MAC = Poly1305 | |
759 | Input = ffffffffffffffffffffffffffffffff | |
760 | Key = 0200000000000000000000000000000000000000000000000000000000000000 | |
761 | Output = 03000000000000000000000000000000 | |
762 | ||
763 | # wrap 2^128 | |
764 | MAC = Poly1305 | |
765 | Input = 02000000000000000000000000000000 | |
766 | Key = 02000000000000000000000000000000ffffffffffffffffffffffffffffffff | |
767 | Output = 03000000000000000000000000000000 | |
768 | ||
769 | # limb carry | |
770 | MAC = Poly1305 | |
771 | Input = fffffffffffffffffffffffffffffffff0ffffffffffffffffffffffffffffff11000000000000000000000000000000 | |
772 | Key = 0100000000000000000000000000000000000000000000000000000000000000 | |
773 | Output = 05000000000000000000000000000000 | |
774 | ||
775 | # 2^130-5 | |
776 | MAC = Poly1305 | |
777 | Input = fffffffffffffffffffffffffffffffffbfefefefefefefefefefefefefefefe01010101010101010101010101010101 | |
778 | Key = 0100000000000000000000000000000000000000000000000000000000000000 | |
779 | Output = 00000000000000000000000000000000 | |
780 | ||
781 | # 2^130-6 | |
782 | MAC = Poly1305 | |
783 | Input = fdffffffffffffffffffffffffffffff | |
784 | Key = 0200000000000000000000000000000000000000000000000000000000000000 | |
785 | Output = faffffffffffffffffffffffffffffff | |
786 | ||
787 | # 5*H+L reduction intermediate | |
788 | MAC = Poly1305 | |
789 | Input = e33594d7505e43b900000000000000003394d7505e4379cd01000000000000000000000000000000000000000000000001000000000000000000000000000000 | |
790 | Key = 0100000000000000040000000000000000000000000000000000000000000000 | |
791 | Output = 14000000000000005500000000000000 | |
792 | ||
793 | # 5*H+L reduction final | |
794 | MAC = Poly1305 | |
795 | Input = e33594d7505e43b900000000000000003394d7505e4379cd010000000000000000000000000000000000000000000000 | |
796 | Key = 0100000000000000040000000000000000000000000000000000000000000000 | |
797 | Output = 13000000000000000000000000000000 | |
798 | ||
c1da4b2a PY |
799 | # Here are 4 duplicated cases for Poly1305 by EVP_PKEY |
800 | MAC = Poly1305 by EVP_PKEY | |
801 | Key = 0000000000000000000000000000000000000000000000000000000000000000 | |
802 | Input = 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
803 | Output = 00000000000000000000000000000000 | |
804 | ||
805 | MAC = Poly1305 by EVP_PKEY | |
806 | Key = 0000000000000000000000000000000036e5f6b5c5e06070f0efca96227a863e | |
807 | Input = 416e79207375626d697373696f6e20746f20746865204945544620696e74656e6465642062792074686520436f6e7472696275746f7220666f72207075626c69636174696f6e20617320616c6c206f722070617274206f6620616e204945544620496e7465726e65742d4472616674206f722052464320616e6420616e792073746174656d656e74206d6164652077697468696e2074686520636f6e74657874206f6620616e204945544620616374697669747920697320636f6e7369646572656420616e20224945544620436f6e747269627574696f6e222e20537563682073746174656d656e747320696e636c756465206f72616c2073746174656d656e747320696e20494554462073657373696f6e732c2061732077656c6c206173207772697474656e20616e6420656c656374726f6e696320636f6d6d756e69636174696f6e73206d61646520617420616e792074696d65206f7220706c6163652c207768696368206172652061646472657373656420746f | |
808 | Output = 36e5f6b5c5e06070f0efca96227a863e | |
809 | ||
810 | MAC = Poly1305 by EVP_PKEY | |
811 | Key = 36e5f6b5c5e06070f0efca96227a863e00000000000000000000000000000000 | |
812 | Input = 416e79207375626d697373696f6e20746f20746865204945544620696e74656e6465642062792074686520436f6e7472696275746f7220666f72207075626c69636174696f6e20617320616c6c206f722070617274206f6620616e204945544620496e7465726e65742d4472616674206f722052464320616e6420616e792073746174656d656e74206d6164652077697468696e2074686520636f6e74657874206f6620616e204945544620616374697669747920697320636f6e7369646572656420616e20224945544620436f6e747269627574696f6e222e20537563682073746174656d656e747320696e636c756465206f72616c2073746174656d656e747320696e20494554462073657373696f6e732c2061732077656c6c206173207772697474656e20616e6420656c656374726f6e696320636f6d6d756e69636174696f6e73206d61646520617420616e792074696d65206f7220706c6163652c207768696368206172652061646472657373656420746f | |
813 | Output = f3477e7cd95417af89a6b8794c310cf0 | |
814 | ||
815 | MAC = Poly1305 by EVP_PKEY | |
816 | Key = 1c9240a5eb55d38af333888604f6b5f0473917c1402b80099dca5cbc207075c0 | |
817 | Input = 2754776173206272696c6c69672c20616e642074686520736c6974687920746f7665730a446964206779726520616e642067696d626c6520696e2074686520776162653a0a416c6c206d696d737920776572652074686520626f726f676f7665732c0a416e6420746865206d6f6d65207261746873206f757467726162652e | |
818 | Output = 4541669a7eaaee61e708dc7cbcc5eb62 |