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