1#
2# Copyright 2001-2022 The OpenSSL Project Authors. All Rights Reserved.
3#
4# Licensed under the Apache License 2.0 (the "License").  You may not use
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 are ignored.
13# The keyword Availablein must appear before the test name if needed.
14
15Title = HMAC tests (from RFC2104 and others)
16
17Availablein = default
18MAC = HMAC
19Algorithm = MD5
20Key = 0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b
21Input = "Hi There"
22Output = 9294727a3638bb1c13f48ef8158bfc9d
23OutputSize = 16
24BlockSize = 64
25
26Availablein = default
27MAC = HMAC
28Algorithm = MD5
29Key = "Jefe"
30Input = "what do ya want for nothing?"
31Output = 750c783e6ab0b503eaa86e310a5db738
32OutputSize = 16
33
34Availablein = default
35MAC = HMAC
36Algorithm = MD5
37Key = AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
38Input = DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
39Output = 56be34521d144c88dbb8c733f0e8b3f6
40BlockSize = 64
41
42Title = SHA1
43
44# HMAC tests from NIST test data
45
46MAC = HMAC
47Algorithm = SHA1
48Input = "Sample message for keylen=blocklen"
49Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F
50Output = 5FD596EE78D5553C8FF4E72D266DFD192366DA29
51OutputSize = 20
52BlockSize = 64
53
54MAC = HMAC
55Algorithm = SHA1
56Input = "Sample message for keylen<blocklen"
57Key = 000102030405060708090A0B0C0D0E0F10111213
58Output = 4C99FF0CB1B31BD33F8431DBAF4D17FCD356A807
59OutputSize = 20
60
61MAC = HMAC
62Algorithm = SHA1
63Input = "Sample message for keylen=blocklen"
64Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F60616263
65Output = 2D51B2F7750E410584662E38F133435F4C4FD42A
66BlockSize = 64
67
68Title = SHA2
69
70MAC = HMAC
71Algorithm = SHA224
72Input = "Sample message for keylen=blocklen"
73Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F
74Output = C7405E3AE058E8CD30B08B4140248581ED174CB34E1224BCC1EFC81B
75OutputSize = 28
76BlockSize = 64
77
78MAC = HMAC
79Algorithm = SHA224
80Input = "Sample message for keylen<blocklen"
81Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B
82Output = E3D249A8CFB67EF8B7A169E9A0A599714A2CECBA65999A51BEB8FBBE
83
84MAC = HMAC
85Algorithm = SHA224
86Input = "Sample message for keylen=blocklen"
87Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F60616263
88Output = 91C52509E5AF8531601AE6230099D90BEF88AAEFB961F4080ABC014D
89
90MAC = HMAC
91Algorithm = SHA256
92Input = "Sample message for keylen=blocklen"
93Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F
94Output = 8BB9A1DB9806F20DF7F77B82138C7914D174D59E13DC4D0169C9057B133E1D62
95OutputSize = 32
96BlockSize = 64
97
98MAC = HMAC
99Algorithm = SHA256
100Input = "Sample message for keylen<blocklen"
101Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F
102Output = A28CF43130EE696A98F14A37678B56BCFCBDD9E5CF69717FECF5480F0EBDF790
103
104MAC = HMAC
105Algorithm = SHA256
106Input = "Sample message for keylen=blocklen"
107Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F60616263
108Output = BDCCB6C72DDEADB500AE768386CB38CC41C63DBB0878DDB9C7A38A431B78378D
109
110MAC = HMAC
111Algorithm = SHA384
112Input = "Sample message for keylen=blocklen"
113Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F
114Output = 63C5DAA5E651847CA897C95814AB830BEDEDC7D25E83EEF9195CD45857A37F448947858F5AF50CC2B1B730DDF29671A9
115OutputSize = 48
116BlockSize = 128
117
118MAC = HMAC
119Algorithm = SHA384
120Input = "Sample message for keylen<blocklen"
121Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F
122Output = 6EB242BDBB582CA17BEBFA481B1E23211464D2B7F8C20B9FF2201637B93646AF5AE9AC316E98DB45D9CAE773675EEED0
123
124MAC = HMAC
125Algorithm = SHA384
126Input = "Sample message for keylen=blocklen"
127Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F808182838485868788898A8B8C8D8E8F909192939495969798999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B7B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7
128Output = 5B664436DF69B0CA22551231A3F0A3D5B4F97991713CFA84BFF4D0792EFF96C27DCCBBB6F79B65D548B40E8564CEF594
129
130MAC = HMAC
131Algorithm = SHA512
132Input = "Sample message for keylen=blocklen"
133Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F
134Output = FC25E240658CA785B7A811A8D3F7B4CA48CFA26A8A366BF2CD1F836B05FCB024BD36853081811D6CEA4216EBAD79DA1CFCB95EA4586B8A0CE356596A55FB1347
135OutputSize = 64
136BlockSize = 128
137
138MAC = HMAC
139Algorithm = SHA512
140Input = "Sample message for keylen<blocklen"
141Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F
142Output = FD44C18BDA0BB0A6CE0E82B031BF2818F6539BD56EC00BDC10A8A2D730B3634DE2545D639B0F2CF710D0692C72A1896F1F211C2B922D1A96C392E07E7EA9FEDC
143
144MAC = HMAC
145Algorithm = SHA512
146Input = "Sample message for keylen=blocklen"
147Key = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F808182838485868788898A8B8C8D8E8F909192939495969798999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B7B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7
148Output = D93EC8D2DE1AD2A9957CB9B83F14E76AD6B5E0CCE285079A127D3B14BCCB7AA7286D4AC0D4CE64215F2BC9E6870B33D97438BE4AAA20CDA5C5A912B48B8E27F3
149
150Title = SHA3
151
152# NIST's test vectors
153
154MAC = HMAC
155Algorithm = SHA3-224
156Input = "Sample message for keylen<blocklen"
157Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b
158Output = 332cfd59347fdb8e576e77260be4aba2d6dc53117b3bfb52c6d18c04
159OutputSize = 28
160BlockSize = 144
161
162MAC = HMAC
163Algorithm = SHA3-224
164Input = "Sample message for keylen=blocklen"
165Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f
166Output = d8b733bcf66c644a12323d564e24dcf3fc75f231f3b67968359100c7
167
168MAC = HMAC
169Algorithm = SHA3-224
170Input = "Sample message for keylen>blocklen"
171Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaab
172Output = 078695eecc227c636ad31d063a15dd05a7e819a66ec6d8de1e193e59
173
174MAC = HMAC
175Algorithm = SHA3-256
176Input = "Sample message for keylen<blocklen"
177Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f
178Output = 4fe8e202c4f058e8dddc23d8c34e467343e23555e24fc2f025d598f558f67205
179OutputSize = 32
180BlockSize = 136
181
182MAC = HMAC
183Algorithm = SHA3-256
184Input = "Sample message for keylen=blocklen"
185Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f8081828384858687
186Output = 68b94e2e538a9be4103bebb5aa016d47961d4d1aa906061313b557f8af2c3faa
187
188MAC = HMAC
189Algorithm = SHA3-256
190Input = "Sample message for keylen>blocklen"
191Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7
192Output = 9bcf2c238e235c3ce88404e813bd2f3a97185ac6f238c63d6229a00b07974258
193
194MAC = HMAC
195Algorithm = SHA3-384
196Input = "Sample message for keylen<blocklen"
197Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f
198Output = d588a3c51f3f2d906e8298c1199aa8ff6296218127f6b38a90b6afe2c5617725bc99987f79b22a557b6520db710b7f42
199OutputSize = 48
200BlockSize = 104
201
202MAC = HMAC
203Algorithm = SHA3-384
204Input = "Sample message for keylen=blocklen"
205Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f6061626364656667
206Output = a27d24b592e8c8cbf6d4ce6fc5bf62d8fc98bf2d486640d9eb8099e24047837f5f3bffbe92dcce90b4ed5b1e7e44fa90
207
208MAC = HMAC
209Algorithm = SHA3-384
210Input = "Sample message for keylen>blocklen"
211Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f9091929394959697
212Output = e5ae4c739f455279368ebf36d4f5354c95aa184c899d3870e460ebc288ef1f9470053f73f7c6da2a71bcaec38ce7d6ac
213
214MAC = HMAC
215Algorithm = SHA3-512
216Input = "Sample message for keylen<blocklen"
217Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f
218Output = 4efd629d6c71bf86162658f29943b1c308ce27cdfa6db0d9c3ce81763f9cbce5f7ebe9868031db1a8f8eb7b6b95e5c5e3f657a8996c86a2f6527e307f0213196
219OutputSize = 64
220BlockSize = 72
221
222MAC = HMAC
223Algorithm = SHA3-512
224Input = "Sample message for keylen=blocklen"
225Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f4041424344454647
226Output = 544e257ea2a3e5ea19a590e6a24b724ce6327757723fe2751b75bf007d80f6b360744bf1b7a88ea585f9765b47911976d3191cf83c039f5ffab0d29cc9d9b6da
227
228MAC = HMAC by EVP_PKEY
229Algorithm = SHA3-512
230Input = "Sample message for keylen>blocklen"
231Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f8081828384858687
232Output = 5f464f5e5b7848e3885e49b2c385f0694985d0e38966242dc4a5fe3fea4b37d46b65ceced5dcf59438dd840bab22269f0ba7febdb9fcf74602a35666b2a32915
233
234Title = HMAC self generated tests
235
236MAC = HMAC
237Algorithm = SHAKE128
238Input = "Test that SHAKE128 fails"
239Key = 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f
240Result = MAC_INIT_ERROR
241
242Title = CMAC tests (from FIPS module)
243
244MAC = CMAC
245Algorithm = AES-128-CBC
246Key = 77A77FAF290C1FA30C683DF16BA7A77B
247Input = 020683E1F0392F4CAC54318B6029259E9C553DBC4B6AD998E64D58E4E7DC2E13
248Output = FBFEA41BF9740CB501F1292C21CEBB40
249
250MAC = CMAC by EVP_PKEY
251Algorithm = AES-192-CBC
252Key = 7B32391369AA4CA97558095BE3C3EC862BD057CEF1E32D62
253Input =
254Output = E4D9340B03E67DEFD4969CC1ED3735E6
255
256MAC = CMAC
257Algorithm = AES-256-CBC
258Key = 0B122AC8F34ED1FE082A3625D157561454167AC145A10BBF77C6A70596D574F1
259Input = 498B53FDEC87EDCBF07097DCCDE93A084BAD7501A224E388DF349CE18959FE8485F8AD1537F0D896EA73BEDC7214713F
260Output = F62C46329B41085625669BAF51DEA66A
261
262Title = GMAC Tests (from NIST)
263
264MAC = GMAC
265Algorithm = AES-128-GCM
266Key = 77BE63708971C4E240D1CB79E8D77FEB
267IV = E0E00F19FED7BA0136A797F3
268Input = 7A43EC1D9C0A5A78A0B16533A6213CAB
269Output = 209FCC8D3675ED938E9C7166709DD946
270
271Title = GMAC Tests (from http://www.ieee802.org/1/files/public/docs2011/bn-randall-test-vectors-0511-v1.pdf)
272
273MAC = GMAC
274Algorithm = AES-128-GCM
275Key = AD7A2BD03EAC835A6F620FDCB506B345
276IV = 12153524C0895E81B2C28465
277Input = D609B1F056637A0D46DF998D88E5222AB2C2846512153524C0895E8108000F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F30313233340001
278Output = F09478A9B09007D06F46E9B6A1DA25DD
279
280MAC = GMAC
281Algorithm = AES-256-GCM
282Key = E3C08A8F06C6E3AD95A70557B23F75483CE33021A9C72B7025666204C69C0B72
283IV = 12153524C0895E81B2C28465
284Input = D609B1F056637A0D46DF998D88E5222AB2C2846512153524C0895E8108000F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F30313233340001
285Output = 2F0BC5AF409E06D609EA8B7D0FA5EA50
286
287MAC = GMAC
288Algorithm = AES-128-GCM
289Key = 071B113B0CA743FECCCF3D051F737382
290IV = F0761E8DCD3D000176D457ED
291Input = E20106D7CD0DF0761E8DCD3D88E5400076D457ED08000F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A0003
292Output = 0C017BC73B227DFCC9BAFA1C41ACC353
293
294MAC = GMAC
295Algorithm = AES-256-GCM
296Key = 691D3EE909D7F54167FD1CA0B5D769081F2BDE1AEE655FDBAB80BD5295AE6BE7
297IV = F0761E8DCD3D000176D457ED
298Input = E20106D7CD0DF0761E8DCD3D88E5400076D457ED08000F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A0003
299Output = 35217C774BBC31B63166BCF9D4ABED07
300
301MAC = GMAC
302Algorithm = AES-128-GCM
303Key = 013FE00B5F11BE7F866D0CBBC55A7A90
304IV = 7CFDE9F9E33724C68932D612
305Input = 84C5D513D2AAF6E5BBD2727788E523008932D6127CFDE9F9E33724C608000F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F0005
306Output = 217867E50C2DAD74C28C3B50ABDF695A
307
308MAC = GMAC
309Algorithm = AES-256-GCM
310Key = 83C093B58DE7FFE1C0DA926AC43FB3609AC1C80FEE1B624497EF942E2F79A823
311IV = 7CFDE9F9E33724C68932D612
312Input = 84C5D513D2AAF6E5BBD2727788E523008932D6127CFDE9F9E33724C608000F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F0005
313Output = 6EE160E8FAECA4B36C86B234920CA975
314
315MAC = GMAC
316Algorithm = AES-128-GCM
317Key = 88EE087FD95DA9FBF6725AA9D757B0CD
318IV = 7AE8E2CA4EC500012E58495C
319Input = 68F2E77696CE7AE8E2CA4EC588E541002E58495C08000F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D0007
320Output = 07922B8EBCF10BB2297588CA4C614523
321
322MAC = GMAC
323Algorithm = AES-256-GCM
324Key = 4C973DBC7364621674F8B5B89E5C15511FCED9216490FB1C1A2CAA0FFE0407E5
325IV = 7AE8E2CA4EC500012E58495C
326Input = 68F2E77696CE7AE8E2CA4EC588E541002E58495C08000F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D0007
327Output = 00BDA1B7E87608BCBF470F12157F4C07
328
329
330Title = KMAC Tests (From NIST)
331MAC = KMAC128
332Key = 404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F
333Input = 00010203
334Custom = ""
335Output = E5780B0D3EA6F7D3A429C5706AA43A00FADBD7D49628839E3187243F456EE14E
336Ctrl = xof:0
337OutputSize = 32
338BlockSize = 168
339
340MAC = KMAC128
341Key = 404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F
342Input = 00010203
343Custom = "My Tagged Application"
344Output = 3B1FBA963CD8B0B59E8C1A6D71888B7143651AF8BA0A7070C0979E2811324AA5
345
346MAC = KMAC128
347Key = 404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F
348Input = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F808182838485868788898A8B8C8D8E8F909192939495969798999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B7B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7
349Custom = "My Tagged Application"
350Output = 1F5B4E6CCA02209E0DCB5CA635B89A15E271ECC760071DFD805FAA38F9729230
351Ctrl = size:32
352
353MAC = KMAC256
354Key = 404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F
355Input = 00010203
356Custom = "My Tagged Application"
357Output = 20C570C31346F703C9AC36C61C03CB64C3970D0CFC787E9B79599D273A68D2F7F69D4CC3DE9D104A351689F27CF6F5951F0103F33F4F24871024D9C27773A8DD
358OutputSize = 64
359BlockSize = 136
360
361MAC = KMAC256
362Key = 404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F
363Input = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F808182838485868788898A8B8C8D8E8F909192939495969798999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B7B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7
364Custom = ""
365Output = 75358CF39E41494E949707927CEE0AF20A3FF553904C86B08F21CC414BCFD691589D27CF5E15369CBBFF8B9A4C2EB17800855D0235FF635DA82533EC6B759B69
366
367MAC = KMAC256
368Key = 404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F
369Input = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F808182838485868788898A8B8C8D8E8F909192939495969798999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B7B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7
370Custom = "My Tagged Application"
371Output = B58618F71F92E1D56C1B8C55DDD7CD188B97B4CA4D99831EB2699A837DA2E4D970FBACFDE50033AEA585F1A2708510C32D07880801BD182898FE476876FC8965
372Ctrl = size:64
373
374Title = KMAC XOF Tests (From NIST)
375
376MAC = KMAC128
377Key = 404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F
378Input = 00010203
379Output = CD83740BBD92CCC8CF032B1481A0F4460E7CA9DD12B08A0C4031178BACD6EC35
380XOF = 1
381
382MAC = KMAC128
383Key = 404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F
384Input = 00010203
385Custom = "My Tagged Application"
386Output = 31A44527B4ED9F5C6101D11DE6D26F0620AA5C341DEF41299657FE9DF1A3B16C
387XOF = 1
388
389MAC = KMAC128
390Key = 404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F
391Input = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F808182838485868788898A8B8C8D8E8F909192939495969798999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B7B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7
392Custom = "My Tagged Application"
393Output = 47026C7CD793084AA0283C253EF658490C0DB61438B8326FE9BDDF281B83AE0F
394XOF = 1
395Ctrl = size:32
396
397MAC = KMAC256
398Key = 404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F
399Input = 00010203
400Custom = "My Tagged Application"
401Output = 1755133F1534752AAD0748F2C706FB5C784512CAB835CD15676B16C0C6647FA96FAA7AF634A0BF8FF6DF39374FA00FAD9A39E322A7C92065A64EB1FB0801EB2B
402XOF = 1
403
404MAC = KMAC256
405Key = 404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F
406Input = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F808182838485868788898A8B8C8D8E8F909192939495969798999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B7B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7
407Custom = ""
408Output = FF7B171F1E8A2B24683EED37830EE797538BA8DC563F6DA1E667391A75EDC02CA633079F81CE12A25F45615EC89972031D18337331D24CEB8F8CA8E6A19FD98B
409XOF = 1
410
411MAC = KMAC256
412Key = 404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F
413Input = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F808182838485868788898A8B8C8D8E8F909192939495969798999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B7B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7
414Custom = "My Tagged Application"
415Output = D5BE731C954ED7732846BB59DBE3A8E30F83E77A4BFF4459F2F1C2B4ECEBB8CE67BA01C62E8AB8578D2D499BD1BB276768781190020A306A97DE281DCC30305D
416Ctrl = size:64
417XOF = 1
418
419Title = KMAC long customisation string (from NIST ACVP)
420
421MAC = KMAC256
422Key = 9743DBF93102FAF11227B154B8ACD16CF142671F7AA16C559A393A38B4CEF461ED29A6A328D7379C99718790E38B54CA25E9E831CBEA463EE704D1689F94629AB795DF0C77F756DA743309C0E054596BA2D9CC1768ACF7CD351D9A7EB1ABD0A3
423Input = BA63AC9C711F143CCE7FF92D0322649D1BE437D805FD225C0A2879A008373EC3BCCDB09971FAD2BCE5F4347AF7E5238EF01A90ED34193D6AFC1D
424Custom = "]J&/.?L/c&}p(b!X|?>i7!]CAH6P@1<R'6|uOu2Vu^kCM!$ Een^pn&Zlale){mQhKjqe,)'-fsX6:u@D6+ZA^b70A)n)LMxo:Y!62;:[hP*yLERjL@rq30+iRaD#9|"
425Output = 4057EFD76A63049418AFC54559589821322B6029808A3BCAE4D49E961F909F5F667ACAD56BBCFB8033DCB4CC10AF1B53F014B8
426Ctrl = size:51
427XOF = 1
428
429Title = KMAC XOF Tests via ctrl (From NIST)
430
431MAC = KMAC128
432Key = 404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F
433Input = 00010203
434Output = CD83740BBD92CCC8CF032B1481A0F4460E7CA9DD12B08A0C4031178BACD6EC35
435Ctrl = xof:1
436
437MAC = KMAC128
438Key = 404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F
439Input = 00010203
440Custom = "My Tagged Application"
441Output = 31A44527B4ED9F5C6101D11DE6D26F0620AA5C341DEF41299657FE9DF1A3B16C
442Ctrl = xof:1
443
444MAC = KMAC128
445Key = 404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F
446Input = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F808182838485868788898A8B8C8D8E8F909192939495969798999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B7B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7
447Custom = "My Tagged Application"
448Output = 47026C7CD793084AA0283C253EF658490C0DB61438B8326FE9BDDF281B83AE0F
449Ctrl = xof:1
450Ctrl = size:32
451
452MAC = KMAC256
453Key = 404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F
454Input = 00010203
455Custom = "My Tagged Application"
456Output = 1755133F1534752AAD0748F2C706FB5C784512CAB835CD15676B16C0C6647FA96FAA7AF634A0BF8FF6DF39374FA00FAD9A39E322A7C92065A64EB1FB0801EB2B
457Ctrl = xof:1
458
459MAC = KMAC256
460Key = 404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F
461Input = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F808182838485868788898A8B8C8D8E8F909192939495969798999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B7B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7
462Custom = ""
463Output = FF7B171F1E8A2B24683EED37830EE797538BA8DC563F6DA1E667391A75EDC02CA633079F81CE12A25F45615EC89972031D18337331D24CEB8F8CA8E6A19FD98B
464Ctrl = xof:1
465
466MAC = KMAC256
467Key = 404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F
468Input = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F808182838485868788898A8B8C8D8E8F909192939495969798999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B7B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7
469Custom = "My Tagged Application"
470Output = D5BE731C954ED7732846BB59DBE3A8E30F83E77A4BFF4459F2F1C2B4ECEBB8CE67BA01C62E8AB8578D2D499BD1BB276768781190020A306A97DE281DCC30305D
471Ctrl = size:64
472Ctrl = xof:1
473
474Title = KMAC long customisation string via ctrl (from NIST ACVP)
475
476MAC = KMAC256
477Key = 9743DBF93102FAF11227B154B8ACD16CF142671F7AA16C559A393A38B4CEF461ED29A6A328D7379C99718790E38B54CA25E9E831CBEA463EE704D1689F94629AB795DF0C77F756DA743309C0E054596BA2D9CC1768ACF7CD351D9A7EB1ABD0A3
478Input = BA63AC9C711F143CCE7FF92D0322649D1BE437D805FD225C0A2879A008373EC3BCCDB09971FAD2BCE5F4347AF7E5238EF01A90ED34193D6AFC1D
479Custom = "]J&/.?L/c&}p(b!X|?>i7!]CAH6P@1<R'6|uOu2Vu^kCM!$ Een^pn&Zlale){mQhKjqe,)'-fsX6:u@D6+ZA^b70A)n)LMxo:Y!62;:[hP*yLERjL@rq30+iRaD#9|"
480Output = 4057EFD76A63049418AFC54559589821322B6029808A3BCAE4D49E961F909F5F667ACAD56BBCFB8033DCB4CC10AF1B53F014B8
481Ctrl = size:51
482Ctrl = xof:1
483
484Title = KMAC long customisation string negative test
485
486MAC = KMAC128
487Key = 404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F
488Input = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F808182838485868788898A8B8C8D8E8F909192939495969798999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B7B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7
489Custom = ":abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789::abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789::abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789::abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789:::abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789::abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789::abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789::abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789::"
490Result = MAC_INIT_ERROR
491
492Title = KMAC output is too large
493
494MAC = KMAC256
495Key = 404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F
496Input = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F808182838485868788898A8B8C8D8E8F909192939495969798999A9B9C9D9E9FA0A1A2A3A4A5A6A7A8A9AAABACADAEAFB0B1B2B3B4B5B6B7B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C7
497Custom = "My Tagged Application"
498Ctrl = size:2097152
499Result = MAC_INIT_ERROR
500