]> git.proxmox.com Git - ceph.git/blob - ceph/src/crypto/isa-l/isa-l_crypto/aes/xts_256_vect.h
update ceph source to reef 18.1.2
[ceph.git] / ceph / src / crypto / isa-l / isa-l_crypto / aes / xts_256_vect.h
1 /**********************************************************************
2 Copyright(c) 2011-2016 Intel Corporation All rights reserved.
3
4 Redistribution and use in source and binary forms, with or without
5 modification, are permitted provided that the following conditions
6 are met:
7 * Redistributions of source code must retain the above copyright
8 notice, this list of conditions and the following disclaimer.
9 * Redistributions in binary form must reproduce the above copyright
10 notice, this list of conditions and the following disclaimer in
11 the documentation and/or other materials provided with the
12 distribution.
13 * Neither the name of Intel Corporation nor the names of its
14 contributors may be used to endorse or promote products derived
15 from this software without specific prior written permission.
16
17 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
18 "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
19 LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
20 A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
21 OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
22 SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
23 LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
24 DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
25 THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26 (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
27 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28 **********************************************************************/
29
30 #include "aes_xts.h"
31
32 #define NVEC 5
33
34 // struct to hold pointers to the key, plaintext and ciphertext vectors
35 struct xts_vector {
36 uint64_t ptlen; // length of our plaintext
37 uint8_t *key1; // dimension 16 for 128 bit aes
38 uint8_t *key2; // dimension 16 for 128 bit aes
39 uint8_t *TW; // dimension 16 for both 128 and 256 bit
40 uint8_t *PTX; // min. dimension 16
41 uint8_t *CTX; // same dimension as PTX
42 };
43
44 /* Define our test vectors statically here. Test vectors are from the standard:
45 * "IEEE Standard for Cryptographic Protection of Data on Block-Oriented
46 * Storage Devices"
47 * http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=4493450
48 *
49 * Vector 10
50 * Key1 2718281828459045235360287471352662497757247093699959574966967627
51 * Key2 3141592653589793238462643383279502884197169399375105820974944592
52 * Data Unit Sequence Number ff
53 * PTX 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f
54 * PTX 202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f
55 * PTX 404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f
56 * PTX 606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f
57 * PTX 808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9f
58 * PTX a0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebf
59 * PTX c0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedf
60 * PTX e0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff
61 * PTX 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f
62 * PTX 202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f
63 * PTX 404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f
64 * PTX 606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f
65 * PTX 808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9f
66 * PTX a0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebf
67 * PTX c0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedf
68 * PTX e0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff
69 * CTX 1c3b3a102f770386e4836c99e370cf9bea00803f5e482357a4ae12d414a3e63b
70 * CTX 5d31e276f8fe4a8d66b317f9ac683f44680a86ac35adfc3345befecb4bb188fd
71 * CTX 5776926c49a3095eb108fd1098baec70aaa66999a72a82f27d848b21d4a741b0
72 * CTX c5cd4d5fff9dac89aeba122961d03a757123e9870f8acf1000020887891429ca
73 * CTX 2a3e7a7d7df7b10355165c8b9a6d0a7de8b062c4500dc4cd120c0f7418dae3d0
74 * CTX b5781c34803fa75421c790dfe1de1834f280d7667b327f6c8cd7557e12ac3a0f
75 * CTX 93ec05c52e0493ef31a12d3d9260f79a289d6a379bc70c50841473d1a8cc81ec
76 * CTX 583e9645e07b8d9670655ba5bbcfecc6dc3966380ad8fecb17b6ba02469a020a
77 * CTX 84e18e8f84252070c13e9f1f289be54fbc481457778f616015e1327a02b140f1
78 * CTX 505eb309326d68378f8374595c849d84f4c333ec4423885143cb47bd71c5edae
79 * CTX 9be69a2ffeceb1bec9de244fbe15992b11b77c040f12bd8f6a975a44a0f90c29
80 * CTX a9abc3d4d893927284c58754cce294529f8614dcd2aba991925fedc4ae74ffac
81 * CTX 6e333b93eb4aff0479da9a410e4450e0dd7ae4c6e2910900575da401fc07059f
82 * CTX 645e8b7e9bfdef33943054ff84011493c27b3429eaedb4ed5376441a77ed4385
83 * CTX 1ad77f16f541dfd269d50d6a5f14fb0aab1cbb4c1550be97f7ab4066193c4caa
84 * CTX 773dad38014bd2092fa755c824bb5e54c4f36ffda9fcea70b9c6e693e148c151
85 * Plaintext length (bytes): 512
86 */
87
88 static uint8_t v10_key1[32] = {
89 0x27, 0x18, 0x28, 0x18, 0x28, 0x45, 0x90, 0x45,
90 0x23, 0x53, 0x60, 0x28, 0x74, 0x71, 0x35, 0x26,
91 0x62, 0x49, 0x77, 0x57, 0x24, 0x70, 0x93, 0x69,
92 0x99, 0x59, 0x57, 0x49, 0x66, 0x96, 0x76, 0x27
93 };
94
95 static uint8_t v10_key2[32] = {
96 0x31, 0x41, 0x59, 0x26, 0x53, 0x58, 0x97, 0x93,
97 0x23, 0x84, 0x62, 0x64, 0x33, 0x83, 0x27, 0x95,
98 0x02, 0x88, 0x41, 0x97, 0x16, 0x93, 0x99, 0x37,
99 0x51, 0x05, 0x82, 0x09, 0x74, 0x94, 0x45, 0x92
100 };
101
102 static uint8_t v10_TW[16] = {
103 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
104 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
105 };
106
107 static uint8_t v10_PTX[512] = {
108 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
109 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
110 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
111 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
112 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
113 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
114 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
115 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
116 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47,
117 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
118 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57,
119 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
120 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67,
121 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
122 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77,
123 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f,
124 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87,
125 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f,
126 0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97,
127 0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f,
128 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7,
129 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf,
130 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7,
131 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
132 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,
133 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,
134 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7,
135 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf,
136 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7,
137 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef,
138 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7,
139 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff,
140 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
141 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
142 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
143 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
144 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
145 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
146 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
147 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
148 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47,
149 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
150 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57,
151 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
152 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67,
153 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
154 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77,
155 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f,
156 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87,
157 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f,
158 0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97,
159 0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f,
160 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7,
161 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf,
162 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7,
163 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
164 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,
165 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,
166 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7,
167 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf,
168 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7,
169 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef,
170 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7,
171 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff
172 };
173
174 static uint8_t v10_CTX[512] = {
175 0x1c, 0x3b, 0x3a, 0x10, 0x2f, 0x77, 0x03, 0x86,
176 0xe4, 0x83, 0x6c, 0x99, 0xe3, 0x70, 0xcf, 0x9b,
177 0xea, 0x00, 0x80, 0x3f, 0x5e, 0x48, 0x23, 0x57,
178 0xa4, 0xae, 0x12, 0xd4, 0x14, 0xa3, 0xe6, 0x3b,
179 0x5d, 0x31, 0xe2, 0x76, 0xf8, 0xfe, 0x4a, 0x8d,
180 0x66, 0xb3, 0x17, 0xf9, 0xac, 0x68, 0x3f, 0x44,
181 0x68, 0x0a, 0x86, 0xac, 0x35, 0xad, 0xfc, 0x33,
182 0x45, 0xbe, 0xfe, 0xcb, 0x4b, 0xb1, 0x88, 0xfd,
183 0x57, 0x76, 0x92, 0x6c, 0x49, 0xa3, 0x09, 0x5e,
184 0xb1, 0x08, 0xfd, 0x10, 0x98, 0xba, 0xec, 0x70,
185 0xaa, 0xa6, 0x69, 0x99, 0xa7, 0x2a, 0x82, 0xf2,
186 0x7d, 0x84, 0x8b, 0x21, 0xd4, 0xa7, 0x41, 0xb0,
187 0xc5, 0xcd, 0x4d, 0x5f, 0xff, 0x9d, 0xac, 0x89,
188 0xae, 0xba, 0x12, 0x29, 0x61, 0xd0, 0x3a, 0x75,
189 0x71, 0x23, 0xe9, 0x87, 0x0f, 0x8a, 0xcf, 0x10,
190 0x00, 0x02, 0x08, 0x87, 0x89, 0x14, 0x29, 0xca,
191 0x2a, 0x3e, 0x7a, 0x7d, 0x7d, 0xf7, 0xb1, 0x03,
192 0x55, 0x16, 0x5c, 0x8b, 0x9a, 0x6d, 0x0a, 0x7d,
193 0xe8, 0xb0, 0x62, 0xc4, 0x50, 0x0d, 0xc4, 0xcd,
194 0x12, 0x0c, 0x0f, 0x74, 0x18, 0xda, 0xe3, 0xd0,
195 0xb5, 0x78, 0x1c, 0x34, 0x80, 0x3f, 0xa7, 0x54,
196 0x21, 0xc7, 0x90, 0xdf, 0xe1, 0xde, 0x18, 0x34,
197 0xf2, 0x80, 0xd7, 0x66, 0x7b, 0x32, 0x7f, 0x6c,
198 0x8c, 0xd7, 0x55, 0x7e, 0x12, 0xac, 0x3a, 0x0f,
199 0x93, 0xec, 0x05, 0xc5, 0x2e, 0x04, 0x93, 0xef,
200 0x31, 0xa1, 0x2d, 0x3d, 0x92, 0x60, 0xf7, 0x9a,
201 0x28, 0x9d, 0x6a, 0x37, 0x9b, 0xc7, 0x0c, 0x50,
202 0x84, 0x14, 0x73, 0xd1, 0xa8, 0xcc, 0x81, 0xec,
203 0x58, 0x3e, 0x96, 0x45, 0xe0, 0x7b, 0x8d, 0x96,
204 0x70, 0x65, 0x5b, 0xa5, 0xbb, 0xcf, 0xec, 0xc6,
205 0xdc, 0x39, 0x66, 0x38, 0x0a, 0xd8, 0xfe, 0xcb,
206 0x17, 0xb6, 0xba, 0x02, 0x46, 0x9a, 0x02, 0x0a,
207 0x84, 0xe1, 0x8e, 0x8f, 0x84, 0x25, 0x20, 0x70,
208 0xc1, 0x3e, 0x9f, 0x1f, 0x28, 0x9b, 0xe5, 0x4f,
209 0xbc, 0x48, 0x14, 0x57, 0x77, 0x8f, 0x61, 0x60,
210 0x15, 0xe1, 0x32, 0x7a, 0x02, 0xb1, 0x40, 0xf1,
211 0x50, 0x5e, 0xb3, 0x09, 0x32, 0x6d, 0x68, 0x37,
212 0x8f, 0x83, 0x74, 0x59, 0x5c, 0x84, 0x9d, 0x84,
213 0xf4, 0xc3, 0x33, 0xec, 0x44, 0x23, 0x88, 0x51,
214 0x43, 0xcb, 0x47, 0xbd, 0x71, 0xc5, 0xed, 0xae,
215 0x9b, 0xe6, 0x9a, 0x2f, 0xfe, 0xce, 0xb1, 0xbe,
216 0xc9, 0xde, 0x24, 0x4f, 0xbe, 0x15, 0x99, 0x2b,
217 0x11, 0xb7, 0x7c, 0x04, 0x0f, 0x12, 0xbd, 0x8f,
218 0x6a, 0x97, 0x5a, 0x44, 0xa0, 0xf9, 0x0c, 0x29,
219 0xa9, 0xab, 0xc3, 0xd4, 0xd8, 0x93, 0x92, 0x72,
220 0x84, 0xc5, 0x87, 0x54, 0xcc, 0xe2, 0x94, 0x52,
221 0x9f, 0x86, 0x14, 0xdc, 0xd2, 0xab, 0xa9, 0x91,
222 0x92, 0x5f, 0xed, 0xc4, 0xae, 0x74, 0xff, 0xac,
223 0x6e, 0x33, 0x3b, 0x93, 0xeb, 0x4a, 0xff, 0x04,
224 0x79, 0xda, 0x9a, 0x41, 0x0e, 0x44, 0x50, 0xe0,
225 0xdd, 0x7a, 0xe4, 0xc6, 0xe2, 0x91, 0x09, 0x00,
226 0x57, 0x5d, 0xa4, 0x01, 0xfc, 0x07, 0x05, 0x9f,
227 0x64, 0x5e, 0x8b, 0x7e, 0x9b, 0xfd, 0xef, 0x33,
228 0x94, 0x30, 0x54, 0xff, 0x84, 0x01, 0x14, 0x93,
229 0xc2, 0x7b, 0x34, 0x29, 0xea, 0xed, 0xb4, 0xed,
230 0x53, 0x76, 0x44, 0x1a, 0x77, 0xed, 0x43, 0x85,
231 0x1a, 0xd7, 0x7f, 0x16, 0xf5, 0x41, 0xdf, 0xd2,
232 0x69, 0xd5, 0x0d, 0x6a, 0x5f, 0x14, 0xfb, 0x0a,
233 0xab, 0x1c, 0xbb, 0x4c, 0x15, 0x50, 0xbe, 0x97,
234 0xf7, 0xab, 0x40, 0x66, 0x19, 0x3c, 0x4c, 0xaa,
235 0x77, 0x3d, 0xad, 0x38, 0x01, 0x4b, 0xd2, 0x09,
236 0x2f, 0xa7, 0x55, 0xc8, 0x24, 0xbb, 0x5e, 0x54,
237 0xc4, 0xf3, 0x6f, 0xfd, 0xa9, 0xfc, 0xea, 0x70,
238 0xb9, 0xc6, 0xe6, 0x93, 0xe1, 0x48, 0xc1, 0x51
239 };
240
241 /*
242 * Vector 11
243 * Key1 2718281828459045235360287471352662497757247093699959574966967627
244 * Key2 3141592653589793238462643383279502884197169399375105820974944592
245 * Data Unit Sequence Number ffff
246 * PTX 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f
247 * PTX 202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f
248 * PTX 404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f
249 * PTX 606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f
250 * PTX 808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9f
251 * PTX a0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebf
252 * PTX c0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedf
253 * PTX e0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff
254 * PTX 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f
255 * PTX 202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f
256 * PTX 404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f
257 * PTX 606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f
258 * PTX 808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9f
259 * PTX a0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebf
260 * PTX c0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedf
261 * PTX e0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff
262 * CTX 77a31251618a15e6b92d1d66dffe7b50b50bad552305ba0217a610688eff7e11
263 * CTX e1d0225438e093242d6db274fde801d4cae06f2092c728b2478559df58e837c2
264 * CTX 469ee4a4fa794e4bbc7f39bc026e3cb72c33b0888f25b4acf56a2a9804f1ce6d
265 * CTX 3d6e1dc6ca181d4b546179d55544aa7760c40d06741539c7e3cd9d2f6650b201
266 * CTX 3fd0eeb8c2b8e3d8d240ccae2d4c98320a7442e1c8d75a42d6e6cfa4c2eca179
267 * CTX 8d158c7aecdf82490f24bb9b38e108bcda12c3faf9a21141c3613b58367f922a
268 * CTX aa26cd22f23d708dae699ad7cb40a8ad0b6e2784973dcb605684c08b8d6998c6
269 * CTX 9aac049921871ebb65301a4619ca80ecb485a31d744223ce8ddc2394828d6a80
270 * CTX 470c092f5ba413c3378fa6054255c6f9df4495862bbb3287681f931b687c888a
271 * CTX bf844dfc8fc28331e579928cd12bd2390ae123cf03818d14dedde5c0c24c8ab0
272 * CTX 18bfca75ca096f2d531f3d1619e785f1ada437cab92e980558b3dce1474afb75
273 * CTX bfedbf8ff54cb2618e0244c9ac0d3c66fb51598cd2db11f9be39791abe447c63
274 * CTX 094f7c453b7ff87cb5bb36b7c79efb0872d17058b83b15ab0866ad8a58656c5a
275 * CTX 7e20dbdf308b2461d97c0ec0024a2715055249cf3b478ddd4740de654f75ca68
276 * CTX 6e0d7345c69ed50cdc2a8b332b1f8824108ac937eb050585608ee734097fc090
277 * CTX 54fbff89eeaeea791f4a7ab1f9868294a4f9e27b42af8100cb9d59cef9645803
278 * Plaintext length (bytes): 512
279 *
280 */
281 static uint8_t v11_key1[32] = {
282 0x27, 0x18, 0x28, 0x18, 0x28, 0x45, 0x90, 0x45,
283 0x23, 0x53, 0x60, 0x28, 0x74, 0x71, 0x35, 0x26,
284 0x62, 0x49, 0x77, 0x57, 0x24, 0x70, 0x93, 0x69,
285 0x99, 0x59, 0x57, 0x49, 0x66, 0x96, 0x76, 0x27
286 };
287
288 static uint8_t v11_key2[32] = {
289 0x31, 0x41, 0x59, 0x26, 0x53, 0x58, 0x97, 0x93,
290 0x23, 0x84, 0x62, 0x64, 0x33, 0x83, 0x27, 0x95,
291 0x02, 0x88, 0x41, 0x97, 0x16, 0x93, 0x99, 0x37,
292 0x51, 0x05, 0x82, 0x09, 0x74, 0x94, 0x45, 0x92
293 };
294
295 static uint8_t v11_TW[16] = {
296 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
297 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
298 };
299
300 static uint8_t v11_PTX[512] = {
301 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
302 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
303 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
304 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
305 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
306 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
307 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
308 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
309 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47,
310 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
311 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57,
312 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
313 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67,
314 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
315 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77,
316 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f,
317 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87,
318 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f,
319 0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97,
320 0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f,
321 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7,
322 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf,
323 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7,
324 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
325 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,
326 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,
327 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7,
328 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf,
329 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7,
330 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef,
331 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7,
332 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff,
333 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
334 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
335 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
336 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
337 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
338 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
339 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
340 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
341 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47,
342 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
343 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57,
344 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
345 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67,
346 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
347 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77,
348 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f,
349 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87,
350 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f,
351 0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97,
352 0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f,
353 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7,
354 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf,
355 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7,
356 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
357 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,
358 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,
359 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7,
360 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf,
361 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7,
362 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef,
363 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7,
364 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff
365 };
366
367 static uint8_t v11_CTX[512] = {
368 0x77, 0xa3, 0x12, 0x51, 0x61, 0x8a, 0x15, 0xe6,
369 0xb9, 0x2d, 0x1d, 0x66, 0xdf, 0xfe, 0x7b, 0x50,
370 0xb5, 0x0b, 0xad, 0x55, 0x23, 0x05, 0xba, 0x02,
371 0x17, 0xa6, 0x10, 0x68, 0x8e, 0xff, 0x7e, 0x11,
372 0xe1, 0xd0, 0x22, 0x54, 0x38, 0xe0, 0x93, 0x24,
373 0x2d, 0x6d, 0xb2, 0x74, 0xfd, 0xe8, 0x01, 0xd4,
374 0xca, 0xe0, 0x6f, 0x20, 0x92, 0xc7, 0x28, 0xb2,
375 0x47, 0x85, 0x59, 0xdf, 0x58, 0xe8, 0x37, 0xc2,
376 0x46, 0x9e, 0xe4, 0xa4, 0xfa, 0x79, 0x4e, 0x4b,
377 0xbc, 0x7f, 0x39, 0xbc, 0x02, 0x6e, 0x3c, 0xb7,
378 0x2c, 0x33, 0xb0, 0x88, 0x8f, 0x25, 0xb4, 0xac,
379 0xf5, 0x6a, 0x2a, 0x98, 0x04, 0xf1, 0xce, 0x6d,
380 0x3d, 0x6e, 0x1d, 0xc6, 0xca, 0x18, 0x1d, 0x4b,
381 0x54, 0x61, 0x79, 0xd5, 0x55, 0x44, 0xaa, 0x77,
382 0x60, 0xc4, 0x0d, 0x06, 0x74, 0x15, 0x39, 0xc7,
383 0xe3, 0xcd, 0x9d, 0x2f, 0x66, 0x50, 0xb2, 0x01,
384 0x3f, 0xd0, 0xee, 0xb8, 0xc2, 0xb8, 0xe3, 0xd8,
385 0xd2, 0x40, 0xcc, 0xae, 0x2d, 0x4c, 0x98, 0x32,
386 0x0a, 0x74, 0x42, 0xe1, 0xc8, 0xd7, 0x5a, 0x42,
387 0xd6, 0xe6, 0xcf, 0xa4, 0xc2, 0xec, 0xa1, 0x79,
388 0x8d, 0x15, 0x8c, 0x7a, 0xec, 0xdf, 0x82, 0x49,
389 0x0f, 0x24, 0xbb, 0x9b, 0x38, 0xe1, 0x08, 0xbc,
390 0xda, 0x12, 0xc3, 0xfa, 0xf9, 0xa2, 0x11, 0x41,
391 0xc3, 0x61, 0x3b, 0x58, 0x36, 0x7f, 0x92, 0x2a,
392 0xaa, 0x26, 0xcd, 0x22, 0xf2, 0x3d, 0x70, 0x8d,
393 0xae, 0x69, 0x9a, 0xd7, 0xcb, 0x40, 0xa8, 0xad,
394 0x0b, 0x6e, 0x27, 0x84, 0x97, 0x3d, 0xcb, 0x60,
395 0x56, 0x84, 0xc0, 0x8b, 0x8d, 0x69, 0x98, 0xc6,
396 0x9a, 0xac, 0x04, 0x99, 0x21, 0x87, 0x1e, 0xbb,
397 0x65, 0x30, 0x1a, 0x46, 0x19, 0xca, 0x80, 0xec,
398 0xb4, 0x85, 0xa3, 0x1d, 0x74, 0x42, 0x23, 0xce,
399 0x8d, 0xdc, 0x23, 0x94, 0x82, 0x8d, 0x6a, 0x80,
400 0x47, 0x0c, 0x09, 0x2f, 0x5b, 0xa4, 0x13, 0xc3,
401 0x37, 0x8f, 0xa6, 0x05, 0x42, 0x55, 0xc6, 0xf9,
402 0xdf, 0x44, 0x95, 0x86, 0x2b, 0xbb, 0x32, 0x87,
403 0x68, 0x1f, 0x93, 0x1b, 0x68, 0x7c, 0x88, 0x8a,
404 0xbf, 0x84, 0x4d, 0xfc, 0x8f, 0xc2, 0x83, 0x31,
405 0xe5, 0x79, 0x92, 0x8c, 0xd1, 0x2b, 0xd2, 0x39,
406 0x0a, 0xe1, 0x23, 0xcf, 0x03, 0x81, 0x8d, 0x14,
407 0xde, 0xdd, 0xe5, 0xc0, 0xc2, 0x4c, 0x8a, 0xb0,
408 0x18, 0xbf, 0xca, 0x75, 0xca, 0x09, 0x6f, 0x2d,
409 0x53, 0x1f, 0x3d, 0x16, 0x19, 0xe7, 0x85, 0xf1,
410 0xad, 0xa4, 0x37, 0xca, 0xb9, 0x2e, 0x98, 0x05,
411 0x58, 0xb3, 0xdc, 0xe1, 0x47, 0x4a, 0xfb, 0x75,
412 0xbf, 0xed, 0xbf, 0x8f, 0xf5, 0x4c, 0xb2, 0x61,
413 0x8e, 0x02, 0x44, 0xc9, 0xac, 0x0d, 0x3c, 0x66,
414 0xfb, 0x51, 0x59, 0x8c, 0xd2, 0xdb, 0x11, 0xf9,
415 0xbe, 0x39, 0x79, 0x1a, 0xbe, 0x44, 0x7c, 0x63,
416 0x09, 0x4f, 0x7c, 0x45, 0x3b, 0x7f, 0xf8, 0x7c,
417 0xb5, 0xbb, 0x36, 0xb7, 0xc7, 0x9e, 0xfb, 0x08,
418 0x72, 0xd1, 0x70, 0x58, 0xb8, 0x3b, 0x15, 0xab,
419 0x08, 0x66, 0xad, 0x8a, 0x58, 0x65, 0x6c, 0x5a,
420 0x7e, 0x20, 0xdb, 0xdf, 0x30, 0x8b, 0x24, 0x61,
421 0xd9, 0x7c, 0x0e, 0xc0, 0x02, 0x4a, 0x27, 0x15,
422 0x05, 0x52, 0x49, 0xcf, 0x3b, 0x47, 0x8d, 0xdd,
423 0x47, 0x40, 0xde, 0x65, 0x4f, 0x75, 0xca, 0x68,
424 0x6e, 0x0d, 0x73, 0x45, 0xc6, 0x9e, 0xd5, 0x0c,
425 0xdc, 0x2a, 0x8b, 0x33, 0x2b, 0x1f, 0x88, 0x24,
426 0x10, 0x8a, 0xc9, 0x37, 0xeb, 0x05, 0x05, 0x85,
427 0x60, 0x8e, 0xe7, 0x34, 0x09, 0x7f, 0xc0, 0x90,
428 0x54, 0xfb, 0xff, 0x89, 0xee, 0xae, 0xea, 0x79,
429 0x1f, 0x4a, 0x7a, 0xb1, 0xf9, 0x86, 0x82, 0x94,
430 0xa4, 0xf9, 0xe2, 0x7b, 0x42, 0xaf, 0x81, 0x00,
431 0xcb, 0x9d, 0x59, 0xce, 0xf9, 0x64, 0x58, 0x03
432 };
433
434 /*
435 * Vector 12
436 * Key1 2718281828459045235360287471352662497757247093699959574966967627
437 * Key2 3141592653589793238462643383279502884197169399375105820974944592
438 * Data Unit Sequence Number ffffff
439 * PTX 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f
440 * PTX 202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f
441 * PTX 404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f
442 * PTX 606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f
443 * PTX 808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9f
444 * PTX a0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebf
445 * PTX c0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedf
446 * PTX e0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff
447 * PTX 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f
448 * PTX 202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f
449 * PTX 404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f
450 * PTX 606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f
451 * PTX 808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9f
452 * PTX a0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebf
453 * PTX c0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedf
454 * PTX e0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff
455 * CTX e387aaa58ba483afa7e8eb469778317ecf4cf573aa9d4eac23f2cdf914e4e200
456 * CTX a8b490e42ee646802dc6ee2b471b278195d60918ececb44bf79966f83faba049
457 * CTX 9298ebc699c0c8634715a320bb4f075d622e74c8c932004f25b41e361025b5a8
458 * CTX 7815391f6108fc4afa6a05d9303c6ba68a128a55705d415985832fdeaae6c8e1
459 * CTX 9110e84d1b1f199a2692119edc96132658f09da7c623efcec712537a3d94c0bf
460 * CTX 5d7e352ec94ae5797fdb377dc1551150721adf15bd26a8efc2fcaad56881fa9e
461 * CTX 62462c28f30ae1ceaca93c345cf243b73f542e2074a705bd2643bb9f7cc79bb6
462 * CTX e7091ea6e232df0f9ad0d6cf502327876d82207abf2115cdacf6d5a48f6c1879
463 * CTX a65b115f0f8b3cb3c59d15dd8c769bc014795a1837f3901b5845eb491adfefe0
464 * CTX 97b1fa30a12fc1f65ba22905031539971a10f2f36c321bb51331cdefb39e3964
465 * CTX c7ef079994f5b69b2edd83a71ef549971ee93f44eac3938fcdd61d01fa71799d
466 * CTX a3a8091c4c48aa9ed263ff0749df95d44fef6a0bb578ec69456aa5408ae32c7a
467 * CTX f08ad7ba8921287e3bbee31b767be06a0e705c864a769137df28292283ea81a2
468 * CTX 480241b44d9921cdbec1bc28dc1fda114bd8e5217ac9d8ebafa720e9da4f9ace
469 * CTX 231cc949e5b96fe76ffc21063fddc83a6b8679c00d35e09576a875305bed5f36
470 * CTX ed242c8900dd1fa965bc950dfce09b132263a1eef52dd6888c309f5a7d712826
471 * Plaintext length (bytes): 512
472 */
473
474 static uint8_t v12_key1[32] = {
475 0x27, 0x18, 0x28, 0x18, 0x28, 0x45, 0x90, 0x45,
476 0x23, 0x53, 0x60, 0x28, 0x74, 0x71, 0x35, 0x26,
477 0x62, 0x49, 0x77, 0x57, 0x24, 0x70, 0x93, 0x69,
478 0x99, 0x59, 0x57, 0x49, 0x66, 0x96, 0x76, 0x27
479 };
480
481 static uint8_t v12_key2[32] = {
482 0x31, 0x41, 0x59, 0x26, 0x53, 0x58, 0x97, 0x93,
483 0x23, 0x84, 0x62, 0x64, 0x33, 0x83, 0x27, 0x95,
484 0x02, 0x88, 0x41, 0x97, 0x16, 0x93, 0x99, 0x37,
485 0x51, 0x05, 0x82, 0x09, 0x74, 0x94, 0x45, 0x92
486 };
487
488 static uint8_t v12_TW[16] = {
489 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00,
490 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
491 };
492
493 static uint8_t v12_PTX[512] = {
494 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
495 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
496 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
497 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
498 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
499 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
500 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
501 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
502 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47,
503 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
504 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57,
505 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
506 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67,
507 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
508 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77,
509 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f,
510 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87,
511 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f,
512 0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97,
513 0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f,
514 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7,
515 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf,
516 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7,
517 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
518 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,
519 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,
520 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7,
521 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf,
522 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7,
523 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef,
524 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7,
525 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff,
526 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
527 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
528 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
529 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
530 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
531 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
532 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
533 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
534 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47,
535 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
536 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57,
537 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
538 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67,
539 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
540 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77,
541 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f,
542 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87,
543 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f,
544 0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97,
545 0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f,
546 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7,
547 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf,
548 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7,
549 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
550 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,
551 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,
552 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7,
553 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf,
554 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7,
555 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef,
556 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7,
557 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff
558 };
559
560 static uint8_t v12_CTX[512] = {
561 0xe3, 0x87, 0xaa, 0xa5, 0x8b, 0xa4, 0x83, 0xaf,
562 0xa7, 0xe8, 0xeb, 0x46, 0x97, 0x78, 0x31, 0x7e,
563 0xcf, 0x4c, 0xf5, 0x73, 0xaa, 0x9d, 0x4e, 0xac,
564 0x23, 0xf2, 0xcd, 0xf9, 0x14, 0xe4, 0xe2, 0x00,
565 0xa8, 0xb4, 0x90, 0xe4, 0x2e, 0xe6, 0x46, 0x80,
566 0x2d, 0xc6, 0xee, 0x2b, 0x47, 0x1b, 0x27, 0x81,
567 0x95, 0xd6, 0x09, 0x18, 0xec, 0xec, 0xb4, 0x4b,
568 0xf7, 0x99, 0x66, 0xf8, 0x3f, 0xab, 0xa0, 0x49,
569 0x92, 0x98, 0xeb, 0xc6, 0x99, 0xc0, 0xc8, 0x63,
570 0x47, 0x15, 0xa3, 0x20, 0xbb, 0x4f, 0x07, 0x5d,
571 0x62, 0x2e, 0x74, 0xc8, 0xc9, 0x32, 0x00, 0x4f,
572 0x25, 0xb4, 0x1e, 0x36, 0x10, 0x25, 0xb5, 0xa8,
573 0x78, 0x15, 0x39, 0x1f, 0x61, 0x08, 0xfc, 0x4a,
574 0xfa, 0x6a, 0x05, 0xd9, 0x30, 0x3c, 0x6b, 0xa6,
575 0x8a, 0x12, 0x8a, 0x55, 0x70, 0x5d, 0x41, 0x59,
576 0x85, 0x83, 0x2f, 0xde, 0xaa, 0xe6, 0xc8, 0xe1,
577 0x91, 0x10, 0xe8, 0x4d, 0x1b, 0x1f, 0x19, 0x9a,
578 0x26, 0x92, 0x11, 0x9e, 0xdc, 0x96, 0x13, 0x26,
579 0x58, 0xf0, 0x9d, 0xa7, 0xc6, 0x23, 0xef, 0xce,
580 0xc7, 0x12, 0x53, 0x7a, 0x3d, 0x94, 0xc0, 0xbf,
581 0x5d, 0x7e, 0x35, 0x2e, 0xc9, 0x4a, 0xe5, 0x79,
582 0x7f, 0xdb, 0x37, 0x7d, 0xc1, 0x55, 0x11, 0x50,
583 0x72, 0x1a, 0xdf, 0x15, 0xbd, 0x26, 0xa8, 0xef,
584 0xc2, 0xfc, 0xaa, 0xd5, 0x68, 0x81, 0xfa, 0x9e,
585 0x62, 0x46, 0x2c, 0x28, 0xf3, 0x0a, 0xe1, 0xce,
586 0xac, 0xa9, 0x3c, 0x34, 0x5c, 0xf2, 0x43, 0xb7,
587 0x3f, 0x54, 0x2e, 0x20, 0x74, 0xa7, 0x05, 0xbd,
588 0x26, 0x43, 0xbb, 0x9f, 0x7c, 0xc7, 0x9b, 0xb6,
589 0xe7, 0x09, 0x1e, 0xa6, 0xe2, 0x32, 0xdf, 0x0f,
590 0x9a, 0xd0, 0xd6, 0xcf, 0x50, 0x23, 0x27, 0x87,
591 0x6d, 0x82, 0x20, 0x7a, 0xbf, 0x21, 0x15, 0xcd,
592 0xac, 0xf6, 0xd5, 0xa4, 0x8f, 0x6c, 0x18, 0x79,
593 0xa6, 0x5b, 0x11, 0x5f, 0x0f, 0x8b, 0x3c, 0xb3,
594 0xc5, 0x9d, 0x15, 0xdd, 0x8c, 0x76, 0x9b, 0xc0,
595 0x14, 0x79, 0x5a, 0x18, 0x37, 0xf3, 0x90, 0x1b,
596 0x58, 0x45, 0xeb, 0x49, 0x1a, 0xdf, 0xef, 0xe0,
597 0x97, 0xb1, 0xfa, 0x30, 0xa1, 0x2f, 0xc1, 0xf6,
598 0x5b, 0xa2, 0x29, 0x05, 0x03, 0x15, 0x39, 0x97,
599 0x1a, 0x10, 0xf2, 0xf3, 0x6c, 0x32, 0x1b, 0xb5,
600 0x13, 0x31, 0xcd, 0xef, 0xb3, 0x9e, 0x39, 0x64,
601 0xc7, 0xef, 0x07, 0x99, 0x94, 0xf5, 0xb6, 0x9b,
602 0x2e, 0xdd, 0x83, 0xa7, 0x1e, 0xf5, 0x49, 0x97,
603 0x1e, 0xe9, 0x3f, 0x44, 0xea, 0xc3, 0x93, 0x8f,
604 0xcd, 0xd6, 0x1d, 0x01, 0xfa, 0x71, 0x79, 0x9d,
605 0xa3, 0xa8, 0x09, 0x1c, 0x4c, 0x48, 0xaa, 0x9e,
606 0xd2, 0x63, 0xff, 0x07, 0x49, 0xdf, 0x95, 0xd4,
607 0x4f, 0xef, 0x6a, 0x0b, 0xb5, 0x78, 0xec, 0x69,
608 0x45, 0x6a, 0xa5, 0x40, 0x8a, 0xe3, 0x2c, 0x7a,
609 0xf0, 0x8a, 0xd7, 0xba, 0x89, 0x21, 0x28, 0x7e,
610 0x3b, 0xbe, 0xe3, 0x1b, 0x76, 0x7b, 0xe0, 0x6a,
611 0x0e, 0x70, 0x5c, 0x86, 0x4a, 0x76, 0x91, 0x37,
612 0xdf, 0x28, 0x29, 0x22, 0x83, 0xea, 0x81, 0xa2,
613 0x48, 0x02, 0x41, 0xb4, 0x4d, 0x99, 0x21, 0xcd,
614 0xbe, 0xc1, 0xbc, 0x28, 0xdc, 0x1f, 0xda, 0x11,
615 0x4b, 0xd8, 0xe5, 0x21, 0x7a, 0xc9, 0xd8, 0xeb,
616 0xaf, 0xa7, 0x20, 0xe9, 0xda, 0x4f, 0x9a, 0xce,
617 0x23, 0x1c, 0xc9, 0x49, 0xe5, 0xb9, 0x6f, 0xe7,
618 0x6f, 0xfc, 0x21, 0x06, 0x3f, 0xdd, 0xc8, 0x3a,
619 0x6b, 0x86, 0x79, 0xc0, 0x0d, 0x35, 0xe0, 0x95,
620 0x76, 0xa8, 0x75, 0x30, 0x5b, 0xed, 0x5f, 0x36,
621 0xed, 0x24, 0x2c, 0x89, 0x00, 0xdd, 0x1f, 0xa9,
622 0x65, 0xbc, 0x95, 0x0d, 0xfc, 0xe0, 0x9b, 0x13,
623 0x22, 0x63, 0xa1, 0xee, 0xf5, 0x2d, 0xd6, 0x88,
624 0x8c, 0x30, 0x9f, 0x5a, 0x7d, 0x71, 0x28, 0x26
625 };
626
627 /*
628 * Vector 13
629 * Key1 2718281828459045235360287471352662497757247093699959574966967627
630 * Key2 3141592653589793238462643383279502884197169399375105820974944592
631 * Data Unit Sequence Number ffffffff
632 * PTX 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f
633 * PTX 202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f
634 * PTX 404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f
635 * PTX 606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f
636 * PTX 808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9f
637 * PTX a0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebf
638 * PTX c0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedf
639 * PTX e0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff
640 * PTX 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f
641 * PTX 202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f
642 * PTX 404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f
643 * PTX 606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f
644 * PTX 808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9f
645 * PTX a0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebf
646 * PTX c0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedf
647 * PTX e0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff
648 * CTX bf53d2dade78e822a4d949a9bc6766b01b06a8ef70d26748c6a7fc36d80ae4c5
649 * CTX 520f7c4ab0ac8544424fa405162fef5a6b7f229498063618d39f0003cb5fb8d1
650 * CTX c86b643497da1ff945c8d3bedeca4f479702a7a735f043ddb1d6aaade3c4a0ac
651 * CTX 7ca7f3fa5279bef56f82cd7a2f38672e824814e10700300a055e1630b8f1cb0e
652 * CTX 919f5e942010a416e2bf48cb46993d3cb6a51c19bacf864785a00bc2ecff15d3
653 * CTX 50875b246ed53e68be6f55bd7e05cfc2b2ed6432198a6444b6d8c247fab941f5
654 * CTX 69768b5c429366f1d3f00f0345b96123d56204c01c63b22ce78baf116e525ed9
655 * CTX 0fdea39fa469494d3866c31e05f295ff21fea8d4e6e13d67e47ce722e9698a1c
656 * CTX 1048d68ebcde76b86fcf976eab8aa9790268b7068e017a8b9b749409514f1053
657 * CTX 027fd16c3786ea1bac5f15cb79711ee2abe82f5cf8b13ae73030ef5b9e4457e7
658 * CTX 5d1304f988d62dd6fc4b94ed38ba831da4b7634971b6cd8ec325d9c61c00f1df
659 * CTX 73627ed3745a5e8489f3a95c69639c32cd6e1d537a85f75cc844726e8a72fc00
660 * CTX 77ad22000f1d5078f6b866318c668f1ad03d5a5fced5219f2eabbd0aa5c0f460
661 * CTX d183f04404a0d6f469558e81fab24a167905ab4c7878502ad3e38fdbe62a4155
662 * CTX 6cec37325759533ce8f25f367c87bb5578d667ae93f9e2fd99bcbc5f2fbba88c
663 * CTX f6516139420fcff3b7361d86322c4bd84c82f335abb152c4a93411373aaa8220
664 * Plaintext length (bytes): 512
665 */
666
667 static uint8_t v13_key1[32] = {
668 0x27, 0x18, 0x28, 0x18, 0x28, 0x45, 0x90, 0x45,
669 0x23, 0x53, 0x60, 0x28, 0x74, 0x71, 0x35, 0x26,
670 0x62, 0x49, 0x77, 0x57, 0x24, 0x70, 0x93, 0x69,
671 0x99, 0x59, 0x57, 0x49, 0x66, 0x96, 0x76, 0x27
672 };
673
674 static uint8_t v13_key2[32] = {
675 0x31, 0x41, 0x59, 0x26, 0x53, 0x58, 0x97, 0x93,
676 0x23, 0x84, 0x62, 0x64, 0x33, 0x83, 0x27, 0x95,
677 0x02, 0x88, 0x41, 0x97, 0x16, 0x93, 0x99, 0x37,
678 0x51, 0x05, 0x82, 0x09, 0x74, 0x94, 0x45, 0x92
679 };
680
681 static uint8_t v13_TW[16] = {
682 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00,
683 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
684 };
685
686 static uint8_t v13_PTX[512] = {
687 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
688 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
689 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
690 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
691 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
692 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
693 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
694 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
695 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47,
696 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
697 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57,
698 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
699 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67,
700 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
701 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77,
702 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f,
703 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87,
704 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f,
705 0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97,
706 0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f,
707 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7,
708 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf,
709 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7,
710 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
711 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,
712 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,
713 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7,
714 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf,
715 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7,
716 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef,
717 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7,
718 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff,
719 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
720 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
721 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
722 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
723 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
724 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
725 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
726 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
727 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47,
728 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
729 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57,
730 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
731 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67,
732 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
733 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77,
734 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f,
735 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87,
736 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f,
737 0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97,
738 0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f,
739 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7,
740 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf,
741 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7,
742 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
743 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,
744 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,
745 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7,
746 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf,
747 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7,
748 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef,
749 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7,
750 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff
751 };
752
753 static uint8_t v13_CTX[512] = {
754 0xbf, 0x53, 0xd2, 0xda, 0xde, 0x78, 0xe8, 0x22,
755 0xa4, 0xd9, 0x49, 0xa9, 0xbc, 0x67, 0x66, 0xb0,
756 0x1b, 0x06, 0xa8, 0xef, 0x70, 0xd2, 0x67, 0x48,
757 0xc6, 0xa7, 0xfc, 0x36, 0xd8, 0x0a, 0xe4, 0xc5,
758 0x52, 0x0f, 0x7c, 0x4a, 0xb0, 0xac, 0x85, 0x44,
759 0x42, 0x4f, 0xa4, 0x05, 0x16, 0x2f, 0xef, 0x5a,
760 0x6b, 0x7f, 0x22, 0x94, 0x98, 0x06, 0x36, 0x18,
761 0xd3, 0x9f, 0x00, 0x03, 0xcb, 0x5f, 0xb8, 0xd1,
762 0xc8, 0x6b, 0x64, 0x34, 0x97, 0xda, 0x1f, 0xf9,
763 0x45, 0xc8, 0xd3, 0xbe, 0xde, 0xca, 0x4f, 0x47,
764 0x97, 0x02, 0xa7, 0xa7, 0x35, 0xf0, 0x43, 0xdd,
765 0xb1, 0xd6, 0xaa, 0xad, 0xe3, 0xc4, 0xa0, 0xac,
766 0x7c, 0xa7, 0xf3, 0xfa, 0x52, 0x79, 0xbe, 0xf5,
767 0x6f, 0x82, 0xcd, 0x7a, 0x2f, 0x38, 0x67, 0x2e,
768 0x82, 0x48, 0x14, 0xe1, 0x07, 0x00, 0x30, 0x0a,
769 0x05, 0x5e, 0x16, 0x30, 0xb8, 0xf1, 0xcb, 0x0e,
770 0x91, 0x9f, 0x5e, 0x94, 0x20, 0x10, 0xa4, 0x16,
771 0xe2, 0xbf, 0x48, 0xcb, 0x46, 0x99, 0x3d, 0x3c,
772 0xb6, 0xa5, 0x1c, 0x19, 0xba, 0xcf, 0x86, 0x47,
773 0x85, 0xa0, 0x0b, 0xc2, 0xec, 0xff, 0x15, 0xd3,
774 0x50, 0x87, 0x5b, 0x24, 0x6e, 0xd5, 0x3e, 0x68,
775 0xbe, 0x6f, 0x55, 0xbd, 0x7e, 0x05, 0xcf, 0xc2,
776 0xb2, 0xed, 0x64, 0x32, 0x19, 0x8a, 0x64, 0x44,
777 0xb6, 0xd8, 0xc2, 0x47, 0xfa, 0xb9, 0x41, 0xf5,
778 0x69, 0x76, 0x8b, 0x5c, 0x42, 0x93, 0x66, 0xf1,
779 0xd3, 0xf0, 0x0f, 0x03, 0x45, 0xb9, 0x61, 0x23,
780 0xd5, 0x62, 0x04, 0xc0, 0x1c, 0x63, 0xb2, 0x2c,
781 0xe7, 0x8b, 0xaf, 0x11, 0x6e, 0x52, 0x5e, 0xd9,
782 0x0f, 0xde, 0xa3, 0x9f, 0xa4, 0x69, 0x49, 0x4d,
783 0x38, 0x66, 0xc3, 0x1e, 0x05, 0xf2, 0x95, 0xff,
784 0x21, 0xfe, 0xa8, 0xd4, 0xe6, 0xe1, 0x3d, 0x67,
785 0xe4, 0x7c, 0xe7, 0x22, 0xe9, 0x69, 0x8a, 0x1c,
786 0x10, 0x48, 0xd6, 0x8e, 0xbc, 0xde, 0x76, 0xb8,
787 0x6f, 0xcf, 0x97, 0x6e, 0xab, 0x8a, 0xa9, 0x79,
788 0x02, 0x68, 0xb7, 0x06, 0x8e, 0x01, 0x7a, 0x8b,
789 0x9b, 0x74, 0x94, 0x09, 0x51, 0x4f, 0x10, 0x53,
790 0x02, 0x7f, 0xd1, 0x6c, 0x37, 0x86, 0xea, 0x1b,
791 0xac, 0x5f, 0x15, 0xcb, 0x79, 0x71, 0x1e, 0xe2,
792 0xab, 0xe8, 0x2f, 0x5c, 0xf8, 0xb1, 0x3a, 0xe7,
793 0x30, 0x30, 0xef, 0x5b, 0x9e, 0x44, 0x57, 0xe7,
794 0x5d, 0x13, 0x04, 0xf9, 0x88, 0xd6, 0x2d, 0xd6,
795 0xfc, 0x4b, 0x94, 0xed, 0x38, 0xba, 0x83, 0x1d,
796 0xa4, 0xb7, 0x63, 0x49, 0x71, 0xb6, 0xcd, 0x8e,
797 0xc3, 0x25, 0xd9, 0xc6, 0x1c, 0x00, 0xf1, 0xdf,
798 0x73, 0x62, 0x7e, 0xd3, 0x74, 0x5a, 0x5e, 0x84,
799 0x89, 0xf3, 0xa9, 0x5c, 0x69, 0x63, 0x9c, 0x32,
800 0xcd, 0x6e, 0x1d, 0x53, 0x7a, 0x85, 0xf7, 0x5c,
801 0xc8, 0x44, 0x72, 0x6e, 0x8a, 0x72, 0xfc, 0x00,
802 0x77, 0xad, 0x22, 0x00, 0x0f, 0x1d, 0x50, 0x78,
803 0xf6, 0xb8, 0x66, 0x31, 0x8c, 0x66, 0x8f, 0x1a,
804 0xd0, 0x3d, 0x5a, 0x5f, 0xce, 0xd5, 0x21, 0x9f,
805 0x2e, 0xab, 0xbd, 0x0a, 0xa5, 0xc0, 0xf4, 0x60,
806 0xd1, 0x83, 0xf0, 0x44, 0x04, 0xa0, 0xd6, 0xf4,
807 0x69, 0x55, 0x8e, 0x81, 0xfa, 0xb2, 0x4a, 0x16,
808 0x79, 0x05, 0xab, 0x4c, 0x78, 0x78, 0x50, 0x2a,
809 0xd3, 0xe3, 0x8f, 0xdb, 0xe6, 0x2a, 0x41, 0x55,
810 0x6c, 0xec, 0x37, 0x32, 0x57, 0x59, 0x53, 0x3c,
811 0xe8, 0xf2, 0x5f, 0x36, 0x7c, 0x87, 0xbb, 0x55,
812 0x78, 0xd6, 0x67, 0xae, 0x93, 0xf9, 0xe2, 0xfd,
813 0x99, 0xbc, 0xbc, 0x5f, 0x2f, 0xbb, 0xa8, 0x8c,
814 0xf6, 0x51, 0x61, 0x39, 0x42, 0x0f, 0xcf, 0xf3,
815 0xb7, 0x36, 0x1d, 0x86, 0x32, 0x2c, 0x4b, 0xd8,
816 0x4c, 0x82, 0xf3, 0x35, 0xab, 0xb1, 0x52, 0xc4,
817 0xa9, 0x34, 0x11, 0x37, 0x3a, 0xaa, 0x82, 0x20
818 };
819
820 /*
821 * Vector 14
822 * Key1 2718281828459045235360287471352662497757247093699959574966967627
823 * Key2 3141592653589793238462643383279502884197169399375105820974944592
824 * Data Unit Sequence Number ffffffffff
825 * PTX 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f
826 * PTX 202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f
827 * PTX 404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f
828 * PTX 606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f
829 * PTX 808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9f
830 * PTX a0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebf
831 * PTX c0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedf
832 * PTX e0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff
833 * PTX 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f
834 * PTX 202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f
835 * PTX 404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f
836 * PTX 606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f
837 * PTX 808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9f
838 * PTX a0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebf
839 * PTX c0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedf
840 * PTX e0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff
841 * CTX 64497e5a831e4a932c09be3e5393376daa599548b816031d224bbf50a818ed23
842 * CTX 50eae7e96087c8a0db51ad290bd00c1ac1620857635bf246c176ab463be30b80
843 * CTX 8da548081ac847b158e1264be25bb0910bbc92647108089415d45fab1b3d2604
844 * CTX e8a8eff1ae4020cfa39936b66827b23f371b92200be90251e6d73c5f86de5fd4
845 * CTX a950781933d79a28272b782a2ec313efdfcc0628f43d744c2dc2ff3dcb66999b
846 * CTX 50c7ca895b0c64791eeaa5f29499fb1c026f84ce5b5c72ba1083cddb5ce45434
847 * CTX 631665c333b60b11593fb253c5179a2c8db813782a004856a1653011e93fb6d8
848 * CTX 76c18366dd8683f53412c0c180f9c848592d593f8609ca736317d356e13e2bff
849 * CTX 3a9f59cd9aeb19cd482593d8c46128bb32423b37a9adfb482b99453fbe25a41b
850 * CTX f6feb4aa0bef5ed24bf73c762978025482c13115e4015aac992e5613a3b5c2f6
851 * CTX 85b84795cb6e9b2656d8c88157e52c42f978d8634c43d06fea928f2822e465aa
852 * CTX 6576e9bf419384506cc3ce3c54ac1a6f67dc66f3b30191e698380bc999b05abc
853 * CTX e19dc0c6dcc2dd001ec535ba18deb2df1a101023108318c75dc98611a09dc48a
854 * CTX 0acdec676fabdf222f07e026f059b672b56e5cbc8e1d21bbd867dd9272120546
855 * CTX 81d70ea737134cdfce93b6f82ae22423274e58a0821cc5502e2d0ab4585e94de
856 * CTX 6975be5e0b4efce51cd3e70c25a1fbbbd609d273ad5b0d59631c531f6a0a57b9
857 * Plaintext length (bytes): 512
858 */
859
860 static uint8_t v14_key1[32] = {
861 0x27, 0x18, 0x28, 0x18, 0x28, 0x45, 0x90, 0x45,
862 0x23, 0x53, 0x60, 0x28, 0x74, 0x71, 0x35, 0x26,
863 0x62, 0x49, 0x77, 0x57, 0x24, 0x70, 0x93, 0x69,
864 0x99, 0x59, 0x57, 0x49, 0x66, 0x96, 0x76, 0x27
865 };
866
867 static uint8_t v14_key2[32] = {
868 0x31, 0x41, 0x59, 0x26, 0x53, 0x58, 0x97, 0x93,
869 0x23, 0x84, 0x62, 0x64, 0x33, 0x83, 0x27, 0x95,
870 0x02, 0x88, 0x41, 0x97, 0x16, 0x93, 0x99, 0x37,
871 0x51, 0x05, 0x82, 0x09, 0x74, 0x94, 0x45, 0x92
872 };
873
874 static uint8_t v14_TW[16] = {
875 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00,
876 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
877 };
878
879 static uint8_t v14_PTX[512] = {
880 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
881 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
882 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
883 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
884 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
885 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
886 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
887 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
888 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47,
889 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
890 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57,
891 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
892 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67,
893 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
894 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77,
895 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f,
896 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87,
897 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f,
898 0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97,
899 0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f,
900 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7,
901 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf,
902 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7,
903 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
904 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,
905 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,
906 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7,
907 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf,
908 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7,
909 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef,
910 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7,
911 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff,
912 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
913 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
914 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
915 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
916 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
917 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
918 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
919 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
920 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47,
921 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
922 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57,
923 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
924 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67,
925 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
926 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77,
927 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f,
928 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87,
929 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f,
930 0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97,
931 0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f,
932 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7,
933 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf,
934 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7,
935 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
936 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,
937 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,
938 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7,
939 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf,
940 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7,
941 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef,
942 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7,
943 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff
944 };
945
946 static uint8_t v14_CTX[512] = {
947 0x64, 0x49, 0x7e, 0x5a, 0x83, 0x1e, 0x4a, 0x93,
948 0x2c, 0x09, 0xbe, 0x3e, 0x53, 0x93, 0x37, 0x6d,
949 0xaa, 0x59, 0x95, 0x48, 0xb8, 0x16, 0x03, 0x1d,
950 0x22, 0x4b, 0xbf, 0x50, 0xa8, 0x18, 0xed, 0x23,
951 0x50, 0xea, 0xe7, 0xe9, 0x60, 0x87, 0xc8, 0xa0,
952 0xdb, 0x51, 0xad, 0x29, 0x0b, 0xd0, 0x0c, 0x1a,
953 0xc1, 0x62, 0x08, 0x57, 0x63, 0x5b, 0xf2, 0x46,
954 0xc1, 0x76, 0xab, 0x46, 0x3b, 0xe3, 0x0b, 0x80,
955 0x8d, 0xa5, 0x48, 0x08, 0x1a, 0xc8, 0x47, 0xb1,
956 0x58, 0xe1, 0x26, 0x4b, 0xe2, 0x5b, 0xb0, 0x91,
957 0x0b, 0xbc, 0x92, 0x64, 0x71, 0x08, 0x08, 0x94,
958 0x15, 0xd4, 0x5f, 0xab, 0x1b, 0x3d, 0x26, 0x04,
959 0xe8, 0xa8, 0xef, 0xf1, 0xae, 0x40, 0x20, 0xcf,
960 0xa3, 0x99, 0x36, 0xb6, 0x68, 0x27, 0xb2, 0x3f,
961 0x37, 0x1b, 0x92, 0x20, 0x0b, 0xe9, 0x02, 0x51,
962 0xe6, 0xd7, 0x3c, 0x5f, 0x86, 0xde, 0x5f, 0xd4,
963 0xa9, 0x50, 0x78, 0x19, 0x33, 0xd7, 0x9a, 0x28,
964 0x27, 0x2b, 0x78, 0x2a, 0x2e, 0xc3, 0x13, 0xef,
965 0xdf, 0xcc, 0x06, 0x28, 0xf4, 0x3d, 0x74, 0x4c,
966 0x2d, 0xc2, 0xff, 0x3d, 0xcb, 0x66, 0x99, 0x9b,
967 0x50, 0xc7, 0xca, 0x89, 0x5b, 0x0c, 0x64, 0x79,
968 0x1e, 0xea, 0xa5, 0xf2, 0x94, 0x99, 0xfb, 0x1c,
969 0x02, 0x6f, 0x84, 0xce, 0x5b, 0x5c, 0x72, 0xba,
970 0x10, 0x83, 0xcd, 0xdb, 0x5c, 0xe4, 0x54, 0x34,
971 0x63, 0x16, 0x65, 0xc3, 0x33, 0xb6, 0x0b, 0x11,
972 0x59, 0x3f, 0xb2, 0x53, 0xc5, 0x17, 0x9a, 0x2c,
973 0x8d, 0xb8, 0x13, 0x78, 0x2a, 0x00, 0x48, 0x56,
974 0xa1, 0x65, 0x30, 0x11, 0xe9, 0x3f, 0xb6, 0xd8,
975 0x76, 0xc1, 0x83, 0x66, 0xdd, 0x86, 0x83, 0xf5,
976 0x34, 0x12, 0xc0, 0xc1, 0x80, 0xf9, 0xc8, 0x48,
977 0x59, 0x2d, 0x59, 0x3f, 0x86, 0x09, 0xca, 0x73,
978 0x63, 0x17, 0xd3, 0x56, 0xe1, 0x3e, 0x2b, 0xff,
979 0x3a, 0x9f, 0x59, 0xcd, 0x9a, 0xeb, 0x19, 0xcd,
980 0x48, 0x25, 0x93, 0xd8, 0xc4, 0x61, 0x28, 0xbb,
981 0x32, 0x42, 0x3b, 0x37, 0xa9, 0xad, 0xfb, 0x48,
982 0x2b, 0x99, 0x45, 0x3f, 0xbe, 0x25, 0xa4, 0x1b,
983 0xf6, 0xfe, 0xb4, 0xaa, 0x0b, 0xef, 0x5e, 0xd2,
984 0x4b, 0xf7, 0x3c, 0x76, 0x29, 0x78, 0x02, 0x54,
985 0x82, 0xc1, 0x31, 0x15, 0xe4, 0x01, 0x5a, 0xac,
986 0x99, 0x2e, 0x56, 0x13, 0xa3, 0xb5, 0xc2, 0xf6,
987 0x85, 0xb8, 0x47, 0x95, 0xcb, 0x6e, 0x9b, 0x26,
988 0x56, 0xd8, 0xc8, 0x81, 0x57, 0xe5, 0x2c, 0x42,
989 0xf9, 0x78, 0xd8, 0x63, 0x4c, 0x43, 0xd0, 0x6f,
990 0xea, 0x92, 0x8f, 0x28, 0x22, 0xe4, 0x65, 0xaa,
991 0x65, 0x76, 0xe9, 0xbf, 0x41, 0x93, 0x84, 0x50,
992 0x6c, 0xc3, 0xce, 0x3c, 0x54, 0xac, 0x1a, 0x6f,
993 0x67, 0xdc, 0x66, 0xf3, 0xb3, 0x01, 0x91, 0xe6,
994 0x98, 0x38, 0x0b, 0xc9, 0x99, 0xb0, 0x5a, 0xbc,
995 0xe1, 0x9d, 0xc0, 0xc6, 0xdc, 0xc2, 0xdd, 0x00,
996 0x1e, 0xc5, 0x35, 0xba, 0x18, 0xde, 0xb2, 0xdf,
997 0x1a, 0x10, 0x10, 0x23, 0x10, 0x83, 0x18, 0xc7,
998 0x5d, 0xc9, 0x86, 0x11, 0xa0, 0x9d, 0xc4, 0x8a,
999 0x0a, 0xcd, 0xec, 0x67, 0x6f, 0xab, 0xdf, 0x22,
1000 0x2f, 0x07, 0xe0, 0x26, 0xf0, 0x59, 0xb6, 0x72,
1001 0xb5, 0x6e, 0x5c, 0xbc, 0x8e, 0x1d, 0x21, 0xbb,
1002 0xd8, 0x67, 0xdd, 0x92, 0x72, 0x12, 0x05, 0x46,
1003 0x81, 0xd7, 0x0e, 0xa7, 0x37, 0x13, 0x4c, 0xdf,
1004 0xce, 0x93, 0xb6, 0xf8, 0x2a, 0xe2, 0x24, 0x23,
1005 0x27, 0x4e, 0x58, 0xa0, 0x82, 0x1c, 0xc5, 0x50,
1006 0x2e, 0x2d, 0x0a, 0xb4, 0x58, 0x5e, 0x94, 0xde,
1007 0x69, 0x75, 0xbe, 0x5e, 0x0b, 0x4e, 0xfc, 0xe5,
1008 0x1c, 0xd3, 0xe7, 0x0c, 0x25, 0xa1, 0xfb, 0xbb,
1009 0xd6, 0x09, 0xd2, 0x73, 0xad, 0x5b, 0x0d, 0x59,
1010 0x63, 0x1c, 0x53, 0x1f, 0x6a, 0x0a, 0x57, 0xb9
1011 };
1012
1013 //
1014 // Define vector of structs, with pointers to the statically defined vectors
1015
1016 struct xts_vector vlist[NVEC] = {
1017
1018 // pointers to the statically defined vectors here
1019
1020 // Vector 10
1021 {sizeof(v10_CTX), v10_key1, v10_key2, v10_TW, v10_PTX, v10_CTX}
1022 ,
1023 // Vector 11
1024 {sizeof(v11_CTX), v11_key1, v11_key2, v11_TW, v11_PTX, v11_CTX}
1025 ,
1026 // Vector 12
1027 {sizeof(v12_CTX), v12_key1, v12_key2, v12_TW, v12_PTX, v12_CTX}
1028 ,
1029 // Vector 13
1030 {sizeof(v13_CTX), v13_key1, v13_key2, v13_TW, v13_PTX, v13_CTX}
1031 ,
1032 // Vector 14
1033 {sizeof(v14_CTX), v14_key1, v14_key2, v14_TW, v14_PTX, v14_CTX}
1034
1035 };