iPXE
wycheproof_hmac_sha512_256.c
Go to the documentation of this file.
1/* This file is automatically generated by import.py.
2 *
3 * DO NOT EDIT THIS FILE. Any changes will be lost.
4 *
5 */
6
8
9/* HMAC-SHA512/256 test case 1 (skipped: using SHA-512 instead of SHA-512/256) */
10
11/* HMAC-SHA512/256 test case 2 */
12HMAC_TEST ( wycheproof_hmac_sha512_256_0b2d4593, &sha512_256_algorithm,
13 KEY ( 0x1e, 0x22, 0x5c, 0xaf, 0xb9, 0x03, 0x39, 0xbb, 0xa1, 0xb2,
14 0x40, 0x76, 0xd4, 0x20, 0x6c, 0x3e, 0x79, 0xc3, 0x55, 0x80,
15 0x5d, 0x85, 0x16, 0x82, 0xbc, 0x81, 0x8b, 0xaa, 0x4f, 0x5a,
16 0x77, 0x79 ),
17 DATA(),
18 EXPECTED ( 0xba, 0xae, 0x6a, 0xc1, 0x8c, 0x37, 0xdb, 0xf3, 0xa7,
19 0x1b, 0x22, 0x74, 0x1c, 0xed, 0x96, 0xe1, 0xe2, 0xdb,
20 0xe6, 0xe7, 0xa7, 0x37, 0x14, 0x2e, 0x14, 0xbd, 0x93,
21 0xfd, 0xa1, 0x44, 0xda, 0xd0 ) );
22
23/* HMAC-SHA512/256 test case 3 */
24HMAC_TEST ( wycheproof_hmac_sha512_256_e908ab9c, &sha512_256_algorithm,
25 KEY ( 0x81, 0x59, 0xfd, 0x15, 0x13, 0x3c, 0xd9, 0x64, 0xc9, 0xa6,
26 0x96, 0x4c, 0x94, 0xf0, 0xea, 0x26, 0x9a, 0x80, 0x6f, 0xd9,
27 0xf4, 0x3f, 0x0d, 0xa5, 0x8b, 0x6c, 0xd1, 0xb3, 0x3d, 0x18,
28 0x9b, 0x2a ),
29 DATA ( 0x77 ),
30 EXPECTED ( 0xae, 0xe7, 0xa2, 0x77, 0xe0, 0xf3, 0x6a, 0x04, 0x23,
31 0x68, 0xae, 0x52, 0xb1, 0x33, 0x7b, 0xa1, 0x3f, 0x1c,
32 0x00, 0xfd, 0xb2, 0xdf, 0xb1, 0xd5, 0xf0, 0xc3, 0x04,
33 0xe4, 0x85, 0xc3, 0xa7, 0xdc ) );
34
35/* HMAC-SHA512/256 test case 4 */
36HMAC_TEST ( wycheproof_hmac_sha512_256_ffdeb9e9, &sha512_256_algorithm,
37 KEY ( 0x85, 0xa7, 0xcb, 0xaa, 0xe8, 0x25, 0xbb, 0x82, 0xc9, 0xb6,
38 0xf6, 0xc5, 0xc2, 0xaf, 0x5a, 0xc0, 0x3d, 0x1f, 0x6d, 0xaa,
39 0x63, 0xd2, 0xa9, 0x3c, 0x18, 0x99, 0x48, 0xec, 0x41, 0xb9,
40 0xde, 0xd9 ),
41 DATA ( 0xa5, 0x9b ),
42 EXPECTED ( 0x10, 0xe5, 0x35, 0x13, 0xa8, 0xa4, 0x74, 0x9d, 0x97,
43 0x7a, 0xb7, 0xed, 0x4a, 0x71, 0x87, 0x27, 0xb9, 0xe2,
44 0x34, 0x6f, 0xc7, 0x35, 0xe4, 0xee, 0x20, 0x2d, 0xe3,
45 0x7a, 0x5f, 0xad, 0xb2, 0xf7 ) );
46
47/* HMAC-SHA512/256 test case 5 */
48HMAC_TEST ( wycheproof_hmac_sha512_256_eeecfc79, &sha512_256_algorithm,
49 KEY ( 0x48, 0xf3, 0x02, 0x93, 0x34, 0xe5, 0x5c, 0xfb, 0xd5, 0x74,
50 0xcc, 0xc7, 0x65, 0xfb, 0x2c, 0x36, 0x85, 0xaa, 0xb1, 0xf4,
51 0x83, 0x7d, 0x23, 0x37, 0x08, 0x74, 0xa3, 0xe6, 0x34, 0xc3,
52 0xa7, 0x6d ),
53 DATA ( 0xc7, 0xb8, 0xb2 ),
54 EXPECTED ( 0x23, 0x8b, 0xff, 0x44, 0x3b, 0xf9, 0xc4, 0x39, 0x22,
55 0x7f, 0x2b, 0x1e, 0x2e, 0x72, 0x98, 0xc5, 0x76, 0x90,
56 0x9f, 0xf8, 0xee, 0x61, 0x8d, 0x0f, 0x74, 0xf0, 0xec,
57 0x63, 0x62, 0x9b, 0x4d, 0xf7 ) );
58
59/* HMAC-SHA512/256 test case 6 */
60HMAC_TEST ( wycheproof_hmac_sha512_256_7f528746, &sha512_256_algorithm,
61 KEY ( 0xde, 0x8b, 0x5b, 0x5b, 0x2f, 0x09, 0x64, 0x5b, 0xe4, 0x7e,
62 0xcb, 0x64, 0x07, 0xa4, 0xe1, 0xd9, 0xc6, 0xb3, 0x3a, 0xe3,
63 0xc2, 0xd2, 0x25, 0x17, 0xd3, 0x35, 0x7d, 0xa0, 0x35, 0x7a,
64 0x31, 0x39 ),
65 DATA ( 0xcc, 0x02, 0x1d, 0x65 ),
66 EXPECTED ( 0xdf, 0x7c, 0xf9, 0xe3, 0xcb, 0xc2, 0x77, 0x0d, 0x2c,
67 0xa7, 0xf9, 0x1f, 0x8c, 0x3a, 0xcb, 0x7f, 0x7d, 0x1c,
68 0x8d, 0x54, 0x97, 0x06, 0xcd, 0x54, 0xc6, 0xcd, 0x14,
69 0x72, 0x5b, 0x26, 0x84, 0x68 ) );
70
71/* HMAC-SHA512/256 test case 7 */
72HMAC_TEST ( wycheproof_hmac_sha512_256_79ecb1de, &sha512_256_algorithm,
73 KEY ( 0xb7, 0x93, 0x89, 0x10, 0xf5, 0x18, 0xf1, 0x32, 0x05, 0xca,
74 0x14, 0x92, 0xc6, 0x69, 0x00, 0x1a, 0x14, 0xff, 0x91, 0x3c,
75 0x8a, 0xb4, 0xa0, 0xdc, 0x35, 0x64, 0xe7, 0x41, 0x8e, 0x91,
76 0x29, 0x7c ),
77 DATA ( 0xa4, 0xa6, 0xef, 0x6e, 0xbd ),
78 EXPECTED ( 0x89, 0xeb, 0xd9, 0x4a, 0xf4, 0xd3, 0xd9, 0x63, 0xf2,
79 0x9d, 0x7b, 0x44, 0x3d, 0xdb, 0x02, 0x3f, 0x23, 0x02,
80 0x08, 0xe3, 0x71, 0xda, 0xa5, 0x86, 0x62, 0x9f, 0xe4,
81 0x07, 0xf2, 0xd1, 0xbc, 0xd2 ) );
82
83/* HMAC-SHA512/256 test case 8 */
84HMAC_TEST ( wycheproof_hmac_sha512_256_e78171a0, &sha512_256_algorithm,
85 KEY ( 0x1b, 0xb9, 0x97, 0xff, 0x4d, 0xe8, 0xa5, 0xa3, 0x91, 0xde,
86 0x5c, 0x08, 0xa3, 0x3b, 0xc2, 0xc7, 0xc2, 0x89, 0x1e, 0x47,
87 0xad, 0x5b, 0x9c, 0x63, 0x11, 0x01, 0x92, 0xf7, 0x8b, 0x98,
88 0xfe, 0x78 ),
89 DATA ( 0x66, 0x7e, 0x01, 0x5d, 0xf7, 0xfc ),
90 EXPECTED ( 0xae, 0x7a, 0x29, 0xfd, 0x94, 0x90, 0x66, 0xb6, 0x82,
91 0xb6, 0xef, 0xda, 0x53, 0xae, 0xdf, 0xae, 0xa2, 0xaf,
92 0xb2, 0x17, 0x46, 0x08, 0x25, 0x08, 0x5d, 0x76, 0xba,
93 0x05, 0xc3, 0x14, 0x66, 0x76 ) );
94
95/* HMAC-SHA512/256 test case 9 */
96HMAC_TEST ( wycheproof_hmac_sha512_256_62a19dc8, &sha512_256_algorithm,
97 KEY ( 0x32, 0xfd, 0xed, 0xa3, 0x9f, 0x98, 0xb4, 0xf4, 0x42, 0x6c,
98 0x2d, 0x2a, 0xc0, 0x0a, 0xb5, 0xdd, 0x4b, 0xfa, 0xbb, 0x68,
99 0xf3, 0x11, 0x44, 0x72, 0x56, 0xed, 0x6d, 0x3d, 0x3a, 0x51,
100 0xb1, 0x54 ),
101 DATA ( 0x41, 0x63, 0xa9, 0xf7, 0x7e, 0x41, 0xf5 ),
102 EXPECTED ( 0xa5, 0xe4, 0x39, 0x42, 0x0f, 0xa9, 0xde, 0xdc, 0x9d,
103 0xb6, 0xc2, 0x47, 0x93, 0x05, 0xfe, 0x66, 0xd4, 0x62,
104 0x49, 0x9f, 0x05, 0xc3, 0x83, 0xf6, 0x28, 0xfb, 0x0f,
105 0x51, 0xb5, 0xff, 0x11, 0xb1 ) );
106
107/* HMAC-SHA512/256 test case 10 */
108HMAC_TEST ( wycheproof_hmac_sha512_256_2722d0f8, &sha512_256_algorithm,
109 KEY ( 0x23, 0x3e, 0x4f, 0xde, 0xe7, 0x0b, 0xcc, 0x20, 0x23, 0x5b,
110 0x69, 0x77, 0xdd, 0xfc, 0x05, 0xb0, 0xdf, 0x66, 0xf5, 0x63,
111 0x5d, 0x82, 0x7c, 0x66, 0xe5, 0xa6, 0x3c, 0xdb, 0x16, 0xa2,
112 0x49, 0x38 ),
113 DATA ( 0xfd, 0xb2, 0xee, 0x4b, 0x6d, 0x1a, 0x0a, 0xc2 ),
114 EXPECTED ( 0x37, 0x59, 0x7f, 0x0a, 0xeb, 0xa2, 0xc2, 0x47, 0xc3,
115 0xbf, 0x3e, 0xcc, 0x6e, 0xc5, 0xe6, 0xbe, 0xb0, 0xef,
116 0xe1, 0xc0, 0x84, 0x99, 0xda, 0xa9, 0x84, 0x28, 0xc0,
117 0x3c, 0x5f, 0x8e, 0x85, 0x04 ) );
118
119/* HMAC-SHA512/256 test case 11 */
120HMAC_TEST ( wycheproof_hmac_sha512_256_46838ab7, &sha512_256_algorithm,
121 KEY ( 0xb9, 0x84, 0xc6, 0x73, 0x4e, 0x0b, 0xd1, 0x2b, 0x17, 0x37,
122 0xb2, 0xfc, 0x7a, 0x1b, 0x38, 0x03, 0xb4, 0xdf, 0xec, 0x40,
123 0x21, 0x40, 0xa5, 0x7b, 0x9e, 0xcc, 0xc3, 0x54, 0x14, 0xae,
124 0x66, 0x1b ),
125 DATA ( 0xde, 0xa5, 0x84, 0xd0, 0xe2, 0xa1, 0x4a, 0xd5, 0xfd ),
126 EXPECTED ( 0x8e, 0x32, 0x35, 0x12, 0x44, 0x5a, 0xd6, 0x19, 0x49,
127 0xaf, 0x45, 0x24, 0x2f, 0x01, 0xed, 0x91, 0x16, 0x26,
128 0x17, 0x81, 0x2e, 0x82, 0x7b, 0x79, 0x50, 0x80, 0x08,
129 0xf5, 0xc5, 0xba, 0x5d, 0x0b ) );
130
131/* HMAC-SHA512/256 test case 12 */
132HMAC_TEST ( wycheproof_hmac_sha512_256_22663801, &sha512_256_algorithm,
133 KEY ( 0xd0, 0xca, 0xf1, 0x45, 0x6a, 0xc5, 0xe2, 0x55, 0xfa, 0x6a,
134 0xfd, 0x61, 0xa7, 0x9d, 0xc8, 0xc7, 0x16, 0xf5, 0x35, 0x8a,
135 0x29, 0x8a, 0x50, 0x82, 0x71, 0x36, 0x3f, 0xe1, 0xff, 0x98,
136 0x35, 0x61 ),
137 DATA ( 0x18, 0x26, 0x1d, 0xc8, 0x06, 0x91, 0x3c, 0x53, 0x46, 0x66 ),
138 EXPECTED ( 0xd6, 0xd5, 0xd3, 0xd7, 0x52, 0x2a, 0xf2, 0x12, 0xcf,
139 0x53, 0x9d, 0xfa, 0x3d, 0x25, 0x65, 0x2a, 0xaf, 0xb9,
140 0x38, 0x81, 0x73, 0x9d, 0xb2, 0x48, 0xa4, 0xfc, 0xd0,
141 0xfc, 0x48, 0xc6, 0x6e, 0x4e ) );
142
143/* HMAC-SHA512/256 test case 13 */
144HMAC_TEST ( wycheproof_hmac_sha512_256_e1218806, &sha512_256_algorithm,
145 KEY ( 0x83, 0x5b, 0xc8, 0x24, 0x1e, 0xd8, 0x17, 0x73, 0x5e, 0xc9,
146 0xd3, 0xd0, 0xe2, 0xdf, 0x4c, 0x17, 0x3e, 0xe4, 0xdd, 0xed,
147 0x4a, 0x8e, 0xf0, 0xc0, 0x4a, 0x96, 0xc4, 0x8f, 0x11, 0x82,
148 0x04, 0x63 ),
149 DATA ( 0x26, 0xf8, 0x08, 0x3e, 0x94, 0x4b, 0xac, 0xf0, 0x4e, 0x9a,
150 0x4d ),
151 EXPECTED ( 0x08, 0x66, 0xe9, 0x24, 0xb0, 0xea, 0x36, 0x67, 0x95,
152 0xc0, 0xce, 0x78, 0xd0, 0x21, 0x7b, 0x0d, 0x63, 0x08,
153 0x28, 0x5b, 0x1b, 0xe4, 0xef, 0xfb, 0xd9, 0xac, 0x07,
154 0x5b, 0x1e, 0xe5, 0x4c, 0x0b ) );
155
156/* HMAC-SHA512/256 test case 14 */
157HMAC_TEST ( wycheproof_hmac_sha512_256_1c4910d2, &sha512_256_algorithm,
158 KEY ( 0x05, 0x5f, 0x95, 0xc9, 0x46, 0x1b, 0x08, 0x09, 0x57, 0x5e,
159 0xcc, 0xdf, 0xa5, 0xcd, 0xd0, 0x62, 0x75, 0xf2, 0x5d, 0x30,
160 0x91, 0x5c, 0x4e, 0xb8, 0xdb, 0x40, 0xe1, 0xac, 0xd3, 0xab,
161 0x75, 0x91 ),
162 DATA ( 0xbf, 0xb7, 0xd6, 0xa0, 0x8d, 0xba, 0xa5, 0x22, 0x5f, 0x32,
163 0x08, 0x87 ),
164 EXPECTED ( 0x89, 0x01, 0xca, 0xf8, 0x75, 0x09, 0xa9, 0xad, 0x50,
165 0x90, 0x7b, 0xe7, 0xed, 0x64, 0x78, 0x64, 0x40, 0xda,
166 0x6e, 0x12, 0x90, 0x02, 0x36, 0x98, 0x9a, 0x30, 0x44,
167 0x9e, 0xbe, 0x13, 0xaa, 0x5a ) );
168
169/* HMAC-SHA512/256 test case 15 */
170HMAC_TEST ( wycheproof_hmac_sha512_256_d8bea32a, &sha512_256_algorithm,
171 KEY ( 0xe4, 0x0f, 0x7a, 0x3e, 0xb8, 0x8d, 0xde, 0xc4, 0xc6, 0x34,
172 0x7e, 0xa4, 0xd6, 0x76, 0x10, 0x75, 0x6c, 0x82, 0xc8, 0xeb,
173 0xcc, 0x23, 0x76, 0x29, 0xbf, 0x87, 0x3c, 0xca, 0xbc, 0x32,
174 0x98, 0x4a ),
175 DATA ( 0x7f, 0xe4, 0x3f, 0xeb, 0xc7, 0x84, 0x74, 0x64, 0x9e, 0x45,
176 0xbf, 0x99, 0xb2 ),
177 EXPECTED ( 0x99, 0x3d, 0x5a, 0xe3, 0x7d, 0xd0, 0x31, 0xc7, 0x4a,
178 0x5e, 0xe1, 0x51, 0x4a, 0xe1, 0x52, 0xdd, 0xb2, 0x42,
179 0x83, 0xb0, 0x3b, 0xc2, 0xfa, 0x7f, 0xdf, 0xee, 0x6b,
180 0x16, 0x4c, 0xa0, 0x6c, 0x1d ) );
181
182/* HMAC-SHA512/256 test case 16 */
183HMAC_TEST ( wycheproof_hmac_sha512_256_5e0a6cbe, &sha512_256_algorithm,
184 KEY ( 0xb0, 0x20, 0xad, 0x1d, 0xe1, 0xc1, 0x41, 0xf7, 0xec, 0x61,
185 0x5e, 0xe5, 0x70, 0x15, 0x21, 0x77, 0x3f, 0x9b, 0x23, 0x2e,
186 0x4d, 0x06, 0x37, 0x6c, 0x38, 0x28, 0x94, 0xce, 0x51, 0xa6,
187 0x1f, 0x48 ),
188 DATA ( 0x81, 0xc7, 0x58, 0x1a, 0x19, 0x4b, 0x5e, 0x71, 0xb4, 0x11,
189 0x46, 0xa5, 0x82, 0xc1 ),
190 EXPECTED ( 0xf1, 0xf1, 0x5f, 0xd2, 0x53, 0xc0, 0xe1, 0xab, 0xe5,
191 0x24, 0x64, 0x3c, 0x68, 0x30, 0x42, 0x24, 0x20, 0x24,
192 0x3c, 0x71, 0x26, 0x7d, 0xe7, 0xea, 0x7b, 0x5f, 0xab,
193 0x17, 0x3f, 0x8d, 0x52, 0x8a ) );
194
195/* HMAC-SHA512/256 test case 17 */
196HMAC_TEST ( wycheproof_hmac_sha512_256_12cd5c76, &sha512_256_algorithm,
197 KEY ( 0x9f, 0x3f, 0xd6, 0x1a, 0x10, 0x52, 0x02, 0x64, 0x8e, 0xcf,
198 0xf6, 0x07, 0x4c, 0x95, 0xe5, 0x02, 0xc1, 0xc5, 0x1a, 0xcd,
199 0x32, 0xec, 0x53, 0x8a, 0x5c, 0xce, 0x89, 0xef, 0x84, 0x1f,
200 0x79, 0x89 ),
201 DATA ( 0x2a, 0x76, 0xf2, 0xac, 0xda, 0xce, 0x42, 0xe3, 0xb7, 0x79,
202 0x72, 0x49, 0x46, 0x91, 0x2c ),
203 EXPECTED ( 0xd7, 0x5c, 0xaf, 0xda, 0xfc, 0x07, 0x11, 0x85, 0x5d,
204 0xb3, 0x78, 0xb5, 0xb5, 0x25, 0xfc, 0x77, 0xdf, 0x15,
205 0x0c, 0x6b, 0x3c, 0xb9, 0xbb, 0xc2, 0x16, 0x27, 0xdc,
206 0x56, 0xd1, 0x7d, 0x6a, 0x32 ) );
207
208/* HMAC-SHA512/256 test case 18 */
209HMAC_TEST ( wycheproof_hmac_sha512_256_3c2386d0, &sha512_256_algorithm,
210 KEY ( 0x6f, 0xa3, 0x53, 0x86, 0x8c, 0x82, 0xe5, 0xde, 0xee, 0xda,
211 0xc7, 0xf0, 0x94, 0x71, 0xa6, 0x1b, 0xf7, 0x49, 0xab, 0x54,
212 0x98, 0x23, 0x9e, 0x94, 0x7e, 0x01, 0x2e, 0xee, 0x3c, 0x82,
213 0xd7, 0xc4 ),
214 DATA ( 0xae, 0xed, 0x3e, 0x4d, 0x4c, 0xb9, 0xbb, 0xb6, 0x0d, 0x48,
215 0x2e, 0x98, 0xc1, 0x26, 0xc0, 0xf5 ),
216 EXPECTED ( 0xf2, 0x50, 0x3f, 0x14, 0x7a, 0xd7, 0xcc, 0x3d, 0x41,
217 0x1e, 0x25, 0x21, 0x14, 0x91, 0x91, 0x4b, 0x65, 0x8a,
218 0x66, 0x76, 0xdf, 0xd4, 0x5e, 0xd5, 0x4f, 0x6b, 0x27,
219 0x9f, 0xfe, 0xb9, 0x39, 0xc1 ) );
220
221/* HMAC-SHA512/256 test case 19 */
222HMAC_TEST ( wycheproof_hmac_sha512_256_1b221ef7, &sha512_256_algorithm,
223 KEY ( 0x53, 0x00, 0x48, 0x94, 0x94, 0xca, 0x86, 0x22, 0x1c, 0x91,
224 0xd6, 0xd9, 0x53, 0x95, 0x2a, 0xe1, 0xa5, 0xe0, 0x97, 0x13,
225 0x9d, 0xc9, 0xcf, 0x11, 0x79, 0xc2, 0xf5, 0x64, 0x33, 0x75,
226 0x38, 0x24 ),
227 DATA ( 0x90, 0xfe, 0xa6, 0xcf, 0x2b, 0xd8, 0x11, 0xb4, 0x49, 0xf3,
228 0x33, 0xee, 0x92, 0x33, 0xe5, 0x76, 0x97 ),
229 EXPECTED ( 0x7f, 0x04, 0x70, 0xeb, 0x22, 0x7d, 0xe2, 0x50, 0xcf,
230 0xac, 0x8e, 0x69, 0x07, 0x67, 0xb4, 0xff, 0x49, 0xee,
231 0x3f, 0x8e, 0x68, 0xa7, 0xd0, 0x37, 0x16, 0x92, 0x1e,
232 0x5c, 0x01, 0x8c, 0xa3, 0xce ) );
233
234/* HMAC-SHA512/256 test case 20 */
235HMAC_TEST ( wycheproof_hmac_sha512_256_ad51fdea, &sha512_256_algorithm,
236 KEY ( 0x38, 0x3e, 0x7c, 0x5c, 0x13, 0x47, 0x6a, 0x62, 0x26, 0x84,
237 0x23, 0xef, 0x05, 0x00, 0x47, 0x9f, 0x9e, 0x86, 0xe2, 0x36,
238 0xc5, 0xa0, 0x81, 0xc6, 0x44, 0x91, 0x89, 0xe6, 0xaf, 0xdf,
239 0x2a, 0xf5 ),
240 DATA ( 0x32, 0x02, 0x70, 0x5a, 0xf8, 0x9f, 0x95, 0x55, 0xc5, 0x40,
241 0xb0, 0xe1, 0x27, 0x69, 0x11, 0xd0, 0x19, 0x71, 0xab, 0xb2,
242 0xc3, 0x5c, 0x78, 0xb2 ),
243 EXPECTED ( 0xfa, 0x92, 0x87, 0x90, 0xbd, 0xe8, 0x8a, 0xd9, 0x8e,
244 0xf3, 0xac, 0x92, 0x60, 0x97, 0x36, 0x8e, 0xb6, 0xcd,
245 0xac, 0x1c, 0xa9, 0xb2, 0xb0, 0xb1, 0x01, 0xc5, 0x01,
246 0x17, 0x14, 0x78, 0xa1, 0x76 ) );
247
248/* HMAC-SHA512/256 test case 21 */
249HMAC_TEST ( wycheproof_hmac_sha512_256_48ebb363, &sha512_256_algorithm,
250 KEY ( 0x18, 0x6e, 0x24, 0x8a, 0xd8, 0x24, 0xe1, 0xeb, 0x93, 0x32,
251 0x9a, 0x7f, 0xdc, 0xd5, 0x65, 0xb6, 0xcb, 0x4e, 0xaf, 0x3f,
252 0x85, 0xb9, 0x0b, 0x91, 0x07, 0x77, 0x12, 0x8d, 0x8c, 0x53,
253 0x8d, 0x27 ),
254 DATA ( 0x92, 0xef, 0x9f, 0xf5, 0x2f, 0x46, 0xec, 0xcc, 0x7e, 0x38,
255 0xb9, 0xee, 0x19, 0xfd, 0x2d, 0xe3, 0xb3, 0x77, 0x26, 0xc8,
256 0xe6, 0xce, 0x9e, 0x1b, 0x96, 0xdb, 0x5d, 0xda, 0x4c, 0x31,
257 0x79, 0x02 ),
258 EXPECTED ( 0x3f, 0xc7, 0xa4, 0xa6, 0x67, 0x7c, 0x1b, 0x0b, 0x5b,
259 0x90, 0x55, 0x58, 0x47, 0xd1, 0x68, 0x19, 0xd2, 0x85,
260 0xa5, 0xcf, 0xf6, 0x3e, 0xa2, 0x1c, 0x98, 0x25, 0x3e,
261 0x58, 0x03, 0x1d, 0x4f, 0xf5 ) );
262
263/* HMAC-SHA512/256 test case 22 */
264HMAC_TEST ( wycheproof_hmac_sha512_256_98894005, &sha512_256_algorithm,
265 KEY ( 0x28, 0x85, 0x5c, 0x7e, 0xfc, 0x85, 0x32, 0xd9, 0x25, 0x67,
266 0x30, 0x09, 0x33, 0xcc, 0x1c, 0xa2, 0xd0, 0x58, 0x6f, 0x55,
267 0xdc, 0xc9, 0xf0, 0x54, 0xfc, 0xca, 0x2f, 0x05, 0x25, 0x4f,
268 0xbf, 0x7f ),
269 DATA ( 0x9c, 0x09, 0x20, 0x7f, 0xf0, 0xe6, 0xe5, 0x82, 0xcb, 0x37,
270 0x47, 0xdc, 0xa9, 0x54, 0xc9, 0x4d, 0x45, 0xc0, 0x5e, 0x93,
271 0xf1, 0xe6, 0xf2, 0x11, 0x79, 0xcf, 0x0e, 0x25, 0xb4, 0xce,
272 0xde, 0x74, 0xb5, 0x47, 0x9d, 0x32, 0xf5, 0x16, 0x69, 0x35,
273 0xc8, 0x6f, 0x04, 0x41, 0x90, 0x58, 0x65 ),
274 EXPECTED ( 0xfc, 0x8a, 0x77, 0x26, 0xfd, 0x9f, 0xfc, 0xf9, 0x36,
275 0xe5, 0x54, 0xe9, 0x84, 0x73, 0x27, 0x50, 0xda, 0xc5,
276 0x92, 0xd6, 0xee, 0x86, 0xfc, 0x81, 0x83, 0x9e, 0x24,
277 0xf1, 0x8c, 0x3a, 0xfd, 0x31 ) );
278
279/* HMAC-SHA512/256 test case 23 */
280HMAC_TEST ( wycheproof_hmac_sha512_256_68a20439, &sha512_256_algorithm,
281 KEY ( 0x8e, 0x54, 0x0c, 0xb3, 0x0c, 0x94, 0x83, 0x6a, 0xe2, 0xa5,
282 0x95, 0x0f, 0x35, 0x5d, 0x48, 0x2a, 0x70, 0x02, 0xe2, 0x55,
283 0x20, 0x7e, 0x94, 0xfd, 0xa3, 0xf7, 0xef, 0x1a, 0x09, 0x90,
284 0x13, 0xa0 ),
285 DATA ( 0xd6, 0x50, 0x0f, 0x95, 0xe1, 0x12, 0x62, 0xe3, 0x08, 0xbf,
286 0x3d, 0xf4, 0xdf, 0x4b, 0x85, 0x5f, 0x33, 0xe8, 0x57, 0x56,
287 0x3d, 0x45, 0x43, 0xf1, 0x95, 0x63, 0x9a, 0x0a, 0x17, 0xb4,
288 0x42, 0xeb, 0x9f, 0xdc, 0xc1, 0x36, 0x7d, 0x2e, 0xee, 0x75,
289 0xc8, 0xf8, 0x05, 0x73, 0x0b, 0x89, 0x29, 0x0f ),
290 EXPECTED ( 0x46, 0xb1, 0x70, 0xa6, 0x47, 0xcb, 0x6b, 0xc3, 0xca,
291 0x97, 0x51, 0x95, 0xe6, 0x2f, 0x54, 0xe1, 0xf1, 0xf9,
292 0x66, 0xcf, 0x42, 0xce, 0x55, 0x35, 0x46, 0xf4, 0xd4,
293 0x32, 0x69, 0x13, 0x1d, 0x14 ) );
294
295/* HMAC-SHA512/256 test case 24 */
296HMAC_TEST ( wycheproof_hmac_sha512_256_cfebf95b, &sha512_256_algorithm,
297 KEY ( 0x69, 0xc5, 0x0d, 0x52, 0x74, 0x35, 0x81, 0x88, 0xcf, 0xf4,
298 0xc0, 0xfa, 0xe7, 0x42, 0x24, 0x3d, 0x4e, 0x8a, 0x5e, 0x5b,
299 0xa5, 0x5d, 0x94, 0xff, 0x40, 0xed, 0xd9, 0x0f, 0x6a, 0x43,
300 0xdd, 0x10 ),
301 DATA ( 0x1a, 0xc5, 0x25, 0x5a, 0xff, 0x05, 0x28, 0x28, 0xd8, 0xea,
302 0x21, 0xb3, 0x76, 0xf1, 0xeb, 0xdd, 0x4b, 0xb8, 0x79, 0x94,
303 0x99, 0x13, 0x90, 0x04, 0x05, 0xae, 0xbc, 0xe8, 0x3e, 0x48,
304 0xfe, 0xb6, 0x81, 0x3b, 0x5e, 0x9c, 0x89, 0xf9, 0x45, 0x01,
305 0xa8, 0xad, 0xe4, 0x1b, 0x26, 0xb8, 0x15, 0xc5, 0x21 ),
306 EXPECTED ( 0x24, 0x90, 0x2a, 0x3e, 0x64, 0xc8, 0x63, 0xf1, 0x37,
307 0xd9, 0xdc, 0x84, 0xeb, 0xb6, 0x29, 0xa0, 0x71, 0xa9,
308 0xac, 0x26, 0x6b, 0xd5, 0x83, 0x62, 0x52, 0x25, 0xce,
309 0xf9, 0x8f, 0x27, 0x8c, 0x45 ) );
310
311/* HMAC-SHA512/256 test case 25 */
312HMAC_TEST ( wycheproof_hmac_sha512_256_64a517e8, &sha512_256_algorithm,
313 KEY ( 0x23, 0x20, 0x9b, 0x7c, 0x5a, 0xad, 0xcb, 0xd1, 0x3f, 0x72,
314 0x79, 0xaf, 0x1a, 0x86, 0xd3, 0xc7, 0xae, 0x8f, 0x17, 0x9d,
315 0x1b, 0xca, 0xaa, 0xd0, 0xdf, 0xf9, 0xa1, 0x53, 0x02, 0xe7,
316 0x8d, 0xbf ),
317 DATA ( 0x84, 0xbd, 0xac, 0x37, 0xe1, 0xaf, 0x35, 0xd9, 0x35, 0x64,
318 0x04, 0xe2, 0x78, 0x7d, 0x47, 0xec, 0xe5, 0x83, 0x48, 0xde,
319 0xa7, 0x6a, 0x4a, 0x46, 0xe8, 0xaa, 0xde, 0x34, 0x63, 0xd4,
320 0xdb, 0x8c, 0x94, 0xa0, 0x51, 0xbe, 0x37, 0x33, 0xb3, 0x8d,
321 0x75, 0x69, 0x84, 0x86, 0x5d, 0x56, 0xc6, 0x0e, 0x80, 0x25,
322 0xf1, 0x5e, 0x3f, 0x96, 0x8f, 0x09, 0x3e, 0x7f, 0xb7, 0xeb,
323 0xc7, 0xe3, 0x11, 0x89, 0xc5, 0x69, 0x2d, 0x15, 0xed, 0x42,
324 0x56, 0x73, 0x7b, 0x9b, 0x18, 0x94, 0xe5, 0x80, 0x95, 0x03,
325 0xaa, 0xa1, 0xc9, 0x98, 0x3f, 0xb0, 0x96, 0xaa, 0x21, 0x91,
326 0x63, 0x61, 0xee, 0xb6, 0xef, 0x45, 0x5b, 0x12, 0x97, 0x23,
327 0xa1, 0xa1, 0xdd, 0xf9, 0xde, 0xdd, 0xea, 0x20, 0x85, 0x29,
328 0xa6, 0x48 ),
329 EXPECTED ( 0x14, 0x1c, 0x84, 0x9c, 0xa2, 0x02, 0x86, 0xc7, 0x3f,
330 0x95, 0xc6, 0x74, 0xcd, 0x15, 0x88, 0x6b, 0xf4, 0x84,
331 0x43, 0xbf, 0x71, 0xde, 0xae, 0x36, 0x93, 0x57, 0x62,
332 0xd5, 0x53, 0xc9, 0x68, 0x5f ) );
333
334/* HMAC-SHA512/256 test case 26 */
335HMAC_TEST ( wycheproof_hmac_sha512_256_6a49494e, &sha512_256_algorithm,
336 KEY ( 0x7c, 0x9c, 0xc6, 0x67, 0xca, 0xe1, 0x75, 0xf4, 0x48, 0xfa,
337 0xa9, 0x66, 0x47, 0x31, 0x96, 0x33, 0xb2, 0xd4, 0x85, 0x31,
338 0x37, 0x3a, 0xe7, 0xd3, 0x16, 0xc4, 0x4d, 0xdd, 0x8b, 0x9f,
339 0x69, 0xcf ),
340 DATA ( 0x92, 0x33, 0xc1, 0xd7, 0x3b, 0x49, 0x8c, 0x51, 0x06, 0xff,
341 0x88, 0x95, 0x1e, 0x07, 0xb9, 0x65, 0x2c, 0xb0, 0xdd, 0xae,
342 0x74, 0x07, 0x37, 0xec, 0x20, 0x5c, 0x98, 0x76, 0xd0, 0x94,
343 0x97, 0x8b, 0xfc, 0x94, 0x7f, 0x7d, 0xc9, 0x37, 0x11, 0x9f,
344 0xd6, 0xa9, 0x39, 0x15, 0xb1, 0x9b, 0x62, 0x59, 0x58, 0xa7,
345 0xa2, 0x23, 0x63, 0xaa, 0x2a, 0xc3, 0x3f, 0xb8, 0x69, 0xed,
346 0x16, 0xb3, 0x03, 0x33, 0x6a, 0xb7, 0x40, 0xa0, 0x49, 0x8a,
347 0x2d, 0xf6, 0x6a, 0x65, 0x99, 0xda, 0x71, 0x00, 0x94, 0x48,
348 0x1a, 0x7b, 0x54, 0x4b, 0xd9, 0x55, 0xb6, 0xf9, 0x71, 0x35,
349 0xba, 0x46, 0x73, 0x40, 0x1d, 0xb2, 0xdb, 0x14, 0x4a, 0x6e,
350 0x28, 0x70, 0x41, 0xe4, 0x7a, 0x51, 0xed, 0x9b, 0x6b, 0xa9,
351 0x56, 0xc1, 0x35, 0x08, 0xc1, 0xc0, 0xc2, 0x53, 0x10, 0x10,
352 0x52, 0x39, 0xab, 0x73, 0x62, 0x9e, 0x30 ),
353 EXPECTED ( 0x40, 0xb2, 0x23, 0x5a, 0x0e, 0xbf, 0x00, 0xb7, 0xe5,
354 0xf8, 0x90, 0x59, 0x11, 0x4c, 0xf3, 0x7d, 0x28, 0xb7,
355 0xda, 0x22, 0x01, 0xbe, 0x2a, 0x85, 0x02, 0xa9, 0xee,
356 0xb6, 0x1b, 0xe1, 0x5f, 0x30 ) );
357
358/* HMAC-SHA512/256 test case 27 */
359HMAC_TEST ( wycheproof_hmac_sha512_256_e5b2e5d6, &sha512_256_algorithm,
360 KEY ( 0x82, 0x31, 0x45, 0x40, 0x56, 0x4e, 0xa3, 0xce, 0x30, 0x59,
361 0x1e, 0x97, 0xf6, 0x8b, 0x26, 0x02, 0xde, 0x40, 0xfa, 0x29,
362 0xf7, 0x73, 0xc2, 0x50, 0x83, 0x27, 0x47, 0x1b, 0x83, 0x48,
363 0xe8, 0xc4 ),
364 DATA ( 0x6a, 0x6d, 0x2f, 0x45, 0xce, 0xbf, 0x27, 0x57, 0xae, 0x16,
365 0xea, 0x33, 0xc6, 0x86, 0x17, 0x67, 0x1d, 0x77, 0xf8, 0xfd,
366 0xf8, 0x0b, 0xed, 0x8f, 0xc5, 0xcd, 0xc5, 0xc8, 0xb7, 0x08,
367 0x6b, 0xd2, 0x8e, 0x7e, 0xb3, 0xee, 0xcc, 0x71, 0x63, 0x49,
368 0x11, 0x04, 0xe5, 0x30, 0x94, 0x55, 0xe6, 0x7f, 0x83, 0x65,
369 0x79, 0xb8, 0x2a, 0x1d, 0xa3, 0xbf, 0x59, 0x91, 0xa8, 0xe2,
370 0xb2, 0xf1, 0x89, 0xa4, 0x9e, 0x05, 0x70, 0x0e, 0x46, 0xc4,
371 0x09, 0xed, 0x5d, 0xe7, 0x77, 0x80, 0xa5, 0xf3, 0x89, 0xe3,
372 0xf1, 0x3d, 0xad, 0x40, 0x6c, 0x9d, 0x55, 0x67, 0x53, 0x29,
373 0xc5, 0xc9, 0x21, 0xf0, 0x70, 0x34, 0x18, 0x09, 0x37, 0xc0,
374 0xf6, 0xef, 0x34, 0xa2, 0x30, 0x8b, 0x6f, 0xf3, 0xe1, 0xa0,
375 0xe9, 0xdc, 0x1e, 0xa6, 0x5f, 0x56, 0x32, 0x73, 0x0e, 0x87,
376 0x44, 0xd1, 0xdb, 0x2c, 0x40, 0xa6, 0x59, 0x5b ),
377 EXPECTED ( 0xbd, 0x2a, 0xe0, 0xfd, 0x27, 0x9d, 0xf9, 0x4e, 0xe8,
378 0x36, 0x6d, 0xdb, 0x78, 0xa3, 0x84, 0x31, 0xe4, 0x89,
379 0x75, 0x78, 0x0c, 0x8d, 0x28, 0x20, 0xca, 0x68, 0xc6,
380 0x64, 0x53, 0xe7, 0x71, 0xc4 ) );
381
382/* HMAC-SHA512/256 test case 28 */
383HMAC_TEST ( wycheproof_hmac_sha512_256_abb94839, &sha512_256_algorithm,
384 KEY ( 0xd1, 0x15, 0xac, 0xc9, 0xa6, 0x36, 0x91, 0x52, 0x41, 0x79,
385 0x5f, 0x48, 0x85, 0x20, 0x52, 0xe0, 0x7b, 0x51, 0x27, 0x3a,
386 0xe2, 0x44, 0x82, 0x51, 0xec, 0x1d, 0x0d, 0x0f, 0x98, 0x07,
387 0xf3, 0xdb ),
388 DATA ( 0x69, 0x6d, 0x24, 0x56, 0xde, 0x85, 0x3f, 0xa0, 0x28, 0xf4,
389 0x86, 0xfe, 0xf4, 0x37, 0xb6, 0xb6, 0xd1, 0xb5, 0x30, 0xa8,
390 0x47, 0x5e, 0x29, 0x9d, 0xb3, 0xa9, 0x00, 0x5a, 0xe9, 0xce,
391 0xf8, 0x40, 0x19, 0x85, 0xb7, 0xd3, 0x1e, 0x17, 0x2e, 0x8f,
392 0x43, 0x9c, 0xcd, 0x1a, 0xd1, 0xec, 0x44, 0xc9, 0xb8, 0x6b,
393 0x78, 0xf3, 0xf2, 0x43, 0xc1, 0x30, 0x5b, 0x53, 0xbc, 0x21,
394 0xab, 0xad, 0x7a, 0x8f, 0xc5, 0x25, 0x63, 0x11, 0xbf, 0xd3,
395 0x4c, 0x98, 0xe3, 0x7d, 0xfd, 0xc6, 0x49, 0xe7, 0xae, 0x4b,
396 0xda, 0x08, 0xcf, 0x29, 0x94, 0xb0, 0x63, 0xc0, 0xc7, 0x10,
397 0x6e, 0xd0, 0xb0, 0x2a, 0x1f, 0x48, 0xaf, 0x91, 0x91, 0xcb,
398 0xfb, 0x0d, 0x6a, 0x95, 0x3b, 0x7e, 0x04, 0x32, 0x7d, 0xfe,
399 0x8c, 0x93, 0x77, 0x9c, 0xb5, 0x74, 0xba, 0x9c, 0xba, 0x57,
400 0x5d, 0x01, 0x67, 0x4e, 0x83, 0x62, 0x1a, 0xa0, 0xc5, 0xf4,
401 0x00, 0xd6, 0xe6, 0xcd, 0x24, 0xb3, 0x01, 0xe3, 0x3c, 0x9f,
402 0x33, 0x03, 0xe7, 0x3b, 0xf3, 0x57, 0x40, 0x8c, 0x1b, 0xe8,
403 0x6c, 0x24, 0x89, 0xc0, 0x9d, 0xe9, 0x98, 0xff, 0x2e, 0xf3,
404 0x2d, 0xf5, 0x54, 0xf1, 0x24, 0x7d, 0x93, 0x13, 0xce, 0x1a,
405 0x71, 0x60, 0x11, 0x5d, 0x06, 0xf4, 0xc1, 0x8d, 0x65, 0x56,
406 0xff, 0x79, 0x86, 0xef, 0x8a, 0x55, 0xe2, 0xad, 0xcf, 0xa2,
407 0x7e, 0x4c, 0x69, 0xc7, 0x1c, 0xc2, 0xff, 0x01, 0x63, 0x9e,
408 0x9d, 0x49, 0xbd, 0x9e, 0xd0, 0x68, 0x7f, 0x53, 0x0f, 0xfe,
409 0xb0, 0x89, 0x01, 0x32, 0x45, 0x7d, 0xf2, 0x08, 0x80, 0x81,
410 0xbc, 0x4a, 0x2f, 0x7f, 0x0a, 0x9f, 0x4d, 0xce, 0xa2, 0xc8,
411 0x0d, 0x99, 0x1d, 0xb7, 0xf3, 0x74, 0x7a, 0x18, 0x03, 0xd7,
412 0x61, 0x9a, 0xaf, 0x3d, 0xd3, 0x82, 0xc6, 0x95, 0x36, 0xa0,
413 0xbc, 0xdb, 0x93, 0x1c, 0xbe ),
414 EXPECTED ( 0x33, 0xda, 0xe4, 0xd5, 0x19, 0xd6, 0x30, 0x31, 0x65,
415 0x4e, 0x93, 0xf3, 0xbc, 0x8a, 0x31, 0x9e, 0x89, 0x46,
416 0x72, 0x37, 0x93, 0x48, 0x7b, 0x6c, 0x31, 0x85, 0xc1,
417 0x0a, 0x6c, 0xcb, 0xd8, 0x72 ) );
418
419/* HMAC-SHA512/256 test case 29 (skipped: modified tag) */
420
421/* HMAC-SHA512/256 test case 30 (skipped: modified tag) */
422
423/* HMAC-SHA512/256 test case 31 (skipped: modified tag) */
424
425/* HMAC-SHA512/256 test case 32 (skipped: modified tag) */
426
427/* HMAC-SHA512/256 test case 33 (skipped: modified tag) */
428
429/* HMAC-SHA512/256 test case 34 (skipped: modified tag) */
430
431/* HMAC-SHA512/256 test case 35 (skipped: modified tag) */
432
433/* HMAC-SHA512/256 test case 36 (skipped: modified tag) */
434
435/* HMAC-SHA512/256 test case 37 (skipped: modified tag) */
436
437/* HMAC-SHA512/256 test case 38 (skipped: modified tag) */
438
439/* HMAC-SHA512/256 test case 39 (skipped: modified tag) */
440
441/* HMAC-SHA512/256 test case 40 (skipped: modified tag) */
442
443/* HMAC-SHA512/256 test case 41 (skipped: modified tag) */
444
445/* HMAC-SHA512/256 test case 42 (skipped: modified tag) */
446
447/* HMAC-SHA512/256 test case 43 (skipped: modified tag) */
448
449/* HMAC-SHA512/256 test case 44 (skipped: modified tag) */
450
451/* HMAC-SHA512/256 test case 45 (skipped: modified tag) */
452
453/* HMAC-SHA512/256 test case 46 (skipped: modified tag) */
454
455/* HMAC-SHA512/256 test case 47 (skipped: modified tag) */
456
457/* HMAC-SHA512/256 test case 48 (skipped: modified tag) */
458
459/* HMAC-SHA512/256 test case 49 (skipped: modified tag) */
460
461/* HMAC-SHA512/256 test case 50 (skipped: modified tag) */
462
463/* HMAC-SHA512/256 test case 51 (skipped: modified tag) */
464
465/* HMAC-SHA512/256 test case 52 (skipped: modified tag) */
466
467/* HMAC-SHA512/256 test case 53 (skipped: modified tag) */
468
469/* HMAC-SHA512/256 test case 54 (skipped: modified tag) */
470
471/* HMAC-SHA512/256 test case 55 (skipped: modified tag) */
472
473/* HMAC-SHA512/256 test case 56 (skipped: modified tag) */
474
475/* HMAC-SHA512/256 test case 57 (skipped: modified tag) */
476
477/* HMAC-SHA512/256 test case 58 (skipped: modified tag) */
478
479/* HMAC-SHA512/256 test case 59 (skipped: modified tag) */
480
481/* HMAC-SHA512/256 test case 60 (skipped: modified tag) */
482
483/* HMAC-SHA512/256 test case 61 (skipped: modified tag) */
484
485/* HMAC-SHA512/256 test case 62 (skipped: modified tag) */
486
487/* HMAC-SHA512/256 test case 63 (skipped: modified tag) */
488
489/* HMAC-SHA512/256 test case 64 (skipped: modified tag) */
490
491/* HMAC-SHA512/256 test case 65 (skipped: modified tag) */
492
493/* HMAC-SHA512/256 test case 66 (skipped: modified tag) */
494
495/* HMAC-SHA512/256 test case 67 (skipped: modified tag) */
496
497/* HMAC-SHA512/256 test case 68 (skipped: modified tag) */
498
499/* HMAC-SHA512/256 test case 69 (skipped: modified tag) */
500
501/* HMAC-SHA512/256 test case 70 (skipped: modified tag) */
502
503/* HMAC-SHA512/256 test case 71 (skipped: modified tag) */
504
505/* HMAC-SHA512/256 test case 72 (skipped: modified tag) */
506
507/* HMAC-SHA512/256 test case 73 (skipped: modified tag) */
508
509/* HMAC-SHA512/256 test case 74 (skipped: modified tag) */
510
511/* HMAC-SHA512/256 test case 75 (skipped: modified tag) */
512
513/* HMAC-SHA512/256 test case 76 (skipped: modified tag) */
514
515/* HMAC-SHA512/256 test case 77 (skipped: modified tag) */
516
517/* HMAC-SHA512/256 test case 78 (skipped: modified tag) */
518
519/* HMAC-SHA512/256 test case 79 (skipped: modified tag) */
520
521/* HMAC-SHA512/256 test case 80 (skipped: modified tag) */
522
523/* HMAC-SHA512/256 test case 81 (skipped: modified tag) */
524
525/* HMAC-SHA512/256 test case 82 (skipped: modified tag) */
526
527/* HMAC-SHA512/256 test case 83 */
528HMAC_TEST ( wycheproof_hmac_sha512_256_a0a7d633, &sha512_256_algorithm,
529 KEY ( 0x7b, 0xf9, 0xe5, 0x36, 0xb6, 0x6a, 0x21, 0x5c, 0x22, 0x23,
530 0x3f, 0xe2, 0xda, 0xaa, 0x74, 0x3a, 0x89, 0x8b, 0x9a, 0xcb,
531 0x9f, 0x78, 0x02, 0xde, 0x70, 0xb4, 0x0e, 0x3d, 0x6e, 0x43,
532 0xef, 0x97 ),
533 DATA(),
534 EXPECTED ( 0xc1, 0x55, 0xff, 0x4b, 0xc0, 0xbf, 0x8c, 0x14, 0x36,
535 0xb2, 0x3c, 0xb9, 0xc1, 0x65, 0x91, 0xe0 ) );
536
537/* HMAC-SHA512/256 test case 84 */
538HMAC_TEST ( wycheproof_hmac_sha512_256_e707cc0f, &sha512_256_algorithm,
539 KEY ( 0xe7, 0x54, 0x07, 0x6c, 0xea, 0xb3, 0xfd, 0xaf, 0x4f, 0x9b,
540 0xca, 0xb7, 0xd4, 0xf0, 0xdf, 0x0c, 0xbb, 0xaf, 0xbc, 0x87,
541 0x73, 0x1b, 0x8f, 0x9b, 0x7c, 0xd2, 0x16, 0x64, 0x72, 0xe8,
542 0xee, 0xbc ),
543 DATA ( 0x40 ),
544 EXPECTED ( 0xec, 0xde, 0x21, 0xa9, 0x91, 0xaa, 0x09, 0xdd, 0x7f,
545 0x42, 0x83, 0x6d, 0x97, 0xe3, 0xe7, 0xd2 ) );
546
547/* HMAC-SHA512/256 test case 85 */
548HMAC_TEST ( wycheproof_hmac_sha512_256_48cea3c6, &sha512_256_algorithm,
549 KEY ( 0xea, 0x3b, 0x01, 0x6b, 0xdd, 0x38, 0x7d, 0xd6, 0x4d, 0x83,
550 0x7c, 0x71, 0x68, 0x38, 0x08, 0xf3, 0x35, 0xdb, 0xdc, 0x53,
551 0x59, 0x8a, 0x4e, 0xa8, 0xc5, 0xf9, 0x52, 0x47, 0x3f, 0xaf,
552 0xaf, 0x5f ),
553 DATA ( 0x66, 0x01 ),
554 EXPECTED ( 0xd8, 0x89, 0x0a, 0x46, 0x02, 0x2e, 0xea, 0x99, 0xfc,
555 0x95, 0x8d, 0x93, 0xb3, 0xc7, 0xee, 0xb7 ) );
556
557/* HMAC-SHA512/256 test case 86 */
558HMAC_TEST ( wycheproof_hmac_sha512_256_328d009a, &sha512_256_algorithm,
559 KEY ( 0x73, 0xd4, 0x70, 0x96, 0x37, 0x85, 0x7d, 0xaf, 0xab, 0x6a,
560 0xd8, 0xb2, 0xb0, 0xa5, 0x1b, 0x06, 0x52, 0x47, 0x17, 0xfe,
561 0xdf, 0x10, 0x02, 0x96, 0x64, 0x4f, 0x7c, 0xfd, 0xaa, 0xe1,
562 0x80, 0x5b ),
563 DATA ( 0xf1, 0xd3, 0x00 ),
564 EXPECTED ( 0x2e, 0xc8, 0x5a, 0x2a, 0x38, 0x67, 0xf6, 0x13, 0x18,
565 0x4c, 0xe3, 0x49, 0x3c, 0x25, 0x09, 0x64 ) );
566
567/* HMAC-SHA512/256 test case 87 */
568HMAC_TEST ( wycheproof_hmac_sha512_256_eeebccf4, &sha512_256_algorithm,
569 KEY ( 0xd5, 0xc8, 0x1b, 0x39, 0x9d, 0x4c, 0x0d, 0x15, 0x83, 0xa1,
570 0x3d, 0xa5, 0x6d, 0xe6, 0xd2, 0xdc, 0x45, 0xa6, 0x6e, 0x7b,
571 0x47, 0xc2, 0x4a, 0xb1, 0x19, 0x2e, 0x24, 0x6d, 0xc9, 0x61,
572 0xdd, 0x77 ),
573 DATA ( 0x2a, 0xe6, 0x3c, 0xbf ),
574 EXPECTED ( 0xfa, 0xd8, 0x4b, 0x86, 0x31, 0xa8, 0x9b, 0x9c, 0xaf,
575 0xac, 0x06, 0x5d, 0x78, 0x8f, 0xfc, 0xfe ) );
576
577/* HMAC-SHA512/256 test case 88 */
578HMAC_TEST ( wycheproof_hmac_sha512_256_7765202d, &sha512_256_algorithm,
579 KEY ( 0x25, 0x21, 0x20, 0x3f, 0xa0, 0xdd, 0xdf, 0x59, 0xd8, 0x37,
580 0xb2, 0x83, 0x0f, 0x87, 0xb1, 0xaa, 0x61, 0xf9, 0x58, 0x15,
581 0x5d, 0xf3, 0xca, 0x4d, 0x1d, 0xf2, 0x45, 0x7c, 0xb4, 0x28,
582 0x4d, 0xc8 ),
583 DATA ( 0xaf, 0x3a, 0x01, 0x5e, 0xa1 ),
584 EXPECTED ( 0x35, 0xe5, 0xce, 0xaf, 0x32, 0xb2, 0x21, 0x53, 0x4a,
585 0xc6, 0xd9, 0xab, 0x78, 0x6a, 0xc3, 0xf1 ) );
586
587/* HMAC-SHA512/256 test case 89 */
588HMAC_TEST ( wycheproof_hmac_sha512_256_b3b54e05, &sha512_256_algorithm,
589 KEY ( 0x66, 0x5a, 0x02, 0xbc, 0x26, 0x5a, 0x66, 0xd0, 0x17, 0x75,
590 0x09, 0x1d, 0xa5, 0x67, 0x26, 0xb6, 0x66, 0x8b, 0xfd, 0x90,
591 0x3c, 0xb7, 0xaf, 0x66, 0xfb, 0x1b, 0x78, 0xa8, 0xa0, 0x62,
592 0xe4, 0x3c ),
593 DATA ( 0x3f, 0x56, 0x93, 0x5d, 0xef, 0x3f ),
594 EXPECTED ( 0x08, 0x15, 0x1b, 0xc4, 0x41, 0xcf, 0x73, 0x34, 0x8a,
595 0x79, 0x57, 0x6e, 0x79, 0x39, 0x27, 0x37 ) );
596
597/* HMAC-SHA512/256 test case 90 */
598HMAC_TEST ( wycheproof_hmac_sha512_256_cf4adfe8, &sha512_256_algorithm,
599 KEY ( 0xfa, 0xcd, 0x75, 0xb2, 0x22, 0x21, 0x38, 0x00, 0x47, 0x30,
600 0x5b, 0xc9, 0x81, 0xf5, 0x70, 0xe2, 0xa1, 0xaf, 0x38, 0x92,
601 0x8e, 0xa7, 0xe2, 0x05, 0x9e, 0x3a, 0xf5, 0xfc, 0x6b, 0x82,
602 0xb4, 0x93 ),
603 DATA ( 0x57, 0xbb, 0x86, 0xbe, 0xed, 0x15, 0x6f ),
604 EXPECTED ( 0xb9, 0x05, 0x06, 0x4d, 0xdd, 0x9b, 0x6e, 0x62, 0x6c,
605 0xc9, 0xc6, 0x34, 0x2f, 0xf2, 0xf3, 0x15 ) );
606
607/* HMAC-SHA512/256 test case 91 */
608HMAC_TEST ( wycheproof_hmac_sha512_256_7e919de3, &sha512_256_algorithm,
609 KEY ( 0x50, 0x5a, 0xa9, 0x88, 0x19, 0x80, 0x9e, 0xf6, 0x3b, 0x9a,
610 0x36, 0x8a, 0x1e, 0x8b, 0xc2, 0xe9, 0x22, 0xda, 0x45, 0xb0,
611 0x3c, 0xe0, 0x2d, 0x9a, 0x79, 0x66, 0xb1, 0x50, 0x06, 0xdb,
612 0xa2, 0xd5 ),
613 DATA ( 0x2e, 0x4e, 0x7e, 0xf7, 0x28, 0xfe, 0x11, 0xaf ),
614 EXPECTED ( 0x8e, 0x51, 0x0f, 0xd9, 0x67, 0xf6, 0x9f, 0x9c, 0xc4,
615 0x9e, 0x83, 0x4d, 0xdf, 0x62, 0x43, 0x99 ) );
616
617/* HMAC-SHA512/256 test case 92 */
618HMAC_TEST ( wycheproof_hmac_sha512_256_3daf5698, &sha512_256_algorithm,
619 KEY ( 0xf9, 0x42, 0x09, 0x38, 0x42, 0x80, 0x8b, 0xa4, 0x7f, 0x64,
620 0xe4, 0x27, 0xf7, 0x35, 0x1d, 0xde, 0x6b, 0x95, 0x46, 0xe6,
621 0x6d, 0xe4, 0xe7, 0xd6, 0x0a, 0xa6, 0xf3, 0x28, 0x18, 0x27,
622 0x12, 0xcf ),
623 DATA ( 0x85, 0x2a, 0x21, 0xd9, 0x28, 0x48, 0xe6, 0x27, 0xc7 ),
624 EXPECTED ( 0x09, 0xfe, 0x45, 0xcf, 0x3d, 0x00, 0x03, 0xc3, 0x06,
625 0x88, 0x69, 0x04, 0x47, 0x4f, 0xc6, 0x98 ) );
626
627/* HMAC-SHA512/256 test case 93 */
628HMAC_TEST ( wycheproof_hmac_sha512_256_34054a65, &sha512_256_algorithm,
629 KEY ( 0x64, 0xbe, 0x16, 0x2b, 0x39, 0xc6, 0xe5, 0xf1, 0xfe, 0xd9,
630 0xc3, 0x2d, 0x9f, 0x67, 0x4d, 0x9a, 0x8c, 0xde, 0x6e, 0xaa,
631 0x24, 0x43, 0x21, 0x4d, 0x86, 0xbd, 0x4a, 0x1f, 0xb5, 0x3b,
632 0x81, 0xb4 ),
633 DATA ( 0x19, 0x5a, 0x3b, 0x29, 0x2f, 0x93, 0xba, 0xff, 0x0a, 0x2c ),
634 EXPECTED ( 0x14, 0x2d, 0xa8, 0x56, 0x05, 0xca, 0xa5, 0x7a, 0x66,
635 0x74, 0x15, 0xe6, 0x2b, 0x0e, 0x42, 0x0f ) );
636
637/* HMAC-SHA512/256 test case 94 */
638HMAC_TEST ( wycheproof_hmac_sha512_256_41dbef0a, &sha512_256_algorithm,
639 KEY ( 0xb2, 0x59, 0xa5, 0x55, 0xd4, 0x4b, 0x8a, 0x20, 0xc5, 0x48,
640 0x9e, 0x2f, 0x38, 0x39, 0x2d, 0xda, 0xa6, 0xbe, 0x9e, 0x35,
641 0xb9, 0x83, 0x3b, 0x67, 0xe1, 0xb5, 0xfd, 0xf6, 0xcb, 0x3e,
642 0x4c, 0x6c ),
643 DATA ( 0xaf, 0xd7, 0x31, 0x17, 0x33, 0x0c, 0x6e, 0x85, 0x28, 0xa6,
644 0xe4 ),
645 EXPECTED ( 0x96, 0x23, 0xf0, 0x0e, 0xc6, 0x4c, 0x2d, 0x49, 0x86,
646 0x39, 0x72, 0xa9, 0x0f, 0xf7, 0xc5, 0x17 ) );
647
648/* HMAC-SHA512/256 test case 95 */
649HMAC_TEST ( wycheproof_hmac_sha512_256_59e997e5, &sha512_256_algorithm,
650 KEY ( 0x2c, 0x6f, 0xc6, 0x2d, 0xaa, 0x77, 0xba, 0x8c, 0x68, 0x81,
651 0xb3, 0xdd, 0x69, 0x89, 0x89, 0x8f, 0xef, 0x64, 0x66, 0x63,
652 0xcc, 0x7b, 0x0a, 0x3d, 0xb8, 0x22, 0x8a, 0x70, 0x7b, 0x85,
653 0xf2, 0xdc ),
654 DATA ( 0x0f, 0xf5, 0x4d, 0x6b, 0x67, 0x59, 0x12, 0x0c, 0x2e, 0x8a,
655 0x51, 0xe3 ),
656 EXPECTED ( 0xb3, 0x68, 0xcf, 0x82, 0xae, 0x3b, 0x0b, 0x85, 0x3a,
657 0x7b, 0xc5, 0x63, 0x83, 0x03, 0x05, 0x76 ) );
658
659/* HMAC-SHA512/256 test case 96 */
660HMAC_TEST ( wycheproof_hmac_sha512_256_13647f8d, &sha512_256_algorithm,
661 KEY ( 0xab, 0xab, 0x81, 0x5d, 0x51, 0xdf, 0x29, 0xf7, 0x40, 0xe4,
662 0xe2, 0x07, 0x9f, 0xb7, 0x98, 0xe0, 0x15, 0x28, 0x36, 0xe6,
663 0xab, 0x57, 0xd1, 0x53, 0x6a, 0xe8, 0x92, 0x9e, 0x52, 0xc0,
664 0x6e, 0xb8 ),
665 DATA ( 0xf0, 0x05, 0x8d, 0x41, 0x2a, 0x10, 0x4e, 0x53, 0xd8, 0x20,
666 0xb9, 0x5a, 0x7f ),
667 EXPECTED ( 0x1e, 0xe4, 0xee, 0x38, 0x69, 0x82, 0x99, 0x22, 0x16,
668 0x82, 0xe6, 0x4f, 0xd6, 0xd3, 0x44, 0x69 ) );
669
670/* HMAC-SHA512/256 test case 97 */
671HMAC_TEST ( wycheproof_hmac_sha512_256_31309822, &sha512_256_algorithm,
672 KEY ( 0x3d, 0x5d, 0xa1, 0xaf, 0x83, 0xf7, 0x28, 0x74, 0x58, 0xbf,
673 0xf7, 0xa7, 0x65, 0x1e, 0xa5, 0xd8, 0xdb, 0x72, 0x25, 0x94,
674 0x01, 0x33, 0x3f, 0x6b, 0x82, 0x09, 0x69, 0x96, 0xdd, 0x7e,
675 0xaf, 0x19 ),
676 DATA ( 0xaa, 0xcc, 0x36, 0x97, 0x2f, 0x18, 0x30, 0x57, 0x91, 0x9f,
677 0xf5, 0x7b, 0x49, 0xe1 ),
678 EXPECTED ( 0xa8, 0xc8, 0x10, 0xbe, 0x70, 0x51, 0x08, 0x01, 0x26,
679 0xf5, 0x02, 0xa9, 0x8a, 0xa3, 0x2b, 0x68 ) );
680
681/* HMAC-SHA512/256 test case 98 */
682HMAC_TEST ( wycheproof_hmac_sha512_256_a9a08194, &sha512_256_algorithm,
683 KEY ( 0xc1, 0x9b, 0xdf, 0x31, 0x4c, 0x6c, 0xf6, 0x43, 0x81, 0x42,
684 0x54, 0x67, 0xf4, 0x2a, 0xef, 0xa1, 0x7c, 0x1c, 0xc9, 0x35,
685 0x8b, 0xe1, 0x6c, 0xe3, 0x1b, 0x1d, 0x21, 0x48, 0x59, 0xce,
686 0x86, 0xaa ),
687 DATA ( 0x5d, 0x06, 0x6a, 0x92, 0xc3, 0x00, 0xe9, 0xb6, 0xdd, 0xd6,
688 0x3a, 0x7c, 0x13, 0xae, 0x33 ),
689 EXPECTED ( 0x1a, 0x38, 0x15, 0x6d, 0x8b, 0x62, 0x2c, 0xbf, 0x24,
690 0x36, 0xc3, 0xdf, 0xfd, 0xf2, 0x79, 0xac ) );
691
692/* HMAC-SHA512/256 test case 99 */
693HMAC_TEST ( wycheproof_hmac_sha512_256_4fa8402c, &sha512_256_algorithm,
694 KEY ( 0x61, 0x2e, 0x83, 0x78, 0x43, 0xce, 0xae, 0x7f, 0x61, 0xd4,
695 0x96, 0x25, 0xfa, 0xa7, 0xe7, 0x49, 0x4f, 0x92, 0x53, 0xe2,
696 0x0c, 0xb3, 0xad, 0xce, 0xa6, 0x86, 0x51, 0x2b, 0x04, 0x39,
697 0x36, 0xcd ),
698 DATA ( 0xcc, 0x37, 0xfa, 0xe1, 0x5f, 0x74, 0x5a, 0x2f, 0x40, 0xe2,
699 0xc8, 0xb1, 0x92, 0xf2, 0xb3, 0x8d ),
700 EXPECTED ( 0x70, 0x5c, 0x80, 0xda, 0x3c, 0x31, 0x66, 0xdb, 0xec,
701 0x0a, 0x3a, 0xe9, 0x59, 0xf5, 0x98, 0xf8 ) );
702
703/* HMAC-SHA512/256 test case 100 */
704HMAC_TEST ( wycheproof_hmac_sha512_256_05251dad, &sha512_256_algorithm,
705 KEY ( 0x73, 0x21, 0x6f, 0xaf, 0xd0, 0x02, 0x2d, 0x0d, 0x6e, 0xe2,
706 0x71, 0x98, 0xb2, 0x27, 0x25, 0x78, 0xfa, 0x8f, 0x04, 0xdd,
707 0x9f, 0x44, 0x46, 0x7f, 0xbb, 0x64, 0x37, 0xaa, 0x45, 0x64,
708 0x1b, 0xf7 ),
709 DATA ( 0xd5, 0x24, 0x7b, 0x8f, 0x6c, 0x3e, 0xdc, 0xbf, 0xb1, 0xd5,
710 0x91, 0xd1, 0x3e, 0xce, 0x23, 0xd2, 0xf5 ),
711 EXPECTED ( 0xaf, 0xdb, 0x30, 0xa4, 0x8f, 0x80, 0xe4, 0x15, 0xca,
712 0x75, 0xf8, 0xb2, 0xd3, 0x35, 0x8d, 0xf1 ) );
713
714/* HMAC-SHA512/256 test case 101 */
715HMAC_TEST ( wycheproof_hmac_sha512_256_ef687e7b, &sha512_256_algorithm,
716 KEY ( 0x04, 0x27, 0xa7, 0x0e, 0x25, 0x75, 0x28, 0xf3, 0xab, 0x70,
717 0x64, 0x0b, 0xba, 0x1a, 0x5d, 0xe1, 0x2c, 0xf3, 0x88, 0x5d,
718 0xd4, 0xc8, 0xe2, 0x84, 0xfb, 0xbb, 0x55, 0xfe, 0xb3, 0x52,
719 0x94, 0xa5 ),
720 DATA ( 0x13, 0x93, 0x7f, 0x85, 0x44, 0xf4, 0x42, 0x70, 0xd0, 0x11,
721 0x75, 0xa0, 0x11, 0xf7, 0x67, 0x0e, 0x93, 0xfa, 0x6b, 0xa7,
722 0xef, 0x02, 0x33, 0x6e ),
723 EXPECTED ( 0x26, 0x3d, 0xc7, 0x3e, 0xb6, 0x4a, 0xdd, 0x7a, 0x90,
724 0x19, 0xb6, 0x42, 0x55, 0xf2, 0xa8, 0xf8 ) );
725
726/* HMAC-SHA512/256 test case 102 */
727HMAC_TEST ( wycheproof_hmac_sha512_256_73b60877, &sha512_256_algorithm,
728 KEY ( 0x96, 0xe1, 0xe4, 0x89, 0x6f, 0xb2, 0xcd, 0x05, 0xf1, 0x33,
729 0xa6, 0xa1, 0x00, 0xbc, 0x56, 0x09, 0xa7, 0xac, 0x3c, 0xa6,
730 0xd8, 0x17, 0x21, 0xe9, 0x22, 0xda, 0xdd, 0x69, 0xad, 0x07,
731 0xa8, 0x92 ),
732 DATA ( 0x91, 0xa1, 0x7e, 0x4d, 0xfc, 0xc3, 0x16, 0x6a, 0x1a, 0xdd,
733 0x26, 0xff, 0x0e, 0x7c, 0x12, 0x05, 0x6e, 0x8a, 0x65, 0x4f,
734 0x28, 0xa6, 0xde, 0x24, 0xf4, 0xba, 0x73, 0x9c, 0xeb, 0x5b,
735 0x5b, 0x18 ),
736 EXPECTED ( 0x8c, 0x29, 0x4a, 0x89, 0x50, 0x4e, 0xf2, 0xf7, 0x99,
737 0x71, 0xa4, 0xff, 0x70, 0xbb, 0x79, 0xee ) );
738
739/* HMAC-SHA512/256 test case 103 */
740HMAC_TEST ( wycheproof_hmac_sha512_256_9ecb3a81, &sha512_256_algorithm,
741 KEY ( 0x41, 0x20, 0x15, 0x67, 0xbe, 0x4e, 0x6e, 0xa0, 0x6d, 0xe2,
742 0x29, 0x5f, 0xd0, 0xe6, 0xe8, 0xa7, 0xd8, 0x62, 0xbb, 0x57,
743 0x31, 0x18, 0x94, 0xf5, 0x25, 0xd8, 0xad, 0xea, 0xbb, 0xa4,
744 0xa3, 0xe4 ),
745 DATA ( 0x58, 0xc8, 0xc7, 0x3b, 0xdd, 0x3f, 0x35, 0x0c, 0x97, 0x47,
746 0x78, 0x16, 0xea, 0xe4, 0xd0, 0x78, 0x9c, 0x93, 0x69, 0xc0,
747 0xe9, 0x9c, 0x24, 0x89, 0x02, 0xc7, 0x00, 0xbc, 0x29, 0xed,
748 0x98, 0x64, 0x25, 0x98, 0x5e, 0xb3, 0xfa, 0x55, 0x70, 0x9b,
749 0x73, 0xbf, 0x62, 0x0c, 0xd9, 0xb1, 0xcb ),
750 EXPECTED ( 0x50, 0x19, 0xc6, 0x9e, 0xbf, 0xa6, 0x23, 0x56, 0x72,
751 0x6f, 0x45, 0x43, 0x44, 0x67, 0x58, 0xf0 ) );
752
753/* HMAC-SHA512/256 test case 104 */
754HMAC_TEST ( wycheproof_hmac_sha512_256_2bf0ea63, &sha512_256_algorithm,
755 KEY ( 0x64, 0x9e, 0x37, 0x3e, 0x68, 0x1e, 0xf5, 0x2e, 0x3c, 0x10,
756 0xac, 0x26, 0x54, 0x84, 0x75, 0x09, 0x32, 0xa9, 0x91, 0x8f,
757 0x28, 0xfb, 0x82, 0x4f, 0x7c, 0xb5, 0x0a, 0xda, 0xb3, 0x97,
758 0x81, 0xfe ),
759 DATA ( 0x39, 0xb4, 0x47, 0xbd, 0x3a, 0x01, 0x98, 0x3c, 0x1c, 0xb7,
760 0x61, 0xb4, 0x56, 0xd6, 0x90, 0x00, 0x94, 0x8c, 0xeb, 0x87,
761 0x05, 0x62, 0xa5, 0x36, 0x12, 0x6a, 0x0d, 0x18, 0xa8, 0xe7,
762 0xe4, 0x9b, 0x16, 0xde, 0x8f, 0xe6, 0x72, 0xf1, 0x3d, 0x08,
763 0x08, 0xd8, 0xb7, 0xd9, 0x57, 0x89, 0x99, 0x17 ),
764 EXPECTED ( 0x55, 0xf2, 0x3d, 0xb2, 0x59, 0xbc, 0x63, 0x51, 0x15,
765 0xae, 0xef, 0x59, 0x25, 0x8c, 0x83, 0x8b ) );
766
767/* HMAC-SHA512/256 test case 105 */
768HMAC_TEST ( wycheproof_hmac_sha512_256_ad80e825, &sha512_256_algorithm,
769 KEY ( 0x7b, 0x0d, 0x23, 0x7f, 0x7b, 0x53, 0x6e, 0x2c, 0x69, 0x50,
770 0x99, 0x0e, 0x61, 0xb3, 0x61, 0xb3, 0x84, 0x33, 0x3d, 0xda,
771 0x69, 0x00, 0x45, 0xc5, 0x91, 0x32, 0x1a, 0x4e, 0x3f, 0x79,
772 0x74, 0x7f ),
773 DATA ( 0x3d, 0x62, 0x83, 0xd1, 0x1c, 0x02, 0x19, 0xb5, 0x25, 0x62,
774 0x0e, 0x9b, 0xf5, 0xb9, 0xfd, 0x88, 0x7d, 0x3f, 0x0f, 0x70,
775 0x7a, 0xcb, 0x1f, 0xbd, 0xff, 0xab, 0x0d, 0x97, 0xa5, 0xc6,
776 0xd0, 0x7f, 0xc5, 0x47, 0x76, 0x2e, 0x0e, 0x7d, 0xd7, 0xc4,
777 0x3a, 0xd3, 0x5f, 0xab, 0x1c, 0x79, 0x0f, 0x80, 0x47 ),
778 EXPECTED ( 0xba, 0xb7, 0x9e, 0xcf, 0x91, 0xba, 0xd0, 0xac, 0x1b,
779 0xad, 0xbf, 0x9a, 0xab, 0x21, 0x37, 0xab ) );
780
781/* HMAC-SHA512/256 test case 106 */
782HMAC_TEST ( wycheproof_hmac_sha512_256_a2380a6b, &sha512_256_algorithm,
783 KEY ( 0x17, 0xc9, 0x26, 0x63, 0x74, 0x1f, 0x01, 0x2e, 0x5b, 0xb6,
784 0x71, 0x4e, 0x61, 0x4c, 0x2d, 0x15, 0x59, 0x48, 0x61, 0x7f,
785 0x10, 0x93, 0x62, 0x69, 0xd9, 0x54, 0xc5, 0x8a, 0xba, 0x2a,
786 0xe6, 0x2d ),
787 DATA ( 0x7f, 0xdd, 0x6a, 0x15, 0xc8, 0x61, 0xd0, 0x31, 0x3f, 0x66,
788 0x35, 0xd7, 0x7d, 0xc5, 0x5e, 0x11, 0x5f, 0xf1, 0x8c, 0x8a,
789 0xb0, 0x63, 0xb5, 0xd0, 0x3e, 0xab, 0x47, 0x2e, 0xec, 0xa8,
790 0x7a, 0x37, 0x81, 0x88, 0xf2, 0x58, 0x13, 0x51, 0x5c, 0xf9,
791 0x0b, 0x6c, 0xff, 0xa9, 0x4a, 0x8f, 0xf3, 0x6b, 0x29, 0xd6,
792 0x56, 0x03, 0xea, 0xb3, 0xfb, 0xd2, 0xaa, 0x95, 0x00, 0xb2,
793 0x61, 0xe1, 0x84, 0x04, 0x98, 0x93, 0xdc, 0x6c, 0xa2, 0x01,
794 0x0b, 0xec, 0xac, 0x16, 0x30, 0x53, 0xf2, 0x11, 0x07, 0x0b,
795 0xdd, 0xa6, 0x21, 0xb8, 0xbd, 0x8a, 0xf7, 0x7e, 0x45, 0x02,
796 0x68, 0x60, 0x3b, 0x52, 0xdb, 0x34, 0xc9, 0x0b, 0xe8, 0x36,
797 0xdf, 0xeb, 0xdd, 0xef, 0x42, 0x30, 0x3f, 0x72, 0x4e, 0x63,
798 0xbf, 0x0f ),
799 EXPECTED ( 0x4b, 0x87, 0xf6, 0x1c, 0x68, 0x36, 0x0d, 0xbf, 0x84,
800 0x50, 0x39, 0xb1, 0x5e, 0x0c, 0x5d, 0xde ) );
801
802/* HMAC-SHA512/256 test case 107 */
803HMAC_TEST ( wycheproof_hmac_sha512_256_16cfcdc0, &sha512_256_algorithm,
804 KEY ( 0x42, 0x4c, 0x6b, 0x22, 0x60, 0x6f, 0xcc, 0x09, 0x4a, 0xe8,
805 0x2f, 0xc5, 0xd3, 0xcb, 0xe4, 0x84, 0x17, 0x4c, 0x22, 0x11,
806 0xb3, 0xec, 0x77, 0x80, 0x91, 0xca, 0xc3, 0x4a, 0x8e, 0x38,
807 0xa1, 0x52 ),
808 DATA ( 0xd9, 0x6f, 0xf0, 0x62, 0xe2, 0x49, 0x0e, 0x8e, 0x0c, 0x54,
809 0xc5, 0xa8, 0xb8, 0x9e, 0x85, 0xb2, 0x5a, 0x66, 0xd9, 0x3d,
810 0x7c, 0x2b, 0x93, 0xbd, 0xfe, 0xf8, 0x46, 0xb7, 0x0d, 0x38,
811 0x67, 0x27, 0x46, 0xa4, 0xb9, 0x88, 0xd0, 0x8f, 0x15, 0xa5,
812 0xc5, 0x27, 0xca, 0x4f, 0x2c, 0x80, 0xe5, 0x3f, 0x7c, 0x6a,
813 0xc0, 0x52, 0x1b, 0xc5, 0x7e, 0xbe, 0x38, 0x20, 0x91, 0x80,
814 0xcb, 0xf9, 0x34, 0xe0, 0xbb, 0xeb, 0x58, 0xcf, 0xb6, 0x3d,
815 0x75, 0xda, 0x64, 0xaf, 0x41, 0xd0, 0x9c, 0xe1, 0x74, 0xaf,
816 0x18, 0x96, 0xf4, 0x25, 0x22, 0x91, 0x0f, 0xce, 0xd3, 0x5e,
817 0xa0, 0x00, 0x40, 0x2e, 0x95, 0xfd, 0x3a, 0xc7, 0xaa, 0x6d,
818 0x5e, 0x0a, 0x6b, 0x53, 0x3b, 0x08, 0x79, 0xbc, 0x46, 0x60,
819 0x19, 0xb3, 0xa5, 0xe6, 0xb1, 0x6e, 0x4b, 0xd1, 0xea, 0x6c,
820 0xdf, 0xc9, 0xcc, 0xc1, 0xd6, 0xf0, 0xf0 ),
821 EXPECTED ( 0x10, 0xe5, 0x40, 0x2f, 0x82, 0xac, 0xc8, 0x6e, 0x3d,
822 0x20, 0x0c, 0xa3, 0x6e, 0x69, 0xc1, 0x91 ) );
823
824/* HMAC-SHA512/256 test case 108 */
825HMAC_TEST ( wycheproof_hmac_sha512_256_9e1a2feb, &sha512_256_algorithm,
826 KEY ( 0x15, 0xd5, 0x53, 0xc8, 0xda, 0x43, 0x3d, 0x53, 0xcd, 0xc7,
827 0xf1, 0x50, 0x87, 0xa7, 0x03, 0x49, 0xca, 0xab, 0x57, 0xb3,
828 0x79, 0xa4, 0x07, 0x89, 0x28, 0xce, 0x9b, 0x99, 0x30, 0x2e,
829 0x31, 0xa6 ),
830 DATA ( 0xd6, 0xc0, 0xc5, 0x3b, 0x73, 0xf7, 0x4f, 0xb4, 0x26, 0xad,
831 0xfd, 0xc1, 0x43, 0xd7, 0x0d, 0xb7, 0xf7, 0xa8, 0xf8, 0xed,
832 0x32, 0xa2, 0xfa, 0xef, 0x26, 0x3c, 0xf9, 0xab, 0x11, 0x75,
833 0x37, 0xb6, 0xb9, 0xd1, 0x72, 0x8b, 0xd1, 0x00, 0x0c, 0x1f,
834 0x28, 0x90, 0x6c, 0x6c, 0xe6, 0xad, 0x21, 0x86, 0x2b, 0xfa,
835 0x4d, 0x68, 0x9c, 0x1a, 0x8e, 0xbe, 0x38, 0x68, 0xb9, 0x92,
836 0x09, 0x8b, 0x7f, 0x98, 0x1b, 0x2a, 0xf5, 0x18, 0x9a, 0x6a,
837 0xde, 0xdf, 0xf5, 0x3a, 0x6c, 0x70, 0xc8, 0x36, 0x93, 0xf5,
838 0xc8, 0xd6, 0x38, 0x5a, 0x9a, 0x8a, 0x4d, 0xca, 0x01, 0x7c,
839 0x57, 0x16, 0xac, 0x4d, 0x5b, 0x97, 0x65, 0xc5, 0xca, 0x2a,
840 0xb5, 0xf9, 0x86, 0x7e, 0x02, 0x79, 0x51, 0x98, 0xc0, 0xb9,
841 0x52, 0x7e, 0x07, 0xd0, 0x8a, 0xf5, 0x2d, 0xbc, 0xb9, 0x1c,
842 0xeb, 0x3d, 0x8b, 0x41, 0x2a, 0x2b, 0x24, 0x02 ),
843 EXPECTED ( 0x8c, 0x95, 0x67, 0x5e, 0xab, 0x75, 0xe6, 0x27, 0xc5,
844 0xa5, 0x5d, 0xb4, 0xc0, 0x9a, 0x4a, 0x62 ) );
845
846/* HMAC-SHA512/256 test case 109 */
847HMAC_TEST ( wycheproof_hmac_sha512_256_f201a528, &sha512_256_algorithm,
848 KEY ( 0xff, 0xe5, 0x59, 0x46, 0x8a, 0x10, 0x31, 0xdf, 0xb3, 0xce,
849 0xd2, 0xe3, 0x81, 0xe7, 0x4b, 0x58, 0x21, 0xa3, 0x6d, 0x9a,
850 0xbf, 0x5f, 0x2e, 0x59, 0x89, 0x5a, 0x7f, 0xdc, 0xa0, 0xfa,
851 0x56, 0xa0 ),
852 DATA ( 0x23, 0x88, 0x99, 0xa8, 0x4a, 0x3c, 0xf1, 0x52, 0x02, 0xa1,
853 0xfb, 0xef, 0x47, 0x41, 0xe1, 0x33, 0xfb, 0x24, 0xc0, 0x09,
854 0xa0, 0xcd, 0x83, 0x85, 0x4c, 0x6d, 0x1d, 0x7c, 0x92, 0x66,
855 0xd4, 0xc3, 0xea, 0xfe, 0x6d, 0x1d, 0xfc, 0x18, 0xf1, 0x38,
856 0x45, 0xcc, 0xda, 0xd7, 0xfe, 0x27, 0x76, 0x27, 0xb5, 0xfd,
857 0x5f, 0xf2, 0x55, 0x5c, 0xe6, 0xdf, 0xde, 0x1e, 0xe0, 0x78,
858 0x54, 0x0a, 0x0a, 0x35, 0x90, 0xc6, 0xd9, 0xbf, 0x2f, 0xb6,
859 0x3b, 0xa9, 0xaf, 0xbe, 0x93, 0x80, 0xe7, 0x97, 0xbe, 0x7c,
860 0xd0, 0x17, 0x64, 0x5c, 0x5a, 0x36, 0x13, 0xee, 0xf3, 0x8e,
861 0xf8, 0x9e, 0x3b, 0x74, 0x61, 0xe6, 0xe7, 0x00, 0xff, 0x2b,
862 0x4d, 0xee, 0xf5, 0x63, 0x6c, 0x9d, 0x21, 0x98, 0xb1, 0x43,
863 0xf7, 0x97, 0xca, 0x18, 0x20, 0xa3, 0xdc, 0xc5, 0xd4, 0x62,
864 0xeb, 0xf4, 0xa8, 0xc4, 0xc0, 0x9e, 0xb2, 0x02, 0xa2, 0x35,
865 0x92, 0xeb, 0x95, 0x24, 0x08, 0x2c, 0x79, 0xad, 0xda, 0x8f,
866 0xcd, 0x56, 0xd2, 0x56, 0x04, 0x1a, 0x26, 0xbf, 0x8f, 0x52,
867 0x39, 0x62, 0xba, 0x91, 0x1c, 0xe5, 0xa5, 0x78, 0x65, 0x70,
868 0xd6, 0x5b, 0xe3, 0xc4, 0xdf, 0x72, 0x2e, 0xd8, 0x83, 0x03,
869 0x02, 0x06, 0x5f, 0xeb, 0xdf, 0x94, 0x47, 0x15, 0x29, 0x8a,
870 0x1f, 0xbb, 0x7d, 0x10, 0xb6, 0x8d, 0x7d, 0xa2, 0xbf, 0x88,
871 0x93, 0x24, 0x31, 0x4c, 0xe5, 0x1e, 0x81, 0x5c, 0x7f, 0xbf,
872 0x03, 0xaa, 0x0a, 0x83, 0x58, 0xaf, 0xf3, 0xa8, 0x6e, 0xb7,
873 0xa3, 0x3f, 0x9a, 0x49, 0x23, 0x66, 0x0d, 0xb3, 0x04, 0x7e,
874 0x79, 0x3b, 0xeb, 0xb0, 0xc6, 0x91, 0x8f, 0x43, 0x95, 0xd4,
875 0x00, 0x38, 0x17, 0x23, 0xfd, 0xae, 0x28, 0x32, 0xc3, 0x6e,
876 0xfc, 0x8e, 0x36, 0x8a, 0x68, 0xf3, 0x0f, 0x63, 0x51, 0xc3,
877 0xbc, 0x94, 0x2c, 0xd5, 0x60 ),
878 EXPECTED ( 0x98, 0xcd, 0xd4, 0x7d, 0x3b, 0xfd, 0xb3, 0xec, 0xda,
879 0xbe, 0x5e, 0x3a, 0xba, 0xed, 0x20, 0x58 ) );
880
881/* HMAC-SHA512/256 test case 110 (skipped: modified tag) */
882
883/* HMAC-SHA512/256 test case 111 (skipped: modified tag) */
884
885/* HMAC-SHA512/256 test case 112 (skipped: modified tag) */
886
887/* HMAC-SHA512/256 test case 113 (skipped: modified tag) */
888
889/* HMAC-SHA512/256 test case 114 (skipped: modified tag) */
890
891/* HMAC-SHA512/256 test case 115 (skipped: modified tag) */
892
893/* HMAC-SHA512/256 test case 116 (skipped: modified tag) */
894
895/* HMAC-SHA512/256 test case 117 (skipped: modified tag) */
896
897/* HMAC-SHA512/256 test case 118 (skipped: modified tag) */
898
899/* HMAC-SHA512/256 test case 119 (skipped: modified tag) */
900
901/* HMAC-SHA512/256 test case 120 (skipped: modified tag) */
902
903/* HMAC-SHA512/256 test case 121 (skipped: modified tag) */
904
905/* HMAC-SHA512/256 test case 122 (skipped: modified tag) */
906
907/* HMAC-SHA512/256 test case 123 (skipped: modified tag) */
908
909/* HMAC-SHA512/256 test case 124 (skipped: modified tag) */
910
911/* HMAC-SHA512/256 test case 125 (skipped: modified tag) */
912
913/* HMAC-SHA512/256 test case 126 (skipped: modified tag) */
914
915/* HMAC-SHA512/256 test case 127 (skipped: modified tag) */
916
917/* HMAC-SHA512/256 test case 128 (skipped: modified tag) */
918
919/* HMAC-SHA512/256 test case 129 (skipped: modified tag) */
920
921/* HMAC-SHA512/256 test case 130 (skipped: modified tag) */
922
923/* HMAC-SHA512/256 test case 131 (skipped: modified tag) */
924
925/* HMAC-SHA512/256 test case 132 (skipped: modified tag) */
926
927/* HMAC-SHA512/256 test case 133 (skipped: modified tag) */
928
929/* HMAC-SHA512/256 test case 134 (skipped: modified tag) */
930
931/* HMAC-SHA512/256 test case 135 (skipped: modified tag) */
932
933/* HMAC-SHA512/256 test case 136 (skipped: modified tag) */
934
935/* HMAC-SHA512/256 test case 137 (skipped: modified tag) */
936
937/* HMAC-SHA512/256 test case 138 (skipped: modified tag) */
938
939/* HMAC-SHA512/256 test case 139 (skipped: modified tag) */
940
941/* HMAC-SHA512/256 test case 140 (skipped: modified tag) */
942
943/* HMAC-SHA512/256 test case 141 (skipped: modified tag) */
944
945/* HMAC-SHA512/256 test case 142 (skipped: modified tag) */
946
947/* HMAC-SHA512/256 test case 143 (skipped: modified tag) */
948
949/* HMAC-SHA512/256 test case 144 (skipped: modified tag) */
950
951/* HMAC-SHA512/256 test case 145 (skipped: modified tag) */
952
953/* HMAC-SHA512/256 test case 146 (skipped: modified tag) */
954
955/* HMAC-SHA512/256 test case 147 (skipped: modified tag) */
956
957/* HMAC-SHA512/256 test case 148 (skipped: modified tag) */
958
959/* HMAC-SHA512/256 test case 149 (skipped: modified tag) */
960
961/* HMAC-SHA512/256 test case 150 (skipped: modified tag) */
962
963/* HMAC-SHA512/256 test case 151 (skipped: modified tag) */
964
965/* HMAC-SHA512/256 test case 152 (skipped: modified tag) */
966
967/* HMAC-SHA512/256 test case 153 (skipped: modified tag) */
968
969/* HMAC-SHA512/256 test case 154 (skipped: modified tag) */
970
971/* HMAC-SHA512/256 test case 155 (skipped: modified tag) */
972
973/* HMAC-SHA512/256 test case 156 (skipped: modified tag) */
974
975/* HMAC-SHA512/256 test case 157 (skipped: modified tag) */
976
977/* HMAC-SHA512/256 test case 158 (skipped: modified tag) */
978
979/* HMAC-SHA512/256 test case 159 (skipped: modified tag) */
980
981/* HMAC-SHA512/256 test case 160 (skipped: modified tag) */
982
983/* HMAC-SHA512/256 test case 161 (skipped: modified tag) */
984
985/* HMAC-SHA512/256 test case 162 (skipped: modified tag) */
986
987/* HMAC-SHA512/256 test case 163 (skipped: modified tag) */
988
989/* HMAC-SHA512/256 test case 164 */
990HMAC_TEST ( wycheproof_hmac_sha512_256_c04388f2, &sha512_256_algorithm,
991 KEY ( 0xa3, 0x49, 0xac, 0x0a, 0x9f, 0x9f, 0x74, 0xe4, 0x8e, 0x09,
992 0x9c, 0xc3, 0xdb, 0xf9, 0xa9, 0xc9 ),
993 DATA(),
994 EXPECTED ( 0x4a, 0x8f, 0x57, 0x3f, 0xd1, 0x1a, 0x44, 0x1f, 0x73,
995 0x87, 0xbe, 0xc1, 0xc5, 0xdb, 0x99, 0x2c, 0xa8, 0xff,
996 0x0d, 0xea, 0x08, 0x63, 0x9d, 0x25, 0xf0, 0x47, 0x9f,
997 0x9d, 0x5b, 0x73, 0xee, 0xee ) );
998
999/* HMAC-SHA512/256 test case 165 */
1000HMAC_TEST ( wycheproof_hmac_sha512_256_52a5af30, &sha512_256_algorithm,
1001 KEY ( 0xac, 0x68, 0x6b, 0xa0, 0xf1, 0xa5, 0x1b, 0x4e, 0xc4, 0xf0,
1002 0xb3, 0x04, 0x92, 0xb7, 0xf5, 0x56 ),
1003 DATA ( 0x2f, 0xa4, 0x3a, 0x14, 0xae, 0x50, 0x05, 0x07, 0xde, 0xb9,
1004 0x5a, 0xb5, 0xbd, 0x32, 0xb0, 0xfe ),
1005 EXPECTED ( 0x44, 0x4e, 0xc6, 0xf9, 0xb3, 0xa6, 0xaf, 0xe9, 0x77,
1006 0xa9, 0x3d, 0x08, 0x04, 0x25, 0x52, 0x6c, 0xf2, 0x53,
1007 0x67, 0xfc, 0xea, 0x2b, 0xc8, 0x8b, 0x53, 0x4b, 0x2e,
1008 0x9a, 0x0d, 0xbe, 0x65, 0x9f ) );
1009
1010/* HMAC-SHA512/256 test case 166 */
1011HMAC_TEST ( wycheproof_hmac_sha512_256_4bd861cb, &sha512_256_algorithm,
1012 KEY ( 0x73, 0xef, 0x9e, 0xf1, 0xa4, 0x22, 0x5e, 0x51, 0xe3, 0xc1,
1013 0xdb, 0x3a, 0xce, 0x1f, 0xa2, 0x4f ),
1014 DATA ( 0xff, 0xad, 0x38, 0x0d, 0x9a, 0xab, 0xb0, 0xac, 0xed, 0xe5,
1015 0xc1, 0xbf, 0x11, 0x29, 0x25, 0xcd, 0xfc, 0x3d, 0x37, 0x9f,
1016 0xc2, 0x37, 0x6a, 0x4f, 0xe2, 0x64, 0x44, 0x90, 0xd0, 0x43,
1017 0x0a, 0xc3 ),
1018 EXPECTED ( 0x5b, 0x79, 0xaa, 0xe2, 0xaa, 0x78, 0xb9, 0xaa, 0xa6,
1019 0xff, 0xbb, 0xae, 0xbb, 0x71, 0xfb, 0x6e, 0x62, 0x2d,
1020 0x49, 0xf7, 0xe7, 0xd6, 0x27, 0x51, 0x78, 0xc8, 0x79,
1021 0xd9, 0xfb, 0xc0, 0xa7, 0xd6 ) );
1022
1023/* HMAC-SHA512/256 test case 167 */
1024HMAC_TEST ( wycheproof_hmac_sha512_256_1f68e6f7, &sha512_256_algorithm,
1025 KEY ( 0xe3, 0x4f, 0x15, 0xc7, 0xbd, 0x81, 0x99, 0x30, 0xfe, 0x9d,
1026 0x66, 0xe0, 0xc1, 0x66, 0xe6, 0x1c ),
1027 DATA(),
1028 EXPECTED ( 0x2f, 0xd8, 0xb5, 0xb9, 0x6f, 0xe9, 0xca, 0x36, 0x3c,
1029 0x70, 0x31, 0x31, 0x0f, 0x43, 0x6b, 0xc6 ) );
1030
1031/* HMAC-SHA512/256 test case 168 */
1032HMAC_TEST ( wycheproof_hmac_sha512_256_dfd641a6, &sha512_256_algorithm,
1033 KEY ( 0xe0, 0x9e, 0xaa, 0x5a, 0x3f, 0x5e, 0x56, 0xd2, 0x79, 0xd5,
1034 0xe7, 0xa0, 0x33, 0x73, 0xf6, 0xea ),
1035 DATA ( 0xef, 0x4e, 0xab, 0x37, 0x18, 0x1f, 0x98, 0x42, 0x3e, 0x53,
1036 0xe9, 0x47, 0xe7, 0x05, 0x0f, 0xd0 ),
1037 EXPECTED ( 0x90, 0x33, 0xb0, 0xa3, 0x0e, 0x67, 0xe2, 0x2f, 0x2a,
1038 0x25, 0x54, 0x86, 0xdb, 0xb8, 0x70, 0x97 ) );
1039
1040/* HMAC-SHA512/256 test case 169 */
1041HMAC_TEST ( wycheproof_hmac_sha512_256_402d4b21, &sha512_256_algorithm,
1042 KEY ( 0x9b, 0xd3, 0x90, 0x2e, 0xd0, 0x99, 0x6c, 0x86, 0x9b, 0x57,
1043 0x22, 0x72, 0xe7, 0x6f, 0x38, 0x89 ),
1044 DATA ( 0xa7, 0xba, 0x19, 0xd4, 0x9e, 0xe1, 0xea, 0x02, 0xf0, 0x98,
1045 0xaa, 0x8e, 0x30, 0xc7, 0x40, 0xd8, 0x93, 0xa4, 0x45, 0x6c,
1046 0xcc, 0x29, 0x40, 0x40, 0x48, 0x4e, 0xd8, 0xa0, 0x0a, 0x55,
1047 0xf9, 0x3e ),
1048 EXPECTED ( 0xe4, 0xa8, 0xeb, 0x8b, 0xb6, 0xfc, 0x01, 0x92, 0x58,
1049 0x04, 0x8e, 0x06, 0x99, 0x19, 0xdd, 0x03 ) );
1050
1051/* HMAC-SHA512/256 test case 170 */
1052HMAC_TEST ( wycheproof_hmac_sha512_256_10c86235, &sha512_256_algorithm,
1053 KEY ( 0x8a, 0x0c, 0x46, 0xeb, 0x8a, 0x29, 0x59, 0xe3, 0x98, 0x65,
1054 0x33, 0x00, 0x79, 0x76, 0x33, 0x41, 0xe7, 0x43, 0x9d, 0xab,
1055 0x14, 0x96, 0x94, 0xee, 0x57, 0xe0, 0xd6, 0x1e, 0xc7, 0x3d,
1056 0x94, 0x7e, 0x1d, 0x53, 0x01, 0xcd, 0x97, 0x4e, 0x18, 0xa5,
1057 0xe0, 0xd1, 0xcf, 0x0d, 0x2c, 0x37, 0xe8, 0xaa, 0xdd, 0x9f,
1058 0xd5, 0x89, 0xd5, 0x7e, 0xf3, 0x2e, 0x47, 0x02, 0x4a, 0x99,
1059 0xbc, 0x3f, 0x70, 0xc0, 0x77 ),
1060 DATA(),
1061 EXPECTED ( 0x05, 0xa6, 0x4b, 0xe4, 0x52, 0xf9, 0xc6, 0xe1, 0x90,
1062 0x11, 0x3e, 0xea, 0x89, 0xbd, 0x4c, 0xa6, 0xec, 0xd1,
1063 0x4e, 0x8f, 0xe9, 0x24, 0xa3, 0xad, 0xf4, 0x1a, 0x53,
1064 0xa3, 0x81, 0x61, 0x5f, 0x34 ) );
1065
1066/* HMAC-SHA512/256 test case 171 */
1067HMAC_TEST ( wycheproof_hmac_sha512_256_87f0c5ff, &sha512_256_algorithm,
1068 KEY ( 0x28, 0x77, 0xeb, 0xb8, 0x1f, 0x80, 0x33, 0x4f, 0xd0, 0x05,
1069 0x16, 0x33, 0x74, 0x46, 0xc5, 0xcf, 0x5a, 0xd4, 0xa3, 0xa2,
1070 0xe1, 0x97, 0x26, 0x9e, 0x5b, 0x0a, 0xd1, 0x88, 0x9d, 0xfe,
1071 0x2b, 0x4b, 0x0a, 0xaa, 0x67, 0x6f, 0xac, 0x55, 0xb3, 0x6c,
1072 0xe3, 0xaf, 0xfc, 0x7f, 0x10, 0x92, 0xab, 0x89, 0xc5, 0x32,
1073 0x73, 0xa8, 0x37, 0xbd, 0x5b, 0xc9, 0x4d, 0x1a, 0x9d, 0x9e,
1074 0x5b, 0x02, 0xe9, 0x85, 0x6f ),
1075 DATA ( 0xba, 0x44, 0x8d, 0xb8, 0x8f, 0x15, 0x4f, 0x77, 0x50, 0x28,
1076 0xfd, 0xec, 0xf9, 0xe6, 0x75, 0x2d ),
1077 EXPECTED ( 0x78, 0x6b, 0x60, 0xbe, 0x5e, 0x98, 0x63, 0x37, 0xf1,
1078 0xc6, 0x4a, 0x67, 0x70, 0x4a, 0x18, 0x0c, 0x65, 0xd8,
1079 0xb0, 0xd6, 0xe8, 0xbe, 0xfe, 0x4a, 0xbb, 0x79, 0x79,
1080 0xd8, 0xa1, 0x14, 0xbd, 0x38 ) );
1081
1082/* HMAC-SHA512/256 test case 172 */
1083HMAC_TEST ( wycheproof_hmac_sha512_256_ebe47e87, &sha512_256_algorithm,
1084 KEY ( 0x21, 0x17, 0x8e, 0x26, 0xbc, 0x28, 0xff, 0xc2, 0x7c, 0x06,
1085 0xf7, 0x62, 0xba, 0x19, 0x0a, 0x62, 0x70, 0x75, 0x85, 0x6d,
1086 0x7c, 0xa6, 0xfe, 0xab, 0x79, 0xac, 0x63, 0x14, 0x9b, 0x17,
1087 0x12, 0x6e, 0x34, 0xfd, 0x9e, 0x55, 0x90, 0xe0, 0xe9, 0x0a,
1088 0xac, 0x80, 0x1d, 0xf0, 0x95, 0x05, 0xd8, 0xaf, 0x2d, 0xd0,
1089 0xa2, 0x70, 0x3b, 0x35, 0x2c, 0x57, 0x3a, 0xc9, 0xd2, 0xcb,
1090 0x06, 0x39, 0x27, 0xf2, 0xaf ),
1091 DATA ( 0x7d, 0x5f, 0x1d, 0x6b, 0x99, 0x34, 0x52, 0xb1, 0xb5, 0x3a,
1092 0x43, 0x75, 0x76, 0x0d, 0x10, 0xa2, 0x0d, 0x46, 0xa0, 0xab,
1093 0x9e, 0xc3, 0x94, 0x3f, 0xc4, 0xb0, 0x7a, 0x2c, 0xe7, 0x35,
1094 0xe7, 0x31 ),
1095 EXPECTED ( 0x9b, 0xae, 0x00, 0xd0, 0x8a, 0x9d, 0xfc, 0x0e, 0xb0,
1096 0x2c, 0x22, 0x5a, 0x57, 0xe9, 0xff, 0xb3, 0xae, 0x38,
1097 0xa0, 0x96, 0xda, 0x54, 0xf0, 0x25, 0xdc, 0x90, 0x1c,
1098 0xd1, 0x74, 0xa9, 0x21, 0x2f ) );
1099
1100/* HMAC-SHA512/256 test case 173 */
1101HMAC_TEST ( wycheproof_hmac_sha512_256_ea3c9216, &sha512_256_algorithm,
1102 KEY ( 0x81, 0x3e, 0x0c, 0x07, 0x8c, 0x22, 0x13, 0x75, 0xe8, 0x05,
1103 0x90, 0xac, 0xe6, 0x77, 0x4e, 0xaf, 0xd2, 0xd2, 0xc2, 0x42,
1104 0x35, 0x09, 0x88, 0xd0, 0x2e, 0xfa, 0x55, 0x0e, 0x05, 0xae,
1105 0xcb, 0xe1, 0x00, 0xc1, 0xb8, 0xbf, 0x15, 0x4c, 0x93, 0x2c,
1106 0xf9, 0xe5, 0x71, 0x77, 0x01, 0x5c, 0x81, 0x6c, 0x42, 0xbc,
1107 0x7f, 0xbc, 0x71, 0xce, 0xaa, 0x53, 0x28, 0xc7, 0x31, 0x6b,
1108 0x7f, 0x0f, 0x30, 0x33, 0x0f ),
1109 DATA(),
1110 EXPECTED ( 0x87, 0xba, 0x20, 0xfe, 0x77, 0x81, 0x57, 0x86, 0xe5,
1111 0x15, 0x9a, 0xb7, 0x13, 0xc1, 0xba, 0xb5 ) );
1112
1113/* HMAC-SHA512/256 test case 174 */
1114HMAC_TEST ( wycheproof_hmac_sha512_256_b8fe66a6, &sha512_256_algorithm,
1115 KEY ( 0x57, 0x13, 0x34, 0x30, 0x96, 0xb0, 0xaa, 0xf0, 0x56, 0x2a,
1116 0x6b, 0x92, 0xc1, 0xa1, 0x55, 0x35, 0x92, 0x41, 0x60, 0x47,
1117 0x5a, 0x4e, 0x42, 0x33, 0x58, 0x91, 0x59, 0x72, 0x8c, 0x56,
1118 0x2e, 0x3b, 0x2a, 0xd9, 0x6f, 0x74, 0x0c, 0x6a, 0x4d, 0xa2,
1119 0xbc, 0x3f, 0x76, 0x8c, 0xe9, 0x8c, 0x9b, 0xd6, 0x6b, 0xac,
1120 0x28, 0xd1, 0x64, 0x6f, 0xf5, 0x92, 0x02, 0x8c, 0x94, 0x0d,
1121 0x45, 0x5f, 0x35, 0xee, 0xb4 ),
1122 DATA ( 0x71, 0x71, 0x2d, 0xe2, 0xfa, 0xc1, 0xfb, 0x85, 0x56, 0x73,
1123 0xbf, 0xf7, 0x2a, 0xf6, 0x42, 0x57 ),
1124 EXPECTED ( 0x2d, 0xb5, 0x82, 0xe6, 0xce, 0xaa, 0xdb, 0x88, 0x5a,
1125 0x36, 0xe2, 0x7a, 0x2b, 0xf5, 0x0d, 0xea ) );
1126
1127/* HMAC-SHA512/256 test case 175 */
1128HMAC_TEST ( wycheproof_hmac_sha512_256_ac9f347b, &sha512_256_algorithm,
1129 KEY ( 0x72, 0x08, 0xaf, 0xbe, 0xcf, 0x5f, 0x1f, 0x34, 0x82, 0x8f,
1130 0x98, 0xb7, 0x19, 0x41, 0x4e, 0x28, 0x07, 0x16, 0xde, 0x64,
1131 0xf5, 0xed, 0xd1, 0xae, 0x1c, 0x77, 0x41, 0x53, 0xcd, 0x20,
1132 0x22, 0x33, 0x7b, 0xb2, 0x0f, 0xad, 0xe1, 0xb7, 0x85, 0x6f,
1133 0x1d, 0xbf, 0xd4, 0x0e, 0x2b, 0x43, 0x07, 0xf1, 0x29, 0x3c,
1134 0xef, 0xf1, 0x69, 0x2e, 0xe9, 0x0d, 0x8c, 0x90, 0xb5, 0xfd,
1135 0xf9, 0x53, 0xab, 0x01, 0xa5 ),
1136 DATA ( 0x43, 0xb5, 0x33, 0x02, 0xb6, 0x04, 0xd6, 0x13, 0xe6, 0x2d,
1137 0xb0, 0x02, 0x04, 0x4a, 0x47, 0x82, 0xd5, 0x72, 0xac, 0x8f,
1138 0xbd, 0x3c, 0xd0, 0xec, 0xe9, 0x1b, 0x43, 0xbc, 0x52, 0xe1,
1139 0x8e, 0x98 ),
1140 EXPECTED ( 0x75, 0x53, 0x1e, 0xad, 0x9c, 0x8d, 0xb1, 0x99, 0xba,
1141 0x2b, 0x1e, 0xc6, 0xb7, 0xe0, 0x0d, 0x60 ) );
1142
1143/** Perform Wycheproof HMAC-SHA512/256 self-tests */
1145
1146 /* Perform tests in tcId order */
1147 hmac_ok ( &wycheproof_hmac_sha512_256_0b2d4593 );
1148 hmac_ok ( &wycheproof_hmac_sha512_256_e908ab9c );
1149 hmac_ok ( &wycheproof_hmac_sha512_256_ffdeb9e9 );
1150 hmac_ok ( &wycheproof_hmac_sha512_256_eeecfc79 );
1151 hmac_ok ( &wycheproof_hmac_sha512_256_7f528746 );
1152 hmac_ok ( &wycheproof_hmac_sha512_256_79ecb1de );
1153 hmac_ok ( &wycheproof_hmac_sha512_256_e78171a0 );
1154 hmac_ok ( &wycheproof_hmac_sha512_256_62a19dc8 );
1155 hmac_ok ( &wycheproof_hmac_sha512_256_2722d0f8 );
1156 hmac_ok ( &wycheproof_hmac_sha512_256_46838ab7 );
1157 hmac_ok ( &wycheproof_hmac_sha512_256_22663801 );
1158 hmac_ok ( &wycheproof_hmac_sha512_256_e1218806 );
1159 hmac_ok ( &wycheproof_hmac_sha512_256_1c4910d2 );
1160 hmac_ok ( &wycheproof_hmac_sha512_256_d8bea32a );
1161 hmac_ok ( &wycheproof_hmac_sha512_256_5e0a6cbe );
1162 hmac_ok ( &wycheproof_hmac_sha512_256_12cd5c76 );
1163 hmac_ok ( &wycheproof_hmac_sha512_256_3c2386d0 );
1164 hmac_ok ( &wycheproof_hmac_sha512_256_1b221ef7 );
1165 hmac_ok ( &wycheproof_hmac_sha512_256_ad51fdea );
1166 hmac_ok ( &wycheproof_hmac_sha512_256_48ebb363 );
1167 hmac_ok ( &wycheproof_hmac_sha512_256_98894005 );
1168 hmac_ok ( &wycheproof_hmac_sha512_256_68a20439 );
1169 hmac_ok ( &wycheproof_hmac_sha512_256_cfebf95b );
1170 hmac_ok ( &wycheproof_hmac_sha512_256_64a517e8 );
1171 hmac_ok ( &wycheproof_hmac_sha512_256_6a49494e );
1172 hmac_ok ( &wycheproof_hmac_sha512_256_e5b2e5d6 );
1173 hmac_ok ( &wycheproof_hmac_sha512_256_abb94839 );
1174 hmac_ok ( &wycheproof_hmac_sha512_256_a0a7d633 );
1175 hmac_ok ( &wycheproof_hmac_sha512_256_e707cc0f );
1176 hmac_ok ( &wycheproof_hmac_sha512_256_48cea3c6 );
1177 hmac_ok ( &wycheproof_hmac_sha512_256_328d009a );
1178 hmac_ok ( &wycheproof_hmac_sha512_256_eeebccf4 );
1179 hmac_ok ( &wycheproof_hmac_sha512_256_7765202d );
1180 hmac_ok ( &wycheproof_hmac_sha512_256_b3b54e05 );
1181 hmac_ok ( &wycheproof_hmac_sha512_256_cf4adfe8 );
1182 hmac_ok ( &wycheproof_hmac_sha512_256_7e919de3 );
1183 hmac_ok ( &wycheproof_hmac_sha512_256_3daf5698 );
1184 hmac_ok ( &wycheproof_hmac_sha512_256_34054a65 );
1185 hmac_ok ( &wycheproof_hmac_sha512_256_41dbef0a );
1186 hmac_ok ( &wycheproof_hmac_sha512_256_59e997e5 );
1187 hmac_ok ( &wycheproof_hmac_sha512_256_13647f8d );
1188 hmac_ok ( &wycheproof_hmac_sha512_256_31309822 );
1189 hmac_ok ( &wycheproof_hmac_sha512_256_a9a08194 );
1190 hmac_ok ( &wycheproof_hmac_sha512_256_4fa8402c );
1191 hmac_ok ( &wycheproof_hmac_sha512_256_05251dad );
1192 hmac_ok ( &wycheproof_hmac_sha512_256_ef687e7b );
1193 hmac_ok ( &wycheproof_hmac_sha512_256_73b60877 );
1194 hmac_ok ( &wycheproof_hmac_sha512_256_9ecb3a81 );
1195 hmac_ok ( &wycheproof_hmac_sha512_256_2bf0ea63 );
1196 hmac_ok ( &wycheproof_hmac_sha512_256_ad80e825 );
1197 hmac_ok ( &wycheproof_hmac_sha512_256_a2380a6b );
1198 hmac_ok ( &wycheproof_hmac_sha512_256_16cfcdc0 );
1199 hmac_ok ( &wycheproof_hmac_sha512_256_9e1a2feb );
1200 hmac_ok ( &wycheproof_hmac_sha512_256_f201a528 );
1201 hmac_ok ( &wycheproof_hmac_sha512_256_c04388f2 );
1202 hmac_ok ( &wycheproof_hmac_sha512_256_52a5af30 );
1203 hmac_ok ( &wycheproof_hmac_sha512_256_4bd861cb );
1204 hmac_ok ( &wycheproof_hmac_sha512_256_1f68e6f7 );
1205 hmac_ok ( &wycheproof_hmac_sha512_256_dfd641a6 );
1206 hmac_ok ( &wycheproof_hmac_sha512_256_402d4b21 );
1207 hmac_ok ( &wycheproof_hmac_sha512_256_10c86235 );
1208 hmac_ok ( &wycheproof_hmac_sha512_256_87f0c5ff );
1209 hmac_ok ( &wycheproof_hmac_sha512_256_ebe47e87 );
1210 hmac_ok ( &wycheproof_hmac_sha512_256_ea3c9216 );
1211 hmac_ok ( &wycheproof_hmac_sha512_256_b8fe66a6 );
1212 hmac_ok ( &wycheproof_hmac_sha512_256_ac9f347b );
1213}
1214
1215/** Wycheproof HMAC-SHA512/256 self-tests */
1216struct self_test wycheproof_hmac_sha512_256 __self_test = {
1217 .name = "wycheproof_hmac_sha512_256",
1219};
1220REQUIRING_SYMBOL ( wycheproof_hmac_sha512_256 );
#define DATA(...)
Define inline data.
Definition acpi_test.c:74
#define KEY(...)
Define inline key.
Definition cipher_test.h:45
#define EXPECTED(...)
Define inline expected result point.
#define REQUIRING_SYMBOL(symbol)
Specify the file's requiring symbol.
Definition compiler.h:140
#define HMAC_TEST(name, DIGEST, KEY, DATA, EXPECTED)
Define an HMAC test.
Definition hmac_test.h:53
#define hmac_ok(test)
Report an HMAC test result.
Definition hmac_test.h:75
struct digest_algorithm sha512_256_algorithm
A self-test set.
Definition test.h:15
#define __self_test
Declare a self-test.
Definition test.h:32
static void wycheproof_hmac_sha512_256_exec(void)
Perform Wycheproof HMAC-SHA512/256 self-tests.
Cryptographic test vectors imported from Project Wycheproof.