xref: /freebsd/contrib/netbsd-tests/dev/cgd/t_cgd_blowfish.c (revision 1a36faad54665288ed4eb839d2a4699ae2ead45e)
1*63d1fd59SEnji Cooper /*	$NetBSD: t_cgd_blowfish.c,v 1.2 2017/01/13 21:30:39 christos Exp $	*/
2cdebaff8SEnji Cooper /*-
3cdebaff8SEnji Cooper  * Copyright (c) 2016 The NetBSD Foundation, Inc.
4cdebaff8SEnji Cooper  * All rights reserved.
5cdebaff8SEnji Cooper  *
6cdebaff8SEnji Cooper  * This code is derived from software contributed to The NetBSD Foundation
7cdebaff8SEnji Cooper  * by Alexander Nasonov.
8cdebaff8SEnji Cooper  *
9cdebaff8SEnji Cooper  * Redistribution and use in source and binary forms, with or without
10cdebaff8SEnji Cooper  * modification, are permitted provided that the following conditions
11cdebaff8SEnji Cooper  * are met:
12cdebaff8SEnji Cooper  *
13cdebaff8SEnji Cooper  * 1. Redistributions of source code must retain the above copyright
14cdebaff8SEnji Cooper  *    notice, this list of conditions and the following disclaimer.
15cdebaff8SEnji Cooper  * 2. Redistributions in binary form must reproduce the above copyright
16cdebaff8SEnji Cooper  *    notice, this list of conditions and the following disclaimer in
17cdebaff8SEnji Cooper  *    the documentation and/or other materials provided with the
18cdebaff8SEnji Cooper  *    distribution.
19cdebaff8SEnji Cooper  *
20cdebaff8SEnji Cooper  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21cdebaff8SEnji Cooper  * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22cdebaff8SEnji Cooper  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
23cdebaff8SEnji Cooper  * FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE
24cdebaff8SEnji Cooper  * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
25cdebaff8SEnji Cooper  * INCIDENTAL, SPECIAL, EXEMPLARY OR CONSEQUENTIAL DAMAGES (INCLUDING,
26cdebaff8SEnji Cooper  * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
27cdebaff8SEnji Cooper  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
28cdebaff8SEnji Cooper  * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
29cdebaff8SEnji Cooper  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
30cdebaff8SEnji Cooper  * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31cdebaff8SEnji Cooper  * SUCH DAMAGE.
32cdebaff8SEnji Cooper  */
33cdebaff8SEnji Cooper 
34cdebaff8SEnji Cooper #include <sys/types.h>
35cdebaff8SEnji Cooper #include <sys/ioctl.h>
36cdebaff8SEnji Cooper #include <sys/sysctl.h>
37cdebaff8SEnji Cooper 
38cdebaff8SEnji Cooper #include <atf-c.h>
39cdebaff8SEnji Cooper #include <fcntl.h>
40cdebaff8SEnji Cooper #include <stdio.h>
41cdebaff8SEnji Cooper #include <stdlib.h>
42cdebaff8SEnji Cooper #include <string.h>
43cdebaff8SEnji Cooper #include <unistd.h>
44cdebaff8SEnji Cooper #include <util.h>
45cdebaff8SEnji Cooper 
46cdebaff8SEnji Cooper #include <dev/cgdvar.h>
47cdebaff8SEnji Cooper 
48cdebaff8SEnji Cooper #include <rump/rump.h>
49cdebaff8SEnji Cooper #include <rump/rump_syscalls.h>
50cdebaff8SEnji Cooper 
51*63d1fd59SEnji Cooper #include "h_macros.h"
52cdebaff8SEnji Cooper 
53cdebaff8SEnji Cooper #define SECSIZE 512
54cdebaff8SEnji Cooper 
55cdebaff8SEnji Cooper struct testvec {
56cdebaff8SEnji Cooper 	unsigned int blkno;
57cdebaff8SEnji Cooper 	const uint8_t *ptxt;	/* PlainText  */
58cdebaff8SEnji Cooper 	const uint8_t *ctxt;	/* CipherText */
59cdebaff8SEnji Cooper };
60cdebaff8SEnji Cooper 
61cdebaff8SEnji Cooper /*
62cdebaff8SEnji Cooper  * 128 bits Blowfish key, NUL terminated.
63cdebaff8SEnji Cooper  */
64cdebaff8SEnji Cooper static const char bf_cbc_128_key[17] = {
65cdebaff8SEnji Cooper 	0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, /* 01234567 */
66cdebaff8SEnji Cooper 	0x38, 0x39, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, /* 89ABCDEF */
67cdebaff8SEnji Cooper 	0
68cdebaff8SEnji Cooper };
69cdebaff8SEnji Cooper 
70cdebaff8SEnji Cooper /*
71cdebaff8SEnji Cooper  * 256 bits Blowfish key, NUL terminated.
72cdebaff8SEnji Cooper  */
73cdebaff8SEnji Cooper static const char bf_cbc_256_key[33] = {
74cdebaff8SEnji Cooper 	0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, /* 01234567 */
75cdebaff8SEnji Cooper 	0x38, 0x39, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, /* 89ABCDEF */
76cdebaff8SEnji Cooper 	0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, /* 01234567 */
77cdebaff8SEnji Cooper 	0x38, 0x39, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, /* 89abcdef */
78cdebaff8SEnji Cooper 	0
79cdebaff8SEnji Cooper };
80cdebaff8SEnji Cooper 
81cdebaff8SEnji Cooper /*
82cdebaff8SEnji Cooper  * 448 bits Blowfish key, NUL terminated.
83cdebaff8SEnji Cooper  */
84cdebaff8SEnji Cooper static const char bf_cbc_448_key[57] = {
85cdebaff8SEnji Cooper 	0x3a, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, /* :ABCDEFG */
86cdebaff8SEnji Cooper 	0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, /* HIJKLMNO */
87cdebaff8SEnji Cooper 	0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, /* PQRSTUVW */
88cdebaff8SEnji Cooper 	0x58, 0x59, 0x5a, 0x7e, 0x3a, 0x61, 0x62, 0x63, /* XYZ~:abc */
89cdebaff8SEnji Cooper 	0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, /* defghijk */
90cdebaff8SEnji Cooper 	0x6c, 0x6d, 0x6e, 0x6f, 0x70, 0x71, 0x72, 0x73, /* lmnopqrs */
91cdebaff8SEnji Cooper 	0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x23, /* tuvwxyz# */
92cdebaff8SEnji Cooper 	0
93cdebaff8SEnji Cooper };
94cdebaff8SEnji Cooper 
95cdebaff8SEnji Cooper static const uint8_t bf_cbc_ptxt[SECSIZE] =
96cdebaff8SEnji Cooper 	"                abcdefghijklmnop"
97cdebaff8SEnji Cooper 	"                abcdefghijklmnop"
98cdebaff8SEnji Cooper 	"                abcdefghijklmnop"
99cdebaff8SEnji Cooper 	"                abcdefghijklmnop"
100cdebaff8SEnji Cooper 	"                abcdefghijklmnop"
101cdebaff8SEnji Cooper 	"                abcdefghijklmnop"
102cdebaff8SEnji Cooper 	"                abcdefghijklmnop"
103cdebaff8SEnji Cooper 	"                abcdefghijklmnop"
104cdebaff8SEnji Cooper 	"                abcdefghijklmnop"
105cdebaff8SEnji Cooper 	"                abcdefghijklmnop"
106cdebaff8SEnji Cooper 	"                abcdefghijklmnop"
107cdebaff8SEnji Cooper 	"                abcdefghijklmnop"
108cdebaff8SEnji Cooper 	"                abcdefghijklmnop"
109cdebaff8SEnji Cooper 	"                abcdefghijklmnop"
110cdebaff8SEnji Cooper 	"                abcdefghijklmnop"
111cdebaff8SEnji Cooper 	"                abcdefghijklmnop";
112cdebaff8SEnji Cooper 
113cdebaff8SEnji Cooper /*
114cdebaff8SEnji Cooper  * IV method encblkno1, blkno 0.
115cdebaff8SEnji Cooper  */
116cdebaff8SEnji Cooper static const uint8_t bf_cbc_128_encblkno1_vec0_ctxt[SECSIZE] = {
117cdebaff8SEnji Cooper 	0x78, 0x53, 0x43, 0x2a, 0x08, 0xe7, 0x84, 0x3f,
118cdebaff8SEnji Cooper 	0xb7, 0x61, 0x9c, 0x17, 0x81, 0xbe, 0x38, 0xb9,
119cdebaff8SEnji Cooper 	0x65, 0x51, 0x68, 0xa2, 0x29, 0xd7, 0x45, 0xc9,
120cdebaff8SEnji Cooper 	0xee, 0x0e, 0x9d, 0xe1, 0x69, 0xc6, 0x81, 0x81,
121cdebaff8SEnji Cooper 	0xf3, 0x93, 0xa6, 0x62, 0xc9, 0x05, 0x2c, 0x1b,
122cdebaff8SEnji Cooper 	0x0e, 0x05, 0xca, 0xbe, 0x12, 0x25, 0x37, 0xd8,
123cdebaff8SEnji Cooper 	0x98, 0x66, 0xa2, 0xd3, 0xd0, 0x8a, 0x89, 0x57,
124cdebaff8SEnji Cooper 	0x44, 0x91, 0x1e, 0xe9, 0x07, 0x03, 0x5c, 0xa6,
125cdebaff8SEnji Cooper 	0xb8, 0x30, 0xf1, 0xc7, 0x8c, 0x66, 0x05, 0xb0,
126cdebaff8SEnji Cooper 	0x2d, 0xc3, 0xc3, 0xd7, 0x60, 0xef, 0x62, 0xd3,
127cdebaff8SEnji Cooper 	0x34, 0x9c, 0xa9, 0xd2, 0x0c, 0x1a, 0x9c, 0xfe,
128cdebaff8SEnji Cooper 	0x74, 0x92, 0xcb, 0x90, 0x80, 0xfa, 0x71, 0x5c,
129cdebaff8SEnji Cooper 	0xaa, 0x29, 0x39, 0xdd, 0x3b, 0x62, 0xa1, 0xfc,
130cdebaff8SEnji Cooper 	0xa5, 0x35, 0xcd, 0xa3, 0x29, 0x41, 0x1a, 0x03,
131cdebaff8SEnji Cooper 	0xf7, 0xe1, 0x36, 0xb2, 0xdc, 0x1a, 0xb3, 0x9f,
132cdebaff8SEnji Cooper 	0x46, 0xa3, 0xf7, 0xc3, 0xd1, 0x29, 0x83, 0xcf,
133cdebaff8SEnji Cooper 	0x0d, 0x88, 0x0b, 0xd1, 0xb7, 0xc7, 0x87, 0x21,
134cdebaff8SEnji Cooper 	0xb7, 0x1f, 0xe7, 0xa2, 0x8e, 0x5f, 0xac, 0x6b,
135cdebaff8SEnji Cooper 	0x49, 0x9c, 0x93, 0x6b, 0x6b, 0x05, 0x8e, 0x4c,
136cdebaff8SEnji Cooper 	0xbd, 0x31, 0x13, 0x5f, 0x4a, 0xd0, 0x35, 0x0c,
137cdebaff8SEnji Cooper 	0x67, 0x8f, 0xd0, 0x7a, 0xc9, 0xe3, 0x52, 0x50,
138cdebaff8SEnji Cooper 	0x4f, 0x85, 0x09, 0xf1, 0x27, 0xb9, 0xb1, 0x1e,
139cdebaff8SEnji Cooper 	0xe4, 0x6a, 0x40, 0xf6, 0x5a, 0x4f, 0x5f, 0xbe,
140cdebaff8SEnji Cooper 	0xab, 0xe8, 0xb9, 0xfe, 0xc7, 0x59, 0x6b, 0x0c,
141cdebaff8SEnji Cooper 	0xcd, 0x46, 0x4e, 0x90, 0x99, 0xde, 0xf7, 0x43,
142cdebaff8SEnji Cooper 	0xee, 0x6e, 0xb6, 0xae, 0xc2, 0x5e, 0x08, 0xbb,
143cdebaff8SEnji Cooper 	0xe9, 0x30, 0x2d, 0xb2, 0x91, 0xcc, 0xb9, 0xc7,
144cdebaff8SEnji Cooper 	0x58, 0xea, 0x35, 0xae, 0xa2, 0xd8, 0x00, 0xf7,
145cdebaff8SEnji Cooper 	0xc0, 0x01, 0xc4, 0x34, 0x2b, 0x34, 0x43, 0xae,
146cdebaff8SEnji Cooper 	0xeb, 0x27, 0xbc, 0x5c, 0x91, 0x5f, 0x5f, 0xc1,
147cdebaff8SEnji Cooper 	0x61, 0x42, 0x45, 0x68, 0x31, 0xbc, 0xce, 0xb4,
148cdebaff8SEnji Cooper 	0x5c, 0xd3, 0x07, 0xdf, 0x4e, 0x65, 0x65, 0x9d,
149cdebaff8SEnji Cooper 	0x2e, 0x26, 0x28, 0xfa, 0xcd, 0x53, 0x77, 0x6a,
150cdebaff8SEnji Cooper 	0x77, 0xad, 0x96, 0x0b, 0x1f, 0xea, 0x03, 0xc1,
151cdebaff8SEnji Cooper 	0xdd, 0xca, 0xe8, 0xfe, 0xe8, 0x36, 0x01, 0x61,
152cdebaff8SEnji Cooper 	0x72, 0xbb, 0xed, 0xfd, 0x8d, 0xa3, 0xc2, 0x15,
153cdebaff8SEnji Cooper 	0x25, 0x4f, 0xa6, 0x1a, 0x73, 0xbd, 0xcd, 0x45,
154cdebaff8SEnji Cooper 	0xdb, 0x08, 0x74, 0x7b, 0xa8, 0x23, 0xf5, 0x74,
155cdebaff8SEnji Cooper 	0x3a, 0x18, 0x6d, 0x90, 0xe0, 0xee, 0xae, 0xfe,
156cdebaff8SEnji Cooper 	0xc8, 0xac, 0x00, 0x57, 0xa0, 0xe1, 0xfe, 0x10,
157cdebaff8SEnji Cooper 	0xd4, 0xf3, 0xa8, 0x00, 0x21, 0x3e, 0x2d, 0xf9,
158cdebaff8SEnji Cooper 	0x63, 0xb8, 0xe9, 0xa4, 0x2e, 0xf4, 0x6b, 0xd7,
159cdebaff8SEnji Cooper 	0x5c, 0xfd, 0x32, 0x6c, 0x98, 0x05, 0x38, 0x0d,
160cdebaff8SEnji Cooper 	0x29, 0xb5, 0x5a, 0x5b, 0xbb, 0xad, 0xfd, 0x46,
161cdebaff8SEnji Cooper 	0x9b, 0x6a, 0x97, 0x4c, 0x24, 0xcc, 0x7d, 0x13,
162cdebaff8SEnji Cooper 	0x25, 0xe8, 0x2c, 0xb9, 0x13, 0x54, 0xb2, 0x8a,
163cdebaff8SEnji Cooper 	0x28, 0xa0, 0x8a, 0x3a, 0x4d, 0x7e, 0xf4, 0x29,
164cdebaff8SEnji Cooper 	0xff, 0xfb, 0x4f, 0xd6, 0x3d, 0xf7, 0xca, 0x89,
165cdebaff8SEnji Cooper 	0x2a, 0x58, 0x9e, 0x42, 0x00, 0x84, 0x61, 0x58,
166cdebaff8SEnji Cooper 	0x7c, 0x94, 0xf6, 0x50, 0x48, 0x2f, 0x34, 0x88,
167cdebaff8SEnji Cooper 	0xec, 0x97, 0xef, 0x8b, 0x2f, 0x84, 0xca, 0x23,
168cdebaff8SEnji Cooper 	0xe1, 0xb7, 0x63, 0x99, 0xdd, 0x4a, 0x76, 0xdd,
169cdebaff8SEnji Cooper 	0x20, 0xc1, 0xc2, 0x56, 0x45, 0xbe, 0x75, 0x9a,
170cdebaff8SEnji Cooper 	0x40, 0x72, 0xc8, 0xfb, 0x7e, 0x40, 0x6f, 0x38,
171cdebaff8SEnji Cooper 	0xfd, 0x76, 0xa4, 0x78, 0xf5, 0xde, 0x5f, 0xb7,
172cdebaff8SEnji Cooper 	0x4a, 0xa9, 0xaf, 0xad, 0xa1, 0x8b, 0x25, 0x8f,
173cdebaff8SEnji Cooper 	0xea, 0xb3, 0xeb, 0x54, 0x39, 0x5a, 0x91, 0xfe,
174cdebaff8SEnji Cooper 	0x86, 0x18, 0xea, 0x8c, 0xd6, 0x66, 0xd5, 0x85,
175cdebaff8SEnji Cooper 	0x02, 0x2b, 0x00, 0x5d, 0x7e, 0x13, 0xa0, 0x1f,
176cdebaff8SEnji Cooper 	0x73, 0x46, 0x6d, 0x5e, 0xcd, 0xe0, 0x82, 0x02,
177cdebaff8SEnji Cooper 	0x28, 0x88, 0xbf, 0x17, 0xfd, 0x9b, 0x83, 0x2c,
178cdebaff8SEnji Cooper 	0xa2, 0xf7, 0xde, 0x51, 0x98, 0x3f, 0xe2, 0x80,
179cdebaff8SEnji Cooper 	0x66, 0x14, 0x17, 0xce, 0x8e, 0x30, 0x2d, 0xe2,
180cdebaff8SEnji Cooper 	0x24, 0x68, 0x4b, 0xe5, 0xd1, 0x09, 0xfb, 0x6e,
181cdebaff8SEnji Cooper };
182cdebaff8SEnji Cooper 
183cdebaff8SEnji Cooper /*
184cdebaff8SEnji Cooper  * IV method encblkno1, blkno 1.
185cdebaff8SEnji Cooper  */
186cdebaff8SEnji Cooper static const uint8_t bf_cbc_128_encblkno1_vec1_ctxt[SECSIZE] = {
187cdebaff8SEnji Cooper 	0x87, 0xae, 0x01, 0x52, 0xe8, 0xe9, 0xd9, 0xba,
188cdebaff8SEnji Cooper 	0xa9, 0x18, 0x31, 0x2c, 0x1b, 0xab, 0x57, 0xad,
189cdebaff8SEnji Cooper 	0x45, 0x0e, 0x25, 0x5e, 0x0e, 0x04, 0xfa, 0xdd,
190cdebaff8SEnji Cooper 	0xf1, 0x59, 0xe6, 0xea, 0x78, 0x4b, 0x83, 0x07,
191cdebaff8SEnji Cooper 	0x8b, 0x46, 0x91, 0x09, 0x58, 0x5a, 0x11, 0x2e,
192cdebaff8SEnji Cooper 	0x54, 0x43, 0xa4, 0xc1, 0x04, 0x35, 0xd3, 0x3e,
193cdebaff8SEnji Cooper 	0xc9, 0xc8, 0xf5, 0xff, 0x69, 0x1e, 0x57, 0x85,
194cdebaff8SEnji Cooper 	0x6d, 0x91, 0x03, 0xeb, 0x8c, 0xa7, 0xe8, 0xcc,
195cdebaff8SEnji Cooper 	0x3f, 0xac, 0xf9, 0x14, 0x1e, 0x88, 0x50, 0xa5,
196cdebaff8SEnji Cooper 	0x38, 0x66, 0xa9, 0xf4, 0xf5, 0xc6, 0x30, 0x95,
197cdebaff8SEnji Cooper 	0xd6, 0x84, 0x0b, 0x81, 0xf9, 0x51, 0x05, 0x80,
198cdebaff8SEnji Cooper 	0x9a, 0x89, 0xbf, 0xd4, 0x7d, 0x6a, 0x26, 0x59,
199cdebaff8SEnji Cooper 	0x29, 0x44, 0xe7, 0x1d, 0x0e, 0xad, 0x8c, 0xa0,
200cdebaff8SEnji Cooper 	0x93, 0xe9, 0x4b, 0x4b, 0x51, 0x46, 0xa5, 0x07,
201cdebaff8SEnji Cooper 	0xe8, 0xcb, 0x59, 0xf4, 0x63, 0xb5, 0x36, 0xdb,
202cdebaff8SEnji Cooper 	0xbc, 0x54, 0x2d, 0xec, 0xf0, 0x90, 0x3a, 0xa5,
203cdebaff8SEnji Cooper 	0xed, 0xc8, 0x28, 0x0e, 0xd3, 0x79, 0xb8, 0x57,
204cdebaff8SEnji Cooper 	0xc6, 0x7f, 0x02, 0x22, 0x5e, 0x80, 0xe8, 0x7f,
205cdebaff8SEnji Cooper 	0xdf, 0xa0, 0x0f, 0xbc, 0x98, 0x79, 0x6f, 0xd2,
206cdebaff8SEnji Cooper 	0xb0, 0xb2, 0x4f, 0x9b, 0x1a, 0x21, 0x8f, 0x63,
207cdebaff8SEnji Cooper 	0xce, 0x54, 0x41, 0x64, 0xbf, 0xb9, 0xa7, 0x93,
208cdebaff8SEnji Cooper 	0xd6, 0x5b, 0x89, 0x86, 0xda, 0x90, 0x23, 0x2e,
209cdebaff8SEnji Cooper 	0x25, 0x35, 0x1a, 0x9a, 0xf5, 0x1e, 0x8f, 0xb4,
210cdebaff8SEnji Cooper 	0xe6, 0x66, 0x8e, 0x0e, 0x2d, 0x91, 0x06, 0x4b,
211cdebaff8SEnji Cooper 	0x3d, 0x4a, 0x97, 0xab, 0x9b, 0x92, 0x09, 0xaa,
212cdebaff8SEnji Cooper 	0x07, 0xbf, 0xc1, 0x7d, 0xe2, 0xbc, 0xd2, 0xf1,
213cdebaff8SEnji Cooper 	0x38, 0x8d, 0x02, 0x45, 0xc8, 0x13, 0x12, 0xda,
214cdebaff8SEnji Cooper 	0xaa, 0x53, 0xa2, 0x2c, 0x96, 0x69, 0x64, 0xce,
215cdebaff8SEnji Cooper 	0x86, 0xe4, 0x84, 0x56, 0xd0, 0xe5, 0x81, 0x99,
216cdebaff8SEnji Cooper 	0x27, 0xad, 0x86, 0x47, 0x5f, 0xaf, 0xa2, 0xa2,
217cdebaff8SEnji Cooper 	0x90, 0x7f, 0xe7, 0x86, 0xec, 0x7f, 0xf4, 0xa3,
218cdebaff8SEnji Cooper 	0xcd, 0x4f, 0x60, 0xcc, 0x1e, 0x35, 0x44, 0xe8,
219cdebaff8SEnji Cooper 	0xe9, 0x06, 0xaf, 0x5e, 0x53, 0x3d, 0x30, 0x91,
220cdebaff8SEnji Cooper 	0xfe, 0x44, 0x59, 0x66, 0x82, 0xc2, 0xea, 0x9f,
221cdebaff8SEnji Cooper 	0xc8, 0x3b, 0xe2, 0xe5, 0x58, 0xf7, 0x34, 0xd5,
222cdebaff8SEnji Cooper 	0x9e, 0xfc, 0x20, 0x84, 0x34, 0xaa, 0x4f, 0xe1,
223cdebaff8SEnji Cooper 	0xd4, 0x95, 0x76, 0x11, 0x59, 0x90, 0x90, 0xfd,
224cdebaff8SEnji Cooper 	0x4d, 0xf9, 0xb8, 0x41, 0xe1, 0xdb, 0x36, 0x05,
225cdebaff8SEnji Cooper 	0xe3, 0x0f, 0xa4, 0x4f, 0x0c, 0x61, 0x70, 0xa5,
226cdebaff8SEnji Cooper 	0x1b, 0xbf, 0xab, 0x65, 0x67, 0x75, 0x5c, 0x7d,
227cdebaff8SEnji Cooper 	0x46, 0x3b, 0x29, 0xd0, 0x3d, 0x06, 0x40, 0x25,
228cdebaff8SEnji Cooper 	0x47, 0x3e, 0x8d, 0x62, 0xf8, 0xd8, 0x08, 0xc1,
229cdebaff8SEnji Cooper 	0x03, 0x04, 0x4b, 0x5a, 0x40, 0x65, 0x84, 0x52,
230cdebaff8SEnji Cooper 	0x34, 0xa2, 0x4a, 0xcc, 0x3a, 0x9c, 0x1e, 0xbf,
231cdebaff8SEnji Cooper 	0x2d, 0xed, 0x08, 0x8b, 0xc3, 0x8f, 0x48, 0xba,
232cdebaff8SEnji Cooper 	0x06, 0x03, 0xea, 0x5b, 0xba, 0x6a, 0xac, 0x23,
233cdebaff8SEnji Cooper 	0x5a, 0x5e, 0x31, 0x08, 0x29, 0x69, 0x64, 0x44,
234cdebaff8SEnji Cooper 	0x1c, 0x31, 0xae, 0xb1, 0x86, 0x7b, 0x26, 0x89,
235cdebaff8SEnji Cooper 	0xa6, 0xbe, 0xef, 0x69, 0x81, 0xf7, 0x77, 0xd5,
236cdebaff8SEnji Cooper 	0x8e, 0x78, 0xa5, 0x11, 0x51, 0xca, 0xec, 0xd0,
237cdebaff8SEnji Cooper 	0x86, 0xa5, 0x33, 0xf3, 0x65, 0x5d, 0x04, 0xc5,
238cdebaff8SEnji Cooper 	0xd2, 0x17, 0x2a, 0xfe, 0x4a, 0x58, 0x0f, 0x98,
239cdebaff8SEnji Cooper 	0x61, 0xad, 0xc3, 0xb8, 0x5b, 0x45, 0xcc, 0x28,
240cdebaff8SEnji Cooper 	0x3d, 0x4d, 0x00, 0xf5, 0x4a, 0xe2, 0xbc, 0x6c,
241cdebaff8SEnji Cooper 	0x1b, 0x80, 0x7a, 0x2b, 0x40, 0xb8, 0x34, 0x0e,
242cdebaff8SEnji Cooper 	0x44, 0x53, 0x16, 0xda, 0x7c, 0x46, 0x8b, 0x42,
243cdebaff8SEnji Cooper 	0x5e, 0xa8, 0xe1, 0xb8, 0xf8, 0xcf, 0xff, 0x48,
244cdebaff8SEnji Cooper 	0xcf, 0x2c, 0x4c, 0x98, 0xdb, 0xe5, 0x55, 0xfe,
245cdebaff8SEnji Cooper 	0x45, 0xfa, 0xf8, 0xde, 0x72, 0xf9, 0x84, 0x3c,
246cdebaff8SEnji Cooper 	0xc0, 0x0c, 0x1f, 0x86, 0x97, 0x86, 0xb8, 0xfe,
247cdebaff8SEnji Cooper 	0x7d, 0xff, 0xa3, 0xaf, 0x68, 0x00, 0x66, 0x90,
248cdebaff8SEnji Cooper 	0xac, 0xb5, 0xd8, 0xde, 0x35, 0x01, 0xf7, 0xab,
249cdebaff8SEnji Cooper 	0xab, 0xe3, 0xe9, 0x85, 0x4c, 0x6f, 0xe6, 0xbc,
250cdebaff8SEnji Cooper 	0xce, 0x67, 0x4a, 0xbd, 0xad, 0x7b, 0xec, 0xa1,
251cdebaff8SEnji Cooper };
252cdebaff8SEnji Cooper 
253cdebaff8SEnji Cooper /*
254cdebaff8SEnji Cooper  * IV method encblkno1, blkno 2.
255cdebaff8SEnji Cooper  */
256cdebaff8SEnji Cooper static const uint8_t bf_cbc_128_encblkno1_vec2_ctxt[SECSIZE] = {
257cdebaff8SEnji Cooper 	0x17, 0xdd, 0x0f, 0x4b, 0x28, 0x33, 0x03, 0x89,
258cdebaff8SEnji Cooper 	0x21, 0x7b, 0x67, 0x15, 0x15, 0x65, 0x08, 0x4f,
259cdebaff8SEnji Cooper 	0x65, 0x18, 0xa6, 0x4b, 0x62, 0xdb, 0x1e, 0xc2,
260cdebaff8SEnji Cooper 	0xaa, 0x82, 0xb6, 0x1d, 0xf7, 0x12, 0x9e, 0x73,
261cdebaff8SEnji Cooper 	0xfe, 0xac, 0x2f, 0x1e, 0x2b, 0xea, 0x3a, 0x4f,
262cdebaff8SEnji Cooper 	0xc3, 0x0a, 0x59, 0x80, 0x0d, 0x3d, 0xbc, 0x62,
263cdebaff8SEnji Cooper 	0x8d, 0x70, 0xef, 0x1b, 0xfb, 0xdc, 0x4e, 0xc4,
264cdebaff8SEnji Cooper 	0x97, 0xf4, 0x77, 0xb7, 0x25, 0x94, 0x13, 0x48,
265cdebaff8SEnji Cooper 	0xf2, 0x3d, 0x4c, 0xa7, 0xb8, 0x8c, 0xf5, 0x26,
266cdebaff8SEnji Cooper 	0xa4, 0x35, 0xeb, 0xa0, 0xe7, 0x68, 0xb0, 0x69,
267cdebaff8SEnji Cooper 	0xf4, 0xf6, 0x13, 0x3a, 0x57, 0xa3, 0xd2, 0x26,
268cdebaff8SEnji Cooper 	0xe6, 0x70, 0xd8, 0xd4, 0x05, 0xb5, 0x01, 0xda,
269cdebaff8SEnji Cooper 	0xc7, 0x4a, 0x79, 0x1a, 0x6d, 0xb6, 0xf6, 0xb5,
270cdebaff8SEnji Cooper 	0x7d, 0x9a, 0x5c, 0xf1, 0x6a, 0xf8, 0xd1, 0x0a,
271cdebaff8SEnji Cooper 	0xbc, 0xe7, 0xea, 0xb4, 0x99, 0x72, 0x19, 0x97,
272cdebaff8SEnji Cooper 	0x41, 0x4f, 0x14, 0x5f, 0xa3, 0xb3, 0x9b, 0x36,
273cdebaff8SEnji Cooper 	0x00, 0x08, 0x88, 0x8c, 0xce, 0x7f, 0x3a, 0x9b,
274cdebaff8SEnji Cooper 	0xb0, 0x24, 0x17, 0x95, 0xc4, 0x59, 0x30, 0x5d,
275cdebaff8SEnji Cooper 	0xc6, 0x92, 0x19, 0x12, 0x99, 0xb0, 0x08, 0xa6,
276cdebaff8SEnji Cooper 	0x04, 0xdb, 0xc6, 0xd5, 0x61, 0xe4, 0xe1, 0x68,
277cdebaff8SEnji Cooper 	0xa8, 0xd7, 0x07, 0xfe, 0x2f, 0x47, 0xea, 0x14,
278cdebaff8SEnji Cooper 	0xe5, 0xf7, 0x61, 0x9b, 0xbb, 0x98, 0xcb, 0x3b,
279cdebaff8SEnji Cooper 	0x8c, 0x41, 0xd1, 0x55, 0x59, 0xb2, 0x41, 0x61,
280cdebaff8SEnji Cooper 	0x8e, 0x60, 0x17, 0xcd, 0xe8, 0xf7, 0x1d, 0xbd,
281cdebaff8SEnji Cooper 	0x28, 0x5d, 0x1e, 0x15, 0x28, 0x80, 0x8c, 0x29,
282cdebaff8SEnji Cooper 	0x34, 0x96, 0x31, 0xda, 0xe1, 0x19, 0x88, 0xd5,
283cdebaff8SEnji Cooper 	0xe0, 0xc8, 0xb4, 0xaa, 0x04, 0x21, 0xf5, 0xef,
284cdebaff8SEnji Cooper 	0xfa, 0x0e, 0xc9, 0xa5, 0x88, 0x77, 0x49, 0xf4,
285cdebaff8SEnji Cooper 	0x02, 0x22, 0x0b, 0x8b, 0x5e, 0xe1, 0xab, 0xd4,
286cdebaff8SEnji Cooper 	0xb1, 0xb6, 0x48, 0x54, 0x96, 0x08, 0xaf, 0xa1,
287cdebaff8SEnji Cooper 	0x0b, 0xc0, 0xfe, 0x2a, 0x12, 0x36, 0x56, 0x85,
288cdebaff8SEnji Cooper 	0x6a, 0xf7, 0x3d, 0x82, 0xe6, 0xda, 0x5d, 0xfe,
289cdebaff8SEnji Cooper 	0x4f, 0x4f, 0xc9, 0x43, 0xdc, 0x0f, 0x53, 0x05,
290cdebaff8SEnji Cooper 	0x09, 0xd4, 0x9c, 0x2e, 0x6e, 0xf3, 0x52, 0x6a,
291cdebaff8SEnji Cooper 	0x10, 0xc6, 0x48, 0xb1, 0x54, 0x70, 0xab, 0x7c,
292cdebaff8SEnji Cooper 	0x31, 0xf6, 0x47, 0xef, 0x64, 0x5f, 0xff, 0x45,
293cdebaff8SEnji Cooper 	0x8c, 0x3f, 0x87, 0x3a, 0x2d, 0xa6, 0xaf, 0xb2,
294cdebaff8SEnji Cooper 	0x44, 0xdf, 0x80, 0x2e, 0x89, 0x4c, 0x94, 0x67,
295cdebaff8SEnji Cooper 	0xfc, 0x20, 0x98, 0xb4, 0xcf, 0x58, 0x1e, 0x33,
296cdebaff8SEnji Cooper 	0x55, 0x6a, 0x7c, 0x67, 0x5c, 0x28, 0x2f, 0x19,
297cdebaff8SEnji Cooper 	0x02, 0x14, 0x06, 0x93, 0x8c, 0x84, 0xae, 0x62,
298cdebaff8SEnji Cooper 	0x14, 0xf9, 0x87, 0xae, 0x85, 0xa3, 0x60, 0x26,
299cdebaff8SEnji Cooper 	0xfc, 0x8d, 0x04, 0x92, 0x27, 0xfe, 0x35, 0x7b,
300cdebaff8SEnji Cooper 	0x45, 0x9d, 0x4a, 0x86, 0x75, 0xa6, 0xb3, 0xa1,
301cdebaff8SEnji Cooper 	0x59, 0xe4, 0x4b, 0x1c, 0xd2, 0x71, 0x36, 0xfe,
302cdebaff8SEnji Cooper 	0x73, 0xed, 0x54, 0x0d, 0x9d, 0xde, 0x63, 0xb2,
303cdebaff8SEnji Cooper 	0xc0, 0x7c, 0xf2, 0xb3, 0x36, 0x62, 0x06, 0x1f,
304cdebaff8SEnji Cooper 	0xcd, 0x41, 0x92, 0x73, 0xbc, 0x11, 0x68, 0xc9,
305cdebaff8SEnji Cooper 	0x69, 0x20, 0xf9, 0xbb, 0x9a, 0xe9, 0x6c, 0x05,
306cdebaff8SEnji Cooper 	0xcf, 0x01, 0x57, 0xc4, 0x1d, 0x95, 0x5e, 0xe3,
307cdebaff8SEnji Cooper 	0xb7, 0x15, 0xde, 0xa7, 0xb5, 0x1a, 0x4e, 0x78,
308cdebaff8SEnji Cooper 	0x44, 0x5b, 0x9a, 0xee, 0x29, 0xe2, 0x22, 0x8b,
309cdebaff8SEnji Cooper 	0xe9, 0xe3, 0xe6, 0x70, 0x3e, 0xcb, 0x9f, 0x7f,
310cdebaff8SEnji Cooper 	0xc3, 0xd0, 0x2c, 0xdc, 0x55, 0xb4, 0x0d, 0x67,
311cdebaff8SEnji Cooper 	0xf5, 0xd8, 0xff, 0xbb, 0xb1, 0x02, 0xbf, 0xf6,
312cdebaff8SEnji Cooper 	0x33, 0x4e, 0x7a, 0x3a, 0x50, 0xb1, 0x01, 0x77,
313cdebaff8SEnji Cooper 	0x51, 0xef, 0xb5, 0x75, 0xb3, 0x66, 0xe8, 0xe6,
314cdebaff8SEnji Cooper 	0xd6, 0x53, 0x7d, 0x33, 0x51, 0x62, 0x5d, 0xf2,
315cdebaff8SEnji Cooper 	0x77, 0x02, 0x34, 0x42, 0xda, 0xee, 0xd9, 0xee,
316cdebaff8SEnji Cooper 	0x0b, 0x4d, 0x71, 0x5c, 0xc0, 0xec, 0xdd, 0xc0,
317cdebaff8SEnji Cooper 	0x34, 0x6f, 0xf4, 0x65, 0x32, 0xde, 0xc5, 0xb2,
318cdebaff8SEnji Cooper 	0x97, 0x60, 0x89, 0x4e, 0x3b, 0x0c, 0xf2, 0xa7,
319cdebaff8SEnji Cooper 	0x74, 0x61, 0xd7, 0xe4, 0xa6, 0x80, 0x78, 0x76,
320cdebaff8SEnji Cooper 	0xe5, 0x7d, 0xab, 0x96, 0x04, 0x00, 0x76, 0x22,
321cdebaff8SEnji Cooper };
322cdebaff8SEnji Cooper 
323cdebaff8SEnji Cooper /*
324cdebaff8SEnji Cooper  * IV method encblkno1, blkno 3.
325cdebaff8SEnji Cooper  */
326cdebaff8SEnji Cooper static const uint8_t bf_cbc_128_encblkno1_vec3_ctxt[SECSIZE] = {
327cdebaff8SEnji Cooper 	0xdd, 0x8e, 0xce, 0x5b, 0xb8, 0x2a, 0xc8, 0x0e,
328cdebaff8SEnji Cooper 	0xd2, 0xbe, 0xcf, 0xa7, 0x2a, 0x5b, 0x0c, 0x1a,
329cdebaff8SEnji Cooper 	0xb2, 0x68, 0x5b, 0xe7, 0x53, 0xaf, 0xce, 0x56,
330cdebaff8SEnji Cooper 	0xfd, 0xbd, 0x73, 0x3c, 0x44, 0x02, 0x96, 0x57,
331cdebaff8SEnji Cooper 	0xaa, 0x47, 0x8d, 0xf1, 0x28, 0x59, 0xb6, 0xce,
332cdebaff8SEnji Cooper 	0xba, 0x1e, 0xc9, 0x78, 0x76, 0xdd, 0x43, 0x3a,
333cdebaff8SEnji Cooper 	0xbc, 0x43, 0x4c, 0x17, 0xd2, 0xba, 0xb1, 0xda,
334cdebaff8SEnji Cooper 	0xa8, 0xbf, 0x32, 0x25, 0xaa, 0xc0, 0xf7, 0xb6,
335cdebaff8SEnji Cooper 	0x72, 0x65, 0xe2, 0x67, 0xdb, 0xf0, 0xa8, 0x60,
336cdebaff8SEnji Cooper 	0xda, 0x9b, 0x70, 0xad, 0x8f, 0x1d, 0x34, 0x24,
337cdebaff8SEnji Cooper 	0x1a, 0xfd, 0x77, 0x2e, 0x1c, 0xb6, 0xc0, 0x6b,
338cdebaff8SEnji Cooper 	0xa0, 0x4b, 0x4a, 0xa0, 0xd5, 0x8b, 0xbb, 0xd4,
339cdebaff8SEnji Cooper 	0xcc, 0x7b, 0x4e, 0x4c, 0x71, 0x9a, 0x50, 0x12,
340cdebaff8SEnji Cooper 	0x36, 0xd4, 0xfd, 0x1f, 0xf1, 0xfc, 0x19, 0x31,
341cdebaff8SEnji Cooper 	0xec, 0x54, 0x24, 0xb4, 0x9f, 0xa9, 0xea, 0xd2,
342cdebaff8SEnji Cooper 	0x87, 0x11, 0x03, 0x29, 0xbb, 0x20, 0x20, 0x37,
343cdebaff8SEnji Cooper 	0xa0, 0xeb, 0x93, 0xa1, 0x60, 0x5f, 0x83, 0x9f,
344cdebaff8SEnji Cooper 	0x00, 0x09, 0xe4, 0x9c, 0x79, 0xcb, 0xfc, 0x4f,
345cdebaff8SEnji Cooper 	0x9e, 0xd2, 0x76, 0x9f, 0x56, 0x3b, 0x88, 0x1d,
346cdebaff8SEnji Cooper 	0x29, 0x8f, 0x36, 0x07, 0xf7, 0x7e, 0xf1, 0xa1,
347cdebaff8SEnji Cooper 	0xa4, 0x25, 0xfb, 0xa0, 0xbe, 0xc6, 0xa2, 0x76,
348cdebaff8SEnji Cooper 	0xd3, 0x59, 0x2a, 0x7f, 0xb7, 0x9b, 0xb8, 0x75,
349cdebaff8SEnji Cooper 	0xc7, 0xc1, 0xc0, 0xe9, 0x9b, 0x83, 0x16, 0x00,
350cdebaff8SEnji Cooper 	0xc8, 0x9c, 0x25, 0x2a, 0x8b, 0xd1, 0x8d, 0x16,
351cdebaff8SEnji Cooper 	0x9f, 0xd6, 0xd3, 0x03, 0x5b, 0xc7, 0x40, 0xac,
352cdebaff8SEnji Cooper 	0xb6, 0xf3, 0xbb, 0x22, 0xa3, 0x3e, 0x56, 0x55,
353cdebaff8SEnji Cooper 	0xdf, 0x06, 0x76, 0xe0, 0x7b, 0xd0, 0x52, 0x54,
354cdebaff8SEnji Cooper 	0x38, 0xb0, 0xaa, 0xab, 0x62, 0x31, 0xd1, 0x79,
355cdebaff8SEnji Cooper 	0x19, 0xec, 0x82, 0x36, 0x58, 0x31, 0xf9, 0x01,
356cdebaff8SEnji Cooper 	0xf9, 0x5e, 0xaf, 0x24, 0xb3, 0xc9, 0xb2, 0x30,
357cdebaff8SEnji Cooper 	0x3d, 0xbc, 0xf1, 0xbe, 0x17, 0xeb, 0xa0, 0x31,
358cdebaff8SEnji Cooper 	0x43, 0xed, 0xd7, 0x50, 0xcc, 0xc2, 0xe2, 0xaa,
359cdebaff8SEnji Cooper 	0x68, 0xc8, 0xf0, 0xd3, 0x89, 0xbd, 0xf5, 0x69,
360cdebaff8SEnji Cooper 	0x56, 0xe3, 0x88, 0x92, 0x32, 0x56, 0x85, 0x6f,
361cdebaff8SEnji Cooper 	0x25, 0x30, 0x28, 0x37, 0xd5, 0xe2, 0xa6, 0xf7,
362cdebaff8SEnji Cooper 	0x6e, 0xa9, 0x71, 0xda, 0x4a, 0x25, 0x94, 0x0b,
363cdebaff8SEnji Cooper 	0x84, 0x7f, 0x1f, 0x6b, 0x89, 0x2a, 0xf8, 0x30,
364cdebaff8SEnji Cooper 	0xcb, 0x60, 0x75, 0x21, 0xbd, 0xe2, 0x34, 0xf7,
365cdebaff8SEnji Cooper 	0x8f, 0x30, 0xd5, 0xd5, 0x1f, 0x17, 0x0d, 0x00,
366cdebaff8SEnji Cooper 	0x6c, 0x50, 0xde, 0x56, 0x15, 0x33, 0x1b, 0x83,
367cdebaff8SEnji Cooper 	0x68, 0x7b, 0x24, 0xe3, 0xa0, 0xda, 0xd5, 0x7a,
368cdebaff8SEnji Cooper 	0x3e, 0x93, 0x6d, 0xe0, 0x02, 0x79, 0x62, 0x5d,
369cdebaff8SEnji Cooper 	0x71, 0xe3, 0x7b, 0xa9, 0x0b, 0x7a, 0xcd, 0xb3,
370cdebaff8SEnji Cooper 	0xb2, 0x6f, 0x96, 0x19, 0x8f, 0xf8, 0x8b, 0x26,
371cdebaff8SEnji Cooper 	0x7a, 0x40, 0xc8, 0xae, 0xfe, 0x0d, 0x6f, 0x67,
372cdebaff8SEnji Cooper 	0xce, 0x5e, 0xa0, 0x04, 0x7e, 0x93, 0x1d, 0x17,
373cdebaff8SEnji Cooper 	0x1c, 0x32, 0x82, 0xf4, 0x54, 0xb9, 0x80, 0xdd,
374cdebaff8SEnji Cooper 	0x82, 0xae, 0xf5, 0xc5, 0x1e, 0x15, 0xab, 0xc2,
375cdebaff8SEnji Cooper 	0x5c, 0x60, 0xd2, 0x08, 0xc2, 0xa1, 0x1f, 0x89,
376cdebaff8SEnji Cooper 	0x0b, 0x59, 0x36, 0x07, 0xdc, 0x57, 0xd3, 0xa0,
377cdebaff8SEnji Cooper 	0x32, 0x42, 0xac, 0xa6, 0x90, 0x0b, 0xc0, 0xe4,
378cdebaff8SEnji Cooper 	0x91, 0x45, 0x85, 0x27, 0xb9, 0x48, 0x2a, 0x88,
379cdebaff8SEnji Cooper 	0x0a, 0xbf, 0xf6, 0x2d, 0xef, 0x4d, 0x1b, 0x64,
380cdebaff8SEnji Cooper 	0x49, 0x23, 0x47, 0x30, 0x29, 0x25, 0xb2, 0xc9,
381cdebaff8SEnji Cooper 	0xaf, 0xcd, 0xae, 0x56, 0x43, 0x28, 0xcf, 0x81,
382cdebaff8SEnji Cooper 	0x95, 0xa7, 0x3e, 0x51, 0x5b, 0x3b, 0xf7, 0x87,
383cdebaff8SEnji Cooper 	0x13, 0xc6, 0xee, 0x50, 0x2f, 0x78, 0xdd, 0xcf,
384cdebaff8SEnji Cooper 	0x63, 0xef, 0x15, 0xb9, 0x4f, 0x21, 0x27, 0x5e,
385cdebaff8SEnji Cooper 	0x94, 0x78, 0xad, 0xcd, 0x9b, 0x3d, 0xf2, 0xdb,
386cdebaff8SEnji Cooper 	0xed, 0xf2, 0xa2, 0x39, 0xca, 0xa3, 0xa8, 0x2e,
387cdebaff8SEnji Cooper 	0x68, 0xd5, 0xc3, 0xcf, 0x71, 0xec, 0x92, 0xdc,
388cdebaff8SEnji Cooper 	0xce, 0xe7, 0x7d, 0x2b, 0xf7, 0xbc, 0xe9, 0x2b,
389cdebaff8SEnji Cooper 	0x2e, 0xae, 0xaf, 0x0b, 0x92, 0x72, 0xac, 0x6e,
390cdebaff8SEnji Cooper 	0x49, 0xe1, 0xb3, 0x1f, 0xe5, 0x43, 0x2f, 0xa7,
391cdebaff8SEnji Cooper };
392cdebaff8SEnji Cooper 
393cdebaff8SEnji Cooper const struct testvec bf_cbc_128_1_vectors[] = {
394cdebaff8SEnji Cooper 	{
395cdebaff8SEnji Cooper 		.blkno = 0,
396cdebaff8SEnji Cooper 		.ptxt = bf_cbc_ptxt,
397cdebaff8SEnji Cooper 		.ctxt = bf_cbc_128_encblkno1_vec0_ctxt,
398cdebaff8SEnji Cooper 	},
399cdebaff8SEnji Cooper 	{
400cdebaff8SEnji Cooper 		.blkno = 1,
401cdebaff8SEnji Cooper 		.ptxt = bf_cbc_ptxt,
402cdebaff8SEnji Cooper 		.ctxt = bf_cbc_128_encblkno1_vec1_ctxt,
403cdebaff8SEnji Cooper 	},
404cdebaff8SEnji Cooper 	{
405cdebaff8SEnji Cooper 		.blkno = 2,
406cdebaff8SEnji Cooper 		.ptxt = bf_cbc_ptxt,
407cdebaff8SEnji Cooper 		.ctxt = bf_cbc_128_encblkno1_vec2_ctxt,
408cdebaff8SEnji Cooper 	},
409cdebaff8SEnji Cooper 	{
410cdebaff8SEnji Cooper 		.blkno = 3,
411cdebaff8SEnji Cooper 		.ptxt = bf_cbc_ptxt,
412cdebaff8SEnji Cooper 		.ctxt = bf_cbc_128_encblkno1_vec3_ctxt,
413cdebaff8SEnji Cooper 	},
414cdebaff8SEnji Cooper };
415cdebaff8SEnji Cooper 
416cdebaff8SEnji Cooper /*
417cdebaff8SEnji Cooper  * IV method encblkno8, blkno 0.
418cdebaff8SEnji Cooper  */
419cdebaff8SEnji Cooper static const uint8_t bf_cbc_128_encblkno8_vec0_ctxt[SECSIZE] = {
420cdebaff8SEnji Cooper 	0xb8, 0x65, 0x67, 0x8e, 0xe4, 0xd8, 0xb4, 0x93,
421cdebaff8SEnji Cooper 	0xa5, 0xbb, 0x13, 0x92, 0x27, 0x4b, 0xdd, 0xeb,
422cdebaff8SEnji Cooper 	0x0d, 0xad, 0x80, 0x6a, 0x57, 0x37, 0xc0, 0x23,
423cdebaff8SEnji Cooper 	0x23, 0xbf, 0xed, 0x86, 0x0c, 0x18, 0x48, 0x19,
424cdebaff8SEnji Cooper 	0xcd, 0x84, 0x66, 0xa7, 0xd6, 0xa0, 0x44, 0xd3,
425cdebaff8SEnji Cooper 	0x05, 0x4e, 0xf4, 0xfe, 0x6a, 0x57, 0x69, 0x01,
426cdebaff8SEnji Cooper 	0xaa, 0x91, 0x9c, 0x6e, 0x4f, 0x79, 0xc9, 0x8f,
427cdebaff8SEnji Cooper 	0x4c, 0xdf, 0x5b, 0x9c, 0xc4, 0xf7, 0x63, 0x16,
428cdebaff8SEnji Cooper 	0x20, 0x09, 0x07, 0x3f, 0x5e, 0x31, 0xcc, 0x81,
429cdebaff8SEnji Cooper 	0x71, 0xe3, 0x7b, 0xb5, 0xea, 0x2c, 0xb5, 0x14,
430cdebaff8SEnji Cooper 	0x1e, 0xf9, 0x0d, 0xe0, 0x45, 0xbc, 0x9f, 0x92,
431cdebaff8SEnji Cooper 	0x6c, 0xc9, 0x0a, 0x85, 0x62, 0x42, 0xf1, 0x4b,
432cdebaff8SEnji Cooper 	0xac, 0xe2, 0xfa, 0xad, 0x97, 0x7a, 0x43, 0x3d,
433cdebaff8SEnji Cooper 	0xb6, 0x5f, 0xcb, 0xe7, 0x17, 0x23, 0x28, 0xde,
434cdebaff8SEnji Cooper 	0x4e, 0xf8, 0xa1, 0x3c, 0x22, 0x63, 0x49, 0x31,
435cdebaff8SEnji Cooper 	0xa7, 0xbe, 0xbf, 0xfe, 0xee, 0xd9, 0x1f, 0xa0,
436cdebaff8SEnji Cooper 	0x2a, 0x0e, 0xf2, 0x4f, 0x3e, 0xf8, 0xbb, 0xae,
437cdebaff8SEnji Cooper 	0x9e, 0x0d, 0x2c, 0xaa, 0x2a, 0x2c, 0xf0, 0x6c,
438cdebaff8SEnji Cooper 	0x37, 0x2a, 0x5d, 0x96, 0x70, 0x9c, 0x87, 0xcc,
439cdebaff8SEnji Cooper 	0x2b, 0xca, 0x95, 0x37, 0xf4, 0x4d, 0x78, 0xae,
440cdebaff8SEnji Cooper 	0x4f, 0xb5, 0xe6, 0xad, 0xb1, 0xc1, 0x31, 0xd3,
441cdebaff8SEnji Cooper 	0x2d, 0xa6, 0xaf, 0xc1, 0x8c, 0xe4, 0x72, 0x05,
442cdebaff8SEnji Cooper 	0xb0, 0xfc, 0xb0, 0xf7, 0xfe, 0xf9, 0x3e, 0xa3,
443cdebaff8SEnji Cooper 	0xb9, 0xea, 0xc8, 0x69, 0xe3, 0x4e, 0x6d, 0xd1,
444cdebaff8SEnji Cooper 	0x8b, 0x2b, 0xf9, 0x2f, 0xd9, 0x40, 0x69, 0xff,
445cdebaff8SEnji Cooper 	0x90, 0x98, 0x7a, 0x82, 0xe3, 0x0d, 0x4e, 0x19,
446cdebaff8SEnji Cooper 	0x2f, 0x77, 0xf9, 0xab, 0x36, 0xa9, 0x4e, 0xbc,
447cdebaff8SEnji Cooper 	0x25, 0x32, 0xbd, 0x44, 0xea, 0x5a, 0x18, 0x31,
448cdebaff8SEnji Cooper 	0x37, 0xcd, 0x6c, 0x98, 0xdd, 0x1d, 0xf9, 0xf7,
449cdebaff8SEnji Cooper 	0x8f, 0x0b, 0x79, 0xbc, 0xe6, 0xf5, 0xf1, 0xa3,
450cdebaff8SEnji Cooper 	0x13, 0xe9, 0x39, 0xaf, 0xa4, 0x8a, 0x74, 0xae,
451cdebaff8SEnji Cooper 	0x60, 0x30, 0x63, 0x6e, 0xee, 0x97, 0x83, 0xee,
452cdebaff8SEnji Cooper 	0xc0, 0xdd, 0xde, 0xad, 0x92, 0x83, 0xc9, 0x3c,
453cdebaff8SEnji Cooper 	0xd8, 0x58, 0x6c, 0xcb, 0xe4, 0x29, 0x04, 0x69,
454cdebaff8SEnji Cooper 	0x4f, 0x45, 0xc2, 0x59, 0x98, 0x20, 0x91, 0x6e,
455cdebaff8SEnji Cooper 	0x95, 0x82, 0xb3, 0x47, 0x2c, 0xef, 0xdb, 0x96,
456cdebaff8SEnji Cooper 	0x38, 0xba, 0x01, 0x89, 0x84, 0x96, 0x71, 0xf9,
457cdebaff8SEnji Cooper 	0x2b, 0x23, 0xe0, 0x89, 0xb8, 0xb9, 0x80, 0xbf,
458cdebaff8SEnji Cooper 	0x0c, 0xdc, 0xf0, 0x5c, 0xd6, 0x4f, 0x18, 0x19,
459cdebaff8SEnji Cooper 	0xfe, 0x23, 0x5a, 0x1e, 0x20, 0x9a, 0x05, 0xf2,
460cdebaff8SEnji Cooper 	0x62, 0xd4, 0x04, 0x92, 0x24, 0xfc, 0xc0, 0x48,
461cdebaff8SEnji Cooper 	0xf0, 0x00, 0xb4, 0xbe, 0x2e, 0xea, 0x25, 0x17,
462cdebaff8SEnji Cooper 	0x5d, 0xab, 0x73, 0x26, 0x79, 0x77, 0xc5, 0x96,
463cdebaff8SEnji Cooper 	0xd3, 0xbf, 0x38, 0xda, 0x0f, 0xe1, 0x26, 0x9a,
464cdebaff8SEnji Cooper 	0x38, 0xfc, 0x43, 0x82, 0xd1, 0x4d, 0xf2, 0xae,
465cdebaff8SEnji Cooper 	0x98, 0x1e, 0xb0, 0x0d, 0xec, 0x7b, 0x56, 0x66,
466cdebaff8SEnji Cooper 	0xcb, 0x30, 0x57, 0x4f, 0xe7, 0x03, 0xe3, 0xa6,
467cdebaff8SEnji Cooper 	0x4a, 0x4a, 0xf9, 0xa3, 0xbf, 0x44, 0xac, 0x1a,
468cdebaff8SEnji Cooper 	0xe7, 0x4b, 0xc1, 0x5b, 0x03, 0x25, 0x4e, 0xc6,
469cdebaff8SEnji Cooper 	0x1f, 0x96, 0x4d, 0xf7, 0xbe, 0xa7, 0x5d, 0x60,
470cdebaff8SEnji Cooper 	0x20, 0x62, 0x10, 0xd7, 0xab, 0x64, 0xce, 0x22,
471cdebaff8SEnji Cooper 	0x8b, 0x52, 0x76, 0xa1, 0xa1, 0x8b, 0x1e, 0xb2,
472cdebaff8SEnji Cooper 	0x18, 0x29, 0x8f, 0xc5, 0x24, 0x39, 0xd4, 0xf8,
473cdebaff8SEnji Cooper 	0x75, 0x1e, 0x30, 0x57, 0x12, 0x01, 0x04, 0x78,
474cdebaff8SEnji Cooper 	0x68, 0x97, 0xa8, 0x65, 0x8c, 0xac, 0xb4, 0x3b,
475cdebaff8SEnji Cooper 	0x37, 0x45, 0x41, 0xbc, 0x7d, 0x4b, 0x09, 0xd7,
476cdebaff8SEnji Cooper 	0x46, 0x40, 0x99, 0x59, 0xa1, 0xb5, 0x9e, 0x84,
477cdebaff8SEnji Cooper 	0x24, 0x6d, 0xfb, 0x74, 0x22, 0xac, 0x4e, 0x5f,
478cdebaff8SEnji Cooper 	0x11, 0xd3, 0xa7, 0x9f, 0xa5, 0xca, 0x38, 0x54,
479cdebaff8SEnji Cooper 	0xe2, 0x65, 0x52, 0x02, 0x69, 0xe9, 0xa8, 0xf1,
480cdebaff8SEnji Cooper 	0xd7, 0x9d, 0x9a, 0x17, 0x54, 0xa0, 0xda, 0xbb,
481cdebaff8SEnji Cooper 	0x37, 0xb4, 0x0c, 0xb6, 0x00, 0xad, 0x6f, 0x88,
482cdebaff8SEnji Cooper 	0x84, 0xa7, 0x69, 0xd7, 0x0b, 0xbe, 0xb4, 0xbe,
483cdebaff8SEnji Cooper 	0x96, 0xbc, 0xcd, 0x08, 0xf1, 0x28, 0xe0, 0x6f,
484cdebaff8SEnji Cooper };
485cdebaff8SEnji Cooper 
486cdebaff8SEnji Cooper /*
487cdebaff8SEnji Cooper  * IV method encblkno8, blkno 1.
488cdebaff8SEnji Cooper  */
489cdebaff8SEnji Cooper static const uint8_t bf_cbc_128_encblkno8_vec1_ctxt[SECSIZE] = {
490cdebaff8SEnji Cooper 	0x7d, 0x95, 0x5a, 0x66, 0x23, 0x98, 0xa8, 0xbe,
491cdebaff8SEnji Cooper 	0x53, 0x63, 0x0d, 0x46, 0x4e, 0x38, 0x1b, 0x1d,
492cdebaff8SEnji Cooper 	0x36, 0xdd, 0x2a, 0x57, 0x3c, 0x17, 0x01, 0xba,
493cdebaff8SEnji Cooper 	0x4e, 0xf8, 0xaa, 0x22, 0x74, 0x05, 0xa2, 0x40,
494cdebaff8SEnji Cooper 	0xd0, 0x30, 0x61, 0x6c, 0x65, 0x5e, 0xfb, 0x21,
495cdebaff8SEnji Cooper 	0x63, 0xef, 0x62, 0x01, 0x74, 0x15, 0xf6, 0x87,
496cdebaff8SEnji Cooper 	0x92, 0xc1, 0x4e, 0x46, 0xdd, 0x76, 0xdb, 0x8b,
497cdebaff8SEnji Cooper 	0x20, 0x44, 0xc4, 0xfa, 0x7c, 0xd2, 0x07, 0x32,
498cdebaff8SEnji Cooper 	0x11, 0xeb, 0x5b, 0x38, 0x44, 0x32, 0xa1, 0xe7,
499cdebaff8SEnji Cooper 	0xcb, 0xa6, 0x1a, 0x12, 0xb9, 0x53, 0x13, 0x6f,
500cdebaff8SEnji Cooper 	0xc2, 0x0e, 0x6a, 0x77, 0x8b, 0x96, 0x14, 0x0a,
501cdebaff8SEnji Cooper 	0x23, 0x48, 0x65, 0xa5, 0xcd, 0x39, 0x38, 0x03,
502cdebaff8SEnji Cooper 	0xc8, 0x3a, 0x98, 0x69, 0x3d, 0x14, 0xae, 0xad,
503cdebaff8SEnji Cooper 	0x54, 0x57, 0xf6, 0x5a, 0xdd, 0x46, 0x4c, 0x3a,
504cdebaff8SEnji Cooper 	0x68, 0xa8, 0xb7, 0x57, 0xdd, 0x1e, 0x66, 0x0e,
505cdebaff8SEnji Cooper 	0xc2, 0x4c, 0x17, 0xba, 0xa4, 0x7e, 0x83, 0x45,
506cdebaff8SEnji Cooper 	0xc6, 0xf2, 0x34, 0x3b, 0x4e, 0xab, 0x67, 0x0c,
507cdebaff8SEnji Cooper 	0x73, 0xbf, 0x87, 0x7e, 0x93, 0x2b, 0x14, 0x33,
508cdebaff8SEnji Cooper 	0xd6, 0x24, 0x8d, 0xc7, 0x90, 0x11, 0xd2, 0x38,
509cdebaff8SEnji Cooper 	0xe6, 0xe0, 0x39, 0x1f, 0x00, 0x74, 0x40, 0xab,
510cdebaff8SEnji Cooper 	0xdc, 0xdd, 0x46, 0xe8, 0x85, 0x14, 0xb1, 0x78,
511cdebaff8SEnji Cooper 	0x34, 0x24, 0x04, 0x97, 0xde, 0xf9, 0x04, 0x69,
512cdebaff8SEnji Cooper 	0x0b, 0x15, 0x72, 0x37, 0xf4, 0x0d, 0xf4, 0x76,
513cdebaff8SEnji Cooper 	0x6f, 0xd8, 0x05, 0x75, 0x8f, 0x7e, 0x6b, 0xca,
514cdebaff8SEnji Cooper 	0x55, 0x20, 0x4a, 0x29, 0x16, 0xc1, 0x6e, 0x91,
515cdebaff8SEnji Cooper 	0x22, 0x01, 0x0d, 0x39, 0x5d, 0xb9, 0x09, 0xa4,
516cdebaff8SEnji Cooper 	0xe8, 0xc7, 0xff, 0x60, 0x39, 0xc6, 0xe4, 0x2a,
517cdebaff8SEnji Cooper 	0x1c, 0xf2, 0x3c, 0xf7, 0xf9, 0xd7, 0xde, 0x0b,
518cdebaff8SEnji Cooper 	0x0e, 0x30, 0xf1, 0x20, 0x7c, 0x93, 0x2f, 0x74,
519cdebaff8SEnji Cooper 	0x72, 0x40, 0x47, 0x2d, 0xeb, 0x8a, 0x5f, 0x69,
520cdebaff8SEnji Cooper 	0x60, 0xdf, 0xe9, 0x4d, 0x06, 0x24, 0x9c, 0x79,
521cdebaff8SEnji Cooper 	0xe7, 0x61, 0xd3, 0xa7, 0x57, 0x44, 0x49, 0x97,
522cdebaff8SEnji Cooper 	0x3a, 0xa3, 0x11, 0xc4, 0x70, 0xf4, 0x3d, 0xb5,
523cdebaff8SEnji Cooper 	0x4b, 0xb7, 0xae, 0x77, 0x36, 0xcf, 0x65, 0x3e,
524cdebaff8SEnji Cooper 	0xb6, 0x51, 0x83, 0xcb, 0x43, 0x5f, 0xd0, 0xfb,
525cdebaff8SEnji Cooper 	0x69, 0xc4, 0x1b, 0x77, 0x71, 0xcc, 0x72, 0xf4,
526cdebaff8SEnji Cooper 	0x5f, 0xc2, 0xda, 0xea, 0xa4, 0x33, 0xec, 0x8e,
527cdebaff8SEnji Cooper 	0x92, 0x22, 0x6a, 0x55, 0x34, 0x6a, 0x10, 0xb8,
528cdebaff8SEnji Cooper 	0x62, 0x66, 0xc1, 0x6f, 0x65, 0xdd, 0x9a, 0x40,
529cdebaff8SEnji Cooper 	0xa0, 0xbf, 0x88, 0xbb, 0x79, 0x1c, 0xa4, 0xaa,
530cdebaff8SEnji Cooper 	0xdf, 0xe8, 0xe7, 0x40, 0x88, 0xc6, 0x0f, 0xa2,
531cdebaff8SEnji Cooper 	0x2c, 0xee, 0xe7, 0x41, 0x32, 0x46, 0xa2, 0x46,
532cdebaff8SEnji Cooper 	0x85, 0xbf, 0x4c, 0xca, 0x4d, 0xd3, 0x9b, 0x49,
533cdebaff8SEnji Cooper 	0x43, 0x98, 0xae, 0xfc, 0x93, 0xa7, 0x94, 0x98,
534cdebaff8SEnji Cooper 	0x86, 0xa1, 0x0a, 0x85, 0x77, 0x67, 0xa6, 0x16,
535cdebaff8SEnji Cooper 	0x94, 0x76, 0xe5, 0x2f, 0x88, 0x5f, 0x24, 0x16,
536cdebaff8SEnji Cooper 	0xe5, 0x84, 0x4c, 0xd2, 0x58, 0x59, 0x82, 0x59,
537cdebaff8SEnji Cooper 	0x2c, 0xe2, 0x8d, 0xba, 0x08, 0x01, 0x67, 0x1f,
538cdebaff8SEnji Cooper 	0x2a, 0x9e, 0x4d, 0x53, 0x57, 0x2d, 0x6e, 0x35,
539cdebaff8SEnji Cooper 	0x38, 0xd5, 0x50, 0xa7, 0x0c, 0xe6, 0x77, 0x71,
540cdebaff8SEnji Cooper 	0xbe, 0x45, 0x2e, 0xf4, 0x7a, 0x3a, 0x51, 0x03,
541cdebaff8SEnji Cooper 	0x04, 0x2b, 0xd7, 0x42, 0x6c, 0x5b, 0x82, 0xba,
542cdebaff8SEnji Cooper 	0xb4, 0x09, 0xee, 0x9d, 0xea, 0x8f, 0xf0, 0xb3,
543cdebaff8SEnji Cooper 	0xb2, 0x9d, 0x0e, 0x09, 0x72, 0x8c, 0xd9, 0x1e,
544cdebaff8SEnji Cooper 	0x6d, 0x78, 0x57, 0x10, 0x1f, 0xeb, 0x4e, 0x53,
545cdebaff8SEnji Cooper 	0x57, 0x65, 0xe5, 0x43, 0xe8, 0xb4, 0xb6, 0xb8,
546cdebaff8SEnji Cooper 	0x25, 0x8a, 0xe2, 0xb3, 0x99, 0x95, 0x2c, 0xd0,
547cdebaff8SEnji Cooper 	0xc7, 0x89, 0xad, 0xdb, 0x72, 0xf0, 0x83, 0xe3,
548cdebaff8SEnji Cooper 	0x2f, 0x30, 0x33, 0xf4, 0x03, 0x14, 0x86, 0xa0,
549cdebaff8SEnji Cooper 	0xe0, 0x57, 0x15, 0x53, 0x26, 0xd0, 0x6d, 0x12,
550cdebaff8SEnji Cooper 	0x51, 0x96, 0x9b, 0x00, 0x8e, 0x41, 0xea, 0x05,
551cdebaff8SEnji Cooper 	0x75, 0x5d, 0xb3, 0x8d, 0x44, 0x7f, 0x41, 0x7f,
552cdebaff8SEnji Cooper 	0xd1, 0xed, 0x7c, 0xf7, 0xac, 0x6b, 0x21, 0xc7,
553cdebaff8SEnji Cooper 	0x0c, 0x49, 0xa1, 0x2e, 0x57, 0xa1, 0x21, 0xe2,
554cdebaff8SEnji Cooper };
555cdebaff8SEnji Cooper 
556cdebaff8SEnji Cooper /*
557cdebaff8SEnji Cooper  * IV method encblkno8, blkno 2.
558cdebaff8SEnji Cooper  */
559cdebaff8SEnji Cooper static const uint8_t bf_cbc_128_encblkno8_vec2_ctxt[SECSIZE] = {
560cdebaff8SEnji Cooper 	0x28, 0x0c, 0x49, 0x08, 0x84, 0xcb, 0xba, 0x4a,
561cdebaff8SEnji Cooper 	0xa5, 0xb6, 0x12, 0x4c, 0x14, 0x11, 0x1f, 0x88,
562cdebaff8SEnji Cooper 	0x57, 0x78, 0x1e, 0x51, 0x7c, 0x9d, 0xba, 0x31,
563cdebaff8SEnji Cooper 	0x80, 0x14, 0xeb, 0x4a, 0x98, 0x8a, 0xb5, 0x4d,
564cdebaff8SEnji Cooper 	0xc5, 0xbd, 0xd2, 0x48, 0x1e, 0x19, 0x43, 0x54,
565cdebaff8SEnji Cooper 	0x48, 0x1d, 0x24, 0x76, 0x7d, 0xd8, 0xcc, 0xe9,
566cdebaff8SEnji Cooper 	0xd9, 0x7b, 0xa9, 0xdf, 0xe3, 0x65, 0x85, 0x10,
567cdebaff8SEnji Cooper 	0xb8, 0x11, 0xce, 0xa3, 0x07, 0x4d, 0x87, 0x3f,
568cdebaff8SEnji Cooper 	0x95, 0xfb, 0xa5, 0x06, 0xa4, 0x37, 0xb0, 0x89,
569cdebaff8SEnji Cooper 	0x03, 0xa9, 0xef, 0x62, 0x98, 0xd3, 0x85, 0xe8,
570cdebaff8SEnji Cooper 	0xb3, 0x21, 0xab, 0xe9, 0xdc, 0x03, 0x2a, 0x20,
571cdebaff8SEnji Cooper 	0xf7, 0xb1, 0xa4, 0x7a, 0xd5, 0xdc, 0x61, 0x2e,
572cdebaff8SEnji Cooper 	0x15, 0x81, 0x3e, 0xcf, 0x8d, 0x8d, 0x54, 0x19,
573cdebaff8SEnji Cooper 	0x70, 0xde, 0xa9, 0x57, 0x93, 0x87, 0xc7, 0x16,
574cdebaff8SEnji Cooper 	0x06, 0x25, 0xf3, 0x93, 0x8f, 0x73, 0x92, 0x29,
575cdebaff8SEnji Cooper 	0x1e, 0xcd, 0x5a, 0x9d, 0x8f, 0x8d, 0x44, 0x15,
576cdebaff8SEnji Cooper 	0x8d, 0x92, 0x44, 0x95, 0x7a, 0x5e, 0x1b, 0xfd,
577cdebaff8SEnji Cooper 	0x31, 0xa5, 0x8c, 0x22, 0x89, 0xbb, 0x91, 0x15,
578cdebaff8SEnji Cooper 	0xad, 0x0a, 0x73, 0x94, 0x65, 0xae, 0xca, 0xfc,
579cdebaff8SEnji Cooper 	0x7e, 0xae, 0x85, 0x45, 0xe7, 0xd7, 0x8f, 0x89,
580cdebaff8SEnji Cooper 	0x8e, 0x44, 0x62, 0x7a, 0xe0, 0xee, 0x78, 0xbd,
581cdebaff8SEnji Cooper 	0x88, 0x62, 0x8e, 0xb8, 0x35, 0x7a, 0xa9, 0x12,
582cdebaff8SEnji Cooper 	0x56, 0x2d, 0xe4, 0xbb, 0x2d, 0xc8, 0x98, 0x0e,
583cdebaff8SEnji Cooper 	0x35, 0x9e, 0xea, 0x14, 0x43, 0x80, 0xde, 0x9e,
584cdebaff8SEnji Cooper 	0x2e, 0xf8, 0xf9, 0xcd, 0x61, 0xa6, 0x22, 0xc8,
585cdebaff8SEnji Cooper 	0x77, 0xfc, 0x32, 0x71, 0x4b, 0xcb, 0x00, 0x9b,
586cdebaff8SEnji Cooper 	0x9f, 0x85, 0x02, 0x92, 0xfa, 0x84, 0xd8, 0xd8,
587cdebaff8SEnji Cooper 	0x09, 0xa4, 0x08, 0xc1, 0x96, 0xd3, 0x9a, 0x27,
588cdebaff8SEnji Cooper 	0xa3, 0x82, 0x05, 0xd0, 0x78, 0x18, 0x0a, 0x7d,
589cdebaff8SEnji Cooper 	0xb6, 0x95, 0xc0, 0x27, 0x3e, 0x76, 0x77, 0xf3,
590cdebaff8SEnji Cooper 	0xd9, 0x62, 0x8e, 0x77, 0xa0, 0x1f, 0x9e, 0x41,
591cdebaff8SEnji Cooper 	0xdb, 0x24, 0xaa, 0xdd, 0x8f, 0x94, 0x7b, 0x1f,
592cdebaff8SEnji Cooper 	0xff, 0xaa, 0xfd, 0xe2, 0x19, 0xc2, 0x71, 0x80,
593cdebaff8SEnji Cooper 	0x0a, 0xda, 0xc5, 0x98, 0x57, 0xde, 0x4e, 0xfb,
594cdebaff8SEnji Cooper 	0x38, 0xe6, 0x9b, 0xe5, 0xa6, 0x1f, 0x7d, 0x2c,
595cdebaff8SEnji Cooper 	0x41, 0x5f, 0x4d, 0x13, 0xb8, 0x0c, 0xac, 0x9a,
596cdebaff8SEnji Cooper 	0x7d, 0xc0, 0x7c, 0x44, 0x64, 0x1e, 0xbc, 0x7d,
597cdebaff8SEnji Cooper 	0x16, 0xaa, 0x45, 0xda, 0x62, 0x4e, 0x64, 0x69,
598cdebaff8SEnji Cooper 	0xd6, 0x71, 0xd9, 0x64, 0x2a, 0x5d, 0x20, 0x34,
599cdebaff8SEnji Cooper 	0xb0, 0xcb, 0x9d, 0xd3, 0x69, 0xd6, 0x60, 0xad,
600cdebaff8SEnji Cooper 	0x78, 0x72, 0xb8, 0x36, 0x17, 0xe7, 0xaf, 0x0a,
601cdebaff8SEnji Cooper 	0x11, 0x84, 0x43, 0x32, 0x38, 0x43, 0xe5, 0xc5,
602cdebaff8SEnji Cooper 	0x1b, 0xf4, 0x48, 0xb6, 0x0e, 0x72, 0x48, 0x2f,
603cdebaff8SEnji Cooper 	0x9b, 0xe3, 0xce, 0x27, 0xcd, 0x66, 0x28, 0x5c,
604cdebaff8SEnji Cooper 	0x2a, 0xd7, 0x28, 0x52, 0x6e, 0x86, 0x03, 0x60,
605cdebaff8SEnji Cooper 	0x7b, 0xbd, 0xbd, 0x53, 0xfb, 0x7d, 0xa1, 0xba,
606cdebaff8SEnji Cooper 	0x6a, 0x46, 0x0c, 0xf3, 0x1a, 0xbf, 0xa7, 0xa2,
607cdebaff8SEnji Cooper 	0x46, 0x87, 0x40, 0xaa, 0x7d, 0x76, 0x36, 0x85,
608cdebaff8SEnji Cooper 	0xa5, 0xbf, 0x0b, 0xd4, 0x56, 0x4c, 0x37, 0xe3,
609cdebaff8SEnji Cooper 	0x60, 0x93, 0xdc, 0x3b, 0xca, 0x34, 0x78, 0xcf,
610cdebaff8SEnji Cooper 	0xdb, 0x0c, 0x9d, 0x5c, 0x52, 0xb2, 0xd5, 0x7b,
611cdebaff8SEnji Cooper 	0xbb, 0x4e, 0xe1, 0xa9, 0x2a, 0xc6, 0x42, 0xf5,
612cdebaff8SEnji Cooper 	0x21, 0x9c, 0x15, 0xae, 0xb9, 0x08, 0x3a, 0xc4,
613cdebaff8SEnji Cooper 	0x50, 0x7e, 0x0e, 0xb6, 0xc3, 0xfe, 0xf4, 0xd9,
614cdebaff8SEnji Cooper 	0x1a, 0x97, 0x30, 0x9f, 0x51, 0x2c, 0xac, 0xd2,
615cdebaff8SEnji Cooper 	0x13, 0x93, 0x62, 0x56, 0xcb, 0x34, 0xf3, 0xca,
616cdebaff8SEnji Cooper 	0x26, 0xc6, 0x32, 0xbe, 0xf6, 0xd5, 0x1e, 0x5b,
617cdebaff8SEnji Cooper 	0x3a, 0x5c, 0x31, 0x08, 0xa1, 0x47, 0x6b, 0x75,
618cdebaff8SEnji Cooper 	0x95, 0x8e, 0x3d, 0xbf, 0x2e, 0x81, 0x02, 0x0d,
619cdebaff8SEnji Cooper 	0x17, 0x66, 0x6f, 0x04, 0xe0, 0x1e, 0x03, 0x27,
620cdebaff8SEnji Cooper 	0xd3, 0xcf, 0x45, 0xc6, 0x08, 0xdb, 0xdf, 0x83,
621cdebaff8SEnji Cooper 	0xd5, 0xc2, 0x7f, 0xe8, 0x5f, 0x4a, 0x36, 0x0a,
622cdebaff8SEnji Cooper 	0x6d, 0x3c, 0x91, 0x8e, 0x52, 0xf3, 0xdd, 0x62,
623cdebaff8SEnji Cooper 	0xff, 0x78, 0x87, 0xd9, 0x4c, 0xad, 0x5c, 0x9f,
624cdebaff8SEnji Cooper };
625cdebaff8SEnji Cooper 
626cdebaff8SEnji Cooper /*
627cdebaff8SEnji Cooper  * IV method encblkno8, blkno 3.
628cdebaff8SEnji Cooper  */
629cdebaff8SEnji Cooper static const uint8_t bf_cbc_128_encblkno8_vec3_ctxt[SECSIZE] = {
630cdebaff8SEnji Cooper 	0xa3, 0x9a, 0x21, 0xbd, 0x1c, 0x97, 0x4f, 0xe2,
631cdebaff8SEnji Cooper 	0x7d, 0x63, 0xfe, 0x52, 0x07, 0xac, 0x81, 0x75,
632cdebaff8SEnji Cooper 	0x15, 0x04, 0x8c, 0xc7, 0x7c, 0x11, 0x8d, 0x53,
633cdebaff8SEnji Cooper 	0x17, 0x87, 0xe8, 0x5d, 0xb1, 0xe8, 0xcb, 0x43,
634cdebaff8SEnji Cooper 	0xe2, 0x4b, 0xce, 0x9b, 0xf7, 0x51, 0x0a, 0xee,
635cdebaff8SEnji Cooper 	0x0a, 0x49, 0xae, 0x9a, 0xbd, 0x33, 0x3f, 0x0b,
636cdebaff8SEnji Cooper 	0xd4, 0xe8, 0x57, 0x77, 0xb1, 0xe1, 0xa5, 0x22,
637cdebaff8SEnji Cooper 	0x83, 0xbf, 0x7c, 0x63, 0x6c, 0x3b, 0x25, 0xde,
638cdebaff8SEnji Cooper 	0x2c, 0x6a, 0x28, 0x66, 0x0e, 0xc4, 0x8d, 0x66,
639cdebaff8SEnji Cooper 	0x66, 0xb6, 0xc6, 0xb5, 0x38, 0x40, 0x84, 0x81,
640cdebaff8SEnji Cooper 	0xec, 0x03, 0xdb, 0xbf, 0xe1, 0x8f, 0xf4, 0xb3,
641cdebaff8SEnji Cooper 	0xc4, 0x50, 0x24, 0xa2, 0x48, 0x66, 0x73, 0xed,
642cdebaff8SEnji Cooper 	0x4b, 0x00, 0x12, 0xd5, 0x15, 0x5f, 0xfb, 0xd9,
643cdebaff8SEnji Cooper 	0x6c, 0x76, 0x3b, 0xa2, 0x68, 0x41, 0xc1, 0x96,
644cdebaff8SEnji Cooper 	0x50, 0xff, 0x8a, 0x83, 0xac, 0x02, 0x42, 0xcb,
645cdebaff8SEnji Cooper 	0xed, 0x93, 0xbf, 0xd9, 0x51, 0x46, 0x50, 0xd1,
646cdebaff8SEnji Cooper 	0xeb, 0x02, 0x61, 0x64, 0xa7, 0x0e, 0x95, 0xc2,
647cdebaff8SEnji Cooper 	0x95, 0x5a, 0x93, 0xd9, 0x77, 0x17, 0xa4, 0xc7,
648cdebaff8SEnji Cooper 	0x51, 0x42, 0xa3, 0xd4, 0x32, 0x4e, 0x4f, 0xe1,
649cdebaff8SEnji Cooper 	0xaa, 0x6d, 0xab, 0x08, 0xd9, 0xe9, 0xfe, 0x72,
650cdebaff8SEnji Cooper 	0xf3, 0x2c, 0xfb, 0x43, 0xdf, 0x88, 0x44, 0x94,
651cdebaff8SEnji Cooper 	0x0b, 0x5c, 0x85, 0x54, 0xe3, 0x13, 0xe2, 0x10,
652cdebaff8SEnji Cooper 	0x64, 0xa7, 0xcf, 0xe3, 0x2a, 0x3e, 0xfe, 0xd1,
653cdebaff8SEnji Cooper 	0x67, 0xcd, 0xd1, 0x66, 0x06, 0x26, 0x2f, 0x6f,
654cdebaff8SEnji Cooper 	0x6f, 0x44, 0xe7, 0xf4, 0xac, 0xe4, 0x58, 0x2f,
655cdebaff8SEnji Cooper 	0x61, 0xad, 0x64, 0xc6, 0x0c, 0xf0, 0x9a, 0x3b,
656cdebaff8SEnji Cooper 	0x85, 0x1f, 0x3c, 0xea, 0x8e, 0x84, 0xbb, 0x1a,
657cdebaff8SEnji Cooper 	0x51, 0x19, 0x3c, 0x6f, 0x5b, 0xf5, 0x6c, 0xb1,
658cdebaff8SEnji Cooper 	0x8c, 0x91, 0x25, 0x89, 0x3a, 0x45, 0xb5, 0x35,
659cdebaff8SEnji Cooper 	0x13, 0x74, 0xec, 0x68, 0x44, 0xb8, 0xfd, 0xd6,
660cdebaff8SEnji Cooper 	0x20, 0x78, 0x7b, 0xe3, 0xe0, 0x82, 0xb7, 0x4a,
661cdebaff8SEnji Cooper 	0x38, 0xb6, 0xe4, 0x1b, 0xbf, 0xd9, 0xd3, 0xe9,
662cdebaff8SEnji Cooper 	0xbf, 0xd7, 0xdc, 0x8e, 0x90, 0x7d, 0xcb, 0x39,
663cdebaff8SEnji Cooper 	0xc4, 0x6c, 0xa4, 0x70, 0x15, 0xf7, 0xa2, 0x16,
664cdebaff8SEnji Cooper 	0x04, 0x9b, 0xc0, 0x85, 0x04, 0x1e, 0x69, 0x73,
665cdebaff8SEnji Cooper 	0xf3, 0xbd, 0x64, 0x95, 0xfb, 0x21, 0xcb, 0xca,
666cdebaff8SEnji Cooper 	0x72, 0xd4, 0x33, 0xe5, 0x11, 0xc3, 0x46, 0xa6,
667cdebaff8SEnji Cooper 	0xd2, 0x4c, 0x8a, 0xbb, 0xba, 0x45, 0xcc, 0x45,
668cdebaff8SEnji Cooper 	0xdb, 0x8a, 0xec, 0xef, 0x8c, 0x04, 0xcc, 0xeb,
669cdebaff8SEnji Cooper 	0x42, 0xad, 0xc3, 0x87, 0xe2, 0x59, 0x3b, 0xed,
670cdebaff8SEnji Cooper 	0x2a, 0x11, 0x74, 0xc1, 0x28, 0x8a, 0xc2, 0x17,
671cdebaff8SEnji Cooper 	0xca, 0x5a, 0x88, 0xcc, 0x17, 0x2c, 0x03, 0xf6,
672cdebaff8SEnji Cooper 	0xcd, 0xd6, 0x92, 0xbd, 0x68, 0x26, 0x41, 0x40,
673cdebaff8SEnji Cooper 	0x15, 0x3e, 0x54, 0xf5, 0xb7, 0x4a, 0x82, 0x68,
674cdebaff8SEnji Cooper 	0xca, 0x27, 0xed, 0xed, 0x25, 0xd6, 0x0d, 0x0f,
675cdebaff8SEnji Cooper 	0x86, 0x62, 0xf0, 0x86, 0x5b, 0xed, 0x94, 0x0b,
676cdebaff8SEnji Cooper 	0xd0, 0xec, 0xc7, 0xfd, 0x9c, 0x8a, 0xdf, 0x4f,
677cdebaff8SEnji Cooper 	0x65, 0x7e, 0x63, 0x40, 0xeb, 0xe4, 0x79, 0xcb,
678cdebaff8SEnji Cooper 	0x67, 0xc6, 0x0e, 0x45, 0xf9, 0xb1, 0x48, 0x27,
679cdebaff8SEnji Cooper 	0x16, 0xfc, 0x99, 0x76, 0xac, 0xd0, 0xbc, 0xe6,
680cdebaff8SEnji Cooper 	0x9b, 0x29, 0x2d, 0xa5, 0x6c, 0x88, 0x45, 0x7a,
681cdebaff8SEnji Cooper 	0x01, 0xf3, 0xe3, 0x15, 0xfb, 0x29, 0xd4, 0x3b,
682cdebaff8SEnji Cooper 	0x9a, 0xa8, 0xc6, 0x98, 0x92, 0x19, 0x16, 0xba,
683cdebaff8SEnji Cooper 	0xdc, 0x41, 0x70, 0x40, 0x51, 0xfb, 0x7f, 0xb5,
684cdebaff8SEnji Cooper 	0xe4, 0x3f, 0x3f, 0x73, 0xb0, 0xb3, 0xd7, 0x6d,
685cdebaff8SEnji Cooper 	0x3e, 0x4d, 0x6b, 0x9e, 0x42, 0x8e, 0xbb, 0xd7,
686cdebaff8SEnji Cooper 	0xb5, 0x26, 0xa9, 0x19, 0xf5, 0x68, 0xf3, 0x8d,
687cdebaff8SEnji Cooper 	0x35, 0x91, 0x06, 0x48, 0xfa, 0x0e, 0x7d, 0xe2,
688cdebaff8SEnji Cooper 	0xd3, 0x71, 0x75, 0x44, 0xbd, 0xe6, 0xe6, 0xd6,
689cdebaff8SEnji Cooper 	0x36, 0x43, 0x64, 0x3a, 0xd5, 0x97, 0xfa, 0xc0,
690cdebaff8SEnji Cooper 	0x10, 0xf7, 0x6c, 0x26, 0xf1, 0xb4, 0xbc, 0xf5,
691cdebaff8SEnji Cooper 	0xf6, 0xa3, 0xec, 0x0a, 0xb5, 0x34, 0x55, 0x1a,
692cdebaff8SEnji Cooper 	0x67, 0xcb, 0xec, 0x2c, 0x2e, 0x2e, 0x74, 0xed,
693cdebaff8SEnji Cooper 	0xfc, 0x85, 0x53, 0x01, 0x87, 0xa7, 0xa0, 0x1f,
694cdebaff8SEnji Cooper };
695cdebaff8SEnji Cooper 
696cdebaff8SEnji Cooper const struct testvec bf_cbc_128_8_vectors[] = {
697cdebaff8SEnji Cooper 	{
698cdebaff8SEnji Cooper 		.blkno = 0,
699cdebaff8SEnji Cooper 		.ptxt = bf_cbc_ptxt,
700cdebaff8SEnji Cooper 		.ctxt = bf_cbc_128_encblkno8_vec0_ctxt,
701cdebaff8SEnji Cooper 	},
702cdebaff8SEnji Cooper 	{
703cdebaff8SEnji Cooper 		.blkno = 1,
704cdebaff8SEnji Cooper 		.ptxt = bf_cbc_ptxt,
705cdebaff8SEnji Cooper 		.ctxt = bf_cbc_128_encblkno8_vec1_ctxt,
706cdebaff8SEnji Cooper 	},
707cdebaff8SEnji Cooper 	{
708cdebaff8SEnji Cooper 		.blkno = 2,
709cdebaff8SEnji Cooper 		.ptxt = bf_cbc_ptxt,
710cdebaff8SEnji Cooper 		.ctxt = bf_cbc_128_encblkno8_vec2_ctxt,
711cdebaff8SEnji Cooper 	},
712cdebaff8SEnji Cooper 	{
713cdebaff8SEnji Cooper 		.blkno = 3,
714cdebaff8SEnji Cooper 		.ptxt = bf_cbc_ptxt,
715cdebaff8SEnji Cooper 		.ctxt = bf_cbc_128_encblkno8_vec3_ctxt,
716cdebaff8SEnji Cooper 	},
717cdebaff8SEnji Cooper };
718cdebaff8SEnji Cooper 
719cdebaff8SEnji Cooper /*
720cdebaff8SEnji Cooper  * IV method encblkno1, blkno 0.
721cdebaff8SEnji Cooper  */
722cdebaff8SEnji Cooper static const uint8_t bf_cbc_256_encblkno1_vec0_ctxt[SECSIZE] = {
723cdebaff8SEnji Cooper 	0x14, 0xec, 0xa9, 0xa0, 0x51, 0x9f, 0x5e, 0xb5,
724cdebaff8SEnji Cooper 	0x81, 0x6f, 0xa2, 0xbf, 0x5e, 0xf7, 0x91, 0xad,
725cdebaff8SEnji Cooper 	0xc5, 0x1a, 0x7e, 0xe6, 0x7a, 0x82, 0x4a, 0xba,
726cdebaff8SEnji Cooper 	0x54, 0x60, 0xcb, 0xc3, 0x2f, 0x69, 0x5c, 0xd9,
727cdebaff8SEnji Cooper 	0x1e, 0x58, 0xa1, 0x88, 0xa1, 0xe5, 0xa8, 0x52,
728cdebaff8SEnji Cooper 	0xdf, 0xf3, 0x8d, 0x5e, 0x2f, 0x81, 0x54, 0xab,
729cdebaff8SEnji Cooper 	0x67, 0xb5, 0x05, 0x63, 0x20, 0x10, 0x98, 0xf5,
730cdebaff8SEnji Cooper 	0xa5, 0xc3, 0x9e, 0x6d, 0x80, 0x4d, 0xb6, 0x82,
731cdebaff8SEnji Cooper 	0x80, 0x5e, 0xb3, 0xc5, 0xd8, 0x77, 0x94, 0xa0,
732cdebaff8SEnji Cooper 	0xb8, 0x67, 0xb8, 0x2d, 0x9b, 0x11, 0x3c, 0x24,
733cdebaff8SEnji Cooper 	0xbd, 0xb7, 0x0b, 0x1d, 0xeb, 0x1d, 0x6c, 0xab,
734cdebaff8SEnji Cooper 	0x3f, 0x8c, 0x91, 0xa0, 0x3a, 0xa6, 0x0c, 0x5a,
735cdebaff8SEnji Cooper 	0x88, 0xa0, 0xb5, 0xea, 0x49, 0x58, 0xfb, 0x37,
736cdebaff8SEnji Cooper 	0x7c, 0x94, 0xc4, 0x22, 0x35, 0x84, 0xda, 0xd1,
737cdebaff8SEnji Cooper 	0x1b, 0x4a, 0x42, 0xa1, 0xd4, 0x90, 0xcd, 0xfb,
738cdebaff8SEnji Cooper 	0x77, 0x29, 0xd2, 0xe3, 0x89, 0xec, 0x9e, 0x6a,
739cdebaff8SEnji Cooper 	0x4b, 0xbc, 0xc0, 0xfa, 0xb8, 0xdd, 0x5c, 0x2b,
740cdebaff8SEnji Cooper 	0xc5, 0x49, 0xb1, 0x6d, 0x6f, 0x2c, 0xb5, 0x50,
741cdebaff8SEnji Cooper 	0xd1, 0xd4, 0x9b, 0x15, 0x1c, 0xd7, 0x44, 0xf3,
742cdebaff8SEnji Cooper 	0x2e, 0x1f, 0x46, 0xee, 0x38, 0x40, 0xaa, 0x73,
743cdebaff8SEnji Cooper 	0xca, 0xf2, 0xc3, 0x83, 0xe2, 0xff, 0xd6, 0xc7,
744cdebaff8SEnji Cooper 	0x20, 0xea, 0x70, 0x95, 0x48, 0x58, 0x29, 0x6e,
745cdebaff8SEnji Cooper 	0xac, 0x10, 0x75, 0x69, 0x1d, 0xb2, 0x08, 0x3e,
746cdebaff8SEnji Cooper 	0x68, 0x43, 0xff, 0x69, 0x1e, 0x88, 0x0a, 0x34,
747cdebaff8SEnji Cooper 	0x40, 0xae, 0xb9, 0xf4, 0xb9, 0x3f, 0xa5, 0xd2,
748cdebaff8SEnji Cooper 	0xfb, 0xa0, 0xfd, 0x10, 0xa5, 0xbb, 0xd7, 0x22,
749cdebaff8SEnji Cooper 	0x8c, 0xd1, 0xf5, 0xc4, 0x11, 0xc6, 0x1e, 0xb5,
750cdebaff8SEnji Cooper 	0xfc, 0x90, 0x84, 0xa2, 0x49, 0x38, 0x64, 0x92,
751cdebaff8SEnji Cooper 	0x6e, 0xf2, 0xaa, 0xed, 0xe8, 0x9d, 0xac, 0x86,
752cdebaff8SEnji Cooper 	0xb7, 0xb3, 0xd9, 0x98, 0x11, 0x8f, 0x51, 0x33,
753cdebaff8SEnji Cooper 	0x84, 0x06, 0x40, 0x26, 0x3f, 0xe1, 0xb3, 0x4a,
754cdebaff8SEnji Cooper 	0x76, 0x53, 0x68, 0x8b, 0xfe, 0x6f, 0xcd, 0x66,
755cdebaff8SEnji Cooper 	0x92, 0x24, 0x42, 0xf4, 0x11, 0x02, 0x01, 0x00,
756cdebaff8SEnji Cooper 	0xaa, 0x15, 0x35, 0x42, 0xab, 0x6f, 0x2b, 0x3b,
757cdebaff8SEnji Cooper 	0x9a, 0x23, 0x73, 0x18, 0xa8, 0x9b, 0x43, 0x4b,
758cdebaff8SEnji Cooper 	0xfb, 0xef, 0x07, 0x75, 0xd7, 0xd6, 0x08, 0x94,
759cdebaff8SEnji Cooper 	0xe3, 0x2d, 0xd9, 0xd4, 0x8e, 0x6b, 0x7c, 0xe0,
760cdebaff8SEnji Cooper 	0xae, 0xef, 0xcb, 0x5c, 0x46, 0x39, 0x64, 0x34,
761cdebaff8SEnji Cooper 	0x48, 0x77, 0x2c, 0x87, 0x68, 0x57, 0xef, 0xba,
762cdebaff8SEnji Cooper 	0xd3, 0x3b, 0xb8, 0x68, 0xc5, 0x65, 0x73, 0x44,
763cdebaff8SEnji Cooper 	0x0b, 0xef, 0xc7, 0x5e, 0xe6, 0xa2, 0xba, 0x24,
764cdebaff8SEnji Cooper 	0x8c, 0x67, 0xa0, 0xf4, 0xef, 0x18, 0x8c, 0x72,
765cdebaff8SEnji Cooper 	0x5b, 0x81, 0x8c, 0x81, 0x4f, 0x9a, 0xed, 0x46,
766cdebaff8SEnji Cooper 	0x5d, 0x05, 0x9a, 0xdc, 0x01, 0xbe, 0xe8, 0x3f,
767cdebaff8SEnji Cooper 	0xb7, 0x5c, 0x8b, 0x2f, 0x92, 0x2c, 0x93, 0x54,
768cdebaff8SEnji Cooper 	0x68, 0xfa, 0xd4, 0x27, 0x81, 0xab, 0xa9, 0xfd,
769cdebaff8SEnji Cooper 	0x20, 0x21, 0x1b, 0x3a, 0x6e, 0x6b, 0x02, 0x57,
770cdebaff8SEnji Cooper 	0x6e, 0xd6, 0x7b, 0x7e, 0x5d, 0x84, 0x47, 0x69,
771cdebaff8SEnji Cooper 	0x86, 0x7b, 0x8f, 0x8b, 0xff, 0xb5, 0xcd, 0xc1,
772cdebaff8SEnji Cooper 	0x03, 0x18, 0x23, 0x7f, 0x23, 0x2e, 0x3a, 0x48,
773cdebaff8SEnji Cooper 	0xe2, 0xf6, 0xb1, 0x78, 0x13, 0x81, 0xbb, 0x80,
774cdebaff8SEnji Cooper 	0x91, 0x89, 0x54, 0x7d, 0x1f, 0x1a, 0xd5, 0x35,
775cdebaff8SEnji Cooper 	0xad, 0x56, 0x6a, 0x0f, 0xeb, 0x4d, 0x00, 0xdf,
776cdebaff8SEnji Cooper 	0xe0, 0xf3, 0x7c, 0xd3, 0x2c, 0x5a, 0x48, 0x39,
777cdebaff8SEnji Cooper 	0xa1, 0xc1, 0xfa, 0x34, 0x5f, 0xf9, 0x0b, 0xcd,
778cdebaff8SEnji Cooper 	0x1f, 0x21, 0xc6, 0x46, 0xb3, 0xd8, 0x45, 0xc5,
779cdebaff8SEnji Cooper 	0x37, 0xf7, 0xd0, 0xda, 0x27, 0x0f, 0xec, 0xec,
780cdebaff8SEnji Cooper 	0x05, 0x81, 0x6f, 0x97, 0xca, 0x6d, 0xfa, 0x71,
781cdebaff8SEnji Cooper 	0xc9, 0x59, 0x84, 0xc3, 0x0d, 0x55, 0x12, 0xbf,
782cdebaff8SEnji Cooper 	0xe1, 0xd2, 0x7c, 0x51, 0x65, 0x8c, 0xc3, 0x8a,
783cdebaff8SEnji Cooper 	0x73, 0x2f, 0x1c, 0xd8, 0x13, 0x4a, 0xd1, 0x78,
784cdebaff8SEnji Cooper 	0xb2, 0xc8, 0x19, 0x09, 0xce, 0x7b, 0xb6, 0x77,
785cdebaff8SEnji Cooper 	0xcc, 0xc3, 0xe6, 0xee, 0x3a, 0x82, 0xf9, 0xc6,
786cdebaff8SEnji Cooper 	0x5a, 0x36, 0x46, 0xc0, 0x25, 0xee, 0xaf, 0x78,
787cdebaff8SEnji Cooper };
788cdebaff8SEnji Cooper 
789cdebaff8SEnji Cooper /*
790cdebaff8SEnji Cooper  * IV method encblkno1, blkno 1.
791cdebaff8SEnji Cooper  */
792cdebaff8SEnji Cooper static const uint8_t bf_cbc_256_encblkno1_vec1_ctxt[SECSIZE] = {
793cdebaff8SEnji Cooper 	0x0b, 0xb6, 0x26, 0x92, 0x1d, 0x74, 0xc2, 0x10,
794cdebaff8SEnji Cooper 	0xb5, 0x99, 0x5f, 0x62, 0x7f, 0x3b, 0x49, 0x10,
795cdebaff8SEnji Cooper 	0xc1, 0x20, 0x9f, 0x38, 0x25, 0x0f, 0x59, 0xde,
796cdebaff8SEnji Cooper 	0xe4, 0xc8, 0xb5, 0x27, 0xb1, 0xec, 0x96, 0x40,
797cdebaff8SEnji Cooper 	0xe8, 0x05, 0x15, 0x40, 0x96, 0xe0, 0xff, 0xaf,
798cdebaff8SEnji Cooper 	0x53, 0x73, 0xa1, 0xa6, 0x73, 0x03, 0xcf, 0x1f,
799cdebaff8SEnji Cooper 	0x87, 0x48, 0x7d, 0x81, 0x0e, 0x35, 0x23, 0x7b,
800cdebaff8SEnji Cooper 	0xde, 0x12, 0xd8, 0xcd, 0x0a, 0xcb, 0x03, 0xc5,
801cdebaff8SEnji Cooper 	0x07, 0xf7, 0x7a, 0x04, 0xf3, 0xda, 0x7d, 0x3b,
802cdebaff8SEnji Cooper 	0x73, 0xc6, 0x31, 0xbc, 0x24, 0xde, 0x23, 0x05,
803cdebaff8SEnji Cooper 	0x3a, 0xdc, 0xe2, 0x96, 0x85, 0x06, 0xeb, 0x89,
804cdebaff8SEnji Cooper 	0xb0, 0x49, 0x3c, 0x79, 0x8e, 0xcf, 0x49, 0x0e,
805cdebaff8SEnji Cooper 	0x34, 0x04, 0xa5, 0xcf, 0x45, 0x56, 0xb6, 0xc2,
806cdebaff8SEnji Cooper 	0xf1, 0xf1, 0xab, 0x7c, 0x8a, 0xfc, 0xeb, 0xa0,
807cdebaff8SEnji Cooper 	0x8a, 0xe6, 0x73, 0xb4, 0xc3, 0x0c, 0x03, 0x5f,
808cdebaff8SEnji Cooper 	0x03, 0x53, 0x6f, 0x69, 0xa2, 0xd0, 0xa7, 0x48,
809cdebaff8SEnji Cooper 	0xc4, 0x11, 0x88, 0x75, 0xe1, 0xf3, 0xd0, 0x72,
810cdebaff8SEnji Cooper 	0x98, 0x6f, 0x84, 0xa6, 0xa8, 0x35, 0xbb, 0xac,
811cdebaff8SEnji Cooper 	0x4d, 0xac, 0x55, 0x88, 0x85, 0x86, 0x5a, 0xd9,
812cdebaff8SEnji Cooper 	0xb6, 0x57, 0xf9, 0x40, 0xf6, 0x7f, 0x1b, 0x4e,
813cdebaff8SEnji Cooper 	0x87, 0xc0, 0x56, 0x8a, 0x2f, 0x3a, 0xe5, 0xa6,
814cdebaff8SEnji Cooper 	0x67, 0x68, 0x21, 0x2b, 0xea, 0xfa, 0xee, 0x47,
815cdebaff8SEnji Cooper 	0xa0, 0x34, 0x56, 0x7d, 0xa0, 0x3d, 0x58, 0xd7,
816cdebaff8SEnji Cooper 	0xff, 0xa2, 0xb6, 0x03, 0x52, 0x16, 0xa5, 0x15,
817cdebaff8SEnji Cooper 	0x65, 0xdb, 0xe1, 0x1b, 0xdf, 0x69, 0xb1, 0x48,
818cdebaff8SEnji Cooper 	0x6a, 0xdf, 0xc1, 0x00, 0x07, 0xdc, 0x46, 0x4b,
819cdebaff8SEnji Cooper 	0x59, 0xcf, 0x15, 0x6b, 0xee, 0x4f, 0x72, 0x77,
820cdebaff8SEnji Cooper 	0x6e, 0xbf, 0x47, 0x0e, 0x84, 0x0b, 0xb1, 0xac,
821cdebaff8SEnji Cooper 	0x85, 0xce, 0x2b, 0x47, 0x7a, 0xcc, 0x30, 0x0c,
822cdebaff8SEnji Cooper 	0x2f, 0x10, 0x27, 0xaa, 0x83, 0x3f, 0x17, 0x39,
823cdebaff8SEnji Cooper 	0x84, 0x45, 0x8c, 0xb7, 0x31, 0xb3, 0x7c, 0xcd,
824cdebaff8SEnji Cooper 	0xed, 0x86, 0x7d, 0xa9, 0x06, 0x25, 0x1f, 0xe3,
825cdebaff8SEnji Cooper 	0x9a, 0x9b, 0x92, 0xdd, 0x07, 0x63, 0x3b, 0x51,
826cdebaff8SEnji Cooper 	0x32, 0x2e, 0xae, 0xdf, 0xad, 0xd4, 0x54, 0x5d,
827cdebaff8SEnji Cooper 	0x71, 0x36, 0xe9, 0xda, 0x70, 0xe9, 0xec, 0x75,
828cdebaff8SEnji Cooper 	0x0b, 0xbb, 0xcc, 0x5d, 0xc5, 0x45, 0x8e, 0x56,
829cdebaff8SEnji Cooper 	0x12, 0x87, 0x95, 0x0f, 0x0f, 0x5b, 0x22, 0xc2,
830cdebaff8SEnji Cooper 	0xe9, 0x71, 0xf2, 0x7e, 0x7b, 0xc2, 0xce, 0x1f,
831cdebaff8SEnji Cooper 	0xb4, 0x43, 0xa5, 0xf1, 0x80, 0x03, 0xd9, 0x44,
832cdebaff8SEnji Cooper 	0x3e, 0x97, 0xd6, 0x32, 0x80, 0x99, 0x6b, 0x5b,
833cdebaff8SEnji Cooper 	0x25, 0x8b, 0x73, 0x0c, 0x21, 0xda, 0x87, 0x29,
834cdebaff8SEnji Cooper 	0x57, 0x1e, 0xa3, 0x1f, 0xc1, 0xb2, 0xd6, 0xa4,
835cdebaff8SEnji Cooper 	0x72, 0x64, 0x4a, 0x6b, 0x6f, 0x4d, 0xa8, 0x03,
836cdebaff8SEnji Cooper 	0x59, 0x6f, 0xce, 0x8a, 0xd6, 0x1c, 0x63, 0x30,
837cdebaff8SEnji Cooper 	0x60, 0xd1, 0x55, 0xc5, 0x44, 0x9a, 0xa8, 0x69,
838cdebaff8SEnji Cooper 	0x9f, 0xc7, 0xbe, 0xca, 0x92, 0x83, 0xe9, 0xea,
839cdebaff8SEnji Cooper 	0x51, 0x00, 0x5a, 0xdc, 0xbb, 0xbd, 0x5d, 0xf2,
840cdebaff8SEnji Cooper 	0x6d, 0x3c, 0x09, 0xde, 0x68, 0x33, 0x5f, 0x5c,
841cdebaff8SEnji Cooper 	0x80, 0x8e, 0x22, 0x93, 0x28, 0x5b, 0x77, 0xae,
842cdebaff8SEnji Cooper 	0xcd, 0x0d, 0x08, 0xab, 0x94, 0xd6, 0x12, 0x72,
843cdebaff8SEnji Cooper 	0x3f, 0xd2, 0xb3, 0xff, 0x87, 0x0a, 0x6f, 0x72,
844cdebaff8SEnji Cooper 	0xa7, 0xff, 0xc1, 0xdc, 0x8a, 0x64, 0xdf, 0xeb,
845cdebaff8SEnji Cooper 	0x0e, 0x63, 0x71, 0x42, 0x88, 0x2b, 0x13, 0x17,
846cdebaff8SEnji Cooper 	0xf2, 0x3b, 0xf9, 0xbb, 0xc9, 0xcc, 0x32, 0x1f,
847cdebaff8SEnji Cooper 	0x12, 0x7f, 0xa0, 0x8e, 0x77, 0x31, 0x42, 0x46,
848cdebaff8SEnji Cooper 	0x3d, 0xb6, 0xa9, 0x14, 0x6e, 0x02, 0x5a, 0x4f,
849cdebaff8SEnji Cooper 	0xf1, 0x5b, 0x91, 0x7e, 0x93, 0xea, 0x94, 0xf1,
850cdebaff8SEnji Cooper 	0xcf, 0x0e, 0x10, 0xf8, 0xc2, 0x55, 0x87, 0x68,
851cdebaff8SEnji Cooper 	0xf9, 0x49, 0xfa, 0xeb, 0x0f, 0x2c, 0xd7, 0xd8,
852cdebaff8SEnji Cooper 	0x26, 0x1a, 0x5b, 0x1a, 0x42, 0x06, 0xea, 0x8a,
853cdebaff8SEnji Cooper 	0xb6, 0xec, 0x6e, 0xb0, 0x00, 0xb9, 0x3b, 0x50,
854cdebaff8SEnji Cooper 	0xe8, 0x9e, 0xc2, 0x51, 0x4f, 0x03, 0xcd, 0x9f,
855cdebaff8SEnji Cooper 	0x36, 0x27, 0xca, 0xa2, 0x98, 0x87, 0x5a, 0xae,
856cdebaff8SEnji Cooper 	0xd8, 0x87, 0x76, 0xb6, 0xb6, 0x19, 0x7d, 0x75,
857cdebaff8SEnji Cooper };
858cdebaff8SEnji Cooper 
859cdebaff8SEnji Cooper /*
860cdebaff8SEnji Cooper  * IV method encblkno1, blkno 2.
861cdebaff8SEnji Cooper  */
862cdebaff8SEnji Cooper static const uint8_t bf_cbc_256_encblkno1_vec2_ctxt[SECSIZE] = {
863cdebaff8SEnji Cooper 	0x91, 0x45, 0x4e, 0xe8, 0xad, 0xe3, 0x95, 0x0f,
864cdebaff8SEnji Cooper 	0x40, 0x35, 0x21, 0x21, 0x77, 0x62, 0x1d, 0x65,
865cdebaff8SEnji Cooper 	0xe4, 0x93, 0x11, 0xd2, 0x20, 0xa4, 0xe4, 0x53,
866cdebaff8SEnji Cooper 	0x44, 0xff, 0x60, 0xe9, 0x34, 0xb2, 0x33, 0x87,
867cdebaff8SEnji Cooper 	0x3d, 0xb0, 0xd8, 0x37, 0x7e, 0x0e, 0x9a, 0x53,
868cdebaff8SEnji Cooper 	0x92, 0xeb, 0xee, 0x16, 0x41, 0x25, 0xe3, 0x80,
869cdebaff8SEnji Cooper 	0x0c, 0x53, 0xd8, 0x1f, 0xf0, 0x99, 0xcb, 0x31,
870cdebaff8SEnji Cooper 	0xd1, 0x00, 0x82, 0x03, 0xcc, 0xa9, 0x5c, 0x8d,
871cdebaff8SEnji Cooper 	0x1a, 0xbb, 0x03, 0x81, 0x80, 0x0d, 0x5d, 0x4a,
872cdebaff8SEnji Cooper 	0x96, 0x74, 0x79, 0xf4, 0xa7, 0x46, 0x97, 0x42,
873cdebaff8SEnji Cooper 	0x5e, 0xb6, 0x8d, 0xc1, 0x95, 0x1d, 0x98, 0x4d,
874cdebaff8SEnji Cooper 	0xe5, 0xe9, 0x70, 0x1a, 0x5a, 0xad, 0xf4, 0x3d,
875cdebaff8SEnji Cooper 	0xe1, 0xa7, 0x25, 0xc7, 0xfa, 0x0a, 0x75, 0x98,
876cdebaff8SEnji Cooper 	0x2f, 0xef, 0x16, 0x2e, 0xf2, 0x02, 0x8a, 0x4c,
877cdebaff8SEnji Cooper 	0x1f, 0x5a, 0xbb, 0x06, 0x1b, 0x4e, 0x50, 0xfb,
878cdebaff8SEnji Cooper 	0x03, 0xed, 0x2a, 0x53, 0xdc, 0x2a, 0x65, 0xad,
879cdebaff8SEnji Cooper 	0x57, 0x84, 0x48, 0xdb, 0xd2, 0x9b, 0xc0, 0x01,
880cdebaff8SEnji Cooper 	0x5f, 0x7d, 0x3e, 0x84, 0xe5, 0x15, 0x7d, 0xc5,
881cdebaff8SEnji Cooper 	0x60, 0x4b, 0x18, 0xa1, 0xf3, 0x00, 0x82, 0xd3,
882cdebaff8SEnji Cooper 	0x39, 0x2a, 0x1f, 0x8f, 0x6a, 0xb7, 0xeb, 0x76,
883cdebaff8SEnji Cooper 	0xfb, 0xf0, 0x5e, 0x66, 0xd8, 0xf1, 0x85, 0xa8,
884cdebaff8SEnji Cooper 	0x17, 0xdc, 0x6a, 0xee, 0x53, 0xd9, 0x72, 0x27,
885cdebaff8SEnji Cooper 	0xd1, 0x47, 0x73, 0x97, 0x2c, 0xd7, 0xd2, 0xb8,
886cdebaff8SEnji Cooper 	0xcd, 0xbe, 0x7b, 0xcc, 0xcc, 0x7d, 0x82, 0x10,
887cdebaff8SEnji Cooper 	0x05, 0x5d, 0xff, 0xb0, 0xe0, 0x3a, 0xda, 0x1b,
888cdebaff8SEnji Cooper 	0x39, 0x7b, 0x11, 0x30, 0x4f, 0xe7, 0xf9, 0xa6,
889cdebaff8SEnji Cooper 	0x43, 0x56, 0x01, 0xe4, 0xed, 0x1a, 0x22, 0x5b,
890cdebaff8SEnji Cooper 	0x53, 0x6b, 0x34, 0x58, 0x21, 0x3f, 0x0d, 0xca,
891cdebaff8SEnji Cooper 	0x95, 0x24, 0x9a, 0xb0, 0x03, 0xe3, 0x97, 0xf5,
892cdebaff8SEnji Cooper 	0x9b, 0xcb, 0x10, 0x6f, 0x1d, 0x8a, 0x8b, 0xaa,
893cdebaff8SEnji Cooper 	0x14, 0x0a, 0x89, 0x92, 0xa1, 0x07, 0xb1, 0x35,
894cdebaff8SEnji Cooper 	0x40, 0x7f, 0xb0, 0xc3, 0x9a, 0x2a, 0x1f, 0x94,
895cdebaff8SEnji Cooper 	0x6c, 0x8f, 0xd8, 0x40, 0x52, 0xec, 0x0e, 0xbf,
896cdebaff8SEnji Cooper 	0x91, 0x27, 0xbd, 0x65, 0x25, 0xf2, 0x36, 0xe8,
897cdebaff8SEnji Cooper 	0x8f, 0x49, 0x08, 0xa6, 0x8f, 0x82, 0xb3, 0x47,
898cdebaff8SEnji Cooper 	0xe9, 0xa4, 0xa6, 0x8e, 0xfb, 0x30, 0xb2, 0x4c,
899cdebaff8SEnji Cooper 	0xad, 0x76, 0x65, 0x25, 0xdb, 0x60, 0xa8, 0xeb,
900cdebaff8SEnji Cooper 	0xb9, 0xf9, 0x9a, 0x9c, 0x9c, 0x12, 0xab, 0xeb,
901cdebaff8SEnji Cooper 	0x4b, 0x96, 0xa5, 0xc3, 0x58, 0x9b, 0x68, 0x2c,
902cdebaff8SEnji Cooper 	0x41, 0xac, 0xe5, 0x03, 0xbc, 0xee, 0xb8, 0x05,
903cdebaff8SEnji Cooper 	0xf7, 0xe6, 0xb1, 0x07, 0xde, 0x46, 0x28, 0xc1,
904cdebaff8SEnji Cooper 	0x2c, 0x15, 0xa2, 0x34, 0xea, 0xe7, 0xc3, 0x36,
905cdebaff8SEnji Cooper 	0xe6, 0x18, 0x20, 0x4e, 0x20, 0x3f, 0x32, 0xa8,
906cdebaff8SEnji Cooper 	0x29, 0x05, 0xf6, 0xa5, 0xf2, 0xa3, 0xeb, 0x7a,
907cdebaff8SEnji Cooper 	0x25, 0x5e, 0x14, 0x1f, 0xd0, 0xe1, 0x8e, 0xfb,
908cdebaff8SEnji Cooper 	0x28, 0xc5, 0xa2, 0x42, 0xed, 0x4c, 0x12, 0x15,
909cdebaff8SEnji Cooper 	0x2a, 0x08, 0xfb, 0x0b, 0xfb, 0x94, 0x64, 0xc0,
910cdebaff8SEnji Cooper 	0x8b, 0xbb, 0xbb, 0x2c, 0xef, 0xab, 0x0b, 0x4c,
911cdebaff8SEnji Cooper 	0x27, 0x40, 0x94, 0x3e, 0x93, 0x77, 0x98, 0xcc,
912cdebaff8SEnji Cooper 	0x64, 0xe3, 0xba, 0x22, 0x95, 0xd7, 0xc1, 0xe3,
913cdebaff8SEnji Cooper 	0xa7, 0xcd, 0xf9, 0x25, 0xdc, 0xc4, 0xd2, 0xee,
914cdebaff8SEnji Cooper 	0x5b, 0x53, 0x72, 0x59, 0x8b, 0xea, 0xbf, 0xde,
915cdebaff8SEnji Cooper 	0x2b, 0x35, 0xd5, 0x27, 0x57, 0x2e, 0x13, 0xa7,
916cdebaff8SEnji Cooper 	0x50, 0x2d, 0xa5, 0xd5, 0x43, 0x0b, 0x49, 0x87,
917cdebaff8SEnji Cooper 	0xd0, 0xbd, 0xdd, 0xec, 0x4b, 0xd1, 0x8b, 0xf6,
918cdebaff8SEnji Cooper 	0xf6, 0xd0, 0x97, 0xcb, 0x8d, 0x58, 0x35, 0x27,
919cdebaff8SEnji Cooper 	0xa5, 0x7e, 0x4a, 0xda, 0x93, 0xa4, 0x1e, 0x39,
920cdebaff8SEnji Cooper 	0x53, 0x59, 0x87, 0xfe, 0x82, 0x09, 0xda, 0x03,
921cdebaff8SEnji Cooper 	0x33, 0xcf, 0x94, 0x60, 0xb1, 0x0c, 0xa1, 0x0e,
922cdebaff8SEnji Cooper 	0xd6, 0xaa, 0xb0, 0x09, 0x96, 0x8b, 0x72, 0x15,
923cdebaff8SEnji Cooper 	0xfb, 0xb0, 0x7d, 0x06, 0xf5, 0x2d, 0x64, 0xcd,
924cdebaff8SEnji Cooper 	0x03, 0xf0, 0xfa, 0xed, 0x6f, 0x43, 0xe3, 0xf3,
925cdebaff8SEnji Cooper 	0x33, 0xaf, 0x65, 0x82, 0x1d, 0xad, 0x03, 0x62,
926cdebaff8SEnji Cooper 	0xbe, 0x12, 0x14, 0x85, 0x66, 0x45, 0x03, 0x79,
927cdebaff8SEnji Cooper };
928cdebaff8SEnji Cooper 
929cdebaff8SEnji Cooper /*
930cdebaff8SEnji Cooper  * IV method encblkno1, blkno 3.
931cdebaff8SEnji Cooper  */
932cdebaff8SEnji Cooper static const uint8_t bf_cbc_256_encblkno1_vec3_ctxt[SECSIZE] = {
933cdebaff8SEnji Cooper 	0x65, 0xbb, 0x30, 0x13, 0x9a, 0x26, 0xe9, 0x3d,
934cdebaff8SEnji Cooper 	0x54, 0x28, 0x77, 0xf1, 0x3f, 0x9b, 0xe1, 0x3e,
935cdebaff8SEnji Cooper 	0x70, 0x90, 0x6f, 0x16, 0xfc, 0x2f, 0x27, 0xb3,
936cdebaff8SEnji Cooper 	0xc6, 0x3c, 0x38, 0x31, 0x11, 0xe1, 0x3b, 0x72,
937cdebaff8SEnji Cooper 	0x22, 0x1c, 0x01, 0xc5, 0xa6, 0x70, 0x16, 0x4d,
938cdebaff8SEnji Cooper 	0xd2, 0xbd, 0xcb, 0x15, 0x00, 0x22, 0xab, 0x65,
939cdebaff8SEnji Cooper 	0x6a, 0x96, 0x5e, 0x45, 0x7f, 0xfd, 0x76, 0x18,
940cdebaff8SEnji Cooper 	0x43, 0x25, 0x75, 0x73, 0xa4, 0x24, 0xe4, 0x5b,
941cdebaff8SEnji Cooper 	0xca, 0xf7, 0x6f, 0xfe, 0xc6, 0x4c, 0x81, 0x77,
942cdebaff8SEnji Cooper 	0xe5, 0x1b, 0xb4, 0x7b, 0x64, 0xc2, 0x0d, 0x2b,
943cdebaff8SEnji Cooper 	0xa9, 0x76, 0xae, 0x5d, 0xab, 0x81, 0x77, 0xa6,
944cdebaff8SEnji Cooper 	0x48, 0xe9, 0x0c, 0x6d, 0x93, 0xbd, 0x7e, 0xdc,
945cdebaff8SEnji Cooper 	0x39, 0x89, 0x72, 0xd2, 0x07, 0x87, 0x44, 0xa6,
946cdebaff8SEnji Cooper 	0x7d, 0x08, 0x54, 0xc6, 0x90, 0x1d, 0xa2, 0xd7,
947cdebaff8SEnji Cooper 	0xfd, 0xd5, 0x59, 0x67, 0xd9, 0x5f, 0x5c, 0xbc,
948cdebaff8SEnji Cooper 	0x60, 0xc7, 0xf6, 0x98, 0xad, 0x21, 0xdf, 0xde,
949cdebaff8SEnji Cooper 	0x27, 0xca, 0x73, 0x2f, 0x56, 0xb7, 0xd7, 0x54,
950cdebaff8SEnji Cooper 	0x6e, 0xc3, 0x09, 0x6f, 0x1b, 0x82, 0x6f, 0xf8,
951cdebaff8SEnji Cooper 	0x1b, 0xb2, 0x54, 0x47, 0x54, 0x55, 0x67, 0x1c,
952cdebaff8SEnji Cooper 	0x4a, 0x10, 0x44, 0xb8, 0x8e, 0x85, 0x71, 0x70,
953cdebaff8SEnji Cooper 	0x02, 0x49, 0xdd, 0x4f, 0xd4, 0xd4, 0x8a, 0x60,
954cdebaff8SEnji Cooper 	0x04, 0x17, 0x84, 0xbf, 0xb4, 0x0a, 0x6f, 0xc1,
955cdebaff8SEnji Cooper 	0xec, 0x1f, 0x5d, 0x79, 0x59, 0x15, 0x7b, 0x87,
956cdebaff8SEnji Cooper 	0xa2, 0xfe, 0x81, 0xa1, 0x0b, 0x74, 0xfa, 0xef,
957cdebaff8SEnji Cooper 	0xce, 0x96, 0xec, 0x4b, 0xd8, 0x8e, 0xe9, 0xc2,
958cdebaff8SEnji Cooper 	0x6b, 0x15, 0xd9, 0xe4, 0x1d, 0x81, 0xb2, 0x12,
959cdebaff8SEnji Cooper 	0xb9, 0x8b, 0x64, 0x3d, 0xfa, 0xf6, 0x29, 0x25,
960cdebaff8SEnji Cooper 	0x88, 0x4f, 0xfa, 0x56, 0x34, 0x85, 0xa6, 0xbe,
961cdebaff8SEnji Cooper 	0xf7, 0x9f, 0x54, 0xc4, 0xb7, 0x17, 0xd5, 0x00,
962cdebaff8SEnji Cooper 	0x2d, 0x06, 0xca, 0xf0, 0xec, 0xf9, 0x52, 0x62,
963cdebaff8SEnji Cooper 	0x12, 0xef, 0xc0, 0x57, 0xd1, 0xf3, 0xf2, 0xb1,
964cdebaff8SEnji Cooper 	0x3d, 0xc5, 0x69, 0x04, 0x95, 0xaf, 0xc6, 0x54,
965cdebaff8SEnji Cooper 	0x18, 0x08, 0x2f, 0xe2, 0xc2, 0xdb, 0x28, 0x63,
966cdebaff8SEnji Cooper 	0x7c, 0xf5, 0xba, 0xa4, 0xdf, 0xbd, 0xdd, 0xac,
967cdebaff8SEnji Cooper 	0x98, 0xec, 0x9e, 0x07, 0x48, 0xee, 0xb9, 0x6f,
968cdebaff8SEnji Cooper 	0x40, 0xba, 0x08, 0xd5, 0x74, 0x97, 0x34, 0x98,
969cdebaff8SEnji Cooper 	0x7a, 0x80, 0xc5, 0x78, 0x69, 0x11, 0xd9, 0xcb,
970cdebaff8SEnji Cooper 	0x3b, 0x6f, 0xe7, 0xb7, 0x78, 0xb0, 0x5e, 0x02,
971cdebaff8SEnji Cooper 	0xaf, 0x6c, 0xef, 0x36, 0x00, 0xca, 0x97, 0x1a,
972cdebaff8SEnji Cooper 	0x01, 0x2e, 0xe8, 0xc0, 0x8b, 0xc6, 0x78, 0xf4,
973cdebaff8SEnji Cooper 	0x2d, 0x60, 0x2c, 0x04, 0x3f, 0x0b, 0xca, 0x7e,
974cdebaff8SEnji Cooper 	0xf1, 0x2e, 0x67, 0x8f, 0x9d, 0xa7, 0xaa, 0xab,
975cdebaff8SEnji Cooper 	0xcf, 0xb3, 0x84, 0x9e, 0x14, 0x35, 0x15, 0x3b,
976cdebaff8SEnji Cooper 	0x88, 0x9a, 0x33, 0x5d, 0x68, 0x82, 0x29, 0x53,
977cdebaff8SEnji Cooper 	0x94, 0x18, 0x0d, 0x14, 0x9e, 0x5f, 0xc1, 0x32,
978cdebaff8SEnji Cooper 	0x0a, 0x95, 0x6e, 0xa3, 0x82, 0x4b, 0x58, 0x0f,
979cdebaff8SEnji Cooper 	0x9c, 0xf0, 0x26, 0x4b, 0x2f, 0x02, 0x60, 0x85,
980cdebaff8SEnji Cooper 	0xdd, 0x2c, 0xb8, 0x87, 0x8b, 0x14, 0x9c, 0x54,
981cdebaff8SEnji Cooper 	0x0a, 0x5a, 0x02, 0xbe, 0xe2, 0x71, 0xcc, 0x07,
982cdebaff8SEnji Cooper 	0xae, 0x67, 0x00, 0xa8, 0xd4, 0x09, 0x7c, 0xee,
983cdebaff8SEnji Cooper 	0x0d, 0x29, 0x17, 0x67, 0x96, 0x68, 0x41, 0xfa,
984cdebaff8SEnji Cooper 	0x72, 0x29, 0x98, 0x2b, 0x23, 0xd1, 0xa9, 0x89,
985cdebaff8SEnji Cooper 	0x1c, 0xcc, 0xaf, 0x88, 0xdb, 0xb5, 0x1e, 0xb1,
986cdebaff8SEnji Cooper 	0xae, 0x17, 0x5f, 0x29, 0x8d, 0x1c, 0x0a, 0x5c,
987cdebaff8SEnji Cooper 	0xb9, 0xa7, 0x59, 0x8b, 0x91, 0x41, 0xee, 0x89,
988cdebaff8SEnji Cooper 	0xe1, 0x0e, 0x7e, 0x0a, 0xee, 0xbc, 0x35, 0xab,
989cdebaff8SEnji Cooper 	0xf1, 0x5a, 0x58, 0x03, 0xa2, 0xcf, 0x33, 0xa3,
990cdebaff8SEnji Cooper 	0x74, 0x82, 0xd3, 0xa0, 0x32, 0xfc, 0x3b, 0x9c,
991cdebaff8SEnji Cooper 	0xdf, 0xc0, 0x3a, 0x76, 0xe1, 0xea, 0xf0, 0x6d,
992cdebaff8SEnji Cooper 	0xc8, 0xe7, 0x97, 0xec, 0x03, 0xc1, 0x72, 0x94,
993cdebaff8SEnji Cooper 	0xe5, 0xc4, 0x04, 0x2a, 0x38, 0xb4, 0xef, 0x47,
994cdebaff8SEnji Cooper 	0x1d, 0xf9, 0xb8, 0x0a, 0xa9, 0x45, 0xc1, 0x63,
995cdebaff8SEnji Cooper 	0xf8, 0x32, 0xdb, 0x5d, 0xb1, 0xa2, 0x80, 0x8c,
996cdebaff8SEnji Cooper 	0x23, 0xd3, 0x60, 0xfb, 0xf8, 0x84, 0x57, 0x8b,
997cdebaff8SEnji Cooper };
998cdebaff8SEnji Cooper 
999cdebaff8SEnji Cooper const struct testvec bf_cbc_256_1_vectors[] = {
1000cdebaff8SEnji Cooper 	{
1001cdebaff8SEnji Cooper 		.blkno = 0,
1002cdebaff8SEnji Cooper 		.ptxt = bf_cbc_ptxt,
1003cdebaff8SEnji Cooper 		.ctxt = bf_cbc_256_encblkno1_vec0_ctxt,
1004cdebaff8SEnji Cooper 	},
1005cdebaff8SEnji Cooper 	{
1006cdebaff8SEnji Cooper 		.blkno = 1,
1007cdebaff8SEnji Cooper 		.ptxt = bf_cbc_ptxt,
1008cdebaff8SEnji Cooper 		.ctxt = bf_cbc_256_encblkno1_vec1_ctxt,
1009cdebaff8SEnji Cooper 	},
1010cdebaff8SEnji Cooper 	{
1011cdebaff8SEnji Cooper 		.blkno = 2,
1012cdebaff8SEnji Cooper 		.ptxt = bf_cbc_ptxt,
1013cdebaff8SEnji Cooper 		.ctxt = bf_cbc_256_encblkno1_vec2_ctxt,
1014cdebaff8SEnji Cooper 	},
1015cdebaff8SEnji Cooper 	{
1016cdebaff8SEnji Cooper 		.blkno = 3,
1017cdebaff8SEnji Cooper 		.ptxt = bf_cbc_ptxt,
1018cdebaff8SEnji Cooper 		.ctxt = bf_cbc_256_encblkno1_vec3_ctxt,
1019cdebaff8SEnji Cooper 	},
1020cdebaff8SEnji Cooper };
1021cdebaff8SEnji Cooper 
1022cdebaff8SEnji Cooper /*
1023cdebaff8SEnji Cooper  * IV method encblkno8, blkno 0.
1024cdebaff8SEnji Cooper  */
1025cdebaff8SEnji Cooper static const uint8_t bf_cbc_256_encblkno8_vec0_ctxt[SECSIZE] = {
1026cdebaff8SEnji Cooper 	0x90, 0x3d, 0xd2, 0xc0, 0xd3, 0x75, 0xe8, 0x04,
1027cdebaff8SEnji Cooper 	0x34, 0x66, 0x76, 0x25, 0x70, 0xde, 0x41, 0xf1,
1028cdebaff8SEnji Cooper 	0x35, 0x63, 0x5c, 0xac, 0x8f, 0x28, 0x17, 0xd3,
1029cdebaff8SEnji Cooper 	0xae, 0x43, 0xfd, 0x8a, 0xb8, 0xc2, 0xd3, 0x88,
1030cdebaff8SEnji Cooper 	0xef, 0xfa, 0x21, 0xeb, 0xb4, 0x33, 0x75, 0x69,
1031cdebaff8SEnji Cooper 	0x7d, 0xe9, 0x27, 0x1c, 0x03, 0xcf, 0x90, 0xcf,
1032cdebaff8SEnji Cooper 	0xf0, 0xaa, 0x3e, 0x01, 0x41, 0x24, 0xdc, 0x01,
1033cdebaff8SEnji Cooper 	0x5a, 0xe8, 0x92, 0xea, 0xde, 0x87, 0xbf, 0x75,
1034cdebaff8SEnji Cooper 	0xe4, 0x0b, 0xf7, 0xa3, 0x42, 0x27, 0xc4, 0xde,
1035cdebaff8SEnji Cooper 	0x01, 0x6f, 0x5c, 0xec, 0x6d, 0x37, 0x38, 0xd7,
1036cdebaff8SEnji Cooper 	0x4f, 0x85, 0xc0, 0xc2, 0x3a, 0xa7, 0x2d, 0x15,
1037cdebaff8SEnji Cooper 	0xd5, 0x1c, 0xee, 0x15, 0x13, 0x7a, 0x4e, 0x33,
1038cdebaff8SEnji Cooper 	0xc7, 0x59, 0x93, 0x73, 0xe9, 0xf5, 0x39, 0xb0,
1039cdebaff8SEnji Cooper 	0xad, 0x8b, 0x61, 0xca, 0x4d, 0x31, 0xaa, 0x44,
1040cdebaff8SEnji Cooper 	0xf6, 0x5c, 0xb7, 0x99, 0xe5, 0x92, 0x3d, 0x47,
1041cdebaff8SEnji Cooper 	0x79, 0x9b, 0x29, 0x16, 0xe1, 0x2c, 0x30, 0x8b,
1042cdebaff8SEnji Cooper 	0x1e, 0x17, 0xf0, 0x91, 0x59, 0x00, 0xab, 0x6d,
1043cdebaff8SEnji Cooper 	0x4d, 0xa7, 0x4d, 0x96, 0xc3, 0xe4, 0x3d, 0x17,
1044cdebaff8SEnji Cooper 	0x5c, 0x8e, 0xfc, 0x59, 0x48, 0xd4, 0xdd, 0xf4,
1045cdebaff8SEnji Cooper 	0xea, 0x3a, 0x68, 0xc8, 0xb1, 0x74, 0x69, 0xcb,
1046cdebaff8SEnji Cooper 	0x49, 0x1a, 0xec, 0x24, 0x4e, 0x7e, 0xe9, 0xba,
1047cdebaff8SEnji Cooper 	0x75, 0xfb, 0x52, 0x85, 0x75, 0xe9, 0x41, 0x9a,
1048cdebaff8SEnji Cooper 	0xc6, 0x40, 0x9c, 0x92, 0x3f, 0xe8, 0x99, 0x81,
1049cdebaff8SEnji Cooper 	0x84, 0x14, 0x2b, 0x62, 0x94, 0xba, 0x56, 0x00,
1050cdebaff8SEnji Cooper 	0xde, 0x88, 0xe1, 0x35, 0xea, 0x25, 0x88, 0xd1,
1051cdebaff8SEnji Cooper 	0xce, 0xd4, 0xfc, 0xde, 0xee, 0x1a, 0xfd, 0xb1,
1052cdebaff8SEnji Cooper 	0xa7, 0x46, 0x9d, 0x0c, 0x99, 0xa6, 0xab, 0x23,
1053cdebaff8SEnji Cooper 	0x55, 0x2f, 0x46, 0xd7, 0xb3, 0xcd, 0x2c, 0xab,
1054cdebaff8SEnji Cooper 	0x93, 0x3e, 0xdb, 0xe2, 0x34, 0x69, 0x1a, 0x56,
1055cdebaff8SEnji Cooper 	0x21, 0x92, 0x56, 0xf4, 0x05, 0xe1, 0x24, 0xee,
1056cdebaff8SEnji Cooper 	0x4d, 0x5e, 0x89, 0xeb, 0x23, 0x26, 0xdc, 0x14,
1057cdebaff8SEnji Cooper 	0xde, 0x56, 0x3f, 0x0c, 0x15, 0x3e, 0x42, 0x71,
1058cdebaff8SEnji Cooper 	0x9b, 0xe8, 0xc5, 0xfd, 0x5e, 0x4a, 0xb6, 0xd9,
1059cdebaff8SEnji Cooper 	0xa0, 0x18, 0x5d, 0xbd, 0xef, 0x80, 0xb4, 0xf6,
1060cdebaff8SEnji Cooper 	0x1e, 0x56, 0x2a, 0x57, 0x13, 0xba, 0x24, 0xa4,
1061cdebaff8SEnji Cooper 	0x6f, 0x4c, 0xd4, 0xaa, 0x31, 0x5e, 0x69, 0x26,
1062cdebaff8SEnji Cooper 	0xd2, 0xee, 0xef, 0x7f, 0x83, 0x9c, 0x8e, 0x6a,
1063cdebaff8SEnji Cooper 	0x17, 0xe3, 0xda, 0xf4, 0x59, 0xad, 0x26, 0x83,
1064cdebaff8SEnji Cooper 	0x53, 0x4c, 0x0d, 0x62, 0xe5, 0x9a, 0x30, 0xc5,
1065cdebaff8SEnji Cooper 	0x0a, 0xa8, 0xb1, 0x3b, 0x1b, 0x41, 0x5c, 0x74,
1066cdebaff8SEnji Cooper 	0x42, 0x7b, 0x0c, 0x9e, 0x3c, 0x12, 0x04, 0x46,
1067cdebaff8SEnji Cooper 	0xc3, 0xc7, 0x10, 0xea, 0xf1, 0x3b, 0xb1, 0x01,
1068cdebaff8SEnji Cooper 	0xfe, 0x1b, 0xe8, 0xf8, 0x42, 0xbc, 0xe9, 0x11,
1069cdebaff8SEnji Cooper 	0x9b, 0x63, 0x29, 0x99, 0x18, 0x79, 0x9e, 0xd2,
1070cdebaff8SEnji Cooper 	0xbf, 0x9d, 0x93, 0x4d, 0x16, 0x0f, 0x14, 0x41,
1071cdebaff8SEnji Cooper 	0xb6, 0x0c, 0xa5, 0x07, 0x13, 0x29, 0x21, 0x0d,
1072cdebaff8SEnji Cooper 	0x8f, 0xf9, 0x0a, 0x0a, 0x54, 0xaf, 0xa6, 0x22,
1073cdebaff8SEnji Cooper 	0x25, 0x79, 0x07, 0xe5, 0x3e, 0x49, 0x6b, 0x12,
1074cdebaff8SEnji Cooper 	0x9e, 0xfc, 0x91, 0xdb, 0xf3, 0x7c, 0xdf, 0x03,
1075cdebaff8SEnji Cooper 	0x9c, 0x78, 0xa7, 0xc3, 0x5e, 0x14, 0xde, 0xb5,
1076cdebaff8SEnji Cooper 	0x6a, 0x7b, 0x3b, 0xe3, 0x4f, 0x8a, 0x49, 0xce,
1077cdebaff8SEnji Cooper 	0xc9, 0x14, 0x29, 0x96, 0x84, 0xca, 0xe1, 0x49,
1078cdebaff8SEnji Cooper 	0x41, 0x73, 0xb3, 0x2a, 0xbe, 0x37, 0xb6, 0x2d,
1079cdebaff8SEnji Cooper 	0xff, 0xf2, 0x8e, 0x3d, 0x02, 0xeb, 0xd4, 0xd3,
1080cdebaff8SEnji Cooper 	0x15, 0x8f, 0xc0, 0x00, 0x91, 0xd5, 0xe7, 0x76,
1081cdebaff8SEnji Cooper 	0xf5, 0x6e, 0x81, 0x38, 0x38, 0x07, 0xa6, 0xe8,
1082cdebaff8SEnji Cooper 	0x72, 0x14, 0x3b, 0x36, 0xef, 0xbc, 0x5b, 0x26,
1083cdebaff8SEnji Cooper 	0xb0, 0x60, 0x25, 0x49, 0x7e, 0xfc, 0xd8, 0x3b,
1084cdebaff8SEnji Cooper 	0x63, 0xdc, 0x7f, 0x80, 0xd5, 0x43, 0x78, 0xbb,
1085cdebaff8SEnji Cooper 	0xf1, 0xf9, 0x3e, 0x75, 0x1d, 0x58, 0xb2, 0xc7,
1086cdebaff8SEnji Cooper 	0xb6, 0x52, 0xfb, 0xe7, 0x42, 0xef, 0x87, 0xfd,
1087cdebaff8SEnji Cooper 	0x3a, 0x02, 0x7a, 0xf9, 0xbc, 0xa8, 0x2f, 0xd6,
1088cdebaff8SEnji Cooper 	0xc1, 0x5f, 0xa4, 0x57, 0x62, 0x83, 0x82, 0x8e,
1089cdebaff8SEnji Cooper 	0x1e, 0xbb, 0x85, 0xf7, 0x1b, 0x2e, 0xe2, 0xb0,
1090cdebaff8SEnji Cooper };
1091cdebaff8SEnji Cooper 
1092cdebaff8SEnji Cooper /*
1093cdebaff8SEnji Cooper  * IV method encblkno8, blkno 1.
1094cdebaff8SEnji Cooper  */
1095cdebaff8SEnji Cooper static const uint8_t bf_cbc_256_encblkno8_vec1_ctxt[SECSIZE] = {
1096cdebaff8SEnji Cooper 	0x2b, 0xf6, 0xd4, 0x61, 0x3b, 0x1f, 0x5b, 0xe9,
1097cdebaff8SEnji Cooper 	0x32, 0xab, 0x27, 0xa1, 0xaf, 0x5e, 0xf4, 0xa7,
1098cdebaff8SEnji Cooper 	0xaa, 0xc5, 0x2a, 0x3c, 0x0d, 0x34, 0xd8, 0xb3,
1099cdebaff8SEnji Cooper 	0xfd, 0xb2, 0xca, 0xfb, 0x3c, 0x38, 0x96, 0x71,
1100cdebaff8SEnji Cooper 	0x47, 0xaa, 0xa7, 0x2f, 0x48, 0x2c, 0x39, 0x88,
1101cdebaff8SEnji Cooper 	0x2d, 0xc6, 0xb1, 0xf7, 0xc7, 0x2d, 0xda, 0xe9,
1102cdebaff8SEnji Cooper 	0xfb, 0x4f, 0x9b, 0x1f, 0xe1, 0x0c, 0x24, 0x89,
1103cdebaff8SEnji Cooper 	0xfe, 0x70, 0xe0, 0xb2, 0x51, 0x89, 0x51, 0xa9,
1104cdebaff8SEnji Cooper 	0xae, 0xd1, 0x92, 0x4f, 0x56, 0x5c, 0x2a, 0xf4,
1105cdebaff8SEnji Cooper 	0xbc, 0x4e, 0x77, 0x4a, 0xb8, 0xab, 0x02, 0x76,
1106cdebaff8SEnji Cooper 	0xef, 0x69, 0xfb, 0x5e, 0x06, 0xb5, 0xff, 0x31,
1107cdebaff8SEnji Cooper 	0xce, 0x2b, 0xfc, 0x48, 0x4c, 0x82, 0xe9, 0x3c,
1108cdebaff8SEnji Cooper 	0x61, 0x69, 0x68, 0x1d, 0xb1, 0xc6, 0x40, 0x10,
1109cdebaff8SEnji Cooper 	0xd7, 0x0e, 0xd2, 0x26, 0x33, 0x5b, 0x0b, 0xe7,
1110cdebaff8SEnji Cooper 	0xc2, 0xbe, 0xf4, 0x24, 0x1a, 0xa6, 0x70, 0x31,
1111cdebaff8SEnji Cooper 	0xa7, 0x15, 0x76, 0xc7, 0x90, 0x8d, 0x60, 0xe0,
1112cdebaff8SEnji Cooper 	0xee, 0x5b, 0x73, 0xa9, 0xe1, 0xe1, 0xaf, 0xf0,
1113cdebaff8SEnji Cooper 	0x5e, 0x6f, 0x32, 0x98, 0x92, 0xbe, 0x24, 0x81,
1114cdebaff8SEnji Cooper 	0x26, 0x9f, 0xb8, 0x67, 0xd0, 0xca, 0x9d, 0x8f,
1115cdebaff8SEnji Cooper 	0x14, 0xc8, 0x81, 0x2e, 0x57, 0x1c, 0x3a, 0xe0,
1116cdebaff8SEnji Cooper 	0xdb, 0x49, 0xad, 0x47, 0x51, 0x07, 0x7d, 0xec,
1117cdebaff8SEnji Cooper 	0xbc, 0xa5, 0x8f, 0xdf, 0x84, 0xe4, 0xdf, 0x76,
1118cdebaff8SEnji Cooper 	0x8f, 0x0b, 0xef, 0xc4, 0x41, 0xd5, 0x7c, 0xf5,
1119cdebaff8SEnji Cooper 	0x3c, 0x21, 0x62, 0xc0, 0x1f, 0xbd, 0x39, 0xbe,
1120cdebaff8SEnji Cooper 	0xe5, 0x75, 0x64, 0xcd, 0xa4, 0xa0, 0x03, 0xf4,
1121cdebaff8SEnji Cooper 	0x8a, 0x16, 0x3e, 0xde, 0x79, 0x9a, 0x96, 0xff,
1122cdebaff8SEnji Cooper 	0xf2, 0xbe, 0x88, 0xfd, 0xac, 0xc1, 0x9d, 0x5b,
1123cdebaff8SEnji Cooper 	0xbf, 0x2f, 0xde, 0xf0, 0x26, 0x2f, 0xc9, 0x45,
1124cdebaff8SEnji Cooper 	0xbd, 0x26, 0xa5, 0x2c, 0x3c, 0x12, 0x8b, 0xc0,
1125cdebaff8SEnji Cooper 	0xc8, 0x7a, 0x71, 0xbb, 0xc3, 0xe9, 0xf6, 0x15,
1126cdebaff8SEnji Cooper 	0x01, 0x6e, 0x94, 0x37, 0xbc, 0xc5, 0x9a, 0x93,
1127cdebaff8SEnji Cooper 	0x6f, 0x9c, 0x04, 0x7e, 0xe9, 0xb2, 0xba, 0xe8,
1128cdebaff8SEnji Cooper 	0x86, 0xa1, 0x9c, 0x1f, 0x4b, 0x77, 0x6f, 0x99,
1129cdebaff8SEnji Cooper 	0x2d, 0x8f, 0x23, 0x34, 0x32, 0x1a, 0x82, 0x2d,
1130cdebaff8SEnji Cooper 	0x32, 0x41, 0x3e, 0xb8, 0x6a, 0x67, 0xa9, 0x81,
1131cdebaff8SEnji Cooper 	0xd5, 0x1b, 0x76, 0x9f, 0xd1, 0xb0, 0x06, 0xaf,
1132cdebaff8SEnji Cooper 	0x10, 0x9e, 0x00, 0x2e, 0xb3, 0x80, 0xde, 0xae,
1133cdebaff8SEnji Cooper 	0xf2, 0x96, 0x12, 0x5b, 0xe7, 0xc7, 0x25, 0xb7,
1134cdebaff8SEnji Cooper 	0xd9, 0x1c, 0x04, 0xe5, 0x05, 0xaf, 0x77, 0xfa,
1135cdebaff8SEnji Cooper 	0x6d, 0xa8, 0x04, 0x74, 0xf8, 0x9c, 0x09, 0xcf,
1136cdebaff8SEnji Cooper 	0xe2, 0xc2, 0xd1, 0xb6, 0xac, 0xed, 0xb4, 0xbc,
1137cdebaff8SEnji Cooper 	0x2e, 0xc2, 0xf6, 0x3c, 0xc4, 0x47, 0xc8, 0x81,
1138cdebaff8SEnji Cooper 	0x3a, 0x50, 0x3c, 0x5c, 0x7c, 0x86, 0x17, 0x22,
1139cdebaff8SEnji Cooper 	0xe7, 0xa3, 0xff, 0x73, 0x5e, 0x91, 0xbf, 0xb3,
1140cdebaff8SEnji Cooper 	0x59, 0x07, 0xb7, 0xa4, 0xd5, 0x1b, 0x5c, 0xce,
1141cdebaff8SEnji Cooper 	0x56, 0xde, 0x5f, 0xae, 0x89, 0xcb, 0x6a, 0xfe,
1142cdebaff8SEnji Cooper 	0xaf, 0xe7, 0xd4, 0x34, 0x8d, 0x18, 0x22, 0x4d,
1143cdebaff8SEnji Cooper 	0xd9, 0x91, 0xa6, 0xec, 0x97, 0x0e, 0x29, 0x4d,
1144cdebaff8SEnji Cooper 	0xf6, 0xd8, 0xb3, 0x50, 0x1c, 0xc9, 0x66, 0x9d,
1145cdebaff8SEnji Cooper 	0x2e, 0x5e, 0x27, 0xce, 0x36, 0xcb, 0x47, 0x35,
1146cdebaff8SEnji Cooper 	0x41, 0x16, 0x0c, 0x4e, 0x73, 0x90, 0x52, 0xc5,
1147cdebaff8SEnji Cooper 	0x65, 0xb8, 0x0c, 0xdc, 0x36, 0x8d, 0xdc, 0xca,
1148cdebaff8SEnji Cooper 	0x97, 0x0b, 0xbc, 0xcb, 0x79, 0xc7, 0x4c, 0xd2,
1149cdebaff8SEnji Cooper 	0x21, 0x5c, 0xbd, 0xeb, 0xea, 0xfb, 0x87, 0xe1,
1150cdebaff8SEnji Cooper 	0xe0, 0x75, 0x39, 0xb9, 0x84, 0x1e, 0xa7, 0xfe,
1151cdebaff8SEnji Cooper 	0x7d, 0x41, 0x75, 0x15, 0x88, 0x98, 0xd4, 0x80,
1152cdebaff8SEnji Cooper 	0x42, 0x57, 0xb5, 0x65, 0xbf, 0xb8, 0xbd, 0x19,
1153cdebaff8SEnji Cooper 	0x28, 0xd8, 0xa7, 0x6c, 0xe7, 0xc1, 0x00, 0xdc,
1154cdebaff8SEnji Cooper 	0xde, 0xcb, 0x30, 0x3d, 0x29, 0x5e, 0xa6, 0x9c,
1155cdebaff8SEnji Cooper 	0xbb, 0xb8, 0xec, 0x28, 0x23, 0x36, 0x23, 0x27,
1156cdebaff8SEnji Cooper 	0xee, 0xdd, 0x24, 0x7d, 0x9a, 0xc9, 0xb5, 0x3c,
1157cdebaff8SEnji Cooper 	0x7a, 0x3f, 0x1d, 0xd9, 0x32, 0x47, 0xc0, 0x4d,
1158cdebaff8SEnji Cooper 	0x86, 0x9b, 0x2d, 0xa9, 0x5c, 0x93, 0x90, 0x51,
1159cdebaff8SEnji Cooper 	0x70, 0xe6, 0x8f, 0x35, 0x96, 0xe0, 0x11, 0x00,
1160cdebaff8SEnji Cooper };
1161cdebaff8SEnji Cooper 
1162cdebaff8SEnji Cooper /*
1163cdebaff8SEnji Cooper  * IV method encblkno8, blkno 2.
1164cdebaff8SEnji Cooper  */
1165cdebaff8SEnji Cooper static const uint8_t bf_cbc_256_encblkno8_vec2_ctxt[SECSIZE] = {
1166cdebaff8SEnji Cooper 	0x28, 0x93, 0x0f, 0x23, 0xfb, 0xa4, 0x9e, 0xe5,
1167cdebaff8SEnji Cooper 	0x11, 0x38, 0x2b, 0xbd, 0x8d, 0x2d, 0xdb, 0x11,
1168cdebaff8SEnji Cooper 	0xfa, 0xac, 0x74, 0x28, 0x95, 0x29, 0xf2, 0x92,
1169cdebaff8SEnji Cooper 	0x8d, 0x00, 0x8a, 0x8a, 0x04, 0x92, 0x92, 0x33,
1170cdebaff8SEnji Cooper 	0x8c, 0x4b, 0x29, 0x8e, 0xde, 0x59, 0xf4, 0x72,
1171cdebaff8SEnji Cooper 	0xae, 0x2f, 0xe4, 0xe9, 0xd4, 0xe4, 0xb6, 0x69,
1172cdebaff8SEnji Cooper 	0xc5, 0x1b, 0xbe, 0x02, 0x85, 0x4b, 0x24, 0x1e,
1173cdebaff8SEnji Cooper 	0x79, 0xb9, 0x22, 0x29, 0x4c, 0x60, 0x8c, 0xc5,
1174cdebaff8SEnji Cooper 	0x03, 0x1d, 0x79, 0xfe, 0x3d, 0x9e, 0x47, 0xb6,
1175cdebaff8SEnji Cooper 	0xf7, 0x17, 0x65, 0x24, 0x15, 0x5d, 0x75, 0x4d,
1176cdebaff8SEnji Cooper 	0xdb, 0xbc, 0x68, 0x67, 0x3b, 0xc3, 0x5a, 0x7e,
1177cdebaff8SEnji Cooper 	0x9d, 0x98, 0x67, 0xe4, 0x8f, 0x9a, 0xd1, 0x31,
1178cdebaff8SEnji Cooper 	0xe0, 0x26, 0xa1, 0x68, 0xbe, 0x53, 0x73, 0x7c,
1179cdebaff8SEnji Cooper 	0xfd, 0xce, 0x6c, 0xd6, 0x1f, 0x51, 0xe6, 0x84,
1180cdebaff8SEnji Cooper 	0x54, 0x7a, 0xe3, 0x7f, 0x7c, 0x8f, 0x2f, 0x88,
1181cdebaff8SEnji Cooper 	0x58, 0xfe, 0x5e, 0x82, 0x11, 0xc9, 0xa5, 0x89,
1182cdebaff8SEnji Cooper 	0xa4, 0x49, 0x92, 0x21, 0x0f, 0x03, 0xdb, 0x16,
1183cdebaff8SEnji Cooper 	0xc4, 0xc0, 0x80, 0xb7, 0x16, 0x4c, 0x29, 0xbe,
1184cdebaff8SEnji Cooper 	0x18, 0xfa, 0x2d, 0xdf, 0x4a, 0x23, 0x34, 0x9a,
1185cdebaff8SEnji Cooper 	0x27, 0xea, 0xed, 0x95, 0x25, 0x14, 0xa8, 0x2e,
1186cdebaff8SEnji Cooper 	0x17, 0x59, 0x04, 0xb0, 0x5c, 0x6d, 0xc7, 0xeb,
1187cdebaff8SEnji Cooper 	0xed, 0xf6, 0x73, 0xae, 0x18, 0x0e, 0x4b, 0xec,
1188cdebaff8SEnji Cooper 	0xc6, 0xb7, 0x39, 0xe7, 0x62, 0xf0, 0x84, 0x30,
1189cdebaff8SEnji Cooper 	0x10, 0xb6, 0xf3, 0x27, 0x6d, 0xfe, 0x32, 0xe7,
1190cdebaff8SEnji Cooper 	0xfe, 0xff, 0x43, 0xba, 0x89, 0xfe, 0x24, 0xa8,
1191cdebaff8SEnji Cooper 	0x0e, 0x7c, 0xf2, 0x23, 0x9d, 0x66, 0x6f, 0x9c,
1192cdebaff8SEnji Cooper 	0xe6, 0x88, 0xbc, 0x3f, 0x44, 0x4c, 0x73, 0x13,
1193cdebaff8SEnji Cooper 	0x77, 0x95, 0x6f, 0xcb, 0xc8, 0xa5, 0x7a, 0xa9,
1194cdebaff8SEnji Cooper 	0xeb, 0xe1, 0x0f, 0x9e, 0x25, 0xbe, 0x99, 0x1a,
1195cdebaff8SEnji Cooper 	0x99, 0x7f, 0xbb, 0xec, 0x89, 0x91, 0x3e, 0x52,
1196cdebaff8SEnji Cooper 	0xb5, 0xac, 0xc9, 0xd3, 0xea, 0xb0, 0xf2, 0x0c,
1197cdebaff8SEnji Cooper 	0xc8, 0x58, 0x4b, 0x93, 0xa3, 0x9f, 0xad, 0x5a,
1198cdebaff8SEnji Cooper 	0x80, 0x4e, 0x02, 0x20, 0x9d, 0xac, 0x4b, 0xe0,
1199cdebaff8SEnji Cooper 	0x59, 0x4d, 0xb5, 0x51, 0x07, 0xf5, 0xa6, 0xb3,
1200cdebaff8SEnji Cooper 	0xc9, 0x20, 0x58, 0x7e, 0x45, 0xec, 0x58, 0xea,
1201cdebaff8SEnji Cooper 	0x49, 0xbb, 0x03, 0xf5, 0x6c, 0xdd, 0xcc, 0xa3,
1202cdebaff8SEnji Cooper 	0x13, 0x21, 0x79, 0xc9, 0xc2, 0x92, 0x60, 0xd5,
1203cdebaff8SEnji Cooper 	0xb2, 0x3b, 0x74, 0xbc, 0x57, 0xa6, 0x70, 0x36,
1204cdebaff8SEnji Cooper 	0x75, 0xf5, 0x01, 0xd1, 0xb2, 0xe9, 0xfd, 0xc5,
1205cdebaff8SEnji Cooper 	0x93, 0x5e, 0x60, 0x6b, 0xfd, 0xd2, 0x56, 0xc0,
1206cdebaff8SEnji Cooper 	0x1f, 0xe4, 0xcd, 0x4c, 0xfa, 0xc4, 0xd8, 0xc2,
1207cdebaff8SEnji Cooper 	0x2d, 0xf9, 0x9f, 0x82, 0x0f, 0x40, 0x7b, 0xad,
1208cdebaff8SEnji Cooper 	0x35, 0x63, 0x95, 0x7e, 0x49, 0x4a, 0xfe, 0x8f,
1209cdebaff8SEnji Cooper 	0xaa, 0x57, 0x3a, 0x0c, 0x59, 0x69, 0xe7, 0xb8,
1210cdebaff8SEnji Cooper 	0xfc, 0x71, 0x5c, 0x4f, 0x18, 0x12, 0xe5, 0xef,
1211cdebaff8SEnji Cooper 	0xdb, 0x1f, 0x66, 0x9a, 0xe2, 0x1a, 0x92, 0x1f,
1212cdebaff8SEnji Cooper 	0xfe, 0x20, 0x81, 0xe5, 0x83, 0x97, 0xfb, 0xaf,
1213cdebaff8SEnji Cooper 	0xeb, 0x31, 0x6c, 0x81, 0xf2, 0x2f, 0xf4, 0x41,
1214cdebaff8SEnji Cooper 	0xf1, 0xd9, 0x61, 0xfb, 0x36, 0x4e, 0xab, 0xc5,
1215cdebaff8SEnji Cooper 	0x8b, 0x9c, 0x37, 0xea, 0x88, 0xeb, 0x1e, 0x4c,
1216cdebaff8SEnji Cooper 	0x84, 0x1a, 0xac, 0x4c, 0x19, 0x39, 0x51, 0x53,
1217cdebaff8SEnji Cooper 	0xe0, 0x50, 0xb0, 0xdf, 0xe6, 0xc5, 0xbb, 0x80,
1218cdebaff8SEnji Cooper 	0x06, 0x30, 0x14, 0xf5, 0x0e, 0x73, 0xd2, 0xdb,
1219cdebaff8SEnji Cooper 	0x19, 0x45, 0x30, 0xdc, 0xd0, 0x4d, 0xe6, 0xd6,
1220cdebaff8SEnji Cooper 	0x0e, 0x2d, 0x77, 0xa3, 0xb3, 0x27, 0xda, 0x99,
1221cdebaff8SEnji Cooper 	0x62, 0x88, 0x35, 0xba, 0x64, 0x15, 0xec, 0xaf,
1222cdebaff8SEnji Cooper 	0x70, 0x97, 0x94, 0x81, 0x30, 0x6d, 0x63, 0x42,
1223cdebaff8SEnji Cooper 	0x71, 0x3e, 0x06, 0xec, 0x50, 0x96, 0x87, 0x59,
1224cdebaff8SEnji Cooper 	0xe7, 0x26, 0x9c, 0xcf, 0xc7, 0xe7, 0x62, 0x82,
1225cdebaff8SEnji Cooper 	0x3b, 0xd7, 0xfe, 0xb4, 0x48, 0x45, 0x9d, 0x54,
1226cdebaff8SEnji Cooper 	0x18, 0x15, 0x13, 0x74, 0x92, 0x6f, 0x43, 0xb3,
1227cdebaff8SEnji Cooper 	0xa9, 0x82, 0xd4, 0xc2, 0xef, 0x61, 0x9d, 0x5e,
1228cdebaff8SEnji Cooper 	0x1d, 0xc6, 0x80, 0xd3, 0xe9, 0xdd, 0x52, 0x9c,
1229cdebaff8SEnji Cooper 	0x4d, 0x04, 0x05, 0xa0, 0x43, 0x36, 0xb6, 0x89,
1230cdebaff8SEnji Cooper };
1231cdebaff8SEnji Cooper 
1232cdebaff8SEnji Cooper /*
1233cdebaff8SEnji Cooper  * IV method encblkno8, blkno 3.
1234cdebaff8SEnji Cooper  */
1235cdebaff8SEnji Cooper static const uint8_t bf_cbc_256_encblkno8_vec3_ctxt[SECSIZE] = {
1236cdebaff8SEnji Cooper 	0x60, 0x91, 0x19, 0x89, 0xee, 0xac, 0x12, 0xe5,
1237cdebaff8SEnji Cooper 	0x60, 0x6c, 0xfd, 0xf9, 0xe4, 0xc6, 0xc9, 0xbd,
1238cdebaff8SEnji Cooper 	0x75, 0xe1, 0xa5, 0xe6, 0xf4, 0xed, 0x4b, 0xf4,
1239cdebaff8SEnji Cooper 	0x16, 0xf4, 0x57, 0xa4, 0xe6, 0x60, 0x8e, 0x1b,
1240cdebaff8SEnji Cooper 	0x97, 0x0e, 0xd5, 0x09, 0xa1, 0x3c, 0x6c, 0xe8,
1241cdebaff8SEnji Cooper 	0x91, 0xaf, 0x19, 0x96, 0x2a, 0x7b, 0x77, 0x30,
1242cdebaff8SEnji Cooper 	0xc7, 0x99, 0xe6, 0xaa, 0xb0, 0xe2, 0x29, 0x1c,
1243cdebaff8SEnji Cooper 	0x39, 0x54, 0x1c, 0x0a, 0x4a, 0x51, 0xa2, 0xa2,
1244cdebaff8SEnji Cooper 	0x22, 0x96, 0x05, 0x8b, 0x12, 0x80, 0x16, 0x28,
1245cdebaff8SEnji Cooper 	0xdc, 0xfa, 0x22, 0x90, 0xa4, 0x33, 0xb1, 0x84,
1246cdebaff8SEnji Cooper 	0x13, 0x52, 0x5d, 0xb5, 0xd4, 0xe8, 0x60, 0x18,
1247cdebaff8SEnji Cooper 	0x6a, 0xb8, 0x1b, 0xdb, 0xb4, 0x69, 0xf6, 0x09,
1248cdebaff8SEnji Cooper 	0x95, 0x71, 0xdd, 0x43, 0x21, 0xad, 0x7e, 0xf7,
1249cdebaff8SEnji Cooper 	0x8e, 0x7a, 0x0d, 0xf0, 0x52, 0x54, 0xb8, 0xdc,
1250cdebaff8SEnji Cooper 	0x7d, 0x72, 0x29, 0x97, 0x2b, 0x9c, 0x2c, 0xef,
1251cdebaff8SEnji Cooper 	0xc3, 0x26, 0x68, 0x72, 0xae, 0x29, 0x0f, 0x67,
1252cdebaff8SEnji Cooper 	0xbf, 0xea, 0x92, 0x27, 0xd1, 0xba, 0x8d, 0x32,
1253cdebaff8SEnji Cooper 	0x8b, 0x26, 0x91, 0x30, 0x88, 0xcc, 0x47, 0xaf,
1254cdebaff8SEnji Cooper 	0x54, 0x8c, 0x88, 0x88, 0x2f, 0x59, 0x76, 0x34,
1255cdebaff8SEnji Cooper 	0x43, 0x35, 0x44, 0xc3, 0x16, 0x28, 0x62, 0x4b,
1256cdebaff8SEnji Cooper 	0xbb, 0x47, 0x99, 0x7c, 0x26, 0x51, 0xe2, 0x7d,
1257cdebaff8SEnji Cooper 	0xd8, 0x2c, 0x35, 0xf4, 0x24, 0xf1, 0x5b, 0x01,
1258cdebaff8SEnji Cooper 	0xcc, 0x9a, 0x54, 0xd8, 0xc1, 0x73, 0x85, 0x83,
1259cdebaff8SEnji Cooper 	0xdd, 0x0d, 0xd5, 0x75, 0xac, 0x67, 0x68, 0x59,
1260cdebaff8SEnji Cooper 	0x3e, 0x6e, 0x9a, 0x4a, 0x7f, 0xbd, 0x85, 0xeb,
1261cdebaff8SEnji Cooper 	0x36, 0x3e, 0xfd, 0x03, 0xfe, 0x2b, 0xe6, 0x97,
1262cdebaff8SEnji Cooper 	0x16, 0x6b, 0xd0, 0x22, 0xb1, 0x00, 0xcc, 0x7c,
1263cdebaff8SEnji Cooper 	0x03, 0xb1, 0x7c, 0x23, 0x7a, 0xca, 0x5e, 0x0b,
1264cdebaff8SEnji Cooper 	0xba, 0x37, 0xa6, 0x08, 0x5b, 0xa6, 0x2b, 0x57,
1265cdebaff8SEnji Cooper 	0x58, 0x0b, 0x5a, 0x58, 0x91, 0x3c, 0xf9, 0x46,
1266cdebaff8SEnji Cooper 	0x05, 0x03, 0x0a, 0x9b, 0xca, 0x2d, 0x71, 0xe2,
1267cdebaff8SEnji Cooper 	0xbb, 0x1e, 0xd3, 0xc5, 0xc2, 0xb4, 0xde, 0x7b,
1268cdebaff8SEnji Cooper 	0xbb, 0x8b, 0x45, 0x39, 0xf5, 0x3d, 0xa2, 0xe5,
1269cdebaff8SEnji Cooper 	0xb1, 0x40, 0x3b, 0x9e, 0x47, 0x93, 0xf9, 0x9c,
1270cdebaff8SEnji Cooper 	0x50, 0x5c, 0x9b, 0x8d, 0x18, 0x47, 0xd3, 0xe8,
1271cdebaff8SEnji Cooper 	0x61, 0xbc, 0x93, 0xdc, 0xf7, 0x20, 0x5a, 0x00,
1272cdebaff8SEnji Cooper 	0x0e, 0xb8, 0xee, 0x5e, 0x83, 0x06, 0x48, 0x06,
1273cdebaff8SEnji Cooper 	0x91, 0x08, 0x9e, 0x9c, 0x73, 0x6d, 0xb9, 0x31,
1274cdebaff8SEnji Cooper 	0x62, 0xdc, 0x8a, 0x37, 0x17, 0x47, 0x2f, 0x0f,
1275cdebaff8SEnji Cooper 	0xc0, 0x02, 0x02, 0xf3, 0x06, 0x26, 0x6c, 0x9d,
1276cdebaff8SEnji Cooper 	0x96, 0x9f, 0xb0, 0xb3, 0x3b, 0x72, 0x18, 0x59,
1277cdebaff8SEnji Cooper 	0xf4, 0xb7, 0x26, 0xcc, 0xa4, 0x46, 0xdb, 0x51,
1278cdebaff8SEnji Cooper 	0xad, 0xed, 0xd8, 0x3a, 0xc4, 0x3a, 0x09, 0x30,
1279cdebaff8SEnji Cooper 	0x72, 0xd9, 0x2c, 0xfe, 0x5f, 0xa8, 0x46, 0x75,
1280cdebaff8SEnji Cooper 	0xf7, 0xba, 0x46, 0x1e, 0x7e, 0x4c, 0xd6, 0xdd,
1281cdebaff8SEnji Cooper 	0x92, 0x2b, 0x23, 0xc6, 0x59, 0x19, 0xda, 0x9a,
1282cdebaff8SEnji Cooper 	0x01, 0x9c, 0x5c, 0xc1, 0xaa, 0xcf, 0x6d, 0xd0,
1283cdebaff8SEnji Cooper 	0xa5, 0x06, 0xc7, 0x5e, 0x6b, 0x60, 0x64, 0x9f,
1284cdebaff8SEnji Cooper 	0xfe, 0xa8, 0x3f, 0x64, 0xa8, 0xed, 0xf8, 0x62,
1285cdebaff8SEnji Cooper 	0xd7, 0x6d, 0x34, 0x41, 0x3e, 0x5e, 0x74, 0xc7,
1286cdebaff8SEnji Cooper 	0xe6, 0x62, 0xb1, 0x5a, 0xec, 0x6a, 0xc1, 0x71,
1287cdebaff8SEnji Cooper 	0x19, 0xf3, 0xf1, 0xe7, 0x46, 0x13, 0xd6, 0xb6,
1288cdebaff8SEnji Cooper 	0x5a, 0xf4, 0xca, 0x3f, 0xe3, 0xa1, 0x1f, 0xe4,
1289cdebaff8SEnji Cooper 	0xda, 0xd6, 0x0c, 0x62, 0x6a, 0x33, 0x42, 0x99,
1290cdebaff8SEnji Cooper 	0x6f, 0x5d, 0x3a, 0xe0, 0xe7, 0xfa, 0x2d, 0x47,
1291cdebaff8SEnji Cooper 	0x4a, 0xec, 0xaa, 0x71, 0xb5, 0xeb, 0x62, 0xb8,
1292cdebaff8SEnji Cooper 	0x31, 0x34, 0x07, 0x44, 0xa2, 0x18, 0xec, 0x76,
1293cdebaff8SEnji Cooper 	0xf7, 0x77, 0x56, 0x86, 0xc7, 0xe0, 0x1e, 0x8e,
1294cdebaff8SEnji Cooper 	0xec, 0x16, 0x2b, 0xeb, 0xff, 0xaa, 0xba, 0x83,
1295cdebaff8SEnji Cooper 	0x1f, 0xdc, 0x32, 0x23, 0x27, 0xea, 0xea, 0x0c,
1296cdebaff8SEnji Cooper 	0x3a, 0x5f, 0x2b, 0xb4, 0xee, 0x0c, 0xf2, 0x73,
1297cdebaff8SEnji Cooper 	0xbb, 0x59, 0x9b, 0x73, 0xf7, 0xfa, 0xe1, 0x1f,
1298cdebaff8SEnji Cooper 	0x3b, 0xdb, 0x40, 0x29, 0xf0, 0x6c, 0xbe, 0x8f,
1299cdebaff8SEnji Cooper 	0x2e, 0xd0, 0x83, 0xf7, 0xe8, 0x2a, 0x81, 0x82,
1300cdebaff8SEnji Cooper };
1301cdebaff8SEnji Cooper 
1302cdebaff8SEnji Cooper const struct testvec bf_cbc_256_8_vectors[] = {
1303cdebaff8SEnji Cooper 	{
1304cdebaff8SEnji Cooper 		.blkno = 0,
1305cdebaff8SEnji Cooper 		.ptxt = bf_cbc_ptxt,
1306cdebaff8SEnji Cooper 		.ctxt = bf_cbc_256_encblkno8_vec0_ctxt,
1307cdebaff8SEnji Cooper 	},
1308cdebaff8SEnji Cooper 	{
1309cdebaff8SEnji Cooper 		.blkno = 1,
1310cdebaff8SEnji Cooper 		.ptxt = bf_cbc_ptxt,
1311cdebaff8SEnji Cooper 		.ctxt = bf_cbc_256_encblkno8_vec1_ctxt,
1312cdebaff8SEnji Cooper 	},
1313cdebaff8SEnji Cooper 	{
1314cdebaff8SEnji Cooper 		.blkno = 2,
1315cdebaff8SEnji Cooper 		.ptxt = bf_cbc_ptxt,
1316cdebaff8SEnji Cooper 		.ctxt = bf_cbc_256_encblkno8_vec2_ctxt,
1317cdebaff8SEnji Cooper 	},
1318cdebaff8SEnji Cooper 	{
1319cdebaff8SEnji Cooper 		.blkno = 3,
1320cdebaff8SEnji Cooper 		.ptxt = bf_cbc_ptxt,
1321cdebaff8SEnji Cooper 		.ctxt = bf_cbc_256_encblkno8_vec3_ctxt,
1322cdebaff8SEnji Cooper 	},
1323cdebaff8SEnji Cooper };
1324cdebaff8SEnji Cooper 
1325cdebaff8SEnji Cooper /*
1326cdebaff8SEnji Cooper  * IV method encblkno1, blkno 0.
1327cdebaff8SEnji Cooper  */
1328cdebaff8SEnji Cooper static const uint8_t bf_cbc_448_encblkno1_vec0_ctxt[SECSIZE] = {
1329cdebaff8SEnji Cooper 	0xb0, 0x1b, 0x43, 0xc9, 0x84, 0x53, 0x51, 0x72,
1330cdebaff8SEnji Cooper 	0x1f, 0x93, 0x62, 0x94, 0x13, 0x1f, 0xe3, 0xc1,
1331cdebaff8SEnji Cooper 	0x30, 0xee, 0xc4, 0x35, 0x98, 0xb8, 0x11, 0x9b,
1332cdebaff8SEnji Cooper 	0xd1, 0x23, 0xfa, 0x2d, 0xc1, 0xe6, 0xf3, 0x8f,
1333cdebaff8SEnji Cooper 	0x8b, 0x05, 0x8d, 0xc5, 0x1d, 0xc3, 0x29, 0x1a,
1334cdebaff8SEnji Cooper 	0xff, 0x08, 0xb0, 0x97, 0x88, 0x50, 0x8f, 0x41,
1335cdebaff8SEnji Cooper 	0x66, 0xc6, 0x70, 0x37, 0xca, 0xb2, 0xcd, 0x91,
1336cdebaff8SEnji Cooper 	0x89, 0x41, 0x1b, 0x42, 0xce, 0x02, 0xec, 0xe8,
1337cdebaff8SEnji Cooper 	0x9b, 0xf3, 0x50, 0x95, 0x5f, 0xba, 0xda, 0xd5,
1338cdebaff8SEnji Cooper 	0x0c, 0x2f, 0x29, 0x2a, 0x14, 0x96, 0x4a, 0x60,
1339cdebaff8SEnji Cooper 	0x04, 0x43, 0x62, 0x80, 0x89, 0xcf, 0xfd, 0xb6,
1340cdebaff8SEnji Cooper 	0xc7, 0x2d, 0xb2, 0xac, 0xce, 0x51, 0xf5, 0xd1,
1341cdebaff8SEnji Cooper 	0xcd, 0x41, 0x59, 0x8b, 0xf5, 0x02, 0x2d, 0xe8,
1342cdebaff8SEnji Cooper 	0xc4, 0xee, 0xe9, 0x40, 0x6f, 0xcd, 0xbe, 0x3b,
1343cdebaff8SEnji Cooper 	0xd0, 0x8d, 0x3e, 0x6c, 0x42, 0x2a, 0x17, 0xfd,
1344cdebaff8SEnji Cooper 	0x78, 0xf6, 0xb2, 0xde, 0x69, 0x81, 0xbb, 0xae,
1345cdebaff8SEnji Cooper 	0xd9, 0x1f, 0x49, 0xa6, 0x4c, 0x5a, 0xe9, 0x94,
1346cdebaff8SEnji Cooper 	0x49, 0x9b, 0x7e, 0x32, 0x6d, 0x11, 0xea, 0x88,
1347cdebaff8SEnji Cooper 	0xda, 0xf0, 0xc7, 0x8d, 0x07, 0x98, 0xab, 0xc7,
1348cdebaff8SEnji Cooper 	0xf3, 0xcf, 0x2e, 0xda, 0x27, 0x44, 0x68, 0xc7,
1349cdebaff8SEnji Cooper 	0xdc, 0xda, 0x00, 0xd0, 0x6d, 0x64, 0x5b, 0x39,
1350cdebaff8SEnji Cooper 	0x46, 0x3d, 0x98, 0x24, 0xee, 0x3b, 0x36, 0x23,
1351cdebaff8SEnji Cooper 	0x62, 0xf6, 0x8e, 0xb9, 0x8d, 0xc1, 0x9a, 0x7b,
1352cdebaff8SEnji Cooper 	0xd7, 0x03, 0x6b, 0xb7, 0x81, 0x19, 0xec, 0x2f,
1353cdebaff8SEnji Cooper 	0x0c, 0x0b, 0x32, 0x5a, 0xb3, 0x25, 0xf5, 0xcc,
1354cdebaff8SEnji Cooper 	0xa3, 0x60, 0xe6, 0x4e, 0x03, 0xcd, 0xdc, 0x67,
1355cdebaff8SEnji Cooper 	0xe5, 0x26, 0xda, 0xe0, 0x1f, 0x33, 0x99, 0xc3,
1356cdebaff8SEnji Cooper 	0x43, 0x8c, 0x9c, 0x1a, 0x85, 0xb1, 0x15, 0x04,
1357cdebaff8SEnji Cooper 	0xc1, 0x06, 0xd1, 0x2d, 0xc9, 0x67, 0x72, 0xe7,
1358cdebaff8SEnji Cooper 	0xd6, 0x6d, 0x1f, 0x22, 0x56, 0x56, 0xfa, 0x8a,
1359cdebaff8SEnji Cooper 	0xd7, 0x16, 0x37, 0x3f, 0x3e, 0x67, 0xa5, 0xb7,
1360cdebaff8SEnji Cooper 	0xee, 0x3e, 0xd2, 0x38, 0xd5, 0xce, 0xa9, 0x62,
1361cdebaff8SEnji Cooper 	0x82, 0x17, 0xae, 0xae, 0x62, 0xe6, 0xb7, 0xf2,
1362cdebaff8SEnji Cooper 	0x73, 0xf1, 0xc1, 0xb7, 0xe9, 0x62, 0x79, 0x3b,
1363cdebaff8SEnji Cooper 	0x3b, 0x3f, 0xaa, 0x0d, 0x42, 0x03, 0x35, 0x3f,
1364cdebaff8SEnji Cooper 	0x5d, 0xa4, 0xba, 0x02, 0x23, 0x65, 0x40, 0x0e,
1365cdebaff8SEnji Cooper 	0x61, 0x31, 0xc9, 0xd5, 0x79, 0x36, 0x76, 0x7c,
1366cdebaff8SEnji Cooper 	0x21, 0x4a, 0x75, 0xb2, 0xa0, 0x2b, 0xc1, 0xb8,
1367cdebaff8SEnji Cooper 	0xba, 0xf8, 0x10, 0x7a, 0x85, 0x32, 0x81, 0xbf,
1368cdebaff8SEnji Cooper 	0x2d, 0x58, 0x3c, 0x22, 0x2f, 0x0b, 0xce, 0x03,
1369cdebaff8SEnji Cooper 	0x12, 0xce, 0x13, 0xce, 0x4a, 0x81, 0x77, 0x1d,
1370cdebaff8SEnji Cooper 	0x68, 0x99, 0xc0, 0x25, 0xeb, 0xd9, 0x80, 0x0d,
1371cdebaff8SEnji Cooper 	0xe7, 0x17, 0xc8, 0x41, 0xbd, 0x4b, 0x9c, 0xdd,
1372cdebaff8SEnji Cooper 	0x41, 0x74, 0x90, 0x2a, 0x65, 0x92, 0x05, 0xff,
1373cdebaff8SEnji Cooper 	0x06, 0x24, 0xeb, 0x89, 0xd8, 0x41, 0xaa, 0x41,
1374cdebaff8SEnji Cooper 	0xac, 0x8a, 0x31, 0xc6, 0x82, 0x44, 0x12, 0x5a,
1375cdebaff8SEnji Cooper 	0xd9, 0x1c, 0xca, 0x76, 0x2b, 0x4e, 0xe8, 0x18,
1376cdebaff8SEnji Cooper 	0x7e, 0x50, 0xf5, 0x8c, 0x7c, 0x11, 0xe7, 0x0e,
1377cdebaff8SEnji Cooper 	0xfd, 0x08, 0x5e, 0x64, 0x8b, 0x5b, 0x9f, 0x94,
1378cdebaff8SEnji Cooper 	0x8b, 0x0d, 0x83, 0x7e, 0xef, 0x89, 0x30, 0x4a,
1379cdebaff8SEnji Cooper 	0x55, 0xce, 0x10, 0x5f, 0x15, 0xd2, 0xe7, 0x07,
1380cdebaff8SEnji Cooper 	0x0c, 0x34, 0x92, 0xda, 0xae, 0x84, 0x26, 0x28,
1381cdebaff8SEnji Cooper 	0x36, 0x1a, 0x96, 0xc6, 0xf1, 0x41, 0x2b, 0xb6,
1382cdebaff8SEnji Cooper 	0x01, 0xfe, 0x20, 0x05, 0x43, 0x80, 0x45, 0xdf,
1383cdebaff8SEnji Cooper 	0x5c, 0xc2, 0x96, 0xc8, 0x41, 0x68, 0x87, 0x78,
1384cdebaff8SEnji Cooper 	0xbc, 0xf8, 0x34, 0xfb, 0x19, 0x61, 0xab, 0x7f,
1385cdebaff8SEnji Cooper 	0x15, 0x56, 0x7f, 0x1a, 0xf5, 0x08, 0xf1, 0x1c,
1386cdebaff8SEnji Cooper 	0x59, 0x70, 0x92, 0x3a, 0xda, 0x1a, 0xfd, 0xfc,
1387cdebaff8SEnji Cooper 	0x4d, 0xe1, 0x12, 0x61, 0xc1, 0xd8, 0xdb, 0x63,
1388cdebaff8SEnji Cooper 	0x6e, 0x6b, 0x19, 0x96, 0x68, 0x17, 0x9b, 0xf5,
1389cdebaff8SEnji Cooper 	0xa9, 0x5d, 0x2c, 0xaf, 0xad, 0xc6, 0x26, 0x9e,
1390cdebaff8SEnji Cooper 	0x09, 0xcb, 0x67, 0x4e, 0x50, 0x7d, 0x2f, 0xae,
1391cdebaff8SEnji Cooper 	0x4e, 0x73, 0xd9, 0x5a, 0xaa, 0x5d, 0x54, 0x20,
1392cdebaff8SEnji Cooper 	0x7b, 0x77, 0xcf, 0xf8, 0xad, 0x88, 0x6b, 0xc8,
1393cdebaff8SEnji Cooper };
1394cdebaff8SEnji Cooper 
1395cdebaff8SEnji Cooper /*
1396cdebaff8SEnji Cooper  * IV method encblkno1, blkno 1.
1397cdebaff8SEnji Cooper  */
1398cdebaff8SEnji Cooper static const uint8_t bf_cbc_448_encblkno1_vec1_ctxt[SECSIZE] = {
1399cdebaff8SEnji Cooper 	0x8b, 0x2a, 0xcf, 0x7d, 0x38, 0x1b, 0xaa, 0x33,
1400cdebaff8SEnji Cooper 	0x1c, 0xe6, 0xa1, 0x37, 0x6e, 0x9e, 0xb3, 0x48,
1401cdebaff8SEnji Cooper 	0x2a, 0xb8, 0x61, 0x11, 0x00, 0xe5, 0x48, 0xea,
1402cdebaff8SEnji Cooper 	0xb5, 0x9f, 0x6c, 0xa4, 0xdf, 0x8d, 0x5a, 0xd8,
1403cdebaff8SEnji Cooper 	0x03, 0x55, 0x4d, 0x07, 0x7d, 0x5f, 0x1b, 0x18,
1404cdebaff8SEnji Cooper 	0xd1, 0x86, 0x52, 0xc1, 0x13, 0xda, 0x99, 0x23,
1405cdebaff8SEnji Cooper 	0xeb, 0xab, 0xb2, 0x93, 0x40, 0x7c, 0x6a, 0x8a,
1406cdebaff8SEnji Cooper 	0xaa, 0xf8, 0xf1, 0x66, 0xf1, 0x10, 0x1d, 0xcd,
1407cdebaff8SEnji Cooper 	0x25, 0xc7, 0x84, 0x55, 0x02, 0x1d, 0xc0, 0x3c,
1408cdebaff8SEnji Cooper 	0xba, 0xf4, 0xbf, 0xe2, 0xe4, 0xc3, 0x57, 0xdc,
1409cdebaff8SEnji Cooper 	0x0d, 0xfd, 0xeb, 0xb3, 0x7d, 0x31, 0x82, 0x6b,
1410cdebaff8SEnji Cooper 	0x5c, 0x0e, 0x92, 0xa5, 0x42, 0x8b, 0x7f, 0x36,
1411cdebaff8SEnji Cooper 	0x74, 0x4d, 0xfd, 0x2f, 0xd7, 0x19, 0x0d, 0x23,
1412cdebaff8SEnji Cooper 	0xa7, 0x36, 0xe8, 0xe4, 0xe5, 0xff, 0xc8, 0x0d,
1413cdebaff8SEnji Cooper 	0xe1, 0x48, 0x25, 0x79, 0xa9, 0x22, 0xac, 0x72,
1414cdebaff8SEnji Cooper 	0x86, 0x28, 0xcb, 0x63, 0xa6, 0xa0, 0x46, 0x08,
1415cdebaff8SEnji Cooper 	0x53, 0xb8, 0x59, 0xab, 0x0f, 0x8f, 0xb1, 0x78,
1416cdebaff8SEnji Cooper 	0xf8, 0x4e, 0x6d, 0x1a, 0xb5, 0xdd, 0x12, 0x02,
1417cdebaff8SEnji Cooper 	0x57, 0x55, 0xf8, 0xab, 0x78, 0x7d, 0x75, 0x61,
1418cdebaff8SEnji Cooper 	0x81, 0x20, 0xd6, 0x4b, 0x7d, 0x76, 0x05, 0xc9,
1419cdebaff8SEnji Cooper 	0x56, 0xf2, 0xe9, 0x3f, 0xb6, 0xb5, 0x02, 0x2b,
1420cdebaff8SEnji Cooper 	0x1c, 0x29, 0xbf, 0x07, 0xe9, 0x5f, 0x9b, 0x18,
1421cdebaff8SEnji Cooper 	0x38, 0x26, 0xa0, 0x09, 0xde, 0x24, 0x5b, 0x37,
1422cdebaff8SEnji Cooper 	0x72, 0x74, 0xf4, 0x9f, 0x86, 0x28, 0x89, 0xb6,
1423cdebaff8SEnji Cooper 	0x0c, 0x95, 0x24, 0x2f, 0x88, 0x80, 0x6a, 0xc7,
1424cdebaff8SEnji Cooper 	0x3a, 0xdc, 0x89, 0xb0, 0xa3, 0xfe, 0x6e, 0x38,
1425cdebaff8SEnji Cooper 	0xec, 0x0b, 0x1d, 0xbc, 0xd5, 0x90, 0x48, 0xfb,
1426cdebaff8SEnji Cooper 	0xb1, 0x54, 0xac, 0x6e, 0x35, 0xb0, 0x71, 0x9e,
1427cdebaff8SEnji Cooper 	0x57, 0x07, 0x81, 0x90, 0xcb, 0x63, 0xb2, 0x7f,
1428cdebaff8SEnji Cooper 	0x4c, 0x81, 0xe1, 0x58, 0xda, 0x27, 0xef, 0x77,
1429cdebaff8SEnji Cooper 	0xe7, 0xde, 0x96, 0x83, 0x2a, 0xb1, 0x6b, 0x08,
1430cdebaff8SEnji Cooper 	0x62, 0x89, 0xdc, 0x3a, 0x3f, 0x08, 0xff, 0xdc,
1431cdebaff8SEnji Cooper 	0x50, 0x3e, 0xc1, 0xe4, 0x33, 0x8b, 0xad, 0x19,
1432cdebaff8SEnji Cooper 	0x90, 0x0b, 0x8e, 0xc3, 0x55, 0x77, 0xf0, 0xc2,
1433cdebaff8SEnji Cooper 	0x24, 0xf9, 0x0c, 0x99, 0x84, 0xb2, 0xcc, 0x23,
1434cdebaff8SEnji Cooper 	0x8c, 0xab, 0x79, 0x0d, 0xff, 0x75, 0x3a, 0xe0,
1435cdebaff8SEnji Cooper 	0xc9, 0xe8, 0x1e, 0x15, 0x02, 0xd5, 0x67, 0x8e,
1436cdebaff8SEnji Cooper 	0x32, 0xe3, 0x1f, 0xda, 0xfb, 0x88, 0xeb, 0xa5,
1437cdebaff8SEnji Cooper 	0x23, 0xea, 0x1d, 0xaa, 0xc3, 0x62, 0x7f, 0x27,
1438cdebaff8SEnji Cooper 	0x38, 0x2a, 0xf6, 0xa2, 0x6a, 0x0e, 0x05, 0xff,
1439cdebaff8SEnji Cooper 	0xe4, 0x63, 0x70, 0xec, 0xf8, 0x25, 0x96, 0x08,
1440cdebaff8SEnji Cooper 	0xcb, 0x22, 0x2a, 0xaa, 0xbc, 0x45, 0x04, 0xb9,
1441cdebaff8SEnji Cooper 	0xbc, 0x64, 0x07, 0x09, 0x31, 0xee, 0x5f, 0x9a,
1442cdebaff8SEnji Cooper 	0xb1, 0x71, 0x85, 0x10, 0x60, 0xfb, 0x3c, 0x56,
1443cdebaff8SEnji Cooper 	0xeb, 0xfe, 0x91, 0xab, 0x3f, 0x09, 0x76, 0xba,
1444cdebaff8SEnji Cooper 	0x3c, 0xfc, 0xa6, 0x0d, 0xce, 0x9f, 0x59, 0xd4,
1445cdebaff8SEnji Cooper 	0x83, 0x8d, 0x98, 0xf5, 0x0d, 0x60, 0x1f, 0xd1,
1446cdebaff8SEnji Cooper 	0x10, 0x61, 0x77, 0x0d, 0xd1, 0xcd, 0xc2, 0xc2,
1447cdebaff8SEnji Cooper 	0x2c, 0x7d, 0xf6, 0x15, 0x16, 0x90, 0xc9, 0xc5,
1448cdebaff8SEnji Cooper 	0x1e, 0xe9, 0xf5, 0x7b, 0xb4, 0x49, 0x47, 0x91,
1449cdebaff8SEnji Cooper 	0x6a, 0x94, 0x26, 0x94, 0xb3, 0xb5, 0xa7, 0x9e,
1450cdebaff8SEnji Cooper 	0xcb, 0xb1, 0x9c, 0xb7, 0x5d, 0x25, 0x3c, 0x2d,
1451cdebaff8SEnji Cooper 	0x8c, 0xa8, 0xa1, 0xb1, 0x79, 0x8e, 0x60, 0xa2,
1452cdebaff8SEnji Cooper 	0x3e, 0x04, 0xfa, 0x3f, 0xb4, 0x43, 0xde, 0x0a,
1453cdebaff8SEnji Cooper 	0xde, 0xf4, 0x58, 0xe7, 0xd1, 0x04, 0x1d, 0xb7,
1454cdebaff8SEnji Cooper 	0x1d, 0xa6, 0xcb, 0x49, 0x41, 0x30, 0xb5, 0x41,
1455cdebaff8SEnji Cooper 	0xb5, 0x14, 0x19, 0xe4, 0xeb, 0x2c, 0xe2, 0xf0,
1456cdebaff8SEnji Cooper 	0x66, 0x59, 0xe3, 0xc6, 0xb0, 0xd0, 0x1e, 0xaa,
1457cdebaff8SEnji Cooper 	0x9f, 0xa5, 0x0b, 0xb8, 0xfd, 0xae, 0x62, 0xcf,
1458cdebaff8SEnji Cooper 	0x3e, 0xe2, 0xea, 0x79, 0xc5, 0x3e, 0xcf, 0xf0,
1459cdebaff8SEnji Cooper 	0x40, 0x00, 0x8c, 0x81, 0x97, 0xed, 0xac, 0xf9,
1460cdebaff8SEnji Cooper 	0x61, 0x75, 0x4e, 0xd7, 0xb7, 0xb2, 0x02, 0x14,
1461cdebaff8SEnji Cooper 	0x04, 0xf6, 0xbf, 0x25, 0xbe, 0x78, 0x2a, 0xea,
1462cdebaff8SEnji Cooper 	0xd2, 0x61, 0xf2, 0x7e, 0x45, 0x6b, 0x20, 0xca,
1463cdebaff8SEnji Cooper };
1464cdebaff8SEnji Cooper 
1465cdebaff8SEnji Cooper /*
1466cdebaff8SEnji Cooper  * IV method encblkno1, blkno 2.
1467cdebaff8SEnji Cooper  */
1468cdebaff8SEnji Cooper static const uint8_t bf_cbc_448_encblkno1_vec2_ctxt[SECSIZE] = {
1469cdebaff8SEnji Cooper 	0x35, 0x34, 0x49, 0x29, 0x12, 0x3f, 0xc6, 0x2f,
1470cdebaff8SEnji Cooper 	0xc9, 0x3d, 0xc9, 0x54, 0x46, 0xf3, 0x26, 0xf9,
1471cdebaff8SEnji Cooper 	0x5e, 0x45, 0xb4, 0xba, 0x6d, 0x0f, 0x98, 0x53,
1472cdebaff8SEnji Cooper 	0x8b, 0x7a, 0x00, 0x47, 0xb6, 0xbd, 0x70, 0x89,
1473cdebaff8SEnji Cooper 	0x60, 0x8e, 0x52, 0x0b, 0xe3, 0x0a, 0xd8, 0x0e,
1474cdebaff8SEnji Cooper 	0x48, 0xf3, 0xcc, 0x66, 0x8d, 0x71, 0xaa, 0x0e,
1475cdebaff8SEnji Cooper 	0xc2, 0x68, 0x03, 0x05, 0xf9, 0xef, 0x1d, 0x14,
1476cdebaff8SEnji Cooper 	0x5a, 0x85, 0x88, 0x70, 0x77, 0xcf, 0xe3, 0xdf,
1477cdebaff8SEnji Cooper 	0x18, 0xe5, 0xfb, 0xea, 0xe1, 0xe8, 0xe0, 0x25,
1478cdebaff8SEnji Cooper 	0xb2, 0x14, 0x61, 0x5d, 0x2f, 0xce, 0x61, 0xec,
1479cdebaff8SEnji Cooper 	0x68, 0xc8, 0x06, 0x60, 0x41, 0xc1, 0xe3, 0x0a,
1480cdebaff8SEnji Cooper 	0x5e, 0x96, 0x15, 0x9b, 0x2c, 0x5b, 0xfd, 0xba,
1481cdebaff8SEnji Cooper 	0x17, 0x2e, 0x50, 0xb6, 0x68, 0x39, 0x21, 0x56,
1482cdebaff8SEnji Cooper 	0x31, 0x2e, 0xb5, 0x29, 0xff, 0x4a, 0x12, 0x34,
1483cdebaff8SEnji Cooper 	0x02, 0x54, 0xb1, 0x7f, 0xd8, 0x35, 0xec, 0x79,
1484cdebaff8SEnji Cooper 	0x9e, 0xef, 0x62, 0xf3, 0x4b, 0x58, 0x96, 0xf1,
1485cdebaff8SEnji Cooper 	0x83, 0x26, 0x57, 0x3d, 0x55, 0xb9, 0xb0, 0xa7,
1486cdebaff8SEnji Cooper 	0x48, 0x65, 0x06, 0xee, 0x14, 0x88, 0xb5, 0x58,
1487cdebaff8SEnji Cooper 	0xc8, 0x4d, 0x6e, 0xd8, 0x44, 0x76, 0x21, 0x16,
1488cdebaff8SEnji Cooper 	0xa4, 0xdf, 0x68, 0x4b, 0xff, 0x69, 0x23, 0x66,
1489cdebaff8SEnji Cooper 	0x18, 0x75, 0xe6, 0x29, 0xea, 0x95, 0x87, 0x1c,
1490cdebaff8SEnji Cooper 	0xed, 0x2d, 0xbd, 0xbf, 0x22, 0x56, 0x11, 0xd5,
1491cdebaff8SEnji Cooper 	0x59, 0x90, 0x24, 0xd7, 0xae, 0xda, 0x99, 0x49,
1492cdebaff8SEnji Cooper 	0xe3, 0x23, 0x03, 0x24, 0x3b, 0x02, 0x49, 0x1d,
1493cdebaff8SEnji Cooper 	0xa5, 0x57, 0x2f, 0xea, 0xd1, 0x6a, 0x17, 0x53,
1494cdebaff8SEnji Cooper 	0x0f, 0xb3, 0xa9, 0x64, 0x8a, 0xdb, 0x62, 0x17,
1495cdebaff8SEnji Cooper 	0xad, 0x5c, 0x7d, 0x56, 0x14, 0x0f, 0xfb, 0x14,
1496cdebaff8SEnji Cooper 	0xbe, 0x7e, 0xa1, 0xa8, 0x27, 0xf0, 0xf0, 0x3a,
1497cdebaff8SEnji Cooper 	0xe7, 0xc5, 0x26, 0x98, 0x9d, 0x29, 0xf7, 0xfd,
1498cdebaff8SEnji Cooper 	0x43, 0x13, 0x34, 0xe2, 0xb8, 0x0b, 0x14, 0xe9,
1499cdebaff8SEnji Cooper 	0x79, 0x66, 0x7a, 0xf2, 0xed, 0x79, 0x37, 0x16,
1500cdebaff8SEnji Cooper 	0x75, 0x2b, 0xf2, 0x99, 0xa1, 0xba, 0xf1, 0xc1,
1501cdebaff8SEnji Cooper 	0x61, 0x8d, 0x78, 0x46, 0x3a, 0x67, 0x58, 0x6a,
1502cdebaff8SEnji Cooper 	0x55, 0x0d, 0x2e, 0x08, 0x47, 0xfc, 0x94, 0x2f,
1503cdebaff8SEnji Cooper 	0x65, 0xa1, 0x1a, 0xfe, 0x05, 0xfa, 0x41, 0x00,
1504cdebaff8SEnji Cooper 	0x6c, 0x42, 0xbc, 0x65, 0x37, 0xd9, 0x25, 0x9c,
1505cdebaff8SEnji Cooper 	0xf4, 0x83, 0x8a, 0xdb, 0x91, 0x96, 0xc5, 0xa9,
1506cdebaff8SEnji Cooper 	0x02, 0x44, 0xbc, 0x9a, 0x26, 0x9c, 0xd1, 0xfa,
1507cdebaff8SEnji Cooper 	0x06, 0x8b, 0xd6, 0x40, 0x8f, 0x0a, 0xd2, 0x5b,
1508cdebaff8SEnji Cooper 	0xd8, 0x57, 0xd5, 0x61, 0x1b, 0x86, 0xa6, 0x49,
1509cdebaff8SEnji Cooper 	0x15, 0xe4, 0x06, 0x6c, 0x48, 0x24, 0xb8, 0xe3,
1510cdebaff8SEnji Cooper 	0x23, 0xed, 0xcf, 0x39, 0x44, 0x4d, 0xf0, 0x4e,
1511cdebaff8SEnji Cooper 	0x89, 0x44, 0x0d, 0x3a, 0xe6, 0x1b, 0x7c, 0x39,
1512cdebaff8SEnji Cooper 	0xfd, 0x79, 0x0e, 0x78, 0xc7, 0xf6, 0xa3, 0x91,
1513cdebaff8SEnji Cooper 	0x18, 0x2a, 0xfb, 0x92, 0x48, 0xcc, 0x8b, 0xbb,
1514cdebaff8SEnji Cooper 	0x33, 0x07, 0x42, 0xf5, 0xd0, 0x01, 0x8b, 0x12,
1515cdebaff8SEnji Cooper 	0xd9, 0x5e, 0x9d, 0xe4, 0x13, 0x99, 0x11, 0x18,
1516cdebaff8SEnji Cooper 	0x86, 0x8a, 0xb7, 0xa6, 0xe2, 0x38, 0x34, 0x12,
1517cdebaff8SEnji Cooper 	0x67, 0xd6, 0x4b, 0xc0, 0x23, 0x56, 0xba, 0x53,
1518cdebaff8SEnji Cooper 	0xbe, 0x20, 0xe5, 0xec, 0x16, 0xf9, 0x74, 0x92,
1519cdebaff8SEnji Cooper 	0x62, 0xfc, 0xb9, 0xe8, 0xa3, 0xbf, 0x3b, 0x06,
1520cdebaff8SEnji Cooper 	0x76, 0xa5, 0xf5, 0x56, 0x81, 0x72, 0x50, 0xc8,
1521cdebaff8SEnji Cooper 	0x55, 0x80, 0x7d, 0xe1, 0x46, 0x92, 0xa1, 0xeb,
1522cdebaff8SEnji Cooper 	0x41, 0xaf, 0xce, 0x52, 0xb1, 0xb3, 0x51, 0xf2,
1523cdebaff8SEnji Cooper 	0xba, 0x03, 0xb4, 0xcb, 0x16, 0xd2, 0x92, 0x3d,
1524cdebaff8SEnji Cooper 	0x0c, 0x9b, 0xe9, 0xd9, 0x5d, 0xcf, 0x79, 0x05,
1525cdebaff8SEnji Cooper 	0xbd, 0xe0, 0x44, 0x39, 0xf0, 0x35, 0x2d, 0x7a,
1526cdebaff8SEnji Cooper 	0x31, 0x3b, 0x24, 0xb3, 0xb4, 0xa5, 0x08, 0xf5,
1527cdebaff8SEnji Cooper 	0xac, 0x51, 0xf1, 0x09, 0x52, 0x14, 0xc7, 0xb5,
1528cdebaff8SEnji Cooper 	0xe0, 0x65, 0x47, 0x30, 0xdd, 0xa4, 0xfd, 0x71,
1529cdebaff8SEnji Cooper 	0x68, 0xa5, 0x4b, 0x00, 0x72, 0xe2, 0xc4, 0xa9,
1530cdebaff8SEnji Cooper 	0x5d, 0x21, 0x6d, 0x83, 0x4e, 0x88, 0xaa, 0x76,
1531cdebaff8SEnji Cooper 	0x07, 0xf0, 0xf7, 0x36, 0xa2, 0x5e, 0xd5, 0x4c,
1532cdebaff8SEnji Cooper 	0x7f, 0x9b, 0x74, 0x89, 0x0a, 0x18, 0xdc, 0x9a,
1533cdebaff8SEnji Cooper };
1534cdebaff8SEnji Cooper 
1535cdebaff8SEnji Cooper /*
1536cdebaff8SEnji Cooper  * IV method encblkno1, blkno 3.
1537cdebaff8SEnji Cooper  */
1538cdebaff8SEnji Cooper static const uint8_t bf_cbc_448_encblkno1_vec3_ctxt[SECSIZE] = {
1539cdebaff8SEnji Cooper 	0xc3, 0xd3, 0xae, 0x7e, 0x4f, 0xbe, 0x0d, 0x50,
1540cdebaff8SEnji Cooper 	0xd6, 0x63, 0x2c, 0xa2, 0xfd, 0x07, 0xf1, 0x33,
1541cdebaff8SEnji Cooper 	0x2a, 0x15, 0x8f, 0xd7, 0x63, 0xb6, 0x5f, 0x04,
1542cdebaff8SEnji Cooper 	0x69, 0x90, 0xa3, 0x1a, 0xd3, 0xdd, 0xe0, 0x70,
1543cdebaff8SEnji Cooper 	0xb1, 0xcd, 0xd5, 0xe0, 0x75, 0xd2, 0x31, 0x38,
1544cdebaff8SEnji Cooper 	0xcc, 0x65, 0xbb, 0xc3, 0x3b, 0xc6, 0xc9, 0x33,
1545cdebaff8SEnji Cooper 	0x43, 0x9c, 0x32, 0x69, 0x95, 0x10, 0x74, 0x36,
1546cdebaff8SEnji Cooper 	0x3a, 0x05, 0x9c, 0x26, 0x2f, 0x80, 0x20, 0x92,
1547cdebaff8SEnji Cooper 	0x74, 0x31, 0xc0, 0xf4, 0xb1, 0x42, 0x58, 0xc8,
1548cdebaff8SEnji Cooper 	0x3e, 0xaa, 0xd4, 0xba, 0xba, 0x4b, 0x5f, 0x47,
1549cdebaff8SEnji Cooper 	0x1a, 0x9e, 0x43, 0xaf, 0x25, 0x64, 0x0c, 0x2e,
1550cdebaff8SEnji Cooper 	0xa3, 0xf5, 0xde, 0x6e, 0x28, 0x5e, 0xb9, 0x9e,
1551cdebaff8SEnji Cooper 	0xc9, 0xdf, 0x85, 0xda, 0xc9, 0xa8, 0x30, 0xf9,
1552cdebaff8SEnji Cooper 	0x44, 0x9b, 0x16, 0xcb, 0x4b, 0x47, 0x6f, 0x11,
1553cdebaff8SEnji Cooper 	0x5c, 0xd7, 0xc9, 0xb7, 0x9c, 0x50, 0x04, 0x3b,
1554cdebaff8SEnji Cooper 	0x2f, 0x13, 0xab, 0xb6, 0x72, 0xe7, 0x11, 0x29,
1555cdebaff8SEnji Cooper 	0x35, 0xf3, 0xae, 0x5e, 0x2a, 0xa7, 0x1a, 0xac,
1556cdebaff8SEnji Cooper 	0xb7, 0x4c, 0x7b, 0x69, 0x89, 0xfc, 0xff, 0x37,
1557cdebaff8SEnji Cooper 	0x24, 0xf8, 0x65, 0xc0, 0x87, 0x89, 0x69, 0x1e,
1558cdebaff8SEnji Cooper 	0xa6, 0x7e, 0xe7, 0xb3, 0xb7, 0xa8, 0x42, 0x73,
1559cdebaff8SEnji Cooper 	0x83, 0xdb, 0x56, 0x4f, 0xce, 0xb9, 0x6e, 0x38,
1560cdebaff8SEnji Cooper 	0x40, 0x24, 0xb8, 0xdd, 0xab, 0x25, 0x3b, 0xc6,
1561cdebaff8SEnji Cooper 	0x58, 0xed, 0xc7, 0x2b, 0xe0, 0x11, 0x8b, 0x62,
1562cdebaff8SEnji Cooper 	0xe8, 0x4f, 0xcf, 0xba, 0x2e, 0xd7, 0x6d, 0xf0,
1563cdebaff8SEnji Cooper 	0x14, 0xa5, 0xee, 0x24, 0xd3, 0x3a, 0xb4, 0xf2,
1564cdebaff8SEnji Cooper 	0xdc, 0x0d, 0x79, 0xc6, 0x14, 0x52, 0x14, 0x4b,
1565cdebaff8SEnji Cooper 	0xd1, 0x8c, 0x18, 0xef, 0x1f, 0xd8, 0xe7, 0x60,
1566cdebaff8SEnji Cooper 	0xf3, 0x28, 0xce, 0xf1, 0x59, 0xc8, 0x43, 0x02,
1567cdebaff8SEnji Cooper 	0x0e, 0x08, 0x72, 0xe5, 0x7d, 0x5b, 0xc5, 0x80,
1568cdebaff8SEnji Cooper 	0xfb, 0xca, 0x2a, 0x63, 0x8d, 0x3c, 0x54, 0x04,
1569cdebaff8SEnji Cooper 	0x1e, 0xdf, 0x94, 0x53, 0xf8, 0x44, 0xe5, 0xc2,
1570cdebaff8SEnji Cooper 	0x5c, 0x36, 0xc9, 0x75, 0x1c, 0xa2, 0x98, 0x3d,
1571cdebaff8SEnji Cooper 	0xd6, 0xee, 0x38, 0xf9, 0xab, 0x2d, 0x1a, 0xdb,
1572cdebaff8SEnji Cooper 	0x87, 0x2c, 0x86, 0xfd, 0xf9, 0xb2, 0x4d, 0x21,
1573cdebaff8SEnji Cooper 	0xb7, 0xc0, 0x8f, 0x75, 0x21, 0x53, 0xc7, 0xd7,
1574cdebaff8SEnji Cooper 	0x3e, 0xc6, 0x6c, 0x98, 0x2c, 0x6d, 0x44, 0x13,
1575cdebaff8SEnji Cooper 	0x40, 0xea, 0xaa, 0x84, 0xd9, 0x47, 0xfd, 0x65,
1576cdebaff8SEnji Cooper 	0x2c, 0x3d, 0xb0, 0x76, 0xe7, 0xdd, 0xd7, 0x06,
1577cdebaff8SEnji Cooper 	0x8a, 0x79, 0xa7, 0x6c, 0x3a, 0x2d, 0x32, 0xf7,
1578cdebaff8SEnji Cooper 	0xae, 0xe7, 0xd2, 0xb1, 0xf2, 0xe0, 0x3a, 0x10,
1579cdebaff8SEnji Cooper 	0x19, 0xa1, 0x79, 0x7b, 0x76, 0x0b, 0xeb, 0xf3,
1580cdebaff8SEnji Cooper 	0x01, 0x6e, 0x9f, 0xa1, 0x5d, 0x16, 0x09, 0xec,
1581cdebaff8SEnji Cooper 	0x6b, 0x64, 0xe3, 0x96, 0xb8, 0x89, 0x99, 0x8c,
1582cdebaff8SEnji Cooper 	0x77, 0xcf, 0x3f, 0x37, 0x42, 0x51, 0x82, 0x5a,
1583cdebaff8SEnji Cooper 	0x63, 0x89, 0x12, 0x12, 0x59, 0x38, 0xe3, 0xcf,
1584cdebaff8SEnji Cooper 	0xa0, 0xda, 0xbc, 0x69, 0x75, 0x48, 0x7c, 0x3e,
1585cdebaff8SEnji Cooper 	0x56, 0x75, 0x12, 0x10, 0xc5, 0x96, 0x5b, 0x34,
1586cdebaff8SEnji Cooper 	0x52, 0x2e, 0xce, 0xba, 0xd2, 0x7f, 0x8f, 0x1c,
1587cdebaff8SEnji Cooper 	0xbd, 0x35, 0x3b, 0x74, 0x5b, 0x6c, 0xfe, 0xa7,
1588cdebaff8SEnji Cooper 	0xf1, 0x4a, 0x07, 0x95, 0xff, 0xa8, 0xa0, 0x2a,
1589cdebaff8SEnji Cooper 	0x85, 0xec, 0xd7, 0x56, 0x3b, 0x28, 0x2e, 0x09,
1590cdebaff8SEnji Cooper 	0x50, 0x43, 0xbd, 0x49, 0x22, 0xdc, 0x78, 0x0e,
1591cdebaff8SEnji Cooper 	0x7e, 0x68, 0x78, 0xd5, 0x57, 0xc2, 0xd6, 0x7c,
1592cdebaff8SEnji Cooper 	0x2f, 0xd0, 0x4a, 0x62, 0x16, 0x38, 0x04, 0x23,
1593cdebaff8SEnji Cooper 	0x43, 0x21, 0xaa, 0xe1, 0x96, 0x0e, 0xa9, 0x22,
1594cdebaff8SEnji Cooper 	0xe7, 0x2c, 0xb8, 0x5e, 0x8f, 0xc6, 0x2d, 0xbd,
1595cdebaff8SEnji Cooper 	0x99, 0x25, 0x33, 0xb8, 0x47, 0x99, 0x8d, 0xf5,
1596cdebaff8SEnji Cooper 	0x22, 0x08, 0x9b, 0xd5, 0xad, 0x83, 0x67, 0xec,
1597cdebaff8SEnji Cooper 	0x05, 0x89, 0xda, 0xd6, 0xe4, 0xe2, 0xd5, 0xef,
1598cdebaff8SEnji Cooper 	0x7f, 0x61, 0x1e, 0x03, 0x81, 0x03, 0xb1, 0x98,
1599cdebaff8SEnji Cooper 	0x5a, 0x29, 0x69, 0x13, 0xb2, 0xe6, 0xe1, 0x2c,
1600cdebaff8SEnji Cooper 	0x66, 0x88, 0x39, 0x90, 0xf9, 0xae, 0x5d, 0x71,
1601cdebaff8SEnji Cooper 	0xfe, 0x07, 0x30, 0x7d, 0xba, 0xa9, 0x37, 0xb5,
1602cdebaff8SEnji Cooper 	0xff, 0x2c, 0xa9, 0xe6, 0x95, 0x48, 0xb2, 0xc8,
1603cdebaff8SEnji Cooper };
1604cdebaff8SEnji Cooper 
1605cdebaff8SEnji Cooper const struct testvec bf_cbc_448_1_vectors[] = {
1606cdebaff8SEnji Cooper 	{
1607cdebaff8SEnji Cooper 		.blkno = 0,
1608cdebaff8SEnji Cooper 		.ptxt = bf_cbc_ptxt,
1609cdebaff8SEnji Cooper 		.ctxt = bf_cbc_448_encblkno1_vec0_ctxt,
1610cdebaff8SEnji Cooper 	},
1611cdebaff8SEnji Cooper 	{
1612cdebaff8SEnji Cooper 		.blkno = 1,
1613cdebaff8SEnji Cooper 		.ptxt = bf_cbc_ptxt,
1614cdebaff8SEnji Cooper 		.ctxt = bf_cbc_448_encblkno1_vec1_ctxt,
1615cdebaff8SEnji Cooper 	},
1616cdebaff8SEnji Cooper 	{
1617cdebaff8SEnji Cooper 		.blkno = 2,
1618cdebaff8SEnji Cooper 		.ptxt = bf_cbc_ptxt,
1619cdebaff8SEnji Cooper 		.ctxt = bf_cbc_448_encblkno1_vec2_ctxt,
1620cdebaff8SEnji Cooper 	},
1621cdebaff8SEnji Cooper 	{
1622cdebaff8SEnji Cooper 		.blkno = 3,
1623cdebaff8SEnji Cooper 		.ptxt = bf_cbc_ptxt,
1624cdebaff8SEnji Cooper 		.ctxt = bf_cbc_448_encblkno1_vec3_ctxt,
1625cdebaff8SEnji Cooper 	},
1626cdebaff8SEnji Cooper };
1627cdebaff8SEnji Cooper 
1628cdebaff8SEnji Cooper /*
1629cdebaff8SEnji Cooper  * IV method encblkno8, blkno 0.
1630cdebaff8SEnji Cooper  */
1631cdebaff8SEnji Cooper static const uint8_t bf_cbc_448_encblkno8_vec0_ctxt[SECSIZE] = {
1632cdebaff8SEnji Cooper 	0x91, 0xb4, 0x8f, 0x78, 0x34, 0xbe, 0x03, 0xe9,
1633cdebaff8SEnji Cooper 	0x4b, 0xca, 0xf4, 0xfa, 0x27, 0x99, 0xa0, 0xd0,
1634cdebaff8SEnji Cooper 	0xa0, 0x85, 0xf9, 0xca, 0xcc, 0x2e, 0x0d, 0x41,
1635cdebaff8SEnji Cooper 	0x91, 0xdb, 0xf9, 0x71, 0xcd, 0x49, 0xf7, 0x66,
1636cdebaff8SEnji Cooper 	0x9b, 0x0c, 0x70, 0x49, 0x36, 0x72, 0xf4, 0xc0,
1637cdebaff8SEnji Cooper 	0x17, 0xdd, 0xd8, 0x6a, 0xd2, 0x17, 0xfe, 0x50,
1638cdebaff8SEnji Cooper 	0xa3, 0x2b, 0xa8, 0x7c, 0x9c, 0x12, 0x8c, 0x08,
1639cdebaff8SEnji Cooper 	0x3d, 0xb5, 0x20, 0xc0, 0x83, 0xc1, 0xf5, 0x34,
1640cdebaff8SEnji Cooper 	0x4b, 0xa5, 0xcc, 0x7c, 0xc6, 0x9f, 0x4b, 0x7f,
1641cdebaff8SEnji Cooper 	0x09, 0x0c, 0x04, 0xe3, 0x02, 0xfe, 0xe2, 0x5a,
1642cdebaff8SEnji Cooper 	0x45, 0xee, 0x4a, 0xcb, 0xc0, 0xe1, 0xf1, 0xae,
1643cdebaff8SEnji Cooper 	0x1a, 0x22, 0x95, 0xb9, 0x30, 0xe8, 0x2d, 0x90,
1644cdebaff8SEnji Cooper 	0xe5, 0x6a, 0x2f, 0x0a, 0x59, 0x15, 0xfc, 0x60,
1645cdebaff8SEnji Cooper 	0xa5, 0x91, 0x95, 0x1a, 0xa2, 0xf5, 0x87, 0xa3,
1646cdebaff8SEnji Cooper 	0x97, 0x45, 0x1b, 0xfb, 0x78, 0x62, 0x8b, 0xb6,
1647cdebaff8SEnji Cooper 	0x86, 0xc6, 0x94, 0x9a, 0x9d, 0x09, 0x46, 0xc9,
1648cdebaff8SEnji Cooper 	0x1f, 0x5f, 0x2e, 0x6c, 0xed, 0x5e, 0xe2, 0xab,
1649cdebaff8SEnji Cooper 	0xca, 0x30, 0xdb, 0x13, 0x37, 0x8d, 0xb7, 0xc6,
1650cdebaff8SEnji Cooper 	0xce, 0x74, 0xe3, 0xe2, 0x64, 0x7b, 0x74, 0x3e,
1651cdebaff8SEnji Cooper 	0x9f, 0x18, 0x4e, 0xe2, 0x2b, 0x52, 0x08, 0x60,
1652cdebaff8SEnji Cooper 	0x2b, 0x6d, 0x17, 0x1a, 0xff, 0xae, 0xfb, 0xea,
1653cdebaff8SEnji Cooper 	0x59, 0x1d, 0x45, 0xe8, 0xf9, 0x0c, 0x56, 0xb8,
1654cdebaff8SEnji Cooper 	0xb5, 0xc7, 0x8f, 0xa7, 0x9e, 0x67, 0x87, 0xbb,
1655cdebaff8SEnji Cooper 	0xe2, 0x37, 0x56, 0x49, 0xed, 0x75, 0x27, 0x54,
1656cdebaff8SEnji Cooper 	0xb5, 0x16, 0x34, 0xb6, 0xa6, 0xe0, 0x27, 0x48,
1657cdebaff8SEnji Cooper 	0x91, 0xfb, 0x80, 0x4f, 0x5e, 0xef, 0x40, 0x6d,
1658cdebaff8SEnji Cooper 	0x28, 0x8f, 0x2e, 0x56, 0xab, 0x6c, 0x7d, 0xde,
1659cdebaff8SEnji Cooper 	0xbd, 0xa5, 0xa6, 0x47, 0xe2, 0xc9, 0xb0, 0xc5,
1660cdebaff8SEnji Cooper 	0x69, 0x5d, 0x57, 0x18, 0x59, 0x08, 0x66, 0x1b,
1661cdebaff8SEnji Cooper 	0xdc, 0x4f, 0xa4, 0xe2, 0xb5, 0xff, 0x72, 0x4d,
1662cdebaff8SEnji Cooper 	0x25, 0x79, 0x38, 0x8f, 0xca, 0x23, 0x81, 0x31,
1663cdebaff8SEnji Cooper 	0x1d, 0xeb, 0x7b, 0x7e, 0x04, 0xc3, 0xa6, 0xac,
1664cdebaff8SEnji Cooper 	0x12, 0x92, 0x95, 0x44, 0x08, 0xae, 0x25, 0xb5,
1665cdebaff8SEnji Cooper 	0xc2, 0x39, 0x88, 0x28, 0xc5, 0xc7, 0x3c, 0xfe,
1666cdebaff8SEnji Cooper 	0x95, 0xe1, 0x1a, 0x27, 0xbe, 0xfd, 0x0a, 0xc7,
1667cdebaff8SEnji Cooper 	0xd1, 0x02, 0x1a, 0xae, 0x03, 0xfb, 0xce, 0x79,
1668cdebaff8SEnji Cooper 	0xe6, 0xea, 0x4a, 0xa1, 0x0e, 0x68, 0x61, 0x2f,
1669cdebaff8SEnji Cooper 	0xfa, 0x7a, 0xb8, 0xda, 0xd1, 0x4a, 0xbe, 0x88,
1670cdebaff8SEnji Cooper 	0xd2, 0xa0, 0x6b, 0x90, 0xc3, 0x37, 0x18, 0x77,
1671cdebaff8SEnji Cooper 	0x2e, 0xc8, 0x44, 0x2e, 0x9d, 0xa2, 0x4a, 0xc7,
1672cdebaff8SEnji Cooper 	0x54, 0xb2, 0x38, 0x9b, 0x60, 0x5e, 0x5b, 0xb0,
1673cdebaff8SEnji Cooper 	0x31, 0x4c, 0x10, 0xf0, 0x1d, 0x8c, 0xab, 0x9b,
1674cdebaff8SEnji Cooper 	0x25, 0x86, 0x05, 0xfc, 0xd9, 0x39, 0x11, 0x2b,
1675cdebaff8SEnji Cooper 	0x7e, 0x07, 0xfd, 0x6b, 0xb3, 0x28, 0x57, 0x66,
1676cdebaff8SEnji Cooper 	0x94, 0xc6, 0xfc, 0x48, 0x71, 0xeb, 0x7b, 0x9a,
1677cdebaff8SEnji Cooper 	0x26, 0x8f, 0x9f, 0x97, 0xb6, 0x83, 0x9a, 0xdc,
1678cdebaff8SEnji Cooper 	0x5d, 0x84, 0x96, 0x9d, 0xe3, 0xa5, 0x12, 0x97,
1679cdebaff8SEnji Cooper 	0x8c, 0x87, 0xa6, 0x2a, 0xa8, 0x15, 0x9a, 0xb0,
1680cdebaff8SEnji Cooper 	0x0e, 0x31, 0x55, 0xf7, 0x1b, 0x5c, 0x9c, 0xaf,
1681cdebaff8SEnji Cooper 	0x13, 0x20, 0x13, 0x50, 0xaf, 0xc9, 0xf4, 0xd9,
1682cdebaff8SEnji Cooper 	0x47, 0x16, 0xcc, 0x9d, 0xec, 0xa9, 0x2d, 0xfc,
1683cdebaff8SEnji Cooper 	0x3d, 0x5d, 0x48, 0x89, 0x86, 0x91, 0x6f, 0x1a,
1684cdebaff8SEnji Cooper 	0xa5, 0xf0, 0xb6, 0x9b, 0xa9, 0x08, 0xf2, 0x05,
1685cdebaff8SEnji Cooper 	0xad, 0xe5, 0xe0, 0xd8, 0x2e, 0x09, 0xbe, 0x3a,
1686cdebaff8SEnji Cooper 	0xf2, 0xdc, 0xeb, 0x14, 0xe6, 0x8c, 0x21, 0x20,
1687cdebaff8SEnji Cooper 	0xbb, 0x42, 0x6a, 0xba, 0x55, 0x79, 0x54, 0x8b,
1688cdebaff8SEnji Cooper 	0xa8, 0x43, 0x14, 0x28, 0x66, 0xd2, 0x44, 0x65,
1689cdebaff8SEnji Cooper 	0x9c, 0xa9, 0xdc, 0x3b, 0x3f, 0xab, 0x36, 0xb4,
1690cdebaff8SEnji Cooper 	0xbc, 0x9d, 0x22, 0x92, 0x24, 0xa8, 0x29, 0x18,
1691cdebaff8SEnji Cooper 	0x98, 0x3a, 0xbe, 0xa1, 0xb4, 0xf8, 0x7f, 0xea,
1692cdebaff8SEnji Cooper 	0x2f, 0x58, 0x69, 0xce, 0xee, 0x99, 0x76, 0x2c,
1693cdebaff8SEnji Cooper 	0x53, 0x84, 0xf5, 0x9e, 0xa3, 0x98, 0xe6, 0x94,
1694cdebaff8SEnji Cooper 	0x39, 0xfa, 0xfa, 0x6d, 0x66, 0xe2, 0x39, 0x2b,
1695cdebaff8SEnji Cooper 	0x4b, 0x84, 0x14, 0x89, 0x18, 0xa2, 0x03, 0xdd,
1696cdebaff8SEnji Cooper };
1697cdebaff8SEnji Cooper 
1698cdebaff8SEnji Cooper /*
1699cdebaff8SEnji Cooper  * IV method encblkno8, blkno 1.
1700cdebaff8SEnji Cooper  */
1701cdebaff8SEnji Cooper static const uint8_t bf_cbc_448_encblkno8_vec1_ctxt[SECSIZE] = {
1702cdebaff8SEnji Cooper 	0x90, 0x3d, 0xee, 0x58, 0xf7, 0xe3, 0xc4, 0x18,
1703cdebaff8SEnji Cooper 	0xaf, 0xfa, 0xaf, 0xed, 0x9a, 0x45, 0xe7, 0xa8,
1704cdebaff8SEnji Cooper 	0xbe, 0xcd, 0x0f, 0xb9, 0x53, 0x18, 0xc6, 0x14,
1705cdebaff8SEnji Cooper 	0xbe, 0xbb, 0x90, 0x1c, 0x5c, 0x60, 0x93, 0xcb,
1706cdebaff8SEnji Cooper 	0x62, 0xb3, 0xdb, 0x31, 0x19, 0x39, 0xce, 0x3f,
1707cdebaff8SEnji Cooper 	0xe4, 0x8f, 0x44, 0xc1, 0x10, 0x80, 0x05, 0x6b,
1708cdebaff8SEnji Cooper 	0x77, 0xe3, 0xe1, 0xe5, 0xd2, 0x6d, 0x93, 0xf2,
1709cdebaff8SEnji Cooper 	0xb3, 0x81, 0x03, 0xf8, 0xbc, 0x7b, 0x5a, 0x71,
1710cdebaff8SEnji Cooper 	0x15, 0x16, 0x3a, 0x2f, 0x03, 0xbb, 0x67, 0x6a,
1711cdebaff8SEnji Cooper 	0xd9, 0xf5, 0x63, 0x6f, 0x3d, 0x75, 0x1b, 0x0a,
1712cdebaff8SEnji Cooper 	0x4b, 0x9d, 0x04, 0x11, 0x7e, 0xe8, 0x3e, 0x2d,
1713cdebaff8SEnji Cooper 	0x04, 0x8f, 0xbf, 0x8a, 0xb2, 0x35, 0x76, 0xc5,
1714cdebaff8SEnji Cooper 	0xcc, 0x6d, 0x9e, 0x99, 0x71, 0x13, 0xf6, 0x5e,
1715cdebaff8SEnji Cooper 	0xeb, 0x74, 0x96, 0x8a, 0x29, 0x38, 0x0b, 0x25,
1716cdebaff8SEnji Cooper 	0x4b, 0x89, 0xa9, 0x43, 0x3c, 0x2f, 0x03, 0x14,
1717cdebaff8SEnji Cooper 	0x8d, 0x0f, 0xe3, 0xe7, 0x01, 0xd1, 0x2e, 0x14,
1718cdebaff8SEnji Cooper 	0x08, 0x51, 0xba, 0x06, 0x39, 0x76, 0x35, 0xbc,
1719cdebaff8SEnji Cooper 	0x14, 0xa6, 0x16, 0x36, 0x47, 0xcc, 0x48, 0xe0,
1720cdebaff8SEnji Cooper 	0xd6, 0xd7, 0x07, 0xb0, 0xf0, 0x30, 0x6c, 0xf8,
1721cdebaff8SEnji Cooper 	0x68, 0x9d, 0x6c, 0x4b, 0x69, 0x33, 0x78, 0x0e,
1722cdebaff8SEnji Cooper 	0x4a, 0xfa, 0x97, 0xfb, 0x0c, 0x0d, 0x0a, 0xc3,
1723cdebaff8SEnji Cooper 	0x4b, 0x7b, 0x77, 0x77, 0x18, 0x9a, 0x74, 0x85,
1724cdebaff8SEnji Cooper 	0x2f, 0xae, 0xc7, 0x90, 0x45, 0x4b, 0xa2, 0x06,
1725cdebaff8SEnji Cooper 	0x3e, 0xa2, 0x48, 0xe7, 0x6c, 0x86, 0x65, 0x78,
1726cdebaff8SEnji Cooper 	0x97, 0x0b, 0x97, 0xc1, 0x70, 0x91, 0x12, 0x79,
1727cdebaff8SEnji Cooper 	0xae, 0xf0, 0x2b, 0x44, 0xe9, 0x84, 0x8d, 0x78,
1728cdebaff8SEnji Cooper 	0x53, 0xf8, 0x3a, 0xf5, 0x9f, 0x27, 0x3d, 0x49,
1729cdebaff8SEnji Cooper 	0x69, 0xd1, 0x18, 0xa4, 0xb2, 0xd0, 0xbb, 0xf2,
1730cdebaff8SEnji Cooper 	0x57, 0x76, 0xb7, 0x77, 0x16, 0x2f, 0xf8, 0x0c,
1731cdebaff8SEnji Cooper 	0xa5, 0x86, 0x43, 0x0d, 0x2d, 0xfe, 0x84, 0xc6,
1732cdebaff8SEnji Cooper 	0xbb, 0x58, 0x81, 0x47, 0x3d, 0xa3, 0x93, 0xb0,
1733cdebaff8SEnji Cooper 	0x50, 0xfc, 0x25, 0xf7, 0xc5, 0x05, 0xe5, 0xf2,
1734cdebaff8SEnji Cooper 	0xb3, 0x79, 0x12, 0xe4, 0x37, 0x71, 0x2d, 0xe8,
1735cdebaff8SEnji Cooper 	0xa5, 0x0b, 0xce, 0x67, 0x51, 0x4f, 0xab, 0xc7,
1736cdebaff8SEnji Cooper 	0x7b, 0x3b, 0xac, 0x78, 0x97, 0x82, 0x02, 0xf4,
1737cdebaff8SEnji Cooper 	0x62, 0x20, 0x1b, 0x8b, 0xac, 0x07, 0x3b, 0xd7,
1738cdebaff8SEnji Cooper 	0x0b, 0x99, 0x27, 0x85, 0x52, 0x7a, 0x79, 0x18,
1739cdebaff8SEnji Cooper 	0xfb, 0x81, 0x3a, 0x05, 0x76, 0x6c, 0x3c, 0x6a,
1740cdebaff8SEnji Cooper 	0x35, 0xe1, 0x2b, 0x03, 0x48, 0x70, 0x1a, 0xa8,
1741cdebaff8SEnji Cooper 	0x30, 0x33, 0x61, 0xe2, 0xd8, 0x99, 0x86, 0x7f,
1742cdebaff8SEnji Cooper 	0xfd, 0xe0, 0x4a, 0xe4, 0x62, 0xa1, 0xac, 0xcb,
1743cdebaff8SEnji Cooper 	0xb8, 0x8a, 0xf3, 0xaa, 0xd6, 0x61, 0x9d, 0xc5,
1744cdebaff8SEnji Cooper 	0xdb, 0xf5, 0x53, 0x39, 0x1d, 0xd7, 0xf8, 0x96,
1745cdebaff8SEnji Cooper 	0xc6, 0x2b, 0xca, 0xbf, 0x83, 0x4e, 0x89, 0x63,
1746cdebaff8SEnji Cooper 	0x53, 0x6f, 0x17, 0xaa, 0xf3, 0x61, 0x9b, 0x75,
1747cdebaff8SEnji Cooper 	0x8c, 0x5a, 0xf8, 0x21, 0x84, 0x52, 0xb8, 0x76,
1748cdebaff8SEnji Cooper 	0xbc, 0xf5, 0x9b, 0xd6, 0x98, 0x26, 0x58, 0xec,
1749cdebaff8SEnji Cooper 	0xdd, 0xa8, 0xf1, 0xee, 0x9e, 0x14, 0x24, 0x94,
1750cdebaff8SEnji Cooper 	0x7c, 0xb6, 0x45, 0x8b, 0xc7, 0x85, 0x50, 0x4e,
1751cdebaff8SEnji Cooper 	0x30, 0xd7, 0x51, 0x8c, 0x33, 0xeb, 0xeb, 0x5d,
1752cdebaff8SEnji Cooper 	0x52, 0x58, 0x43, 0xcb, 0x25, 0x4a, 0x77, 0x34,
1753cdebaff8SEnji Cooper 	0xe6, 0x70, 0x5b, 0x6f, 0x8f, 0xe8, 0x07, 0xee,
1754cdebaff8SEnji Cooper 	0x76, 0x4a, 0xad, 0xab, 0x11, 0x8a, 0x1b, 0x92,
1755cdebaff8SEnji Cooper 	0x60, 0x79, 0xb8, 0xe0, 0x88, 0xa7, 0x3a, 0xe0,
1756cdebaff8SEnji Cooper 	0x15, 0xf6, 0x57, 0xf0, 0xe8, 0x87, 0xda, 0xf8,
1757cdebaff8SEnji Cooper 	0x90, 0x4e, 0xe7, 0xb3, 0xb4, 0xe7, 0x73, 0x5c,
1758cdebaff8SEnji Cooper 	0xd3, 0x69, 0xfb, 0x23, 0x4f, 0x4f, 0xc8, 0xd2,
1759cdebaff8SEnji Cooper 	0xfb, 0xf5, 0xf5, 0x76, 0x80, 0xb6, 0xb7, 0xe2,
1760cdebaff8SEnji Cooper 	0xb7, 0x96, 0x1a, 0x97, 0x12, 0x40, 0x16, 0x86,
1761cdebaff8SEnji Cooper 	0xd6, 0x66, 0xf5, 0x46, 0x9e, 0x04, 0x62, 0xaa,
1762cdebaff8SEnji Cooper 	0x9c, 0xc9, 0x45, 0x39, 0x5c, 0xd3, 0x58, 0x40,
1763cdebaff8SEnji Cooper 	0xb4, 0x32, 0xd8, 0x6c, 0x19, 0xfa, 0xa5, 0x5f,
1764cdebaff8SEnji Cooper 	0x1e, 0x83, 0x5a, 0x32, 0x5e, 0x1d, 0xab, 0xa9,
1765cdebaff8SEnji Cooper 	0x48, 0x1b, 0x1b, 0x37, 0x66, 0xf8, 0x67, 0xd7,
1766cdebaff8SEnji Cooper };
1767cdebaff8SEnji Cooper 
1768cdebaff8SEnji Cooper /*
1769cdebaff8SEnji Cooper  * IV method encblkno8, blkno 2.
1770cdebaff8SEnji Cooper  */
1771cdebaff8SEnji Cooper static const uint8_t bf_cbc_448_encblkno8_vec2_ctxt[SECSIZE] = {
1772cdebaff8SEnji Cooper 	0xb3, 0x2d, 0x0d, 0x90, 0x7a, 0x50, 0xb6, 0x29,
1773cdebaff8SEnji Cooper 	0x9d, 0xd4, 0x12, 0x1a, 0xc9, 0x71, 0x56, 0xc4,
1774cdebaff8SEnji Cooper 	0xce, 0x3d, 0x74, 0xf9, 0x91, 0xe4, 0x79, 0x8a,
1775cdebaff8SEnji Cooper 	0x42, 0x34, 0x1a, 0xd4, 0x84, 0xaa, 0x01, 0x85,
1776cdebaff8SEnji Cooper 	0x13, 0xe8, 0xab, 0xaa, 0xb6, 0x81, 0x82, 0xd6,
1777cdebaff8SEnji Cooper 	0x32, 0xd6, 0x9f, 0x63, 0x69, 0x55, 0x10, 0x5f,
1778cdebaff8SEnji Cooper 	0x2e, 0xb3, 0x51, 0x74, 0x80, 0x5c, 0xe9, 0x8d,
1779cdebaff8SEnji Cooper 	0x27, 0xd8, 0x41, 0x2d, 0x27, 0x07, 0xb4, 0x13,
1780cdebaff8SEnji Cooper 	0xcd, 0xc0, 0xb3, 0x96, 0xaa, 0x59, 0x9c, 0x3e,
1781cdebaff8SEnji Cooper 	0x16, 0x9e, 0x18, 0xa5, 0x92, 0x52, 0x59, 0x19,
1782cdebaff8SEnji Cooper 	0x19, 0x62, 0xeb, 0xd9, 0xdf, 0x9d, 0x10, 0x77,
1783cdebaff8SEnji Cooper 	0xfb, 0x3c, 0xf1, 0xeb, 0x70, 0xf6, 0x6a, 0x9b,
1784cdebaff8SEnji Cooper 	0xad, 0x99, 0x35, 0xd7, 0xf8, 0xde, 0x2b, 0x52,
1785cdebaff8SEnji Cooper 	0x85, 0xdd, 0x36, 0x07, 0x3a, 0x88, 0xa6, 0xbb,
1786cdebaff8SEnji Cooper 	0x98, 0x7a, 0xe3, 0xb0, 0xe6, 0xae, 0x33, 0x5d,
1787cdebaff8SEnji Cooper 	0x47, 0x0c, 0x6c, 0xd4, 0x84, 0x33, 0x7e, 0xf4,
1788cdebaff8SEnji Cooper 	0xea, 0xfd, 0xf1, 0x1c, 0xdb, 0x8b, 0xfe, 0x01,
1789cdebaff8SEnji Cooper 	0x77, 0xa3, 0x07, 0x21, 0x09, 0xac, 0x0c, 0xe4,
1790cdebaff8SEnji Cooper 	0x63, 0xaa, 0x3d, 0xb3, 0x05, 0xf8, 0x73, 0x03,
1791cdebaff8SEnji Cooper 	0x69, 0x53, 0x2f, 0xd3, 0x53, 0x29, 0xf2, 0x02,
1792cdebaff8SEnji Cooper 	0x60, 0x41, 0xed, 0xc7, 0xe9, 0x2e, 0xba, 0x54,
1793cdebaff8SEnji Cooper 	0xa4, 0xfe, 0x26, 0xf0, 0xd9, 0x2c, 0x58, 0x2d,
1794cdebaff8SEnji Cooper 	0x90, 0x94, 0x19, 0xf9, 0xe5, 0xaa, 0xe2, 0x13,
1795cdebaff8SEnji Cooper 	0x9a, 0x67, 0x90, 0x44, 0x61, 0x36, 0xd0, 0x3f,
1796cdebaff8SEnji Cooper 	0xe7, 0xe8, 0x7e, 0x47, 0x2b, 0x84, 0x97, 0xe2,
1797cdebaff8SEnji Cooper 	0x0b, 0x8a, 0xfa, 0x2f, 0xbc, 0x1a, 0x70, 0xed,
1798cdebaff8SEnji Cooper 	0xb2, 0x93, 0x36, 0x0e, 0xe6, 0xb1, 0xa2, 0x5a,
1799cdebaff8SEnji Cooper 	0x04, 0x04, 0x8d, 0x2f, 0x82, 0xdb, 0x49, 0x5e,
1800cdebaff8SEnji Cooper 	0x1b, 0x90, 0xc1, 0x27, 0x2a, 0x2f, 0x64, 0x5b,
1801cdebaff8SEnji Cooper 	0xce, 0x35, 0x06, 0x0d, 0xb6, 0x05, 0x50, 0x5a,
1802cdebaff8SEnji Cooper 	0x90, 0xc8, 0x21, 0xd0, 0xf0, 0xb9, 0xf3, 0x43,
1803cdebaff8SEnji Cooper 	0x25, 0xd8, 0xb9, 0x86, 0xb7, 0xd0, 0x29, 0x75,
1804cdebaff8SEnji Cooper 	0xdc, 0xf6, 0xf6, 0x14, 0x5e, 0x1f, 0xad, 0x54,
1805cdebaff8SEnji Cooper 	0x28, 0x63, 0x92, 0xcd, 0xcd, 0x75, 0xb2, 0xe8,
1806cdebaff8SEnji Cooper 	0xf3, 0x1f, 0xfd, 0x88, 0x72, 0x04, 0xab, 0xe2,
1807cdebaff8SEnji Cooper 	0x77, 0x21, 0xc1, 0xb4, 0x87, 0xa7, 0x98, 0x86,
1808cdebaff8SEnji Cooper 	0x2d, 0x7f, 0x01, 0x24, 0xed, 0x3a, 0x23, 0x83,
1809cdebaff8SEnji Cooper 	0xb7, 0xa4, 0xb7, 0x08, 0x4e, 0xee, 0x10, 0x77,
1810cdebaff8SEnji Cooper 	0x29, 0x22, 0xab, 0xea, 0x4a, 0x68, 0x1f, 0x7f,
1811cdebaff8SEnji Cooper 	0xd6, 0xe6, 0x90, 0x11, 0xbc, 0x23, 0x2e, 0x47,
1812cdebaff8SEnji Cooper 	0x78, 0xea, 0x1d, 0x33, 0x7c, 0x02, 0x09, 0x55,
1813cdebaff8SEnji Cooper 	0x7a, 0xbc, 0xa7, 0x3d, 0x9a, 0xd0, 0x4d, 0x40,
1814cdebaff8SEnji Cooper 	0x6c, 0xc2, 0x99, 0xc2, 0xe9, 0x0e, 0xcf, 0x06,
1815cdebaff8SEnji Cooper 	0x82, 0x61, 0x5c, 0x76, 0xca, 0xef, 0x8f, 0xd3,
1816cdebaff8SEnji Cooper 	0x78, 0x2a, 0xae, 0x39, 0x29, 0x4e, 0xc1, 0x2c,
1817cdebaff8SEnji Cooper 	0xb1, 0xbc, 0xcd, 0x76, 0x4f, 0x25, 0xf0, 0x5b,
1818cdebaff8SEnji Cooper 	0x78, 0x3a, 0xa4, 0x39, 0x52, 0x5a, 0xc7, 0xcf,
1819cdebaff8SEnji Cooper 	0x17, 0x3d, 0xb0, 0x39, 0x63, 0xf9, 0xf9, 0xfb,
1820cdebaff8SEnji Cooper 	0x6f, 0x35, 0xb7, 0xf1, 0x49, 0x10, 0xd8, 0x12,
1821cdebaff8SEnji Cooper 	0x8d, 0xa2, 0xdf, 0xc5, 0x26, 0x37, 0xd1, 0xb8,
1822cdebaff8SEnji Cooper 	0xef, 0xdc, 0x04, 0x1b, 0x0d, 0x60, 0xbf, 0xbc,
1823cdebaff8SEnji Cooper 	0xc0, 0xff, 0x56, 0x8b, 0xd3, 0x6e, 0x71, 0xfc,
1824cdebaff8SEnji Cooper 	0x87, 0x00, 0x86, 0x10, 0x78, 0x3b, 0xce, 0x8b,
1825cdebaff8SEnji Cooper 	0xe8, 0x5f, 0x8c, 0xce, 0x03, 0xa2, 0x89, 0x8c,
1826cdebaff8SEnji Cooper 	0x16, 0x00, 0x0e, 0xd8, 0x53, 0xaf, 0x7f, 0x77,
1827cdebaff8SEnji Cooper 	0x78, 0x40, 0x5e, 0x5e, 0xd1, 0x7d, 0xf8, 0x41,
1828cdebaff8SEnji Cooper 	0xa8, 0x1e, 0xa5, 0xe5, 0xe9, 0xd6, 0x17, 0x2c,
1829cdebaff8SEnji Cooper 	0x2f, 0x1b, 0xff, 0xef, 0xf5, 0x53, 0x31, 0xf3,
1830cdebaff8SEnji Cooper 	0x5b, 0xe4, 0x84, 0x7c, 0xe2, 0x45, 0x3c, 0x82,
1831cdebaff8SEnji Cooper 	0x5b, 0xf6, 0x03, 0x35, 0xdd, 0x03, 0x22, 0xbe,
1832cdebaff8SEnji Cooper 	0x77, 0x9c, 0x6a, 0x7d, 0xc8, 0x29, 0x41, 0x53,
1833cdebaff8SEnji Cooper 	0xbb, 0xab, 0x6e, 0xa5, 0x00, 0xaf, 0x3b, 0x1d,
1834cdebaff8SEnji Cooper 	0x76, 0x12, 0xac, 0x44, 0x5c, 0x7d, 0xd2, 0x3b,
1835cdebaff8SEnji Cooper 	0x3a, 0x95, 0xb0, 0xa9, 0x4f, 0x27, 0x76, 0x17,
1836cdebaff8SEnji Cooper };
1837cdebaff8SEnji Cooper 
1838cdebaff8SEnji Cooper /*
1839cdebaff8SEnji Cooper  * IV method encblkno8, blkno 3.
1840cdebaff8SEnji Cooper  */
1841cdebaff8SEnji Cooper static const uint8_t bf_cbc_448_encblkno8_vec3_ctxt[SECSIZE] = {
1842cdebaff8SEnji Cooper 	0x8e, 0xc4, 0x56, 0x64, 0x1e, 0x2a, 0x0d, 0x60,
1843cdebaff8SEnji Cooper 	0x54, 0x5c, 0xcd, 0xe0, 0x6d, 0xa7, 0x4c, 0x30,
1844cdebaff8SEnji Cooper 	0x7e, 0x85, 0x21, 0xdf, 0xaa, 0xb2, 0x32, 0xde,
1845cdebaff8SEnji Cooper 	0xc0, 0xc6, 0x56, 0xe0, 0x43, 0xc2, 0x3e, 0x6c,
1846cdebaff8SEnji Cooper 	0x8c, 0x62, 0x35, 0xaa, 0xf9, 0xba, 0xc9, 0x52,
1847cdebaff8SEnji Cooper 	0x38, 0x72, 0x06, 0xcc, 0x02, 0xa2, 0xb8, 0x85,
1848cdebaff8SEnji Cooper 	0xf7, 0xcc, 0xe6, 0x8c, 0x86, 0x8f, 0x9c, 0xd6,
1849cdebaff8SEnji Cooper 	0x1f, 0xf8, 0x24, 0x9d, 0xca, 0xe8, 0xed, 0x3c,
1850cdebaff8SEnji Cooper 	0x80, 0x0b, 0xaf, 0x0c, 0x78, 0x4f, 0x5b, 0x2a,
1851cdebaff8SEnji Cooper 	0x0f, 0xfe, 0xe5, 0xe6, 0x12, 0x8a, 0xff, 0xc7,
1852cdebaff8SEnji Cooper 	0x6a, 0x97, 0xd9, 0xcb, 0xc8, 0x6a, 0x83, 0x12,
1853cdebaff8SEnji Cooper 	0xa1, 0x12, 0x84, 0xc8, 0x72, 0x1c, 0xb7, 0x68,
1854cdebaff8SEnji Cooper 	0x23, 0x24, 0xff, 0x5a, 0x78, 0x99, 0x9d, 0xb8,
1855cdebaff8SEnji Cooper 	0x03, 0x70, 0x0a, 0x09, 0xa1, 0x3d, 0xfe, 0xe0,
1856cdebaff8SEnji Cooper 	0xc5, 0x1b, 0xea, 0x58, 0xbc, 0x52, 0x70, 0xa2,
1857cdebaff8SEnji Cooper 	0x4e, 0xcc, 0x43, 0xfb, 0xb7, 0xc4, 0xbd, 0xb6,
1858cdebaff8SEnji Cooper 	0xa9, 0x1e, 0xff, 0xf6, 0x69, 0xaa, 0xab, 0xa4,
1859cdebaff8SEnji Cooper 	0xd7, 0x07, 0x0d, 0xda, 0x41, 0x4b, 0xe3, 0xa5,
1860cdebaff8SEnji Cooper 	0xef, 0x94, 0x9f, 0xb4, 0xd8, 0xd1, 0x41, 0xd0,
1861cdebaff8SEnji Cooper 	0x9e, 0xa0, 0x0a, 0x70, 0xdb, 0xb8, 0x5e, 0x27,
1862cdebaff8SEnji Cooper 	0xc6, 0x08, 0x38, 0x6a, 0x31, 0xe3, 0xa0, 0xd6,
1863cdebaff8SEnji Cooper 	0x90, 0xad, 0x19, 0x0c, 0x7e, 0x1d, 0x21, 0xc8,
1864cdebaff8SEnji Cooper 	0x66, 0x30, 0x73, 0x8e, 0x06, 0x97, 0xec, 0xc6,
1865cdebaff8SEnji Cooper 	0xfe, 0x5c, 0xc6, 0xc0, 0xd1, 0x5c, 0x5f, 0xf8,
1866cdebaff8SEnji Cooper 	0x01, 0xb3, 0xac, 0x18, 0x66, 0x1e, 0x04, 0xaf,
1867cdebaff8SEnji Cooper 	0xa7, 0xd3, 0x6d, 0x10, 0x74, 0xa1, 0x9a, 0x36,
1868cdebaff8SEnji Cooper 	0x10, 0xa0, 0xd6, 0x28, 0x61, 0x93, 0x98, 0x14,
1869cdebaff8SEnji Cooper 	0x67, 0x6f, 0x7d, 0x52, 0x86, 0x48, 0x17, 0x99,
1870cdebaff8SEnji Cooper 	0x53, 0xa3, 0xee, 0xe5, 0x93, 0xf6, 0x80, 0xe1,
1871cdebaff8SEnji Cooper 	0x52, 0xf0, 0x39, 0x48, 0x5c, 0x20, 0x05, 0xd9,
1872cdebaff8SEnji Cooper 	0xae, 0xa2, 0xe3, 0x25, 0x4e, 0x60, 0x84, 0xf8,
1873cdebaff8SEnji Cooper 	0xad, 0xd6, 0xf6, 0x95, 0x8e, 0x95, 0xd0, 0x49,
1874cdebaff8SEnji Cooper 	0x1c, 0x65, 0xd0, 0xc8, 0xa5, 0x26, 0xc0, 0xdf,
1875cdebaff8SEnji Cooper 	0x32, 0xbe, 0xbc, 0xb7, 0x6d, 0xe5, 0x5e, 0x6d,
1876cdebaff8SEnji Cooper 	0x38, 0x7d, 0x03, 0xd5, 0x94, 0x7a, 0x14, 0x2b,
1877cdebaff8SEnji Cooper 	0x02, 0xe0, 0x09, 0x00, 0x50, 0xf1, 0x52, 0x69,
1878cdebaff8SEnji Cooper 	0x06, 0x33, 0x4b, 0x5b, 0xa2, 0xbc, 0x2e, 0xa9,
1879cdebaff8SEnji Cooper 	0x1a, 0xb7, 0xca, 0xa8, 0xb4, 0xa2, 0x5b, 0xcd,
1880cdebaff8SEnji Cooper 	0x35, 0xe4, 0x03, 0xdd, 0x8f, 0x66, 0x3a, 0x34,
1881cdebaff8SEnji Cooper 	0xc6, 0x2a, 0xd6, 0x90, 0xa2, 0xef, 0xe2, 0xfa,
1882cdebaff8SEnji Cooper 	0x7c, 0xc1, 0x6c, 0x21, 0xd0, 0xfd, 0x96, 0x92,
1883cdebaff8SEnji Cooper 	0xb5, 0x99, 0xe4, 0xb7, 0x66, 0xd4, 0xf2, 0x50,
1884cdebaff8SEnji Cooper 	0x22, 0xef, 0x66, 0x1e, 0x5f, 0x62, 0xd1, 0x77,
1885cdebaff8SEnji Cooper 	0x87, 0x52, 0xed, 0x40, 0x69, 0xfd, 0xab, 0x66,
1886cdebaff8SEnji Cooper 	0xe4, 0x0e, 0x2b, 0xa8, 0x67, 0x4c, 0x6d, 0xce,
1887cdebaff8SEnji Cooper 	0xb0, 0x61, 0x8e, 0x6c, 0xc5, 0x34, 0xab, 0x03,
1888cdebaff8SEnji Cooper 	0x3e, 0x8a, 0xe5, 0x2b, 0xa2, 0xa4, 0x04, 0xa2,
1889cdebaff8SEnji Cooper 	0x01, 0x81, 0x79, 0x72, 0xfc, 0x19, 0xbd, 0x38,
1890cdebaff8SEnji Cooper 	0x39, 0xee, 0xb3, 0x95, 0xc5, 0x6f, 0xed, 0xaa,
1891cdebaff8SEnji Cooper 	0x6e, 0xca, 0xeb, 0xc6, 0xaf, 0xeb, 0x76, 0xb4,
1892cdebaff8SEnji Cooper 	0xd7, 0xc3, 0x1b, 0x65, 0x99, 0xc6, 0xa3, 0xe8,
1893cdebaff8SEnji Cooper 	0x96, 0x5e, 0xc1, 0x0c, 0xd2, 0xf8, 0x65, 0xcf,
1894cdebaff8SEnji Cooper 	0x42, 0xc5, 0x8f, 0x52, 0x5d, 0x90, 0x21, 0x55,
1895cdebaff8SEnji Cooper 	0xec, 0x9d, 0x93, 0x81, 0xb7, 0x9a, 0xa4, 0x35,
1896cdebaff8SEnji Cooper 	0xe7, 0xef, 0xef, 0x2d, 0x4c, 0x02, 0xf7, 0x2b,
1897cdebaff8SEnji Cooper 	0x26, 0xe0, 0x9e, 0x3a, 0x31, 0xfd, 0x94, 0xb3,
1898cdebaff8SEnji Cooper 	0xa7, 0x8a, 0x93, 0xf3, 0xe1, 0x77, 0x79, 0xdf,
1899cdebaff8SEnji Cooper 	0xcf, 0x1f, 0x99, 0x55, 0x20, 0xc3, 0x7d, 0x8a,
1900cdebaff8SEnji Cooper 	0xbc, 0xff, 0x63, 0x64, 0x87, 0xa9, 0x42, 0x63,
1901cdebaff8SEnji Cooper 	0xc9, 0x67, 0x7e, 0x51, 0x99, 0x9c, 0xcb, 0x47,
1902cdebaff8SEnji Cooper 	0xa9, 0xc8, 0x5e, 0x83, 0x87, 0x55, 0x7c, 0x45,
1903cdebaff8SEnji Cooper 	0x3a, 0xb4, 0xfe, 0x97, 0x24, 0x17, 0x1d, 0x5e,
1904cdebaff8SEnji Cooper 	0xdf, 0xe0, 0xe8, 0x17, 0xa6, 0x31, 0x99, 0xeb,
1905cdebaff8SEnji Cooper 	0xb7, 0xb5, 0xd5, 0xd7, 0x7c, 0x2f, 0x22, 0x26,
1906cdebaff8SEnji Cooper };
1907cdebaff8SEnji Cooper 
1908cdebaff8SEnji Cooper const struct testvec bf_cbc_448_8_vectors[] = {
1909cdebaff8SEnji Cooper 	{
1910cdebaff8SEnji Cooper 		.blkno = 0,
1911cdebaff8SEnji Cooper 		.ptxt = bf_cbc_ptxt,
1912cdebaff8SEnji Cooper 		.ctxt = bf_cbc_448_encblkno8_vec0_ctxt,
1913cdebaff8SEnji Cooper 	},
1914cdebaff8SEnji Cooper 	{
1915cdebaff8SEnji Cooper 		.blkno = 1,
1916cdebaff8SEnji Cooper 		.ptxt = bf_cbc_ptxt,
1917cdebaff8SEnji Cooper 		.ctxt = bf_cbc_448_encblkno8_vec1_ctxt,
1918cdebaff8SEnji Cooper 	},
1919cdebaff8SEnji Cooper 	{
1920cdebaff8SEnji Cooper 		.blkno = 2,
1921cdebaff8SEnji Cooper 		.ptxt = bf_cbc_ptxt,
1922cdebaff8SEnji Cooper 		.ctxt = bf_cbc_448_encblkno8_vec2_ctxt,
1923cdebaff8SEnji Cooper 	},
1924cdebaff8SEnji Cooper 	{
1925cdebaff8SEnji Cooper 		.blkno = 3,
1926cdebaff8SEnji Cooper 		.ptxt = bf_cbc_ptxt,
1927cdebaff8SEnji Cooper 		.ctxt = bf_cbc_448_encblkno8_vec3_ctxt,
1928cdebaff8SEnji Cooper 	},
1929cdebaff8SEnji Cooper };
1930cdebaff8SEnji Cooper 
1931cdebaff8SEnji Cooper static int
open_disk(const char * devpath,const char * imgpath,size_t size)1932cdebaff8SEnji Cooper open_disk(const char *devpath, const char *imgpath, size_t size)
1933cdebaff8SEnji Cooper {
1934cdebaff8SEnji Cooper 	int fd;
1935cdebaff8SEnji Cooper 
1936cdebaff8SEnji Cooper 	fd = open(imgpath, O_CREAT | O_RDWR | O_TRUNC, 0600);
1937cdebaff8SEnji Cooper 	if (fd < 0)
1938cdebaff8SEnji Cooper 		return -1;
1939cdebaff8SEnji Cooper 
1940cdebaff8SEnji Cooper 	if (ftruncate(fd, size) < 0)
1941cdebaff8SEnji Cooper 		goto fail;
1942cdebaff8SEnji Cooper 
1943cdebaff8SEnji Cooper 	if (rump_pub_etfs_register_withsize(devpath,
1944cdebaff8SEnji Cooper 	    imgpath, RUMP_ETFS_BLK, 0, size) < 0) {
1945cdebaff8SEnji Cooper 		goto fail;
1946cdebaff8SEnji Cooper 	}
1947cdebaff8SEnji Cooper 
1948cdebaff8SEnji Cooper 	unlink(imgpath);
1949cdebaff8SEnji Cooper 	return fd;
1950cdebaff8SEnji Cooper fail:
1951cdebaff8SEnji Cooper 	close(fd);
1952cdebaff8SEnji Cooper 	unlink(imgpath);
1953cdebaff8SEnji Cooper 	return -1;
1954cdebaff8SEnji Cooper }
1955cdebaff8SEnji Cooper 
1956cdebaff8SEnji Cooper static int
open_cgd(int devno)1957cdebaff8SEnji Cooper open_cgd(int devno)
1958cdebaff8SEnji Cooper {
1959cdebaff8SEnji Cooper 	char devpath[32];
1960cdebaff8SEnji Cooper 
1961cdebaff8SEnji Cooper 	sprintf(devpath, "/dev/rcgd%d%c", devno, getrawpartition() + 'a');
1962cdebaff8SEnji Cooper 
1963cdebaff8SEnji Cooper 	return rump_sys_open(devpath, O_RDWR, 0);
1964cdebaff8SEnji Cooper }
1965cdebaff8SEnji Cooper 
1966cdebaff8SEnji Cooper static int
configure_cgd(int fd,const char * dkpath,const char * alg,const char * ivmethod,const char * key,size_t keylen)1967cdebaff8SEnji Cooper configure_cgd(int fd, const char *dkpath, const char *alg,
1968cdebaff8SEnji Cooper     const char *ivmethod, const char *key, size_t keylen)
1969cdebaff8SEnji Cooper {
1970cdebaff8SEnji Cooper 	struct cgd_ioctl ci;
1971cdebaff8SEnji Cooper 
1972cdebaff8SEnji Cooper 	memset(&ci, 0, sizeof(ci));
1973cdebaff8SEnji Cooper 	ci.ci_disk = dkpath;
1974cdebaff8SEnji Cooper 	ci.ci_alg = alg;
1975cdebaff8SEnji Cooper 	ci.ci_ivmethod = ivmethod;
1976cdebaff8SEnji Cooper 	ci.ci_keylen = 8 * keylen - 8; /* Exclude the NUL terminator. */
1977cdebaff8SEnji Cooper 	ci.ci_key = key;
1978cdebaff8SEnji Cooper 	ci.ci_blocksize = 64;
1979cdebaff8SEnji Cooper 
1980cdebaff8SEnji Cooper 	return rump_sys_ioctl(fd, CGDIOCSET, &ci);
1981cdebaff8SEnji Cooper }
1982cdebaff8SEnji Cooper 
1983cdebaff8SEnji Cooper static int
unconfigure_cgd(int fd)1984cdebaff8SEnji Cooper unconfigure_cgd(int fd)
1985cdebaff8SEnji Cooper {
1986cdebaff8SEnji Cooper 	struct cgd_ioctl ci;
1987cdebaff8SEnji Cooper 
1988cdebaff8SEnji Cooper 	return rump_sys_ioctl(fd, CGDIOCCLR, &ci);
1989cdebaff8SEnji Cooper }
1990cdebaff8SEnji Cooper 
1991cdebaff8SEnji Cooper static int
write_testvec(int cgdfd,const struct testvec * tv)1992cdebaff8SEnji Cooper write_testvec(int cgdfd, const struct testvec *tv)
1993cdebaff8SEnji Cooper {
1994cdebaff8SEnji Cooper 
1995cdebaff8SEnji Cooper 	if (rump_sys_lseek(cgdfd, tv->blkno * SECSIZE, SEEK_SET) < 0)
1996cdebaff8SEnji Cooper 		return -1;
1997cdebaff8SEnji Cooper 
1998cdebaff8SEnji Cooper 	if (rump_sys_write(cgdfd, tv->ptxt, SECSIZE) != SECSIZE)
1999cdebaff8SEnji Cooper 		return -1;
2000cdebaff8SEnji Cooper 
2001cdebaff8SEnji Cooper 	return 0;
2002cdebaff8SEnji Cooper }
2003cdebaff8SEnji Cooper 
2004cdebaff8SEnji Cooper static int
read_testvec(int cgdfd,const struct testvec * tv)2005cdebaff8SEnji Cooper read_testvec(int cgdfd, const struct testvec *tv)
2006cdebaff8SEnji Cooper {
2007cdebaff8SEnji Cooper 	char *buf;
2008cdebaff8SEnji Cooper 	int res = -1;
2009cdebaff8SEnji Cooper 
2010cdebaff8SEnji Cooper 	buf = malloc(SECSIZE);
2011cdebaff8SEnji Cooper 	if (buf == NULL)
2012cdebaff8SEnji Cooper 		return -1;
2013cdebaff8SEnji Cooper 
2014cdebaff8SEnji Cooper 	if (rump_sys_lseek(cgdfd, tv->blkno * SECSIZE, SEEK_SET) < 0)
2015cdebaff8SEnji Cooper 		goto fail;
2016cdebaff8SEnji Cooper 
2017cdebaff8SEnji Cooper 	if (rump_sys_read(cgdfd, buf, SECSIZE) != SECSIZE)
2018cdebaff8SEnji Cooper 		goto fail;
2019cdebaff8SEnji Cooper 
2020cdebaff8SEnji Cooper 	res = memcmp(buf, tv->ptxt, SECSIZE);
2021cdebaff8SEnji Cooper fail:
2022cdebaff8SEnji Cooper 	free(buf);
2023cdebaff8SEnji Cooper 	return res;
2024cdebaff8SEnji Cooper }
2025cdebaff8SEnji Cooper 
2026cdebaff8SEnji Cooper static int
check_testvec(int dkfd,const struct testvec * tv)2027cdebaff8SEnji Cooper check_testvec(int dkfd, const struct testvec *tv)
2028cdebaff8SEnji Cooper {
2029cdebaff8SEnji Cooper 	char *buf;
2030cdebaff8SEnji Cooper 	int res = -1;
2031cdebaff8SEnji Cooper 
2032cdebaff8SEnji Cooper 	buf = malloc(SECSIZE);
2033cdebaff8SEnji Cooper 	if (buf == NULL)
2034cdebaff8SEnji Cooper 		return -1;
2035cdebaff8SEnji Cooper 
2036cdebaff8SEnji Cooper 	if (lseek(dkfd, tv->blkno * SECSIZE, SEEK_SET) < 0)
2037cdebaff8SEnji Cooper 		goto fail;
2038cdebaff8SEnji Cooper 
2039cdebaff8SEnji Cooper 	if (read(dkfd, buf, SECSIZE) != SECSIZE)
2040cdebaff8SEnji Cooper 		goto fail;
2041cdebaff8SEnji Cooper 
2042cdebaff8SEnji Cooper 	res = memcmp(buf, tv->ctxt, SECSIZE);
2043cdebaff8SEnji Cooper fail:
2044cdebaff8SEnji Cooper 	free(buf);
2045cdebaff8SEnji Cooper 	return res;
2046cdebaff8SEnji Cooper }
2047cdebaff8SEnji Cooper 
2048cdebaff8SEnji Cooper ATF_TC(cgd_bf_cbc_128_encblkno1);
ATF_TC_HEAD(cgd_bf_cbc_128_encblkno1,tc)2049cdebaff8SEnji Cooper ATF_TC_HEAD(cgd_bf_cbc_128_encblkno1, tc)
2050cdebaff8SEnji Cooper {
2051cdebaff8SEnji Cooper 	atf_tc_set_md_var(tc, "descr",
2052cdebaff8SEnji Cooper 	    "Test blowfish-cbc with 128 bits key, ivmethod encblkno1");
2053cdebaff8SEnji Cooper }
2054cdebaff8SEnji Cooper 
ATF_TC_BODY(cgd_bf_cbc_128_encblkno1,tc)2055cdebaff8SEnji Cooper ATF_TC_BODY(cgd_bf_cbc_128_encblkno1, tc)
2056cdebaff8SEnji Cooper {
2057cdebaff8SEnji Cooper 	const char imgpath[] = "blowfish-cbc-128-encblkno1.img";
2058cdebaff8SEnji Cooper 	const char *dkpath = "/dev/dk";
2059cdebaff8SEnji Cooper 	const size_t dksize = 4 * SECSIZE; /* Last blkno is 3. */
2060cdebaff8SEnji Cooper 	int dkfd, cgdfd;
2061cdebaff8SEnji Cooper 
2062cdebaff8SEnji Cooper 	rump_init();
2063cdebaff8SEnji Cooper 
2064cdebaff8SEnji Cooper 	RL(dkfd = open_disk(dkpath, imgpath, dksize));
2065cdebaff8SEnji Cooper 
2066cdebaff8SEnji Cooper 	RL(cgdfd = open_cgd(0));
2067cdebaff8SEnji Cooper 	RL(configure_cgd(cgdfd, dkpath, "blowfish-cbc", "encblkno1",
2068cdebaff8SEnji Cooper 	    bf_cbc_128_key, sizeof(bf_cbc_128_key)));
2069cdebaff8SEnji Cooper 
2070cdebaff8SEnji Cooper 	ATF_CHECK_EQ(write_testvec(cgdfd, &bf_cbc_128_1_vectors[0]), 0);
2071cdebaff8SEnji Cooper 	ATF_CHECK_EQ(write_testvec(cgdfd, &bf_cbc_128_1_vectors[1]), 0);
2072cdebaff8SEnji Cooper 	ATF_CHECK_EQ(write_testvec(cgdfd, &bf_cbc_128_1_vectors[2]), 0);
2073cdebaff8SEnji Cooper 	ATF_CHECK_EQ(write_testvec(cgdfd, &bf_cbc_128_1_vectors[3]), 0);
2074cdebaff8SEnji Cooper 
2075cdebaff8SEnji Cooper 	RL(unconfigure_cgd(cgdfd));
2076cdebaff8SEnji Cooper 	RL(configure_cgd(cgdfd, dkpath, "blowfish-cbc", "encblkno1",
2077cdebaff8SEnji Cooper 	    bf_cbc_128_key, sizeof(bf_cbc_128_key)));
2078cdebaff8SEnji Cooper 
2079cdebaff8SEnji Cooper 	ATF_CHECK_EQ(read_testvec(cgdfd, &bf_cbc_128_1_vectors[0]), 0);
2080cdebaff8SEnji Cooper 	ATF_CHECK_EQ(read_testvec(cgdfd, &bf_cbc_128_1_vectors[1]), 0);
2081cdebaff8SEnji Cooper 	ATF_CHECK_EQ(read_testvec(cgdfd, &bf_cbc_128_1_vectors[2]), 0);
2082cdebaff8SEnji Cooper 	ATF_CHECK_EQ(read_testvec(cgdfd, &bf_cbc_128_1_vectors[3]), 0);
2083cdebaff8SEnji Cooper 
2084cdebaff8SEnji Cooper 	RL(unconfigure_cgd(cgdfd));
2085cdebaff8SEnji Cooper 	RL(rump_sys_close(cgdfd));
2086cdebaff8SEnji Cooper 
2087cdebaff8SEnji Cooper 	ATF_CHECK_EQ(check_testvec(dkfd, &bf_cbc_128_1_vectors[0]), 0);
2088cdebaff8SEnji Cooper 	ATF_CHECK_EQ(check_testvec(dkfd, &bf_cbc_128_1_vectors[1]), 0);
2089cdebaff8SEnji Cooper 	ATF_CHECK_EQ(check_testvec(dkfd, &bf_cbc_128_1_vectors[2]), 0);
2090cdebaff8SEnji Cooper 	ATF_CHECK_EQ(check_testvec(dkfd, &bf_cbc_128_1_vectors[3]), 0);
2091cdebaff8SEnji Cooper 
2092cdebaff8SEnji Cooper 	RL(close(dkfd));
2093cdebaff8SEnji Cooper }
2094cdebaff8SEnji Cooper 
2095cdebaff8SEnji Cooper ATF_TC(cgd_bf_cbc_128_encblkno8);
ATF_TC_HEAD(cgd_bf_cbc_128_encblkno8,tc)2096cdebaff8SEnji Cooper ATF_TC_HEAD(cgd_bf_cbc_128_encblkno8, tc)
2097cdebaff8SEnji Cooper {
2098cdebaff8SEnji Cooper 	atf_tc_set_md_var(tc, "descr",
2099cdebaff8SEnji Cooper 	    "Test blowfish-cbc with 128 bits key, ivmethod encblkno8");
2100cdebaff8SEnji Cooper }
2101cdebaff8SEnji Cooper 
ATF_TC_BODY(cgd_bf_cbc_128_encblkno8,tc)2102cdebaff8SEnji Cooper ATF_TC_BODY(cgd_bf_cbc_128_encblkno8, tc)
2103cdebaff8SEnji Cooper {
2104cdebaff8SEnji Cooper 	const char imgpath[] = "blowfish-cbc-128-encblkno8.img";
2105cdebaff8SEnji Cooper 	const char *dkpath = "/dev/dk";
2106cdebaff8SEnji Cooper 	const size_t dksize = 4 * SECSIZE; /* Last blkno is 3. */
2107cdebaff8SEnji Cooper 	int dkfd, cgdfd;
2108cdebaff8SEnji Cooper 
2109cdebaff8SEnji Cooper 	rump_init();
2110cdebaff8SEnji Cooper 
2111cdebaff8SEnji Cooper 	RL(dkfd = open_disk(dkpath, imgpath, dksize));
2112cdebaff8SEnji Cooper 
2113cdebaff8SEnji Cooper 	RL(cgdfd = open_cgd(0));
2114cdebaff8SEnji Cooper 	RL(configure_cgd(cgdfd, dkpath, "blowfish-cbc", "encblkno8",
2115cdebaff8SEnji Cooper 	    bf_cbc_128_key, sizeof(bf_cbc_128_key)));
2116cdebaff8SEnji Cooper 
2117cdebaff8SEnji Cooper 	ATF_CHECK_EQ(write_testvec(cgdfd, &bf_cbc_128_8_vectors[0]), 0);
2118cdebaff8SEnji Cooper 	ATF_CHECK_EQ(write_testvec(cgdfd, &bf_cbc_128_8_vectors[1]), 0);
2119cdebaff8SEnji Cooper 	ATF_CHECK_EQ(write_testvec(cgdfd, &bf_cbc_128_8_vectors[2]), 0);
2120cdebaff8SEnji Cooper 	ATF_CHECK_EQ(write_testvec(cgdfd, &bf_cbc_128_8_vectors[3]), 0);
2121cdebaff8SEnji Cooper 
2122cdebaff8SEnji Cooper 	RL(unconfigure_cgd(cgdfd));
2123cdebaff8SEnji Cooper 	RL(configure_cgd(cgdfd, dkpath, "blowfish-cbc", "encblkno8",
2124cdebaff8SEnji Cooper 	    bf_cbc_128_key, sizeof(bf_cbc_128_key)));
2125cdebaff8SEnji Cooper 
2126cdebaff8SEnji Cooper 	ATF_CHECK_EQ(read_testvec(cgdfd, &bf_cbc_128_8_vectors[0]), 0);
2127cdebaff8SEnji Cooper 	ATF_CHECK_EQ(read_testvec(cgdfd, &bf_cbc_128_8_vectors[1]), 0);
2128cdebaff8SEnji Cooper 	ATF_CHECK_EQ(read_testvec(cgdfd, &bf_cbc_128_8_vectors[2]), 0);
2129cdebaff8SEnji Cooper 	ATF_CHECK_EQ(read_testvec(cgdfd, &bf_cbc_128_8_vectors[3]), 0);
2130cdebaff8SEnji Cooper 
2131cdebaff8SEnji Cooper 	RL(unconfigure_cgd(cgdfd));
2132cdebaff8SEnji Cooper 	RL(rump_sys_close(cgdfd));
2133cdebaff8SEnji Cooper 
2134cdebaff8SEnji Cooper 	ATF_CHECK_EQ(check_testvec(dkfd, &bf_cbc_128_8_vectors[0]), 0);
2135cdebaff8SEnji Cooper 	ATF_CHECK_EQ(check_testvec(dkfd, &bf_cbc_128_8_vectors[1]), 0);
2136cdebaff8SEnji Cooper 	ATF_CHECK_EQ(check_testvec(dkfd, &bf_cbc_128_8_vectors[2]), 0);
2137cdebaff8SEnji Cooper 	ATF_CHECK_EQ(check_testvec(dkfd, &bf_cbc_128_8_vectors[3]), 0);
2138cdebaff8SEnji Cooper 
2139cdebaff8SEnji Cooper 	RL(close(dkfd));
2140cdebaff8SEnji Cooper }
2141cdebaff8SEnji Cooper 
2142cdebaff8SEnji Cooper ATF_TC(cgd_bf_cbc_256_encblkno1);
ATF_TC_HEAD(cgd_bf_cbc_256_encblkno1,tc)2143cdebaff8SEnji Cooper ATF_TC_HEAD(cgd_bf_cbc_256_encblkno1, tc)
2144cdebaff8SEnji Cooper {
2145cdebaff8SEnji Cooper 	atf_tc_set_md_var(tc, "descr",
2146cdebaff8SEnji Cooper 	    "Test blowfish-cbc with 256 bits key, ivmethod encblkno1");
2147cdebaff8SEnji Cooper }
2148cdebaff8SEnji Cooper 
ATF_TC_BODY(cgd_bf_cbc_256_encblkno1,tc)2149cdebaff8SEnji Cooper ATF_TC_BODY(cgd_bf_cbc_256_encblkno1, tc)
2150cdebaff8SEnji Cooper {
2151cdebaff8SEnji Cooper 	const char imgpath[] = "blowfish-cbc-256-encblkno1.img";
2152cdebaff8SEnji Cooper 	const char *dkpath = "/dev/dk";
2153cdebaff8SEnji Cooper 	const size_t dksize = 4 * SECSIZE; /* Last blkno is 3. */
2154cdebaff8SEnji Cooper 	int dkfd, cgdfd;
2155cdebaff8SEnji Cooper 
2156cdebaff8SEnji Cooper 	rump_init();
2157cdebaff8SEnji Cooper 
2158cdebaff8SEnji Cooper 	RL(dkfd = open_disk(dkpath, imgpath, dksize));
2159cdebaff8SEnji Cooper 
2160cdebaff8SEnji Cooper 	RL(cgdfd = open_cgd(0));
2161cdebaff8SEnji Cooper 	RL(configure_cgd(cgdfd, dkpath, "blowfish-cbc", "encblkno1",
2162cdebaff8SEnji Cooper 	    bf_cbc_256_key, sizeof(bf_cbc_256_key)));
2163cdebaff8SEnji Cooper 
2164cdebaff8SEnji Cooper 	ATF_CHECK_EQ(write_testvec(cgdfd, &bf_cbc_256_1_vectors[0]), 0);
2165cdebaff8SEnji Cooper 	ATF_CHECK_EQ(write_testvec(cgdfd, &bf_cbc_256_1_vectors[1]), 0);
2166cdebaff8SEnji Cooper 	ATF_CHECK_EQ(write_testvec(cgdfd, &bf_cbc_256_1_vectors[2]), 0);
2167cdebaff8SEnji Cooper 	ATF_CHECK_EQ(write_testvec(cgdfd, &bf_cbc_256_1_vectors[3]), 0);
2168cdebaff8SEnji Cooper 
2169cdebaff8SEnji Cooper 	RL(unconfigure_cgd(cgdfd));
2170cdebaff8SEnji Cooper 	RL(configure_cgd(cgdfd, dkpath, "blowfish-cbc", "encblkno1",
2171cdebaff8SEnji Cooper 	    bf_cbc_256_key, sizeof(bf_cbc_256_key)));
2172cdebaff8SEnji Cooper 
2173cdebaff8SEnji Cooper 	ATF_CHECK_EQ(read_testvec(cgdfd, &bf_cbc_256_1_vectors[0]), 0);
2174cdebaff8SEnji Cooper 	ATF_CHECK_EQ(read_testvec(cgdfd, &bf_cbc_256_1_vectors[1]), 0);
2175cdebaff8SEnji Cooper 	ATF_CHECK_EQ(read_testvec(cgdfd, &bf_cbc_256_1_vectors[2]), 0);
2176cdebaff8SEnji Cooper 	ATF_CHECK_EQ(read_testvec(cgdfd, &bf_cbc_256_1_vectors[3]), 0);
2177cdebaff8SEnji Cooper 
2178cdebaff8SEnji Cooper 	RL(unconfigure_cgd(cgdfd));
2179cdebaff8SEnji Cooper 	RL(rump_sys_close(cgdfd));
2180cdebaff8SEnji Cooper 
2181cdebaff8SEnji Cooper 	ATF_CHECK_EQ(check_testvec(dkfd, &bf_cbc_256_1_vectors[0]), 0);
2182cdebaff8SEnji Cooper 	ATF_CHECK_EQ(check_testvec(dkfd, &bf_cbc_256_1_vectors[1]), 0);
2183cdebaff8SEnji Cooper 	ATF_CHECK_EQ(check_testvec(dkfd, &bf_cbc_256_1_vectors[2]), 0);
2184cdebaff8SEnji Cooper 	ATF_CHECK_EQ(check_testvec(dkfd, &bf_cbc_256_1_vectors[3]), 0);
2185cdebaff8SEnji Cooper 
2186cdebaff8SEnji Cooper 	RL(close(dkfd));
2187cdebaff8SEnji Cooper }
2188cdebaff8SEnji Cooper 
2189cdebaff8SEnji Cooper ATF_TC(cgd_bf_cbc_256_encblkno8);
ATF_TC_HEAD(cgd_bf_cbc_256_encblkno8,tc)2190cdebaff8SEnji Cooper ATF_TC_HEAD(cgd_bf_cbc_256_encblkno8, tc)
2191cdebaff8SEnji Cooper {
2192cdebaff8SEnji Cooper 	atf_tc_set_md_var(tc, "descr",
2193cdebaff8SEnji Cooper 	    "Test blowfish-cbc with 256 bits key, ivmethod encblkno8");
2194cdebaff8SEnji Cooper }
2195cdebaff8SEnji Cooper 
ATF_TC_BODY(cgd_bf_cbc_256_encblkno8,tc)2196cdebaff8SEnji Cooper ATF_TC_BODY(cgd_bf_cbc_256_encblkno8, tc)
2197cdebaff8SEnji Cooper {
2198cdebaff8SEnji Cooper 	const char imgpath[] = "blowfish-cbc-256-encblkno8.img";
2199cdebaff8SEnji Cooper 	const char *dkpath = "/dev/dk";
2200cdebaff8SEnji Cooper 	const size_t dksize = 4 * SECSIZE; /* Last blkno is 3. */
2201cdebaff8SEnji Cooper 	int dkfd, cgdfd;
2202cdebaff8SEnji Cooper 
2203cdebaff8SEnji Cooper 	rump_init();
2204cdebaff8SEnji Cooper 
2205cdebaff8SEnji Cooper 	RL(dkfd = open_disk(dkpath, imgpath, dksize));
2206cdebaff8SEnji Cooper 
2207cdebaff8SEnji Cooper 	RL(cgdfd = open_cgd(0));
2208cdebaff8SEnji Cooper 	RL(configure_cgd(cgdfd, dkpath, "blowfish-cbc", "encblkno8",
2209cdebaff8SEnji Cooper 	    bf_cbc_256_key, sizeof(bf_cbc_256_key)));
2210cdebaff8SEnji Cooper 
2211cdebaff8SEnji Cooper 	ATF_CHECK_EQ(write_testvec(cgdfd, &bf_cbc_256_8_vectors[0]), 0);
2212cdebaff8SEnji Cooper 	ATF_CHECK_EQ(write_testvec(cgdfd, &bf_cbc_256_8_vectors[1]), 0);
2213cdebaff8SEnji Cooper 	ATF_CHECK_EQ(write_testvec(cgdfd, &bf_cbc_256_8_vectors[2]), 0);
2214cdebaff8SEnji Cooper 	ATF_CHECK_EQ(write_testvec(cgdfd, &bf_cbc_256_8_vectors[3]), 0);
2215cdebaff8SEnji Cooper 
2216cdebaff8SEnji Cooper 	RL(unconfigure_cgd(cgdfd));
2217cdebaff8SEnji Cooper 	RL(configure_cgd(cgdfd, dkpath, "blowfish-cbc", "encblkno8",
2218cdebaff8SEnji Cooper 	    bf_cbc_256_key, sizeof(bf_cbc_256_key)));
2219cdebaff8SEnji Cooper 
2220cdebaff8SEnji Cooper 	ATF_CHECK_EQ(read_testvec(cgdfd, &bf_cbc_256_8_vectors[0]), 0);
2221cdebaff8SEnji Cooper 	ATF_CHECK_EQ(read_testvec(cgdfd, &bf_cbc_256_8_vectors[1]), 0);
2222cdebaff8SEnji Cooper 	ATF_CHECK_EQ(read_testvec(cgdfd, &bf_cbc_256_8_vectors[2]), 0);
2223cdebaff8SEnji Cooper 	ATF_CHECK_EQ(read_testvec(cgdfd, &bf_cbc_256_8_vectors[3]), 0);
2224cdebaff8SEnji Cooper 
2225cdebaff8SEnji Cooper 	RL(unconfigure_cgd(cgdfd));
2226cdebaff8SEnji Cooper 	RL(rump_sys_close(cgdfd));
2227cdebaff8SEnji Cooper 
2228cdebaff8SEnji Cooper 	ATF_CHECK_EQ(check_testvec(dkfd, &bf_cbc_256_8_vectors[0]), 0);
2229cdebaff8SEnji Cooper 	ATF_CHECK_EQ(check_testvec(dkfd, &bf_cbc_256_8_vectors[1]), 0);
2230cdebaff8SEnji Cooper 	ATF_CHECK_EQ(check_testvec(dkfd, &bf_cbc_256_8_vectors[2]), 0);
2231cdebaff8SEnji Cooper 	ATF_CHECK_EQ(check_testvec(dkfd, &bf_cbc_256_8_vectors[3]), 0);
2232cdebaff8SEnji Cooper 
2233cdebaff8SEnji Cooper 	RL(close(dkfd));
2234cdebaff8SEnji Cooper }
2235cdebaff8SEnji Cooper 
2236cdebaff8SEnji Cooper ATF_TC(cgd_bf_cbc_448_encblkno1);
ATF_TC_HEAD(cgd_bf_cbc_448_encblkno1,tc)2237cdebaff8SEnji Cooper ATF_TC_HEAD(cgd_bf_cbc_448_encblkno1, tc)
2238cdebaff8SEnji Cooper {
2239cdebaff8SEnji Cooper 	atf_tc_set_md_var(tc, "descr",
2240cdebaff8SEnji Cooper 	    "Test blowfish-cbc with 448 bits key, ivmethod encblkno1");
2241cdebaff8SEnji Cooper }
2242cdebaff8SEnji Cooper 
ATF_TC_BODY(cgd_bf_cbc_448_encblkno1,tc)2243cdebaff8SEnji Cooper ATF_TC_BODY(cgd_bf_cbc_448_encblkno1, tc)
2244cdebaff8SEnji Cooper {
2245cdebaff8SEnji Cooper 	const char imgpath[] = "blowfish-cbc-448-encblkno1.img";
2246cdebaff8SEnji Cooper 	const char *dkpath = "/dev/dk";
2247cdebaff8SEnji Cooper 	const size_t dksize = 4 * SECSIZE; /* Last blkno is 3. */
2248cdebaff8SEnji Cooper 	int dkfd, cgdfd;
2249cdebaff8SEnji Cooper 
2250cdebaff8SEnji Cooper 	rump_init();
2251cdebaff8SEnji Cooper 
2252cdebaff8SEnji Cooper 	RL(dkfd = open_disk(dkpath, imgpath, dksize));
2253cdebaff8SEnji Cooper 
2254cdebaff8SEnji Cooper 	RL(cgdfd = open_cgd(0));
2255cdebaff8SEnji Cooper 	RL(configure_cgd(cgdfd, dkpath, "blowfish-cbc", "encblkno1",
2256cdebaff8SEnji Cooper 	    bf_cbc_448_key, sizeof(bf_cbc_448_key)));
2257cdebaff8SEnji Cooper 
2258cdebaff8SEnji Cooper 	ATF_CHECK_EQ(write_testvec(cgdfd, &bf_cbc_448_1_vectors[0]), 0);
2259cdebaff8SEnji Cooper 	ATF_CHECK_EQ(write_testvec(cgdfd, &bf_cbc_448_1_vectors[1]), 0);
2260cdebaff8SEnji Cooper 	ATF_CHECK_EQ(write_testvec(cgdfd, &bf_cbc_448_1_vectors[2]), 0);
2261cdebaff8SEnji Cooper 	ATF_CHECK_EQ(write_testvec(cgdfd, &bf_cbc_448_1_vectors[3]), 0);
2262cdebaff8SEnji Cooper 
2263cdebaff8SEnji Cooper 	RL(unconfigure_cgd(cgdfd));
2264cdebaff8SEnji Cooper 	RL(configure_cgd(cgdfd, dkpath, "blowfish-cbc", "encblkno1",
2265cdebaff8SEnji Cooper 	    bf_cbc_448_key, sizeof(bf_cbc_448_key)));
2266cdebaff8SEnji Cooper 
2267cdebaff8SEnji Cooper 	ATF_CHECK_EQ(read_testvec(cgdfd, &bf_cbc_448_1_vectors[0]), 0);
2268cdebaff8SEnji Cooper 	ATF_CHECK_EQ(read_testvec(cgdfd, &bf_cbc_448_1_vectors[1]), 0);
2269cdebaff8SEnji Cooper 	ATF_CHECK_EQ(read_testvec(cgdfd, &bf_cbc_448_1_vectors[2]), 0);
2270cdebaff8SEnji Cooper 	ATF_CHECK_EQ(read_testvec(cgdfd, &bf_cbc_448_1_vectors[3]), 0);
2271cdebaff8SEnji Cooper 
2272cdebaff8SEnji Cooper 	RL(unconfigure_cgd(cgdfd));
2273cdebaff8SEnji Cooper 	RL(rump_sys_close(cgdfd));
2274cdebaff8SEnji Cooper 
2275cdebaff8SEnji Cooper 	ATF_CHECK_EQ(check_testvec(dkfd, &bf_cbc_448_1_vectors[0]), 0);
2276cdebaff8SEnji Cooper 	ATF_CHECK_EQ(check_testvec(dkfd, &bf_cbc_448_1_vectors[1]), 0);
2277cdebaff8SEnji Cooper 	ATF_CHECK_EQ(check_testvec(dkfd, &bf_cbc_448_1_vectors[2]), 0);
2278cdebaff8SEnji Cooper 	ATF_CHECK_EQ(check_testvec(dkfd, &bf_cbc_448_1_vectors[3]), 0);
2279cdebaff8SEnji Cooper 
2280cdebaff8SEnji Cooper 	RL(close(dkfd));
2281cdebaff8SEnji Cooper }
2282cdebaff8SEnji Cooper 
2283cdebaff8SEnji Cooper ATF_TC(cgd_bf_cbc_448_encblkno8);
ATF_TC_HEAD(cgd_bf_cbc_448_encblkno8,tc)2284cdebaff8SEnji Cooper ATF_TC_HEAD(cgd_bf_cbc_448_encblkno8, tc)
2285cdebaff8SEnji Cooper {
2286cdebaff8SEnji Cooper 	atf_tc_set_md_var(tc, "descr",
2287cdebaff8SEnji Cooper 	    "Test blowfish-cbc with 448 bits key, ivmethod encblkno8");
2288cdebaff8SEnji Cooper }
2289cdebaff8SEnji Cooper 
ATF_TC_BODY(cgd_bf_cbc_448_encblkno8,tc)2290cdebaff8SEnji Cooper ATF_TC_BODY(cgd_bf_cbc_448_encblkno8, tc)
2291cdebaff8SEnji Cooper {
2292cdebaff8SEnji Cooper 	const char imgpath[] = "blowfish-cbc-448-encblkno8.img";
2293cdebaff8SEnji Cooper 	const char *dkpath = "/dev/dk";
2294cdebaff8SEnji Cooper 	const size_t dksize = 4 * SECSIZE; /* Last blkno is 3. */
2295cdebaff8SEnji Cooper 	int dkfd, cgdfd;
2296cdebaff8SEnji Cooper 
2297cdebaff8SEnji Cooper 	rump_init();
2298cdebaff8SEnji Cooper 
2299cdebaff8SEnji Cooper 	RL(dkfd = open_disk(dkpath, imgpath, dksize));
2300cdebaff8SEnji Cooper 
2301cdebaff8SEnji Cooper 	RL(cgdfd = open_cgd(0));
2302cdebaff8SEnji Cooper 	RL(configure_cgd(cgdfd, dkpath, "blowfish-cbc", "encblkno8",
2303cdebaff8SEnji Cooper 	    bf_cbc_448_key, sizeof(bf_cbc_448_key)));
2304cdebaff8SEnji Cooper 
2305cdebaff8SEnji Cooper 	ATF_CHECK_EQ(write_testvec(cgdfd, &bf_cbc_448_8_vectors[0]), 0);
2306cdebaff8SEnji Cooper 	ATF_CHECK_EQ(write_testvec(cgdfd, &bf_cbc_448_8_vectors[1]), 0);
2307cdebaff8SEnji Cooper 	ATF_CHECK_EQ(write_testvec(cgdfd, &bf_cbc_448_8_vectors[2]), 0);
2308cdebaff8SEnji Cooper 	ATF_CHECK_EQ(write_testvec(cgdfd, &bf_cbc_448_8_vectors[3]), 0);
2309cdebaff8SEnji Cooper 
2310cdebaff8SEnji Cooper 	RL(unconfigure_cgd(cgdfd));
2311cdebaff8SEnji Cooper 	RL(configure_cgd(cgdfd, dkpath, "blowfish-cbc", "encblkno8",
2312cdebaff8SEnji Cooper 	    bf_cbc_448_key, sizeof(bf_cbc_448_key)));
2313cdebaff8SEnji Cooper 
2314cdebaff8SEnji Cooper 	ATF_CHECK_EQ(read_testvec(cgdfd, &bf_cbc_448_8_vectors[0]), 0);
2315cdebaff8SEnji Cooper 	ATF_CHECK_EQ(read_testvec(cgdfd, &bf_cbc_448_8_vectors[1]), 0);
2316cdebaff8SEnji Cooper 	ATF_CHECK_EQ(read_testvec(cgdfd, &bf_cbc_448_8_vectors[2]), 0);
2317cdebaff8SEnji Cooper 	ATF_CHECK_EQ(read_testvec(cgdfd, &bf_cbc_448_8_vectors[3]), 0);
2318cdebaff8SEnji Cooper 
2319cdebaff8SEnji Cooper 	RL(unconfigure_cgd(cgdfd));
2320cdebaff8SEnji Cooper 	RL(rump_sys_close(cgdfd));
2321cdebaff8SEnji Cooper 
2322cdebaff8SEnji Cooper 	ATF_CHECK_EQ(check_testvec(dkfd, &bf_cbc_448_8_vectors[0]), 0);
2323cdebaff8SEnji Cooper 	ATF_CHECK_EQ(check_testvec(dkfd, &bf_cbc_448_8_vectors[1]), 0);
2324cdebaff8SEnji Cooper 	ATF_CHECK_EQ(check_testvec(dkfd, &bf_cbc_448_8_vectors[2]), 0);
2325cdebaff8SEnji Cooper 	ATF_CHECK_EQ(check_testvec(dkfd, &bf_cbc_448_8_vectors[3]), 0);
2326cdebaff8SEnji Cooper 
2327cdebaff8SEnji Cooper 	RL(close(dkfd));
2328cdebaff8SEnji Cooper }
2329cdebaff8SEnji Cooper 
ATF_TP_ADD_TCS(tp)2330cdebaff8SEnji Cooper ATF_TP_ADD_TCS(tp)
2331cdebaff8SEnji Cooper {
2332cdebaff8SEnji Cooper 
2333cdebaff8SEnji Cooper 	ATF_TP_ADD_TC(tp, cgd_bf_cbc_128_encblkno1);
2334cdebaff8SEnji Cooper 	ATF_TP_ADD_TC(tp, cgd_bf_cbc_128_encblkno8);
2335cdebaff8SEnji Cooper 	ATF_TP_ADD_TC(tp, cgd_bf_cbc_256_encblkno1);
2336cdebaff8SEnji Cooper 	ATF_TP_ADD_TC(tp, cgd_bf_cbc_256_encblkno8);
2337cdebaff8SEnji Cooper 	ATF_TP_ADD_TC(tp, cgd_bf_cbc_448_encblkno1);
2338cdebaff8SEnji Cooper 	ATF_TP_ADD_TC(tp, cgd_bf_cbc_448_encblkno8);
2339cdebaff8SEnji Cooper 
2340cdebaff8SEnji Cooper 	return atf_no_error();
2341cdebaff8SEnji Cooper }
2342