a900e9165943bb77cbc4d202d19113cbbf06d905
[deb_dpdk.git] / test / test / test_cryptodev_zuc_test_vectors.h
1 /*-
2  *   BSD LICENSE
3  *
4  *   Copyright(c) 2016 Intel Corporation. All rights reserved.
5  *
6  *   Redistribution and use in source and binary forms, with or without
7  *   modification, are permitted provided that the following conditions
8  *   are met:
9  *
10  *   * Redistributions of source code must retain the above copyright
11  *     notice, this list of conditions and the following disclaimer.
12  *   * Redistributions in binary form must reproduce the above copyright
13  *     notice, this list of conditions and the following disclaimer in
14  *     the documentation and/or other materials provided with the
15  *     distribution.
16  *   * Neither the name of Intel Corporation nor the names of its
17  *     contributors may be used to endorse or promote products derived
18  *     from this software without specific prior written permission.
19  *
20  *   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21  *   "AS IS" AND ANY ExPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22  *   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
23  *   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
24  *   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
25  *   SPECIAL, ExEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
26  *   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
27  *   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
28  *   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
29  *   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30  *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31  */
32
33 #ifndef TEST_CRYPTODEV_ZUC_TEST_VECTORS_H_
34 #define TEST_CRYPTODEV_ZUC_TEST_VECTORS_H_
35
36 struct wireless_test_data {
37         struct {
38                 uint8_t data[64];
39                 unsigned len;
40         } key;
41
42         struct {
43                 uint8_t data[64] __rte_aligned(16);
44                 unsigned len;
45         } iv;
46
47         struct {
48                 uint8_t data[2048];
49                 unsigned len; /* length must be in Bits */
50         } plaintext;
51
52         struct {
53                 uint8_t data[2048];
54                 unsigned len; /* length must be in Bits */
55         } ciphertext;
56
57         struct {
58                 unsigned len;
59         } validDataLenInBits;
60
61         struct {
62                 unsigned len;
63         } validCipherLenInBits;
64
65         struct {
66                 unsigned len;
67         } validCipherOffsetLenInBits;
68
69         struct {
70                 unsigned len;
71         } validAuthLenInBits;
72
73         struct {
74                 unsigned len;
75         } validAuthOffsetLenInBits;
76
77         struct {
78                 uint8_t data[64];
79                 unsigned len;
80         } aad;
81
82         struct {
83                 uint8_t data[64];
84                 unsigned len;
85         } digest;
86 };
87 static struct wireless_test_data zuc_test_case_cipher_193b = {
88         .key = {
89                 .data = {
90                         0x17, 0x3D, 0x14, 0xBA, 0x50, 0x03, 0x73, 0x1D,
91                         0x7A, 0x60, 0x04, 0x94, 0x70, 0xF0, 0x0A, 0x29
92                 },
93                 .len = 16
94         },
95         .iv = {
96                 .data = {
97                         0x66, 0x03, 0x54, 0x92, 0x78, 0x00, 0x00, 0x00,
98                         0x66, 0x03, 0x54, 0x92, 0x78, 0x00, 0x00, 0x00
99                 },
100                 .len = 16
101         },
102         .plaintext = {
103                 .data = {
104                         0x6C, 0xF6, 0x53, 0x40, 0x73, 0x55, 0x52, 0xAB,
105                         0x0C, 0x97, 0x52, 0xFA, 0x6F, 0x90, 0x25, 0xFE,
106                         0x0B, 0xD6, 0x75, 0xD9, 0x00, 0x58, 0x75, 0xB2,
107                         0x00
108                 },
109                 .len = 200
110         },
111         .ciphertext = {
112                 .data = {
113                         0xA6, 0xC8, 0x5F, 0xC6, 0x6A, 0xFB, 0x85, 0x33,
114                         0xAA, 0xFC, 0x25, 0x18, 0xDF, 0xE7, 0x84, 0x94,
115                         0x0E, 0xE1, 0xE4, 0xB0, 0x30, 0x23, 0x8C, 0xC8,
116                         0x00
117                 },
118                 .len = 200
119         },
120         .validDataLenInBits = {
121                 .len = 193
122         },
123         .validCipherLenInBits = {
124                 .len = 193
125         },
126         .validCipherOffsetLenInBits = {
127                 .len = 128
128         }
129 };
130
131 static struct wireless_test_data zuc_test_case_cipher_800b = {
132         .key = {
133                 .data = {
134                         0xE5, 0xBD, 0x3E, 0xA0, 0xEB, 0x55, 0xAD, 0xE8,
135                         0x66, 0xC6, 0xAC, 0x58, 0xBD, 0x54, 0x30, 0x2A
136                 },
137                 .len = 16
138         },
139         .iv = {
140                 .data = {
141                         0x00, 0x05, 0x68, 0x23, 0xC4, 0x00, 0x00, 0x00,
142                         0x00, 0x05, 0x68, 0x23, 0xC4, 0x00, 0x00, 0x00
143                 },
144                 .len = 16
145         },
146         .plaintext = {
147                 .data = {
148                         0x14, 0xA8, 0xEF, 0x69, 0x3D, 0x67, 0x85, 0x07,
149                         0xBB, 0xE7, 0x27, 0x0A, 0x7F, 0x67, 0xFF, 0x50,
150                         0x06, 0xC3, 0x52, 0x5B, 0x98, 0x07, 0xE4, 0x67,
151                         0xC4, 0xE5, 0x60, 0x00, 0xBA, 0x33, 0x8F, 0x5D,
152                         0x42, 0x95, 0x59, 0x03, 0x67, 0x51, 0x82, 0x22,
153                         0x46, 0xC8, 0x0D, 0x3B, 0x38, 0xF0, 0x7F, 0x4B,
154                         0xE2, 0xD8, 0xFF, 0x58, 0x05, 0xF5, 0x13, 0x22,
155                         0x29, 0xBD, 0xE9, 0x3B, 0xBB, 0xDC, 0xAF, 0x38,
156                         0x2B, 0xF1, 0xEE, 0x97, 0x2F, 0xBF, 0x99, 0x77,
157                         0xBA, 0xDA, 0x89, 0x45, 0x84, 0x7A, 0x2A, 0x6C,
158                         0x9A, 0xD3, 0x4A, 0x66, 0x75, 0x54, 0xE0, 0x4D,
159                         0x1F, 0x7F, 0xA2, 0xC3, 0x32, 0x41, 0xBD, 0x8F,
160                         0x01, 0xBA, 0x22, 0x0D
161                 },
162                 .len = 800
163         },
164         .ciphertext = {
165                 .data = {
166                         0x13, 0x1D, 0x43, 0xE0, 0xDE, 0xA1, 0xBE, 0x5C,
167                         0x5A, 0x1B, 0xFD, 0x97, 0x1D, 0x85, 0x2C, 0xBF,
168                         0x71, 0x2D, 0x7B, 0x4F, 0x57, 0x96, 0x1F, 0xEA,
169                         0x32, 0x08, 0xAF, 0xA8, 0xBC, 0xA4, 0x33, 0xF4,
170                         0x56, 0xAD, 0x09, 0xC7, 0x41, 0x7E, 0x58, 0xBC,
171                         0x69, 0xCF, 0x88, 0x66, 0xD1, 0x35, 0x3F, 0x74,
172                         0x86, 0x5E, 0x80, 0x78, 0x1D, 0x20, 0x2D, 0xFB,
173                         0x3E, 0xCF, 0xF7, 0xFC, 0xBC, 0x3B, 0x19, 0x0F,
174                         0xE8, 0x2A, 0x20, 0x4E, 0xD0, 0xE3, 0x50, 0xFC,
175                         0x0F, 0x6F, 0x26, 0x13, 0xB2, 0xF2, 0xBC, 0xA6,
176                         0xDF, 0x5A, 0x47, 0x3A, 0x57, 0xA4, 0xA0, 0x0D,
177                         0x98, 0x5E, 0xBA, 0xD8, 0x80, 0xD6, 0xF2, 0x38,
178                         0x64, 0xA0, 0x7B, 0x01
179                 },
180                 .len = 800
181         },
182         .validDataLenInBits = {
183                 .len = 800
184         },
185         .validCipherLenInBits = {
186                 .len = 800
187         },
188         .validCipherOffsetLenInBits = {
189                 .len = 128
190         }
191 };
192
193 static struct wireless_test_data zuc_test_case_cipher_1570b = {
194         .key = {
195                 .data = {
196                         0xD4, 0x55, 0x2A, 0x8F, 0xD6, 0xE6, 0x1C, 0xC8,
197                         0x1A, 0x20, 0x09, 0x14, 0x1A, 0x29, 0xC1, 0x0B
198                 },
199                 .len = 16
200         },
201         .iv = {
202                 .data = {
203                         0x76, 0x45, 0x2E, 0xC1, 0x14, 0x00, 0x00, 0x00,
204                         0x76, 0x45, 0x2E, 0xC1, 0x14, 0x00, 0x00, 0x00
205                 },
206                 .len = 16
207         },
208         .plaintext = {
209                 .data = {
210                         0x38, 0xF0, 0x7F, 0x4B, 0xE2, 0xD8, 0xFF, 0x58,
211                         0x05, 0xF5, 0x13, 0x22, 0x29, 0xBD, 0xE9, 0x3B,
212                         0xBB, 0xDC, 0xAF, 0x38, 0x2B, 0xF1, 0xEE, 0x97,
213                         0x2F, 0xBF, 0x99, 0x77, 0xBA, 0xDA, 0x89, 0x45,
214                         0x84, 0x7A, 0x2A, 0x6C, 0x9A, 0xD3, 0x4A, 0x66,
215                         0x75, 0x54, 0xE0, 0x4D, 0x1F, 0x7F, 0xA2, 0xC3,
216                         0x32, 0x41, 0xBD, 0x8F, 0x01, 0xBA, 0x22, 0x0D,
217                         0x3C, 0xA4, 0xEC, 0x41, 0xE0, 0x74, 0x59, 0x5F,
218                         0x54, 0xAE, 0x2B, 0x45, 0x4F, 0xD9, 0x71, 0x43,
219                         0x20, 0x43, 0x60, 0x19, 0x65, 0xCC, 0xA8, 0x5C,
220                         0x24, 0x17, 0xED, 0x6C, 0xBE, 0xC3, 0xBA, 0xDA,
221                         0x84, 0xFC, 0x8A, 0x57, 0x9A, 0xEA, 0x78, 0x37,
222                         0xB0, 0x27, 0x11, 0x77, 0x24, 0x2A, 0x64, 0xDC,
223                         0x0A, 0x9D, 0xE7, 0x1A, 0x8E, 0xDE, 0xE8, 0x6C,
224                         0xA3, 0xD4, 0x7D, 0x03, 0x3D, 0x6B, 0xF5, 0x39,
225                         0x80, 0x4E, 0xCA, 0x86, 0xC5, 0x84, 0xA9, 0x05,
226                         0x2D, 0xE4, 0x6A, 0xD3, 0xFC, 0xED, 0x65, 0x54,
227                         0x3B, 0xD9, 0x02, 0x07, 0x37, 0x2B, 0x27, 0xAF,
228                         0xB7, 0x92, 0x34, 0xF5, 0xFF, 0x43, 0xEA, 0x87,
229                         0x08, 0x20, 0xE2, 0xC2, 0xB7, 0x8A, 0x8A, 0xAE,
230                         0x61, 0xCC, 0xE5, 0x2A, 0x05, 0x15, 0xE3, 0x48,
231                         0xD1, 0x96, 0x66, 0x4A, 0x34, 0x56, 0xB1, 0x82,
232                         0xA0, 0x7C, 0x40, 0x6E, 0x4A, 0x20, 0x79, 0x12,
233                         0x71, 0xCF, 0xED, 0xA1, 0x65, 0xD5, 0x35, 0xEC,
234                         0x5E, 0xA2, 0xD4, 0xDF, 0x40
235                 },
236                 .len = 1576
237         },
238         .ciphertext = {
239                 .data = {
240                         0x83, 0x83, 0xB0, 0x22, 0x9F, 0xCC, 0x0B, 0x9D,
241                         0x22, 0x95, 0xEC, 0x41, 0xC9, 0x77, 0xE9, 0xC2,
242                         0xBB, 0x72, 0xE2, 0x20, 0x37, 0x81, 0x41, 0xF9,
243                         0xC8, 0x31, 0x8F, 0x3A, 0x27, 0x0D, 0xFB, 0xCD,
244                         0xEE, 0x64, 0x11, 0xC2, 0xB3, 0x04, 0x4F, 0x17,
245                         0x6D, 0xC6, 0xE0, 0x0F, 0x89, 0x60, 0xF9, 0x7A,
246                         0xFA, 0xCD, 0x13, 0x1A, 0xD6, 0xA3, 0xB4, 0x9B,
247                         0x16, 0xB7, 0xBA, 0xBC, 0xF2, 0xA5, 0x09, 0xEB,
248                         0xB1, 0x6A, 0x75, 0xDC, 0xAB, 0x14, 0xFF, 0x27,
249                         0x5D, 0xBE, 0xEE, 0xA1, 0xA2, 0xB1, 0x55, 0xF9,
250                         0xD5, 0x2C, 0x26, 0x45, 0x2D, 0x01, 0x87, 0xC3,
251                         0x10, 0xA4, 0xEE, 0x55, 0xBE, 0xAA, 0x78, 0xAB,
252                         0x40, 0x24, 0x61, 0x5B, 0xA9, 0xF5, 0xD5, 0xAD,
253                         0xC7, 0x72, 0x8F, 0x73, 0x56, 0x06, 0x71, 0xF0,
254                         0x13, 0xE5, 0xE5, 0x50, 0x08, 0x5D, 0x32, 0x91,
255                         0xDF, 0x7D, 0x5F, 0xEC, 0xED, 0xDE, 0xD5, 0x59,
256                         0x64, 0x1B, 0x6C, 0x2F, 0x58, 0x52, 0x33, 0xBC,
257                         0x71, 0xE9, 0x60, 0x2B, 0xD2, 0x30, 0x58, 0x55,
258                         0xBB, 0xD2, 0x5F, 0xFA, 0x7F, 0x17, 0xEC, 0xBC,
259                         0x04, 0x2D, 0xAA, 0xE3, 0x8C, 0x1F, 0x57, 0xAD,
260                         0x8E, 0x8E, 0xBD, 0x37, 0x34, 0x6F, 0x71, 0xBE,
261                         0xFD, 0xBB, 0x74, 0x32, 0xE0, 0xE0, 0xBB, 0x2C,
262                         0xFC, 0x09, 0xBC, 0xD9, 0x65, 0x70, 0xCB, 0x0C,
263                         0x0C, 0x39, 0xDF, 0x5E, 0x29, 0x29, 0x4E, 0x82,
264                         0x70, 0x3A, 0x63, 0x7F, 0x80
265                 },
266                 .len = 1576
267         },
268         .validDataLenInBits = {
269                 .len = 1570
270         },
271         .validCipherLenInBits = {
272                 .len = 1570
273         },
274         .validCipherOffsetLenInBits = {
275                 .len = 128
276         },
277 };
278
279 static struct wireless_test_data zuc_test_case_cipher_2798b = {
280         .key = {
281                 .data = {
282                         0xDB, 0x84, 0xB4, 0xFB, 0xCC, 0xDA, 0x56, 0x3B,
283                         0x66, 0x22, 0x7B, 0xFE, 0x45, 0x6F, 0x0F, 0x77
284                 },
285                 .len = 16
286         },
287         .iv = {
288                 .data = {
289                         0xE4, 0x85, 0x0F, 0xE1, 0x84, 0x00, 0x00, 0x00,
290                         0xE4, 0x85, 0x0F, 0xE1, 0x84, 0x00, 0x00, 0x00
291                 },
292                 .len = 16
293         },
294         .plaintext = {
295                 .data = {
296                         0xE5, 0x39, 0xF3, 0xB8, 0x97, 0x32, 0x40, 0xDA,
297                         0x03, 0xF2, 0xB8, 0xAA, 0x05, 0xEE, 0x0A, 0x00,
298                         0xDB, 0xAF, 0xC0, 0xE1, 0x82, 0x05, 0x5D, 0xFE,
299                         0x3D, 0x73, 0x83, 0xD9, 0x2C, 0xEF, 0x40, 0xE9,
300                         0x29, 0x28, 0x60, 0x5D, 0x52, 0xD0, 0x5F, 0x4F,
301                         0x90, 0x18, 0xA1, 0xF1, 0x89, 0xAE, 0x39, 0x97,
302                         0xCE, 0x19, 0x15, 0x5F, 0xB1, 0x22, 0x1D, 0xB8,
303                         0xBB, 0x09, 0x51, 0xA8, 0x53, 0xAD, 0x85, 0x2C,
304                         0xE1, 0x6C, 0xFF, 0x07, 0x38, 0x2C, 0x93, 0xA1,
305                         0x57, 0xDE, 0x00, 0xDD, 0xB1, 0x25, 0xC7, 0x53,
306                         0x9F, 0xD8, 0x50, 0x45, 0xE4, 0xEE, 0x07, 0xE0,
307                         0xC4, 0x3F, 0x9E, 0x9D, 0x6F, 0x41, 0x4F, 0xC4,
308                         0xD1, 0xC6, 0x29, 0x17, 0x81, 0x3F, 0x74, 0xC0,
309                         0x0F, 0xC8, 0x3F, 0x3E, 0x2E, 0xD7, 0xC4, 0x5B,
310                         0xA5, 0x83, 0x52, 0x64, 0xB4, 0x3E, 0x0B, 0x20,
311                         0xAF, 0xDA, 0x6B, 0x30, 0x53, 0xBF, 0xB6, 0x42,
312                         0x3B, 0x7F, 0xCE, 0x25, 0x47, 0x9F, 0xF5, 0xF1,
313                         0x39, 0xDD, 0x9B, 0x5B, 0x99, 0x55, 0x58, 0xE2,
314                         0xA5, 0x6B, 0xE1, 0x8D, 0xD5, 0x81, 0xCD, 0x01,
315                         0x7C, 0x73, 0x5E, 0x6F, 0x0D, 0x0D, 0x97, 0xC4,
316                         0xDD, 0xC1, 0xD1, 0xDA, 0x70, 0xC6, 0xDB, 0x4A,
317                         0x12, 0xCC, 0x92, 0x77, 0x8E, 0x2F, 0xBB, 0xD6,
318                         0xF3, 0xBA, 0x52, 0xAF, 0x91, 0xC9, 0xC6, 0xB6,
319                         0x4E, 0x8D, 0xA4, 0xF7, 0xA2, 0xC2, 0x66, 0xD0,
320                         0x2D, 0x00, 0x17, 0x53, 0xDF, 0x08, 0x96, 0x03,
321                         0x93, 0xC5, 0xD5, 0x68, 0x88, 0xBF, 0x49, 0xEB,
322                         0x5C, 0x16, 0xD9, 0xA8, 0x04, 0x27, 0xA4, 0x16,
323                         0xBC, 0xB5, 0x97, 0xDF, 0x5B, 0xFE, 0x6F, 0x13,
324                         0x89, 0x0A, 0x07, 0xEE, 0x13, 0x40, 0xE6, 0x47,
325                         0x6B, 0x0D, 0x9A, 0xA8, 0xF8, 0x22, 0xAB, 0x0F,
326                         0xD1, 0xAB, 0x0D, 0x20, 0x4F, 0x40, 0xB7, 0xCE,
327                         0x6F, 0x2E, 0x13, 0x6E, 0xB6, 0x74, 0x85, 0xE5,
328                         0x07, 0x80, 0x4D, 0x50, 0x45, 0x88, 0xAD, 0x37,
329                         0xFF, 0xD8, 0x16, 0x56, 0x8B, 0x2D, 0xC4, 0x03,
330                         0x11, 0xDF, 0xB6, 0x54, 0xCD, 0xEA, 0xD4, 0x7E,
331                         0x23, 0x85, 0xC3, 0x43, 0x62, 0x03, 0xDD, 0x83,
332                         0x6F, 0x9C, 0x64, 0xD9, 0x74, 0x62, 0xAD, 0x5D,
333                         0xFA, 0x63, 0xB5, 0xCF, 0xE0, 0x8A, 0xCB, 0x95,
334                         0x32, 0x86, 0x6F, 0x5C, 0xA7, 0x87, 0x56, 0x6F,
335                         0xCA, 0x93, 0xE6, 0xB1, 0x69, 0x3E, 0xE1, 0x5C,
336                         0xF6, 0xF7, 0xA2, 0xD6, 0x89, 0xD9, 0x74, 0x17,
337                         0x98, 0xDC, 0x1C, 0x23, 0x8E, 0x1B, 0xE6, 0x50,
338                         0x73, 0x3B, 0x18, 0xFB, 0x34, 0xFF, 0x88, 0x0E,
339                         0x16, 0xBB, 0xD2, 0x1B, 0x47, 0xAC
340                 },
341                 .len = 2800
342         },
343         .ciphertext = {
344                 .data = {
345                         0x4B, 0xBF, 0xA9, 0x1B, 0xA2, 0x5D, 0x47, 0xDB,
346                         0x9A, 0x9F, 0x19, 0x0D, 0x96, 0x2A, 0x19, 0xAB,
347                         0x32, 0x39, 0x26, 0xB3, 0x51, 0xFB, 0xD3, 0x9E,
348                         0x35, 0x1E, 0x05, 0xDA, 0x8B, 0x89, 0x25, 0xE3,
349                         0x0B, 0x1C, 0xCE, 0x0D, 0x12, 0x21, 0x10, 0x10,
350                         0x95, 0x81, 0x5C, 0xC7, 0xCB, 0x63, 0x19, 0x50,
351                         0x9E, 0xC0, 0xD6, 0x79, 0x40, 0x49, 0x19, 0x87,
352                         0xE1, 0x3F, 0x0A, 0xFF, 0xAC, 0x33, 0x2A, 0xA6,
353                         0xAA, 0x64, 0x62, 0x6D, 0x3E, 0x9A, 0x19, 0x17,
354                         0x51, 0x9E, 0x0B, 0x97, 0xB6, 0x55, 0xC6, 0xA1,
355                         0x65, 0xE4, 0x4C, 0xA9, 0xFE, 0xAC, 0x07, 0x90,
356                         0xD2, 0xA3, 0x21, 0xAD, 0x3D, 0x86, 0xB7, 0x9C,
357                         0x51, 0x38, 0x73, 0x9F, 0xA3, 0x8D, 0x88, 0x7E,
358                         0xC7, 0xDE, 0xF4, 0x49, 0xCE, 0x8A, 0xBD, 0xD3,
359                         0xE7, 0xF8, 0xDC, 0x4C, 0xA9, 0xE7, 0xB7, 0x33,
360                         0x14, 0xAD, 0x31, 0x0F, 0x90, 0x25, 0xE6, 0x19,
361                         0x46, 0xB3, 0xA5, 0x6D, 0xC6, 0x49, 0xEC, 0x0D,
362                         0xA0, 0xD6, 0x39, 0x43, 0xDF, 0xF5, 0x92, 0xCF,
363                         0x96, 0x2A, 0x7E, 0xFB, 0x2C, 0x85, 0x24, 0xE3,
364                         0x5A, 0x2A, 0x6E, 0x78, 0x79, 0xD6, 0x26, 0x04,
365                         0xEF, 0x26, 0x86, 0x95, 0xFA, 0x40, 0x03, 0x02,
366                         0x7E, 0x22, 0xE6, 0x08, 0x30, 0x77, 0x52, 0x20,
367                         0x64, 0xBD, 0x4A, 0x5B, 0x90, 0x6B, 0x5F, 0x53,
368                         0x12, 0x74, 0xF2, 0x35, 0xED, 0x50, 0x6C, 0xFF,
369                         0x01, 0x54, 0xC7, 0x54, 0x92, 0x8A, 0x0C, 0xE5,
370                         0x47, 0x6F, 0x2C, 0xB1, 0x02, 0x0A, 0x12, 0x22,
371                         0xD3, 0x2C, 0x14, 0x55, 0xEC, 0xAE, 0xF1, 0xE3,
372                         0x68, 0xFB, 0x34, 0x4D, 0x17, 0x35, 0xBF, 0xBE,
373                         0xDE, 0xB7, 0x1D, 0x0A, 0x33, 0xA2, 0xA5, 0x4B,
374                         0x1D, 0xA5, 0xA2, 0x94, 0xE6, 0x79, 0x14, 0x4D,
375                         0xDF, 0x11, 0xEB, 0x1A, 0x3D, 0xE8, 0xCF, 0x0C,
376                         0xC0, 0x61, 0x91, 0x79, 0x74, 0xF3, 0x5C, 0x1D,
377                         0x9C, 0xA0, 0xAC, 0x81, 0x80, 0x7F, 0x8F, 0xCC,
378                         0xE6, 0x19, 0x9A, 0x6C, 0x77, 0x12, 0xDA, 0x86,
379                         0x50, 0x21, 0xB0, 0x4C, 0xE0, 0x43, 0x95, 0x16,
380                         0xF1, 0xA5, 0x26, 0xCC, 0xDA, 0x9F, 0xD9, 0xAB,
381                         0xBD, 0x53, 0xC3, 0xA6, 0x84, 0xF9, 0xAE, 0x1E,
382                         0x7E, 0xE6, 0xB1, 0x1D, 0xA1, 0x38, 0xEA, 0x82,
383                         0x6C, 0x55, 0x16, 0xB5, 0xAA, 0xDF, 0x1A, 0xBB,
384                         0xE3, 0x6F, 0xA7, 0xFF, 0xF9, 0x2E, 0x3A, 0x11,
385                         0x76, 0x06, 0x4E, 0x8D, 0x95, 0xF2, 0xE4, 0x88,
386                         0x2B, 0x55, 0x00, 0xB9, 0x32, 0x28, 0xB2, 0x19,
387                         0x4A, 0x47, 0x5C, 0x1A, 0x27, 0xF6, 0x3F, 0x9F,
388                         0xFD, 0x26, 0x49, 0x89, 0xA1, 0xBC
389                 },
390                 .len = 2800
391         },
392         .validDataLenInBits = {
393                 .len = 2798
394         },
395         .validCipherLenInBits = {
396                 .len = 2798
397         },
398         .validCipherOffsetLenInBits = {
399                 .len = 128
400         }
401 };
402
403 static struct wireless_test_data zuc_test_case_cipher_4019b = {
404         .key = {
405                 .data = {
406                         0xE1, 0x3F, 0xED, 0x21, 0xB4, 0x6E, 0x4E, 0x7E,
407                         0xC3, 0x12, 0x53, 0xB2, 0xBB, 0x17, 0xB3, 0xE0
408                 },
409                 .len = 16
410         },
411         .iv = {
412                 .data = {
413                         0x27, 0x38, 0xCD, 0xAA, 0xD0, 0x00, 0x00, 0x00,
414                         0x27, 0x38, 0xCD, 0xAA, 0xD0, 0x00, 0x00, 0x00
415                 },
416                 .len = 16
417         },
418         .plaintext = {
419                 .data = {
420                         0x8D, 0x74, 0xE2, 0x0D, 0x54, 0x89, 0x4E, 0x06,
421                         0xD3, 0xCB, 0x13, 0xCB, 0x39, 0x33, 0x06, 0x5E,
422                         0x86, 0x74, 0xBE, 0x62, 0xAD, 0xB1, 0xC7, 0x2B,
423                         0x3A, 0x64, 0x69, 0x65, 0xAB, 0x63, 0xCB, 0x7B,
424                         0x78, 0x54, 0xDF, 0xDC, 0x27, 0xE8, 0x49, 0x29,
425                         0xF4, 0x9C, 0x64, 0xB8, 0x72, 0xA4, 0x90, 0xB1,
426                         0x3F, 0x95, 0x7B, 0x64, 0x82, 0x7E, 0x71, 0xF4,
427                         0x1F, 0xBD, 0x42, 0x69, 0xA4, 0x2C, 0x97, 0xF8,
428                         0x24, 0x53, 0x70, 0x27, 0xF8, 0x6E, 0x9F, 0x4A,
429                         0xD8, 0x2D, 0x1D, 0xF4, 0x51, 0x69, 0x0F, 0xDD,
430                         0x98, 0xB6, 0xD0, 0x3F, 0x3A, 0x0E, 0xBE, 0x3A,
431                         0x31, 0x2D, 0x6B, 0x84, 0x0B, 0xA5, 0xA1, 0x82,
432                         0x0B, 0x2A, 0x2C, 0x97, 0x09, 0xC0, 0x90, 0xD2,
433                         0x45, 0xED, 0x26, 0x7C, 0xF8, 0x45, 0xAE, 0x41,
434                         0xFA, 0x97, 0x5D, 0x33, 0x33, 0xAC, 0x30, 0x09,
435                         0xFD, 0x40, 0xEB, 0xA9, 0xEB, 0x5B, 0x88, 0x57,
436                         0x14, 0xB7, 0x68, 0xB6, 0x97, 0x13, 0x8B, 0xAF,
437                         0x21, 0x38, 0x0E, 0xCA, 0x49, 0xF6, 0x44, 0xD4,
438                         0x86, 0x89, 0xE4, 0x21, 0x57, 0x60, 0xB9, 0x06,
439                         0x73, 0x9F, 0x0D, 0x2B, 0x3F, 0x09, 0x11, 0x33,
440                         0xCA, 0x15, 0xD9, 0x81, 0xCB, 0xE4, 0x01, 0xBA,
441                         0xF7, 0x2D, 0x05, 0xAC, 0xE0, 0x5C, 0xCC, 0xB2,
442                         0xD2, 0x97, 0xF4, 0xEF, 0x6A, 0x5F, 0x58, 0xD9,
443                         0x12, 0x46, 0xCF, 0xA7, 0x72, 0x15, 0xB8, 0x92,
444                         0xAB, 0x44, 0x1D, 0x52, 0x78, 0x45, 0x27, 0x95,
445                         0xCC, 0xB7, 0xF5, 0xD7, 0x90, 0x57, 0xA1, 0xC4,
446                         0xF7, 0x7F, 0x80, 0xD4, 0x6D, 0xB2, 0x03, 0x3C,
447                         0xB7, 0x9B, 0xED, 0xF8, 0xE6, 0x05, 0x51, 0xCE,
448                         0x10, 0xC6, 0x67, 0xF6, 0x2A, 0x97, 0xAB, 0xAF,
449                         0xAB, 0xBC, 0xD6, 0x77, 0x20, 0x18, 0xDF, 0x96,
450                         0xA2, 0x82, 0xEA, 0x73, 0x7C, 0xE2, 0xCB, 0x33,
451                         0x12, 0x11, 0xF6, 0x0D, 0x53, 0x54, 0xCE, 0x78,
452                         0xF9, 0x91, 0x8D, 0x9C, 0x20, 0x6C, 0xA0, 0x42,
453                         0xC9, 0xB6, 0x23, 0x87, 0xDD, 0x70, 0x96, 0x04,
454                         0xA5, 0x0A, 0xF1, 0x6D, 0x8D, 0x35, 0xA8, 0x90,
455                         0x6B, 0xE4, 0x84, 0xCF, 0x2E, 0x74, 0xA9, 0x28,
456                         0x99, 0x40, 0x36, 0x43, 0x53, 0x24, 0x9B, 0x27,
457                         0xB4, 0xC9, 0xAE, 0x29, 0xED, 0xDF, 0xC7, 0xDA,
458                         0x64, 0x18, 0x79, 0x1A, 0x4E, 0x7B, 0xAA, 0x06,
459                         0x60, 0xFA, 0x64, 0x51, 0x1F, 0x2D, 0x68, 0x5C,
460                         0xC3, 0xA5, 0xFF, 0x70, 0xE0, 0xD2, 0xB7, 0x42,
461                         0x92, 0xE3, 0xB8, 0xA0, 0xCD, 0x6B, 0x04, 0xB1,
462                         0xC7, 0x90, 0xB8, 0xEA, 0xD2, 0x70, 0x37, 0x08,
463                         0x54, 0x0D, 0xEA, 0x2F, 0xC0, 0x9C, 0x3D, 0xA7,
464                         0x70, 0xF6, 0x54, 0x49, 0xE8, 0x4D, 0x81, 0x7A,
465                         0x4F, 0x55, 0x10, 0x55, 0xE1, 0x9A, 0xB8, 0x50,
466                         0x18, 0xA0, 0x02, 0x8B, 0x71, 0xA1, 0x44, 0xD9,
467                         0x67, 0x91, 0xE9, 0xA3, 0x57, 0x79, 0x33, 0x50,
468                         0x4E, 0xEE, 0x00, 0x60, 0x34, 0x0C, 0x69, 0xD2,
469                         0x74, 0xE1, 0xBF, 0x9D, 0x80, 0x5D, 0xCB, 0xCC,
470                         0x1A, 0x6F, 0xAA, 0x97, 0x68, 0x00, 0xB6, 0xFF,
471                         0x2B, 0x67, 0x1D, 0xC4, 0x63, 0x65, 0x2F, 0xA8,
472                         0xA3, 0x3E, 0xE5, 0x09, 0x74, 0xC1, 0xC2, 0x1B,
473                         0xE0, 0x1E, 0xAB, 0xB2, 0x16, 0x74, 0x30, 0x26,
474                         0x9D, 0x72, 0xEE, 0x51, 0x1C, 0x9D, 0xDE, 0x30,
475                         0x79, 0x7C, 0x9A, 0x25, 0xD8, 0x6C, 0xE7, 0x4F,
476                         0x5B, 0x96, 0x1B, 0xE5, 0xFD, 0xFB, 0x68, 0x07,
477                         0x81, 0x40, 0x39, 0xE7, 0x13, 0x76, 0x36, 0xBD,
478                         0x1D, 0x7F, 0xA9, 0xE0, 0x9E, 0xFD, 0x20, 0x07,
479                         0x50, 0x59, 0x06, 0xA5, 0xAC, 0x45, 0xDF, 0xDE,
480                         0xED, 0x77, 0x57, 0xBB, 0xEE, 0x74, 0x57, 0x49,
481                         0xC2, 0x96, 0x33, 0x35, 0x0B, 0xEE, 0x0E, 0xA6,
482                         0xF4, 0x09, 0xDF, 0x45, 0x80, 0x16, 0x00
483                 },
484                 .len = 4024
485         },
486         .ciphertext = {
487                 .data = {
488                         0x94, 0xEA, 0xA4, 0xAA, 0x30, 0xA5, 0x71, 0x37,
489                         0xDD, 0xF0, 0x9B, 0x97, 0xB2, 0x56, 0x18, 0xA2,
490                         0x0A, 0x13, 0xE2, 0xF1, 0x0F, 0xA5, 0xBF, 0x81,
491                         0x61, 0xA8, 0x79, 0xCC, 0x2A, 0xE7, 0x97, 0xA6,
492                         0xB4, 0xCF, 0x2D, 0x9D, 0xF3, 0x1D, 0xEB, 0xB9,
493                         0x90, 0x5C, 0xCF, 0xEC, 0x97, 0xDE, 0x60, 0x5D,
494                         0x21, 0xC6, 0x1A, 0xB8, 0x53, 0x1B, 0x7F, 0x3C,
495                         0x9D, 0xA5, 0xF0, 0x39, 0x31, 0xF8, 0xA0, 0x64,
496                         0x2D, 0xE4, 0x82, 0x11, 0xF5, 0xF5, 0x2F, 0xFE,
497                         0xA1, 0x0F, 0x39, 0x2A, 0x04, 0x76, 0x69, 0x98,
498                         0x5D, 0xA4, 0x54, 0xA2, 0x8F, 0x08, 0x09, 0x61,
499                         0xA6, 0xC2, 0xB6, 0x2D, 0xAA, 0x17, 0xF3, 0x3C,
500                         0xD6, 0x0A, 0x49, 0x71, 0xF4, 0x8D, 0x2D, 0x90,
501                         0x93, 0x94, 0xA5, 0x5F, 0x48, 0x11, 0x7A, 0xCE,
502                         0x43, 0xD7, 0x08, 0xE6, 0xB7, 0x7D, 0x3D, 0xC4,
503                         0x6D, 0x8B, 0xC0, 0x17, 0xD4, 0xD1, 0xAB, 0xB7,
504                         0x7B, 0x74, 0x28, 0xC0, 0x42, 0xB0, 0x6F, 0x2F,
505                         0x99, 0xD8, 0xD0, 0x7C, 0x98, 0x79, 0xD9, 0x96,
506                         0x00, 0x12, 0x7A, 0x31, 0x98, 0x5F, 0x10, 0x99,
507                         0xBB, 0xD7, 0xD6, 0xC1, 0x51, 0x9E, 0xDE, 0x8F,
508                         0x5E, 0xEB, 0x4A, 0x61, 0x0B, 0x34, 0x9A, 0xC0,
509                         0x1E, 0xA2, 0x35, 0x06, 0x91, 0x75, 0x6B, 0xD1,
510                         0x05, 0xC9, 0x74, 0xA5, 0x3E, 0xDD, 0xB3, 0x5D,
511                         0x1D, 0x41, 0x00, 0xB0, 0x12, 0xE5, 0x22, 0xAB,
512                         0x41, 0xF4, 0xC5, 0xF2, 0xFD, 0xE7, 0x6B, 0x59,
513                         0xCB, 0x8B, 0x96, 0xD8, 0x85, 0xCF, 0xE4, 0x08,
514                         0x0D, 0x13, 0x28, 0xA0, 0xD6, 0x36, 0xCC, 0x0E,
515                         0xDC, 0x05, 0x80, 0x0B, 0x76, 0xAC, 0xCA, 0x8F,
516                         0xEF, 0x67, 0x20, 0x84, 0xD1, 0xF5, 0x2A, 0x8B,
517                         0xBD, 0x8E, 0x09, 0x93, 0x32, 0x09, 0x92, 0xC7,
518                         0xFF, 0xBA, 0xE1, 0x7C, 0x40, 0x84, 0x41, 0xE0,
519                         0xEE, 0x88, 0x3F, 0xC8, 0xA8, 0xB0, 0x5E, 0x22,
520                         0xF5, 0xFF, 0x7F, 0x8D, 0x1B, 0x48, 0xC7, 0x4C,
521                         0x46, 0x8C, 0x46, 0x7A, 0x02, 0x8F, 0x09, 0xFD,
522                         0x7C, 0xE9, 0x11, 0x09, 0xA5, 0x70, 0xA2, 0xD5,
523                         0xC4, 0xD5, 0xF4, 0xFA, 0x18, 0xC5, 0xDD, 0x3E,
524                         0x45, 0x62, 0xAF, 0xE2, 0x4E, 0xF7, 0x71, 0x90,
525                         0x1F, 0x59, 0xAF, 0x64, 0x58, 0x98, 0xAC, 0xEF,
526                         0x08, 0x8A, 0xBA, 0xE0, 0x7E, 0x92, 0xD5, 0x2E,
527                         0xB2, 0xDE, 0x55, 0x04, 0x5B, 0xB1, 0xB7, 0xC4,
528                         0x16, 0x4E, 0xF2, 0xD7, 0xA6, 0xCA, 0xC1, 0x5E,
529                         0xEB, 0x92, 0x6D, 0x7E, 0xA2, 0xF0, 0x8B, 0x66,
530                         0xE1, 0xF7, 0x59, 0xF3, 0xAE, 0xE4, 0x46, 0x14,
531                         0x72, 0x5A, 0xA3, 0xC7, 0x48, 0x2B, 0x30, 0x84,
532                         0x4C, 0x14, 0x3F, 0xF8, 0x5B, 0x53, 0xF1, 0xE5,
533                         0x83, 0xC5, 0x01, 0x25, 0x7D, 0xDD, 0xD0, 0x96,
534                         0xB8, 0x12, 0x68, 0xDA, 0xA3, 0x03, 0xF1, 0x72,
535                         0x34, 0xC2, 0x33, 0x35, 0x41, 0xF0, 0xBB, 0x8E,
536                         0x19, 0x06, 0x48, 0xC5, 0x80, 0x7C, 0x86, 0x6D,
537                         0x71, 0x93, 0x22, 0x86, 0x09, 0xAD, 0xB9, 0x48,
538                         0x68, 0x6F, 0x7D, 0xE2, 0x94, 0xA8, 0x02, 0xCC,
539                         0x38, 0xF7, 0xFE, 0x52, 0x08, 0xF5, 0xEA, 0x31,
540                         0x96, 0xD0, 0x16, 0x7B, 0x9B, 0xDD, 0x02, 0xF0,
541                         0xD2, 0xA5, 0x22, 0x1C, 0xA5, 0x08, 0xF8, 0x93,
542                         0xAF, 0x5C, 0x4B, 0x4B, 0xB9, 0xF4, 0xF5, 0x20,
543                         0xFD, 0x84, 0x28, 0x9B, 0x3D, 0xBE, 0x7E, 0x61,
544                         0x49, 0x7A, 0x7E, 0x2A, 0x58, 0x40, 0x37, 0xEA,
545                         0x63, 0x7B, 0x69, 0x81, 0x12, 0x71, 0x74, 0xAF,
546                         0x57, 0xB4, 0x71, 0xDF, 0x4B, 0x27, 0x68, 0xFD,
547                         0x79, 0xC1, 0x54, 0x0F, 0xB3, 0xED, 0xF2, 0xEA,
548                         0x22, 0xCB, 0x69, 0xBE, 0xC0, 0xCF, 0x8D, 0x93,
549                         0x3D, 0x9C, 0x6F, 0xDD, 0x64, 0x5E, 0x85, 0x05,
550                         0x91, 0xCC, 0xA3, 0xD6, 0x2C, 0x0C, 0xC0
551                 },
552                 .len = 4024
553         },
554         .validDataLenInBits = {
555                 .len = 4019
556         },
557         .validCipherLenInBits = {
558                 .len = 4019
559         },
560         .validCipherOffsetLenInBits = {
561                 .len = 128
562         }
563 };
564
565 static struct wireless_test_data zuc_test_case_cipher_200b_auth_200b = {
566         .key = {
567                 .data = {
568                         0x17, 0x3D, 0x14, 0xBA, 0x50, 0x03, 0x73, 0x1D,
569                         0x7A, 0x60, 0x04, 0x94, 0x70, 0xF0, 0x0A, 0x29
570                 },
571                 .len = 16
572         },
573         .iv = {
574                 .data = {
575                         0x66, 0x03, 0x54, 0x92, 0x78, 0x00, 0x00, 0x00,
576                         0x66, 0x03, 0x54, 0x92, 0x78, 0x00, 0x00, 0x00
577                 },
578                 .len = 16
579         },
580         .plaintext = {
581                 .data = {
582                         0x6C, 0xF6, 0x53, 0x40, 0x73, 0x55, 0x52, 0xAB,
583                         0x0C, 0x97, 0x52, 0xFA, 0x6F, 0x90, 0x25, 0xFE,
584                         0x0B, 0xD6, 0x75, 0xD9, 0x00, 0x58, 0x75, 0xB2,
585                         0x00
586                 },
587                 .len = 200
588         },
589         .ciphertext = {
590                 .data = {
591                         0xA6, 0xC8, 0x5F, 0xC6, 0x6A, 0xFB, 0x85, 0x33,
592                         0xAA, 0xFC, 0x25, 0x18, 0xDF, 0xE7, 0x84, 0x94,
593                         0x0E, 0xE1, 0xE4, 0xB0, 0x30, 0x23, 0x8C, 0xC8,
594                         0x10
595                 },
596                 .len = 200
597         },
598         .validDataLenInBits = {
599                 .len = 200
600         },
601         .validCipherLenInBits = {
602                 .len = 200
603         },
604         .validCipherOffsetLenInBits = {
605                 .len = 128
606         },
607         .aad = {
608                 .data = {
609                         0xFA, 0x55, 0x6B, 0x26, 0x1C, 0x00, 0x00, 0x00,
610                         0xFA, 0x55, 0x6B, 0x26, 0x1C, 0x00, 0x00, 0x00
611                 },
612                 .len = 16
613         },
614         .digest = {
615                 .data = {0x01, 0xFE, 0x5E, 0x38},
616                 .len  = 4
617         },
618         .validAuthLenInBits = {
619                 .len = 200
620         },
621         .validAuthOffsetLenInBits = {
622                 .len = 128
623         }
624 };
625
626 static struct wireless_test_data zuc_test_case_cipher_800b_auth_120b = {
627         .key = {
628                 .data = {
629                         0xE5, 0xBD, 0x3E, 0xA0, 0xEB, 0x55, 0xAD, 0xE8,
630                         0x66, 0xC6, 0xAC, 0x58, 0xBD, 0x54, 0x30, 0x2A
631                 },
632                 .len = 16
633         },
634         .iv = {
635                 .data = {
636                         0x00, 0x05, 0x68, 0x23, 0xC4, 0x00, 0x00, 0x00,
637                         0x00, 0x05, 0x68, 0x23, 0xC4, 0x00, 0x00, 0x00
638                 },
639                 .len = 16
640         },
641         .plaintext = {
642                 .data = {
643                         0x14, 0xA8, 0xEF, 0x69, 0x3D, 0x67, 0x85, 0x07,
644                         0xBB, 0xE7, 0x27, 0x0A, 0x7F, 0x67, 0xFF, 0x50,
645                         0x06, 0xC3, 0x52, 0x5B, 0x98, 0x07, 0xE4, 0x67,
646                         0xC4, 0xE5, 0x60, 0x00, 0xBA, 0x33, 0x8F, 0x5D,
647                         0x42, 0x95, 0x59, 0x03, 0x67, 0x51, 0x82, 0x22,
648                         0x46, 0xC8, 0x0D, 0x3B, 0x38, 0xF0, 0x7F, 0x4B,
649                         0xE2, 0xD8, 0xFF, 0x58, 0x05, 0xF5, 0x13, 0x22,
650                         0x29, 0xBD, 0xE9, 0x3B, 0xBB, 0xDC, 0xAF, 0x38,
651                         0x2B, 0xF1, 0xEE, 0x97, 0x2F, 0xBF, 0x99, 0x77,
652                         0xBA, 0xDA, 0x89, 0x45, 0x84, 0x7A, 0x2A, 0x6C,
653                         0x9A, 0xD3, 0x4A, 0x66, 0x75, 0x54, 0xE0, 0x4D,
654                         0x1F, 0x7F, 0xA2, 0xC3, 0x32, 0x41, 0xBD, 0x8F,
655                         0x01, 0xBA, 0x22, 0x0D
656                 },
657                 .len = 800
658         },
659         .ciphertext = {
660                 .data = {
661                         0x13, 0x1D, 0x43, 0xE0, 0xDE, 0xA1, 0xBE, 0x5C,
662                         0x5A, 0x1B, 0xFD, 0x97, 0x1D, 0x85, 0x2C, 0xBF,
663                         0x71, 0x2D, 0x7B, 0x4F, 0x57, 0x96, 0x1F, 0xEA,
664                         0x32, 0x08, 0xAF, 0xA8, 0xBC, 0xA4, 0x33, 0xF4,
665                         0x56, 0xAD, 0x09, 0xC7, 0x41, 0x7E, 0x58, 0xBC,
666                         0x69, 0xCF, 0x88, 0x66, 0xD1, 0x35, 0x3F, 0x74,
667                         0x86, 0x5E, 0x80, 0x78, 0x1D, 0x20, 0x2D, 0xFB,
668                         0x3E, 0xCF, 0xF7, 0xFC, 0xBC, 0x3B, 0x19, 0x0F,
669                         0xE8, 0x2A, 0x20, 0x4E, 0xD0, 0xE3, 0x50, 0xFC,
670                         0x0F, 0x6F, 0x26, 0x13, 0xB2, 0xF2, 0xBC, 0xA6,
671                         0xDF, 0x5A, 0x47, 0x3A, 0x57, 0xA4, 0xA0, 0x0D,
672                         0x98, 0x5E, 0xBA, 0xD8, 0x80, 0xD6, 0xF2, 0x38,
673                         0x64, 0xA0, 0x7B, 0x01
674                 },
675                 .len = 800
676         },
677         .validDataLenInBits = {
678                 .len = 800
679         },
680         .validCipherLenInBits = {
681                 .len = 800
682         },
683         .validCipherOffsetLenInBits = {
684                 .len = 128
685         },
686         .aad = {
687                 .data = {
688                         0xFA, 0x55, 0x6B, 0x26, 0x1C, 0x00, 0x00, 0x00,
689                         0xFA, 0x55, 0x6B, 0x26, 0x1C, 0x00, 0x00, 0x00
690                 },
691                 .len = 16
692         },
693         .digest = {
694                 .data = {0x9D, 0x42, 0x1C, 0xEA},
695                 .len  = 4
696         },
697         .validAuthLenInBits = {
698                 .len = 120
699         },
700         .validAuthOffsetLenInBits = {
701                 .len = 128
702         }
703 };
704
705 struct wireless_test_data zuc_test_case_auth_1b = {
706         .key = {
707                 .data = {
708                         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
709                         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
710                 },
711                 .len = 16
712         },
713         .aad = {
714                 .data = {
715                         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
716                         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
717                 },
718                 .len = 16
719         },
720         .plaintext = {
721                 .data = {0x00},
722                 .len = 8
723         },
724         .validAuthLenInBits = {
725                 .len = 1
726         },
727         .validAuthOffsetLenInBits = {
728                 .len = 128
729         },
730         .digest = {
731                 .data = {0xC8, 0xA9, 0x59, 0x5E},
732                 .len  = 4
733         }
734 };
735
736 struct wireless_test_data zuc_test_case_auth_90b = {
737         .key = {
738                 .data = {
739                         0x47, 0x05, 0x41, 0x25, 0x56, 0x1E, 0xB2, 0xDD,
740                         0xA9, 0x40, 0x59, 0xDA, 0x05, 0x09, 0x78, 0x50
741                 },
742                 .len = 16
743         },
744         .aad = {
745                 .data = {
746                         0x56, 0x1E, 0xB2, 0xDD, 0xA0, 0x00, 0x00, 0x00,
747                         0x56, 0x1E, 0xB2, 0xDD, 0xA0, 0x00, 0x00, 0x00
748                 },
749                 .len = 16
750         },
751         .plaintext = {
752                 .data = {
753                         0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
754                         0x00, 0x00, 0x00, 0x00
755                 },
756                 .len = 96
757         },
758         .validAuthLenInBits = {
759                 .len = 90
760         },
761         .validAuthOffsetLenInBits = {
762                 .len = 128
763         },
764         .digest = {
765                 .data = {0x67, 0x19, 0xA0, 0x88},
766                 .len  = 4
767         }
768 };
769
770 struct wireless_test_data zuc_test_case_auth_577b = {
771         .key = {
772                 .data = {
773                         0xC9, 0xE6, 0xCE, 0xC4, 0x60, 0x7C, 0x72, 0xDB,
774                         0x00, 0x0A, 0xEF, 0xA8, 0x83, 0x85, 0xAB, 0x0A
775                 },
776                 .len = 16
777         },
778         .aad = {
779                 .data = {
780                         0xA9, 0x40, 0x59, 0xDA, 0x50, 0x00, 0x00, 0x00,
781                         0x29, 0x40, 0x59, 0xDA, 0x50, 0x00, 0x80, 0x00
782                 },
783                 .len = 16
784         },
785         .plaintext = {
786                 .data = {
787                         0x98, 0x3B, 0x41, 0xD4, 0x7D, 0x78, 0x0C, 0x9E,
788                         0x1A, 0xD1, 0x1D, 0x7E, 0xB7, 0x03, 0x91, 0xB1,
789                         0xDE, 0x0B, 0x35, 0xDA, 0x2D, 0xC6, 0x2F, 0x83,
790                         0xE7, 0xB7, 0x8D, 0x63, 0x06, 0xCA, 0x0E, 0xA0,
791                         0x7E, 0x94, 0x1B, 0x7B, 0xE9, 0x13, 0x48, 0xF9,
792                         0xFC, 0xB1, 0x70, 0xE2, 0x21, 0x7F, 0xEC, 0xD9,
793                         0x7F, 0x9F, 0x68, 0xAD, 0xB1, 0x6E, 0x5D, 0x7D,
794                         0x21, 0xE5, 0x69, 0xD2, 0x80, 0xED, 0x77, 0x5C,
795                         0xEB, 0xDE, 0x3F, 0x40, 0x93, 0xC5, 0x38, 0x81,
796                         0x00
797                 },
798                 .len = 584
799         },
800         .validAuthLenInBits = {
801                 .len = 577
802         },
803         .validAuthOffsetLenInBits = {
804                 .len = 128
805         },
806         .digest = {
807                 .data = {0xFA, 0xE8, 0xFF, 0x0B},
808                 .len  = 4
809         }
810 };
811
812 struct wireless_test_data zuc_test_case_auth_2079b = {
813         .key = {
814                 .data = {
815                         0xC8, 0xA4, 0x82, 0x62, 0xD0, 0xC2, 0xE2, 0xBA,
816                         0xC4, 0xB9, 0x6E, 0xF7, 0x7E, 0x80, 0xCA, 0x59
817                 },
818                 .len = 16
819         },
820         .aad = {
821                 .data = {
822                         0x05, 0x09, 0x78, 0x50, 0x80, 0x00, 0x00, 0x00,
823                         0x85, 0x09, 0x78, 0x50, 0x80, 0x00, 0x80, 0x00
824                 },
825                 .len = 16
826         },
827         .plaintext = {
828                 .data = {
829                         0xB5, 0x46, 0x43, 0x0B, 0xF8, 0x7B, 0x4F, 0x1E,
830                         0xE8, 0x34, 0x70, 0x4C, 0xD6, 0x95, 0x1C, 0x36,
831                         0xE2, 0x6F, 0x10, 0x8C, 0xF7, 0x31, 0x78, 0x8F,
832                         0x48, 0xDC, 0x34, 0xF1, 0x67, 0x8C, 0x05, 0x22,
833                         0x1C, 0x8F, 0xA7, 0xFF, 0x2F, 0x39, 0xF4, 0x77,
834                         0xE7, 0xE4, 0x9E, 0xF6, 0x0A, 0x4E, 0xC2, 0xC3,
835                         0xDE, 0x24, 0x31, 0x2A, 0x96, 0xAA, 0x26, 0xE1,
836                         0xCF, 0xBA, 0x57, 0x56, 0x38, 0x38, 0xB2, 0x97,
837                         0xF4, 0x7E, 0x85, 0x10, 0xC7, 0x79, 0xFD, 0x66,
838                         0x54, 0xB1, 0x43, 0x38, 0x6F, 0xA6, 0x39, 0xD3,
839                         0x1E, 0xDB, 0xD6, 0xC0, 0x6E, 0x47, 0xD1, 0x59,
840                         0xD9, 0x43, 0x62, 0xF2, 0x6A, 0xEE, 0xED, 0xEE,
841                         0x0E, 0x4F, 0x49, 0xD9, 0xBF, 0x84, 0x12, 0x99,
842                         0x54, 0x15, 0xBF, 0xAD, 0x56, 0xEE, 0x82, 0xD1,
843                         0xCA, 0x74, 0x63, 0xAB, 0xF0, 0x85, 0xB0, 0x82,
844                         0xB0, 0x99, 0x04, 0xD6, 0xD9, 0x90, 0xD4, 0x3C,
845                         0xF2, 0xE0, 0x62, 0xF4, 0x08, 0x39, 0xD9, 0x32,
846                         0x48, 0xB1, 0xEB, 0x92, 0xCD, 0xFE, 0xD5, 0x30,
847                         0x0B, 0xC1, 0x48, 0x28, 0x04, 0x30, 0xB6, 0xD0,
848                         0xCA, 0xA0, 0x94, 0xB6, 0xEC, 0x89, 0x11, 0xAB,
849                         0x7D, 0xC3, 0x68, 0x24, 0xB8, 0x24, 0xDC, 0x0A,
850                         0xF6, 0x68, 0x2B, 0x09, 0x35, 0xFD, 0xE7, 0xB4,
851                         0x92, 0xA1, 0x4D, 0xC2, 0xF4, 0x36, 0x48, 0x03,
852                         0x8D, 0xA2, 0xCF, 0x79, 0x17, 0x0D, 0x2D, 0x50,
853                         0x13, 0x3F, 0xD4, 0x94, 0x16, 0xCB, 0x6E, 0x33,
854                         0xBE, 0xA9, 0x0B, 0x8B, 0xF4, 0x55, 0x9B, 0x03,
855                         0x73, 0x2A, 0x01, 0xEA, 0x29, 0x0E, 0x6D, 0x07,
856                         0x4F, 0x79, 0xBB, 0x83, 0xC1, 0x0E, 0x58, 0x00,
857                         0x15, 0xCC, 0x1A, 0x85, 0xB3, 0x6B, 0x55, 0x01,
858                         0x04, 0x6E, 0x9C, 0x4B, 0xDC, 0xAE, 0x51, 0x35,
859                         0x69, 0x0B, 0x86, 0x66, 0xBD, 0x54, 0xB7, 0xA7,
860                         0x03, 0xEA, 0x7B, 0x6F, 0x22, 0x0A, 0x54, 0x69,
861                         0xA5, 0x68, 0x02, 0x7E
862                 },
863                 .len = 2080
864         },
865         .validAuthLenInBits = {
866                 .len = 2079
867         },
868         .validAuthOffsetLenInBits = {
869                 .len = 128
870         },
871         .digest = {
872                 .data = {0x00, 0x4A, 0xC4, 0xD6},
873                 .len  = 4
874         }
875 };
876
877 struct wireless_test_data zuc_test_auth_5670b = {
878         .key = {
879                 .data = {
880                         0x6B, 0x8B, 0x08, 0xEE, 0x79, 0xE0, 0xB5, 0x98,
881                         0x2D, 0x6D, 0x12, 0x8E, 0xA9, 0xF2, 0x20, 0xCB
882                 },
883                 .len = 16
884         },
885         .aad = {
886                 .data = {
887                         0x56, 0x1E, 0xB2, 0xDD, 0xE0, 0x00, 0x00, 0x00,
888                         0x56, 0x1E, 0xB2, 0xDD, 0xE0, 0x00, 0x00, 0x00
889                 },
890                 .len = 16
891         },
892         .plaintext = {
893                 .data = {
894                         0x5B, 0xAD, 0x72, 0x47, 0x10, 0xBA, 0x1C, 0x56,
895                         0xD5, 0xA3, 0x15, 0xF8, 0xD4, 0x0F, 0x6E, 0x09,
896                         0x37, 0x80, 0xBE, 0x8E, 0x8D, 0xE0, 0x7B, 0x69,
897                         0x92, 0x43, 0x20, 0x18, 0xE0, 0x8E, 0xD9, 0x6A,
898                         0x57, 0x34, 0xAF, 0x8B, 0xAD, 0x8A, 0x57, 0x5D,
899                         0x3A, 0x1F, 0x16, 0x2F, 0x85, 0x04, 0x5C, 0xC7,
900                         0x70, 0x92, 0x55, 0x71, 0xD9, 0xF5, 0xB9, 0x4E,
901                         0x45, 0x4A, 0x77, 0xC1, 0x6E, 0x72, 0x93, 0x6B,
902                         0xF0, 0x16, 0xAE, 0x15, 0x74, 0x99, 0xF0, 0x54,
903                         0x3B, 0x5D, 0x52, 0xCA, 0xA6, 0xDB, 0xEA, 0xB6,
904                         0x97, 0xD2, 0xBB, 0x73, 0xE4, 0x1B, 0x80, 0x75,
905                         0xDC, 0xE7, 0x9B, 0x4B, 0x86, 0x04, 0x4F, 0x66,
906                         0x1D, 0x44, 0x85, 0xA5, 0x43, 0xDD, 0x78, 0x60,
907                         0x6E, 0x04, 0x19, 0xE8, 0x05, 0x98, 0x59, 0xD3,
908                         0xCB, 0x2B, 0x67, 0xCE, 0x09, 0x77, 0x60, 0x3F,
909                         0x81, 0xFF, 0x83, 0x9E, 0x33, 0x18, 0x59, 0x54,
910                         0x4C, 0xFB, 0xC8, 0xD0, 0x0F, 0xEF, 0x1A, 0x4C,
911                         0x85, 0x10, 0xFB, 0x54, 0x7D, 0x6B, 0x06, 0xC6,
912                         0x11, 0xEF, 0x44, 0xF1, 0xBC, 0xE1, 0x07, 0xCF,
913                         0xA4, 0x5A, 0x06, 0xAA, 0xB3, 0x60, 0x15, 0x2B,
914                         0x28, 0xDC, 0x1E, 0xBE, 0x6F, 0x7F, 0xE0, 0x9B,
915                         0x05, 0x16, 0xF9, 0xA5, 0xB0, 0x2A, 0x1B, 0xD8,
916                         0x4B, 0xB0, 0x18, 0x1E, 0x2E, 0x89, 0xE1, 0x9B,
917                         0xD8, 0x12, 0x59, 0x30, 0xD1, 0x78, 0x68, 0x2F,
918                         0x38, 0x62, 0xDC, 0x51, 0xB6, 0x36, 0xF0, 0x4E,
919                         0x72, 0x0C, 0x47, 0xC3, 0xCE, 0x51, 0xAD, 0x70,
920                         0xD9, 0x4B, 0x9B, 0x22, 0x55, 0xFB, 0xAE, 0x90,
921                         0x65, 0x49, 0xF4, 0x99, 0xF8, 0xC6, 0xD3, 0x99,
922                         0x47, 0xED, 0x5E, 0x5D, 0xF8, 0xE2, 0xDE, 0xF1,
923                         0x13, 0x25, 0x3E, 0x7B, 0x08, 0xD0, 0xA7, 0x6B,
924                         0x6B, 0xFC, 0x68, 0xC8, 0x12, 0xF3, 0x75, 0xC7,
925                         0x9B, 0x8F, 0xE5, 0xFD, 0x85, 0x97, 0x6A, 0xA6,
926                         0xD4, 0x6B, 0x4A, 0x23, 0x39, 0xD8, 0xAE, 0x51,
927                         0x47, 0xF6, 0x80, 0xFB, 0xE7, 0x0F, 0x97, 0x8B,
928                         0x38, 0xEF, 0xFD, 0x7B, 0x2F, 0x78, 0x66, 0xA2,
929                         0x25, 0x54, 0xE1, 0x93, 0xA9, 0x4E, 0x98, 0xA6,
930                         0x8B, 0x74, 0xBD, 0x25, 0xBB, 0x2B, 0x3F, 0x5F,
931                         0xB0, 0xA5, 0xFD, 0x59, 0x88, 0x7F, 0x9A, 0xB6,
932                         0x81, 0x59, 0xB7, 0x17, 0x8D, 0x5B, 0x7B, 0x67,
933                         0x7C, 0xB5, 0x46, 0xBF, 0x41, 0xEA, 0xDC, 0xA2,
934                         0x16, 0xFC, 0x10, 0x85, 0x01, 0x28, 0xF8, 0xBD,
935                         0xEF, 0x5C, 0x8D, 0x89, 0xF9, 0x6A, 0xFA, 0x4F,
936                         0xA8, 0xB5, 0x48, 0x85, 0x56, 0x5E, 0xD8, 0x38,
937                         0xA9, 0x50, 0xFE, 0xE5, 0xF1, 0xC3, 0xB0, 0xA4,
938                         0xF6, 0xFB, 0x71, 0xE5, 0x4D, 0xFD, 0x16, 0x9E,
939                         0x82, 0xCE, 0xCC, 0x72, 0x66, 0xC8, 0x50, 0xE6,
940                         0x7C, 0x5E, 0xF0, 0xBA, 0x96, 0x0F, 0x52, 0x14,
941                         0x06, 0x0E, 0x71, 0xEB, 0x17, 0x2A, 0x75, 0xFC,
942                         0x14, 0x86, 0x83, 0x5C, 0xBE, 0xA6, 0x53, 0x44,
943                         0x65, 0xB0, 0x55, 0xC9, 0x6A, 0x72, 0xE4, 0x10,
944                         0x52, 0x24, 0x18, 0x23, 0x25, 0xD8, 0x30, 0x41,
945                         0x4B, 0x40, 0x21, 0x4D, 0xAA, 0x80, 0x91, 0xD2,
946                         0xE0, 0xFB, 0x01, 0x0A, 0xE1, 0x5C, 0x6D, 0xE9,
947                         0x08, 0x50, 0x97, 0x3B, 0xDF, 0x1E, 0x42, 0x3B,
948                         0xE1, 0x48, 0xA2, 0x37, 0xB8, 0x7A, 0x0C, 0x9F,
949                         0x34, 0xD4, 0xB4, 0x76, 0x05, 0xB8, 0x03, 0xD7,
950                         0x43, 0xA8, 0x6A, 0x90, 0x39, 0x9A, 0x4A, 0xF3,
951                         0x96, 0xD3, 0xA1, 0x20, 0x0A, 0x62, 0xF3, 0xD9,
952                         0x50, 0x79, 0x62, 0xE8, 0xE5, 0xBE, 0xE6, 0xD3,
953                         0xDA, 0x2B, 0xB3, 0xF7, 0x23, 0x76, 0x64, 0xAC,
954                         0x7A, 0x29, 0x28, 0x23, 0x90, 0x0B, 0xC6, 0x35,
955                         0x03, 0xB2, 0x9E, 0x80, 0xD6, 0x3F, 0x60, 0x67,
956                         0xBF, 0x8E, 0x17, 0x16, 0xAC, 0x25, 0xBE, 0xBA,
957                         0x35, 0x0D, 0xEB, 0x62, 0xA9, 0x9F, 0xE0, 0x31,
958                         0x85, 0xEB, 0x4F, 0x69, 0x93, 0x7E, 0xCD, 0x38,
959                         0x79, 0x41, 0xFD, 0xA5, 0x44, 0xBA, 0x67, 0xDB,
960                         0x09, 0x11, 0x77, 0x49, 0x38, 0xB0, 0x18, 0x27,
961                         0xBC, 0xC6, 0x9C, 0x92, 0xB3, 0xF7, 0x72, 0xA9,
962                         0xD2, 0x85, 0x9E, 0xF0, 0x03, 0x39, 0x8B, 0x1F,
963                         0x6B, 0xBA, 0xD7, 0xB5, 0x74, 0xF7, 0x98, 0x9A,
964                         0x1D, 0x10, 0xB2, 0xDF, 0x79, 0x8E, 0x0D, 0xBF,
965                         0x30, 0xD6, 0x58, 0x74, 0x64, 0xD2, 0x48, 0x78,
966                         0xCD, 0x00, 0xC0, 0xEA, 0xEE, 0x8A, 0x1A, 0x0C,
967                         0xC7, 0x53, 0xA2, 0x79, 0x79, 0xE1, 0x1B, 0x41,
968                         0xDB, 0x1D, 0xE3, 0xD5, 0x03, 0x8A, 0xFA, 0xF4,
969                         0x9F, 0x5C, 0x68, 0x2C, 0x37, 0x48, 0xD8, 0xA3,
970                         0xA9, 0xEC, 0x54, 0xE6, 0xA3, 0x71, 0x27, 0x5F,
971                         0x16, 0x83, 0x51, 0x0F, 0x8E, 0x4F, 0x90, 0x93,
972                         0x8F, 0x9A, 0xB6, 0xE1, 0x34, 0xC2, 0xCF, 0xDF,
973                         0x48, 0x41, 0xCB, 0xA8, 0x8E, 0x0C, 0xFF, 0x2B,
974                         0x0B, 0xCC, 0x8E, 0x6A, 0xDC, 0xB7, 0x11, 0x09,
975                         0xB5, 0x19, 0x8F, 0xEC, 0xF1, 0xBB, 0x7E, 0x5C,
976                         0x53, 0x1A, 0xCA, 0x50, 0xA5, 0x6A, 0x8A, 0x3B,
977                         0x6D, 0xE5, 0x98, 0x62, 0xD4, 0x1F, 0xA1, 0x13,
978                         0xD9, 0xCD, 0x95, 0x78, 0x08, 0xF0, 0x85, 0x71,
979                         0xD9, 0xA4, 0xBB, 0x79, 0x2A, 0xF2, 0x71, 0xF6,
980                         0xCC, 0x6D, 0xBB, 0x8D, 0xC7, 0xEC, 0x36, 0xE3,
981                         0x6B, 0xE1, 0xED, 0x30, 0x81, 0x64, 0xC3, 0x1C,
982                         0x7C, 0x0A, 0xFC, 0x54, 0x1C
983                 },
984                 .len = 5672
985         },
986         .validAuthLenInBits = {
987                 .len = 5670
988         },
989         .validAuthOffsetLenInBits = {
990                 .len = 128
991         },
992         .digest = {
993                 .data = {0x0C, 0xA1, 0x27, 0x92},
994                 .len  = 4
995         }
996 };
997
998 static struct wireless_test_data zuc_test_case_auth_128b = {
999         .key = {
1000                 .data = { 0x0 },
1001                 .len = 16
1002         },
1003         .aad = {
1004                 .data = { 0x0 },
1005                 .len = 16
1006         },
1007         .plaintext = {
1008                 .data = { 0x0 },
1009                 .len = 8
1010         },
1011         .validAuthLenInBits = {
1012                 .len = 8
1013         },
1014         .validAuthOffsetLenInBits = {
1015                 .len = 128
1016         },
1017         .digest = {
1018                 .data = { 0x39, 0x0a, 0x91, 0xb7 },
1019                 .len  = 4
1020         }
1021 };
1022
1023 static struct wireless_test_data zuc_test_case_auth_2080b = {
1024         .key = {
1025                 .data = {
1026                         0xC8, 0xA4, 0x82, 0x62, 0xD0, 0xC2, 0xE2, 0xBA,
1027                         0xC4, 0xB9, 0x6E, 0xF7, 0x7E, 0x80, 0xCA, 0x59
1028                 },
1029                 .len = 16
1030         },
1031         .aad = {
1032                 .data = {
1033                         0x05, 0x09, 0x78, 0x50, 0x80, 0x00, 0x00, 0x00,
1034                         0x85, 0x09, 0x78, 0x50, 0x80, 0x00, 0x80, 0x00
1035                 },
1036                 .len = 16
1037         },
1038         .plaintext = {
1039                 .data = {
1040                         0xB5, 0x46, 0x43, 0x0B, 0xF8, 0x7B, 0x4F, 0x1E,
1041                         0xE8, 0x34, 0x70, 0x4C, 0xD6, 0x95, 0x1C, 0x36,
1042                         0xE2, 0x6F, 0x10, 0x8C, 0xF7, 0x31, 0x78, 0x8F,
1043                         0x48, 0xDC, 0x34, 0xF1, 0x67, 0x8C, 0x05, 0x22,
1044                         0x1C, 0x8F, 0xA7, 0xFF, 0x2F, 0x39, 0xF4, 0x77,
1045                         0xE7, 0xE4, 0x9E, 0xF6, 0x0A, 0x4E, 0xC2, 0xC3,
1046                         0xDE, 0x24, 0x31, 0x2A, 0x96, 0xAA, 0x26, 0xE1,
1047                         0xCF, 0xBA, 0x57, 0x56, 0x38, 0x38, 0xB2, 0x97,
1048                         0xF4, 0x7E, 0x85, 0x10, 0xC7, 0x79, 0xFD, 0x66,
1049                         0x54, 0xB1, 0x43, 0x38, 0x6F, 0xA6, 0x39, 0xD3,
1050                         0x1E, 0xDB, 0xD6, 0xC0, 0x6E, 0x47, 0xD1, 0x59,
1051                         0xD9, 0x43, 0x62, 0xF2, 0x6A, 0xEE, 0xED, 0xEE,
1052                         0x0E, 0x4F, 0x49, 0xD9, 0xBF, 0x84, 0x12, 0x99,
1053                         0x54, 0x15, 0xBF, 0xAD, 0x56, 0xEE, 0x82, 0xD1,
1054                         0xCA, 0x74, 0x63, 0xAB, 0xF0, 0x85, 0xB0, 0x82,
1055                         0xB0, 0x99, 0x04, 0xD6, 0xD9, 0x90, 0xD4, 0x3C,
1056                         0xF2, 0xE0, 0x62, 0xF4, 0x08, 0x39, 0xD9, 0x32,
1057                         0x48, 0xB1, 0xEB, 0x92, 0xCD, 0xFE, 0xD5, 0x30,
1058                         0x0B, 0xC1, 0x48, 0x28, 0x04, 0x30, 0xB6, 0xD0,
1059                         0xCA, 0xA0, 0x94, 0xB6, 0xEC, 0x89, 0x11, 0xAB,
1060                         0x7D, 0xC3, 0x68, 0x24, 0xB8, 0x24, 0xDC, 0x0A,
1061                         0xF6, 0x68, 0x2B, 0x09, 0x35, 0xFD, 0xE7, 0xB4,
1062                         0x92, 0xA1, 0x4D, 0xC2, 0xF4, 0x36, 0x48, 0x03,
1063                         0x8D, 0xA2, 0xCF, 0x79, 0x17, 0x0D, 0x2D, 0x50,
1064                         0x13, 0x3F, 0xD4, 0x94, 0x16, 0xCB, 0x6E, 0x33,
1065                         0xBE, 0xA9, 0x0B, 0x8B, 0xF4, 0x55, 0x9B, 0x03,
1066                         0x73, 0x2A, 0x01, 0xEA, 0x29, 0x0E, 0x6D, 0x07,
1067                         0x4F, 0x79, 0xBB, 0x83, 0xC1, 0x0E, 0x58, 0x00,
1068                         0x15, 0xCC, 0x1A, 0x85, 0xB3, 0x6B, 0x55, 0x01,
1069                         0x04, 0x6E, 0x9C, 0x4B, 0xDC, 0xAE, 0x51, 0x35,
1070                         0x69, 0x0B, 0x86, 0x66, 0xBD, 0x54, 0xB7, 0xA7,
1071                         0x03, 0xEA, 0x7B, 0x6F, 0x22, 0x0A, 0x54, 0x69,
1072                         0xA5, 0x68, 0x02, 0x7E
1073                 },
1074                 .len = 2080
1075         },
1076         .validAuthLenInBits = {
1077                 .len = 2080
1078         },
1079         .validAuthOffsetLenInBits = {
1080                 .len = 128
1081         },
1082         .digest = {
1083                 .data = {0x03, 0x95, 0x32, 0xe1},
1084                 .len  = 4
1085         }
1086 };
1087
1088 static struct wireless_test_data zuc_test_case_auth_584b = {
1089         .key = {
1090                 .data = {
1091                         0xc9, 0xe6, 0xce, 0xc4, 0x60, 0x7c, 0x72, 0xdb,
1092                         0x00, 0x0a, 0xef, 0xa8, 0x83, 0x85, 0xab, 0x0a
1093                 },
1094                 .len = 16
1095         },
1096         .aad = {
1097                 .data = {
1098                         0xa9, 0x40, 0x59, 0xda, 0x50, 0x0, 0x0, 0x0,
1099                         0x29, 0x40, 0x59, 0xda, 0x50, 0x0, 0x80, 0x0
1100                 },
1101                 .len = 16
1102         },
1103         .plaintext = {
1104                 .data = {
1105                         0x98, 0x3b, 0x41, 0xd4, 0x7d, 0x78, 0x0c, 0x9e,
1106                         0x1a, 0xd1, 0x1d, 0x7e, 0xb7, 0x03, 0x91, 0xb1,
1107                         0xde, 0x0b, 0x35, 0xda, 0x2d, 0xc6, 0x2f, 0x83,
1108                         0xe7, 0xb7, 0x8d, 0x63, 0x06, 0xca, 0x0e, 0xa0,
1109                         0x7e, 0x94, 0x1b, 0x7b, 0xe9, 0x13, 0x48, 0xf9,
1110                         0xfc, 0xb1, 0x70, 0xe2, 0x21, 0x7f, 0xec, 0xd9,
1111                         0x7f, 0x9f, 0x68, 0xad, 0xb1, 0x6e, 0x5d, 0x7d,
1112                         0x21, 0xe5, 0x69, 0xd2, 0x80, 0xed, 0x77, 0x5c,
1113                         0xeb, 0xde, 0x3f, 0x40, 0x93, 0xc5, 0x38, 0x81,
1114                         0x00, 0x00, 0x00, 0x00
1115                 },
1116                 .len = 584
1117         },
1118         .validAuthLenInBits = {
1119                 .len = 584
1120         },
1121         .validAuthOffsetLenInBits = {
1122                 .len = 128
1123         },
1124         .digest = {
1125                 .data = {0x24, 0xa8, 0x42, 0xb3},
1126                 .len  = 4
1127         }
1128 };
1129
1130 #endif /* TEST_CRYPTODEV_ZUC_TEST_VECTORS_H_ */