Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

crypto: testmgr - eliminate redundant decryption test vectors

Currently testmgr has separate encryption and decryption test vectors
for symmetric ciphers. That's massively redundant, since with few
exceptions (mostly mistakes, apparently), all decryption tests are
identical to the encryption tests, just with the input/result flipped.

Therefore, eliminate the redundancy by removing the decryption test
vectors and updating testmgr to test both encryption and decryption
using what used to be the encryption test vectors. Naming is adjusted
accordingly: each cipher_testvec now has a 'ptext' (plaintext), 'ctext'
(ciphertext), and 'len' instead of an 'input', 'result', 'ilen', and
'rlen'. Note that it was always the case that 'ilen == rlen'.

AES keywrap ("kw(aes)") is special because its IV is generated by the
encryption. Previously this was handled by specifying 'iv_out' for
encryption and 'iv' for decryption. To make it work cleanly with only
one set of test vectors, put the IV in 'iv', remove 'iv_out', and add a
boolean that indicates that the IV is generated by the encryption.

In total, this removes over 10000 lines from testmgr.h, with no
reduction in test coverage since prior patches already copied the few
unique decryption test vectors into the encryption test vectors.

This covers all algorithms that used 'struct cipher_testvec', e.g. any
block cipher in the ECB, CBC, CTR, XTS, LRW, CTS-CBC, PCBC, OFB, or
keywrap modes, and Salsa20 and ChaCha20. No change is made to AEAD
tests, though we probably can eliminate a similar redundancy there too.

The testmgr.h portion of this patch was automatically generated using
the following awk script, with some slight manual fixups on top (updated
'struct cipher_testvec' definition, updated a few comments, and fixed up
the AES keywrap test vectors):

BEGIN { OTHER = 0; ENCVEC = 1; DECVEC = 2; DECVEC_TAIL = 3; mode = OTHER }

/^static const struct cipher_testvec.*_enc_/ { sub("_enc", ""); mode = ENCVEC }
/^static const struct cipher_testvec.*_dec_/ { mode = DECVEC }
mode == ENCVEC && !/\.ilen[[:space:]]*=/ {
sub(/\.input[[:space:]]*=$/, ".ptext =")
sub(/\.input[[:space:]]*=/, ".ptext\t=")
sub(/\.result[[:space:]]*=$/, ".ctext =")
sub(/\.result[[:space:]]*=/, ".ctext\t=")
sub(/\.rlen[[:space:]]*=/, ".len\t=")
print
}
mode == DECVEC_TAIL && /[^[:space:]]/ { mode = OTHER }
mode == OTHER { print }
mode == ENCVEC && /^};/ { mode = OTHER }
mode == DECVEC && /^};/ { mode = DECVEC_TAIL }

Note that git's default diff algorithm gets confused by the testmgr.h
portion of this patch, and reports too many lines added and removed.
It's better viewed with 'git diff --minimal' (or 'git show --minimal'),
which reports "2 files changed, 919 insertions(+), 11723 deletions(-)".

Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

authored by

Eric Biggers and committed by
Herbert Xu
92a4c9fe 4074a77d

+919 -11723
+110 -299
crypto/testmgr.c
··· 84 84 }; 85 85 86 86 struct cipher_test_suite { 87 - struct { 88 - const struct cipher_testvec *vecs; 89 - unsigned int count; 90 - } enc, dec; 87 + const struct cipher_testvec *vecs; 88 + unsigned int count; 91 89 }; 92 90 93 91 struct comp_test_suite { ··· 986 988 unsigned int i, j, k; 987 989 char *q; 988 990 const char *e; 991 + const char *input, *result; 989 992 void *data; 990 993 char *xbuf[XBUFSIZE]; 991 994 int ret = -ENOMEM; ··· 1007 1008 if (fips_enabled && template[i].fips_skip) 1008 1009 continue; 1009 1010 1011 + input = enc ? template[i].ptext : template[i].ctext; 1012 + result = enc ? template[i].ctext : template[i].ptext; 1010 1013 j++; 1011 1014 1012 1015 ret = -EINVAL; 1013 - if (WARN_ON(template[i].ilen > PAGE_SIZE)) 1016 + if (WARN_ON(template[i].len > PAGE_SIZE)) 1014 1017 goto out; 1015 1018 1016 1019 data = xbuf[0]; 1017 - memcpy(data, template[i].input, template[i].ilen); 1020 + memcpy(data, input, template[i].len); 1018 1021 1019 1022 crypto_cipher_clear_flags(tfm, ~0); 1020 1023 if (template[i].wk) ··· 1032 1031 } else if (ret) 1033 1032 continue; 1034 1033 1035 - for (k = 0; k < template[i].ilen; 1034 + for (k = 0; k < template[i].len; 1036 1035 k += crypto_cipher_blocksize(tfm)) { 1037 1036 if (enc) 1038 1037 crypto_cipher_encrypt_one(tfm, data + k, ··· 1043 1042 } 1044 1043 1045 1044 q = data; 1046 - if (memcmp(q, template[i].result, template[i].rlen)) { 1045 + if (memcmp(q, result, template[i].len)) { 1047 1046 printk(KERN_ERR "alg: cipher: Test %d failed " 1048 1047 "on %s for %s\n", j, e, algo); 1049 - hexdump(q, template[i].rlen); 1048 + hexdump(q, template[i].len); 1050 1049 ret = -EINVAL; 1051 1050 goto out; 1052 1051 } ··· 1074 1073 struct scatterlist sgout[8]; 1075 1074 const char *e, *d; 1076 1075 struct crypto_wait wait; 1076 + const char *input, *result; 1077 1077 void *data; 1078 1078 char iv[MAX_IVLEN]; 1079 1079 char *xbuf[XBUFSIZE]; ··· 1118 1116 if (fips_enabled && template[i].fips_skip) 1119 1117 continue; 1120 1118 1121 - if (template[i].iv) 1119 + if (template[i].iv && !(template[i].generates_iv && enc)) 1122 1120 memcpy(iv, template[i].iv, ivsize); 1123 1121 else 1124 1122 memset(iv, 0, MAX_IVLEN); 1125 1123 1124 + input = enc ? template[i].ptext : template[i].ctext; 1125 + result = enc ? template[i].ctext : template[i].ptext; 1126 1126 j++; 1127 1127 ret = -EINVAL; 1128 - if (WARN_ON(align_offset + template[i].ilen > PAGE_SIZE)) 1128 + if (WARN_ON(align_offset + template[i].len > PAGE_SIZE)) 1129 1129 goto out; 1130 1130 1131 1131 data = xbuf[0]; 1132 1132 data += align_offset; 1133 - memcpy(data, template[i].input, template[i].ilen); 1133 + memcpy(data, input, template[i].len); 1134 1134 1135 1135 crypto_skcipher_clear_flags(tfm, ~0); 1136 1136 if (template[i].wk) ··· 1148 1144 } else if (ret) 1149 1145 continue; 1150 1146 1151 - sg_init_one(&sg[0], data, template[i].ilen); 1147 + sg_init_one(&sg[0], data, template[i].len); 1152 1148 if (diff_dst) { 1153 1149 data = xoutbuf[0]; 1154 1150 data += align_offset; 1155 - sg_init_one(&sgout[0], data, template[i].ilen); 1151 + sg_init_one(&sgout[0], data, template[i].len); 1156 1152 } 1157 1153 1158 1154 skcipher_request_set_crypt(req, sg, (diff_dst) ? sgout : sg, 1159 - template[i].ilen, iv); 1155 + template[i].len, iv); 1160 1156 ret = crypto_wait_req(enc ? crypto_skcipher_encrypt(req) : 1161 1157 crypto_skcipher_decrypt(req), &wait); 1162 1158 ··· 1167 1163 } 1168 1164 1169 1165 q = data; 1170 - if (memcmp(q, template[i].result, template[i].rlen)) { 1166 + if (memcmp(q, result, template[i].len)) { 1171 1167 pr_err("alg: skcipher%s: Test %d failed (invalid result) on %s for %s\n", 1172 1168 d, j, e, algo); 1173 - hexdump(q, template[i].rlen); 1169 + hexdump(q, template[i].len); 1174 1170 ret = -EINVAL; 1175 1171 goto out; 1176 1172 } 1177 1173 1178 - if (template[i].iv_out && 1179 - memcmp(iv, template[i].iv_out, 1180 - crypto_skcipher_ivsize(tfm))) { 1174 + if (template[i].generates_iv && enc && 1175 + memcmp(iv, template[i].iv, crypto_skcipher_ivsize(tfm))) { 1181 1176 pr_err("alg: skcipher%s: Test %d failed (invalid output IV) on %s for %s\n", 1182 1177 d, j, e, algo); 1183 1178 hexdump(iv, crypto_skcipher_ivsize(tfm)); ··· 1197 1194 if (fips_enabled && template[i].fips_skip) 1198 1195 continue; 1199 1196 1200 - if (template[i].iv) 1197 + if (template[i].iv && !(template[i].generates_iv && enc)) 1201 1198 memcpy(iv, template[i].iv, ivsize); 1202 1199 else 1203 1200 memset(iv, 0, MAX_IVLEN); 1204 1201 1202 + input = enc ? template[i].ptext : template[i].ctext; 1203 + result = enc ? template[i].ctext : template[i].ptext; 1205 1204 j++; 1206 1205 crypto_skcipher_clear_flags(tfm, ~0); 1207 1206 if (template[i].wk) ··· 1231 1226 1232 1227 q = xbuf[IDX[k] >> PAGE_SHIFT] + offset_in_page(IDX[k]); 1233 1228 1234 - memcpy(q, template[i].input + temp, template[i].tap[k]); 1229 + memcpy(q, input + temp, template[i].tap[k]); 1235 1230 1236 1231 if (offset_in_page(q) + template[i].tap[k] < PAGE_SIZE) 1237 1232 q[template[i].tap[k]] = 0; ··· 1253 1248 } 1254 1249 1255 1250 skcipher_request_set_crypt(req, sg, (diff_dst) ? sgout : sg, 1256 - template[i].ilen, iv); 1251 + template[i].len, iv); 1257 1252 1258 1253 ret = crypto_wait_req(enc ? crypto_skcipher_encrypt(req) : 1259 1254 crypto_skcipher_decrypt(req), &wait); ··· 1274 1269 q = xbuf[IDX[k] >> PAGE_SHIFT] + 1275 1270 offset_in_page(IDX[k]); 1276 1271 1277 - if (memcmp(q, template[i].result + temp, 1278 - template[i].tap[k])) { 1272 + if (memcmp(q, result + temp, template[i].tap[k])) { 1279 1273 pr_err("alg: skcipher%s: Chunk test %d failed on %s at page %u for %s\n", 1280 1274 d, j, e, k, algo); 1281 1275 hexdump(q, template[i].tap[k]); ··· 1709 1705 static int alg_test_cipher(const struct alg_test_desc *desc, 1710 1706 const char *driver, u32 type, u32 mask) 1711 1707 { 1708 + const struct cipher_test_suite *suite = &desc->suite.cipher; 1712 1709 struct crypto_cipher *tfm; 1713 - int err = 0; 1710 + int err; 1714 1711 1715 1712 tfm = crypto_alloc_cipher(driver, type, mask); 1716 1713 if (IS_ERR(tfm)) { ··· 1720 1715 return PTR_ERR(tfm); 1721 1716 } 1722 1717 1723 - if (desc->suite.cipher.enc.vecs) { 1724 - err = test_cipher(tfm, ENCRYPT, desc->suite.cipher.enc.vecs, 1725 - desc->suite.cipher.enc.count); 1726 - if (err) 1727 - goto out; 1728 - } 1718 + err = test_cipher(tfm, ENCRYPT, suite->vecs, suite->count); 1719 + if (!err) 1720 + err = test_cipher(tfm, DECRYPT, suite->vecs, suite->count); 1729 1721 1730 - if (desc->suite.cipher.dec.vecs) 1731 - err = test_cipher(tfm, DECRYPT, desc->suite.cipher.dec.vecs, 1732 - desc->suite.cipher.dec.count); 1733 - 1734 - out: 1735 1722 crypto_free_cipher(tfm); 1736 1723 return err; 1737 1724 } ··· 1731 1734 static int alg_test_skcipher(const struct alg_test_desc *desc, 1732 1735 const char *driver, u32 type, u32 mask) 1733 1736 { 1737 + const struct cipher_test_suite *suite = &desc->suite.cipher; 1734 1738 struct crypto_skcipher *tfm; 1735 - int err = 0; 1739 + int err; 1736 1740 1737 1741 tfm = crypto_alloc_skcipher(driver, type, mask); 1738 1742 if (IS_ERR(tfm)) { ··· 1742 1744 return PTR_ERR(tfm); 1743 1745 } 1744 1746 1745 - if (desc->suite.cipher.enc.vecs) { 1746 - err = test_skcipher(tfm, ENCRYPT, desc->suite.cipher.enc.vecs, 1747 - desc->suite.cipher.enc.count); 1748 - if (err) 1749 - goto out; 1750 - } 1747 + err = test_skcipher(tfm, ENCRYPT, suite->vecs, suite->count); 1748 + if (!err) 1749 + err = test_skcipher(tfm, DECRYPT, suite->vecs, suite->count); 1751 1750 1752 - if (desc->suite.cipher.dec.vecs) 1753 - err = test_skcipher(tfm, DECRYPT, desc->suite.cipher.dec.vecs, 1754 - desc->suite.cipher.dec.count); 1755 - 1756 - out: 1757 1751 crypto_free_skcipher(tfm); 1758 1752 return err; 1759 1753 } ··· 2565 2575 .test = alg_test_skcipher, 2566 2576 .fips_allowed = 1, 2567 2577 .suite = { 2568 - .cipher = { 2569 - .enc = __VECS(aes_cbc_enc_tv_template), 2570 - .dec = __VECS(aes_cbc_dec_tv_template) 2571 - } 2572 - } 2578 + .cipher = __VECS(aes_cbc_tv_template) 2579 + }, 2573 2580 }, { 2574 2581 .alg = "cbc(anubis)", 2575 2582 .test = alg_test_skcipher, 2576 2583 .suite = { 2577 - .cipher = { 2578 - .enc = __VECS(anubis_cbc_enc_tv_template), 2579 - .dec = __VECS(anubis_cbc_dec_tv_template) 2580 - } 2581 - } 2584 + .cipher = __VECS(anubis_cbc_tv_template) 2585 + }, 2582 2586 }, { 2583 2587 .alg = "cbc(blowfish)", 2584 2588 .test = alg_test_skcipher, 2585 2589 .suite = { 2586 - .cipher = { 2587 - .enc = __VECS(bf_cbc_enc_tv_template), 2588 - .dec = __VECS(bf_cbc_dec_tv_template) 2589 - } 2590 - } 2590 + .cipher = __VECS(bf_cbc_tv_template) 2591 + }, 2591 2592 }, { 2592 2593 .alg = "cbc(camellia)", 2593 2594 .test = alg_test_skcipher, 2594 2595 .suite = { 2595 - .cipher = { 2596 - .enc = __VECS(camellia_cbc_enc_tv_template), 2597 - .dec = __VECS(camellia_cbc_dec_tv_template) 2598 - } 2599 - } 2596 + .cipher = __VECS(camellia_cbc_tv_template) 2597 + }, 2600 2598 }, { 2601 2599 .alg = "cbc(cast5)", 2602 2600 .test = alg_test_skcipher, 2603 2601 .suite = { 2604 - .cipher = { 2605 - .enc = __VECS(cast5_cbc_enc_tv_template), 2606 - .dec = __VECS(cast5_cbc_dec_tv_template) 2607 - } 2608 - } 2602 + .cipher = __VECS(cast5_cbc_tv_template) 2603 + }, 2609 2604 }, { 2610 2605 .alg = "cbc(cast6)", 2611 2606 .test = alg_test_skcipher, 2612 2607 .suite = { 2613 - .cipher = { 2614 - .enc = __VECS(cast6_cbc_enc_tv_template), 2615 - .dec = __VECS(cast6_cbc_dec_tv_template) 2616 - } 2617 - } 2608 + .cipher = __VECS(cast6_cbc_tv_template) 2609 + }, 2618 2610 }, { 2619 2611 .alg = "cbc(des)", 2620 2612 .test = alg_test_skcipher, 2621 2613 .suite = { 2622 - .cipher = { 2623 - .enc = __VECS(des_cbc_enc_tv_template), 2624 - .dec = __VECS(des_cbc_dec_tv_template) 2625 - } 2626 - } 2614 + .cipher = __VECS(des_cbc_tv_template) 2615 + }, 2627 2616 }, { 2628 2617 .alg = "cbc(des3_ede)", 2629 2618 .test = alg_test_skcipher, 2630 2619 .fips_allowed = 1, 2631 2620 .suite = { 2632 - .cipher = { 2633 - .enc = __VECS(des3_ede_cbc_enc_tv_template), 2634 - .dec = __VECS(des3_ede_cbc_dec_tv_template) 2635 - } 2636 - } 2621 + .cipher = __VECS(des3_ede_cbc_tv_template) 2622 + }, 2637 2623 }, { 2638 2624 /* Same as cbc(aes) except the key is stored in 2639 2625 * hardware secure memory which we reference by index ··· 2621 2655 .alg = "cbc(serpent)", 2622 2656 .test = alg_test_skcipher, 2623 2657 .suite = { 2624 - .cipher = { 2625 - .enc = __VECS(serpent_cbc_enc_tv_template), 2626 - .dec = __VECS(serpent_cbc_dec_tv_template) 2627 - } 2628 - } 2658 + .cipher = __VECS(serpent_cbc_tv_template) 2659 + }, 2629 2660 }, { 2630 2661 .alg = "cbc(twofish)", 2631 2662 .test = alg_test_skcipher, 2632 2663 .suite = { 2633 - .cipher = { 2634 - .enc = __VECS(tf_cbc_enc_tv_template), 2635 - .dec = __VECS(tf_cbc_dec_tv_template) 2636 - } 2637 - } 2664 + .cipher = __VECS(tf_cbc_tv_template) 2665 + }, 2638 2666 }, { 2639 2667 .alg = "cbcmac(aes)", 2640 2668 .fips_allowed = 1, ··· 2650 2690 .alg = "chacha20", 2651 2691 .test = alg_test_skcipher, 2652 2692 .suite = { 2653 - .cipher = { 2654 - .enc = __VECS(chacha20_enc_tv_template), 2655 - .dec = __VECS(chacha20_enc_tv_template), 2656 - } 2657 - } 2693 + .cipher = __VECS(chacha20_tv_template) 2694 + }, 2658 2695 }, { 2659 2696 .alg = "cmac(aes)", 2660 2697 .fips_allowed = 1, ··· 2694 2737 .test = alg_test_skcipher, 2695 2738 .fips_allowed = 1, 2696 2739 .suite = { 2697 - .cipher = { 2698 - .enc = __VECS(aes_ctr_enc_tv_template), 2699 - .dec = __VECS(aes_ctr_dec_tv_template) 2700 - } 2740 + .cipher = __VECS(aes_ctr_tv_template) 2701 2741 } 2702 2742 }, { 2703 2743 .alg = "ctr(blowfish)", 2704 2744 .test = alg_test_skcipher, 2705 2745 .suite = { 2706 - .cipher = { 2707 - .enc = __VECS(bf_ctr_enc_tv_template), 2708 - .dec = __VECS(bf_ctr_dec_tv_template) 2709 - } 2746 + .cipher = __VECS(bf_ctr_tv_template) 2710 2747 } 2711 2748 }, { 2712 2749 .alg = "ctr(camellia)", 2713 2750 .test = alg_test_skcipher, 2714 2751 .suite = { 2715 - .cipher = { 2716 - .enc = __VECS(camellia_ctr_enc_tv_template), 2717 - .dec = __VECS(camellia_ctr_dec_tv_template) 2718 - } 2752 + .cipher = __VECS(camellia_ctr_tv_template) 2719 2753 } 2720 2754 }, { 2721 2755 .alg = "ctr(cast5)", 2722 2756 .test = alg_test_skcipher, 2723 2757 .suite = { 2724 - .cipher = { 2725 - .enc = __VECS(cast5_ctr_enc_tv_template), 2726 - .dec = __VECS(cast5_ctr_dec_tv_template) 2727 - } 2758 + .cipher = __VECS(cast5_ctr_tv_template) 2728 2759 } 2729 2760 }, { 2730 2761 .alg = "ctr(cast6)", 2731 2762 .test = alg_test_skcipher, 2732 2763 .suite = { 2733 - .cipher = { 2734 - .enc = __VECS(cast6_ctr_enc_tv_template), 2735 - .dec = __VECS(cast6_ctr_dec_tv_template) 2736 - } 2764 + .cipher = __VECS(cast6_ctr_tv_template) 2737 2765 } 2738 2766 }, { 2739 2767 .alg = "ctr(des)", 2740 2768 .test = alg_test_skcipher, 2741 2769 .suite = { 2742 - .cipher = { 2743 - .enc = __VECS(des_ctr_enc_tv_template), 2744 - .dec = __VECS(des_ctr_dec_tv_template) 2745 - } 2770 + .cipher = __VECS(des_ctr_tv_template) 2746 2771 } 2747 2772 }, { 2748 2773 .alg = "ctr(des3_ede)", 2749 2774 .test = alg_test_skcipher, 2750 2775 .fips_allowed = 1, 2751 2776 .suite = { 2752 - .cipher = { 2753 - .enc = __VECS(des3_ede_ctr_enc_tv_template), 2754 - .dec = __VECS(des3_ede_ctr_dec_tv_template) 2755 - } 2777 + .cipher = __VECS(des3_ede_ctr_tv_template) 2756 2778 } 2757 2779 }, { 2758 2780 /* Same as ctr(aes) except the key is stored in ··· 2744 2808 .alg = "ctr(serpent)", 2745 2809 .test = alg_test_skcipher, 2746 2810 .suite = { 2747 - .cipher = { 2748 - .enc = __VECS(serpent_ctr_enc_tv_template), 2749 - .dec = __VECS(serpent_ctr_dec_tv_template) 2750 - } 2811 + .cipher = __VECS(serpent_ctr_tv_template) 2751 2812 } 2752 2813 }, { 2753 2814 .alg = "ctr(twofish)", 2754 2815 .test = alg_test_skcipher, 2755 2816 .suite = { 2756 - .cipher = { 2757 - .enc = __VECS(tf_ctr_enc_tv_template), 2758 - .dec = __VECS(tf_ctr_dec_tv_template) 2759 - } 2817 + .cipher = __VECS(tf_ctr_tv_template) 2760 2818 } 2761 2819 }, { 2762 2820 .alg = "cts(cbc(aes))", 2763 2821 .test = alg_test_skcipher, 2764 2822 .suite = { 2765 - .cipher = { 2766 - .enc = __VECS(cts_mode_enc_tv_template), 2767 - .dec = __VECS(cts_mode_dec_tv_template) 2768 - } 2823 + .cipher = __VECS(cts_mode_tv_template) 2769 2824 } 2770 2825 }, { 2771 2826 .alg = "deflate", ··· 2904 2977 .test = alg_test_skcipher, 2905 2978 .fips_allowed = 1, 2906 2979 .suite = { 2907 - .cipher = { 2908 - .enc = __VECS(aes_enc_tv_template), 2909 - .dec = __VECS(aes_dec_tv_template) 2910 - } 2980 + .cipher = __VECS(aes_tv_template) 2911 2981 } 2912 2982 }, { 2913 2983 .alg = "ecb(anubis)", 2914 2984 .test = alg_test_skcipher, 2915 2985 .suite = { 2916 - .cipher = { 2917 - .enc = __VECS(anubis_enc_tv_template), 2918 - .dec = __VECS(anubis_dec_tv_template) 2919 - } 2986 + .cipher = __VECS(anubis_tv_template) 2920 2987 } 2921 2988 }, { 2922 2989 .alg = "ecb(arc4)", 2923 2990 .test = alg_test_skcipher, 2924 2991 .suite = { 2925 - .cipher = { 2926 - .enc = __VECS(arc4_enc_tv_template), 2927 - .dec = __VECS(arc4_dec_tv_template) 2928 - } 2992 + .cipher = __VECS(arc4_tv_template) 2929 2993 } 2930 2994 }, { 2931 2995 .alg = "ecb(blowfish)", 2932 2996 .test = alg_test_skcipher, 2933 2997 .suite = { 2934 - .cipher = { 2935 - .enc = __VECS(bf_enc_tv_template), 2936 - .dec = __VECS(bf_dec_tv_template) 2937 - } 2998 + .cipher = __VECS(bf_tv_template) 2938 2999 } 2939 3000 }, { 2940 3001 .alg = "ecb(camellia)", 2941 3002 .test = alg_test_skcipher, 2942 3003 .suite = { 2943 - .cipher = { 2944 - .enc = __VECS(camellia_enc_tv_template), 2945 - .dec = __VECS(camellia_dec_tv_template) 2946 - } 3004 + .cipher = __VECS(camellia_tv_template) 2947 3005 } 2948 3006 }, { 2949 3007 .alg = "ecb(cast5)", 2950 3008 .test = alg_test_skcipher, 2951 3009 .suite = { 2952 - .cipher = { 2953 - .enc = __VECS(cast5_enc_tv_template), 2954 - .dec = __VECS(cast5_dec_tv_template) 2955 - } 3010 + .cipher = __VECS(cast5_tv_template) 2956 3011 } 2957 3012 }, { 2958 3013 .alg = "ecb(cast6)", 2959 3014 .test = alg_test_skcipher, 2960 3015 .suite = { 2961 - .cipher = { 2962 - .enc = __VECS(cast6_enc_tv_template), 2963 - .dec = __VECS(cast6_dec_tv_template) 2964 - } 3016 + .cipher = __VECS(cast6_tv_template) 2965 3017 } 2966 3018 }, { 2967 3019 .alg = "ecb(cipher_null)", ··· 2950 3044 .alg = "ecb(des)", 2951 3045 .test = alg_test_skcipher, 2952 3046 .suite = { 2953 - .cipher = { 2954 - .enc = __VECS(des_enc_tv_template), 2955 - .dec = __VECS(des_dec_tv_template) 2956 - } 3047 + .cipher = __VECS(des_tv_template) 2957 3048 } 2958 3049 }, { 2959 3050 .alg = "ecb(des3_ede)", 2960 3051 .test = alg_test_skcipher, 2961 3052 .fips_allowed = 1, 2962 3053 .suite = { 2963 - .cipher = { 2964 - .enc = __VECS(des3_ede_enc_tv_template), 2965 - .dec = __VECS(des3_ede_dec_tv_template) 2966 - } 3054 + .cipher = __VECS(des3_ede_tv_template) 2967 3055 } 2968 3056 }, { 2969 3057 .alg = "ecb(fcrypt)", 2970 3058 .test = alg_test_skcipher, 2971 3059 .suite = { 2972 3060 .cipher = { 2973 - .enc = { 2974 - .vecs = fcrypt_pcbc_enc_tv_template, 2975 - .count = 1 2976 - }, 2977 - .dec = { 2978 - .vecs = fcrypt_pcbc_dec_tv_template, 2979 - .count = 1 2980 - } 3061 + .vecs = fcrypt_pcbc_tv_template, 3062 + .count = 1 2981 3063 } 2982 3064 } 2983 3065 }, { 2984 3066 .alg = "ecb(khazad)", 2985 3067 .test = alg_test_skcipher, 2986 3068 .suite = { 2987 - .cipher = { 2988 - .enc = __VECS(khazad_enc_tv_template), 2989 - .dec = __VECS(khazad_dec_tv_template) 2990 - } 3069 + .cipher = __VECS(khazad_tv_template) 2991 3070 } 2992 3071 }, { 2993 3072 /* Same as ecb(aes) except the key is stored in ··· 2985 3094 .alg = "ecb(seed)", 2986 3095 .test = alg_test_skcipher, 2987 3096 .suite = { 2988 - .cipher = { 2989 - .enc = __VECS(seed_enc_tv_template), 2990 - .dec = __VECS(seed_dec_tv_template) 2991 - } 3097 + .cipher = __VECS(seed_tv_template) 2992 3098 } 2993 3099 }, { 2994 3100 .alg = "ecb(serpent)", 2995 3101 .test = alg_test_skcipher, 2996 3102 .suite = { 2997 - .cipher = { 2998 - .enc = __VECS(serpent_enc_tv_template), 2999 - .dec = __VECS(serpent_dec_tv_template) 3000 - } 3103 + .cipher = __VECS(serpent_tv_template) 3001 3104 } 3002 3105 }, { 3003 3106 .alg = "ecb(sm4)", 3004 3107 .test = alg_test_skcipher, 3005 3108 .suite = { 3006 - .cipher = { 3007 - .enc = __VECS(sm4_enc_tv_template), 3008 - .dec = __VECS(sm4_dec_tv_template) 3009 - } 3109 + .cipher = __VECS(sm4_tv_template) 3010 3110 } 3011 3111 }, { 3012 3112 .alg = "ecb(speck128)", 3013 3113 .test = alg_test_skcipher, 3014 3114 .suite = { 3015 - .cipher = { 3016 - .enc = __VECS(speck128_enc_tv_template), 3017 - .dec = __VECS(speck128_dec_tv_template) 3018 - } 3115 + .cipher = __VECS(speck128_tv_template) 3019 3116 } 3020 3117 }, { 3021 3118 .alg = "ecb(speck64)", 3022 3119 .test = alg_test_skcipher, 3023 3120 .suite = { 3024 - .cipher = { 3025 - .enc = __VECS(speck64_enc_tv_template), 3026 - .dec = __VECS(speck64_dec_tv_template) 3027 - } 3121 + .cipher = __VECS(speck64_tv_template) 3028 3122 } 3029 3123 }, { 3030 3124 .alg = "ecb(tea)", 3031 3125 .test = alg_test_skcipher, 3032 3126 .suite = { 3033 - .cipher = { 3034 - .enc = __VECS(tea_enc_tv_template), 3035 - .dec = __VECS(tea_dec_tv_template) 3036 - } 3127 + .cipher = __VECS(tea_tv_template) 3037 3128 } 3038 3129 }, { 3039 3130 .alg = "ecb(tnepres)", 3040 3131 .test = alg_test_skcipher, 3041 3132 .suite = { 3042 - .cipher = { 3043 - .enc = __VECS(tnepres_enc_tv_template), 3044 - .dec = __VECS(tnepres_dec_tv_template) 3045 - } 3133 + .cipher = __VECS(tnepres_tv_template) 3046 3134 } 3047 3135 }, { 3048 3136 .alg = "ecb(twofish)", 3049 3137 .test = alg_test_skcipher, 3050 3138 .suite = { 3051 - .cipher = { 3052 - .enc = __VECS(tf_enc_tv_template), 3053 - .dec = __VECS(tf_dec_tv_template) 3054 - } 3139 + .cipher = __VECS(tf_tv_template) 3055 3140 } 3056 3141 }, { 3057 3142 .alg = "ecb(xeta)", 3058 3143 .test = alg_test_skcipher, 3059 3144 .suite = { 3060 - .cipher = { 3061 - .enc = __VECS(xeta_enc_tv_template), 3062 - .dec = __VECS(xeta_dec_tv_template) 3063 - } 3145 + .cipher = __VECS(xeta_tv_template) 3064 3146 } 3065 3147 }, { 3066 3148 .alg = "ecb(xtea)", 3067 3149 .test = alg_test_skcipher, 3068 3150 .suite = { 3069 - .cipher = { 3070 - .enc = __VECS(xtea_enc_tv_template), 3071 - .dec = __VECS(xtea_dec_tv_template) 3072 - } 3151 + .cipher = __VECS(xtea_tv_template) 3073 3152 } 3074 3153 }, { 3075 3154 .alg = "ecdh", ··· 3155 3294 .test = alg_test_skcipher, 3156 3295 .fips_allowed = 1, 3157 3296 .suite = { 3158 - .cipher = { 3159 - .enc = __VECS(aes_kw_enc_tv_template), 3160 - .dec = __VECS(aes_kw_dec_tv_template) 3161 - } 3297 + .cipher = __VECS(aes_kw_tv_template) 3162 3298 } 3163 3299 }, { 3164 3300 .alg = "lrw(aes)", 3165 3301 .test = alg_test_skcipher, 3166 3302 .suite = { 3167 - .cipher = { 3168 - .enc = __VECS(aes_lrw_enc_tv_template), 3169 - .dec = __VECS(aes_lrw_dec_tv_template) 3170 - } 3303 + .cipher = __VECS(aes_lrw_tv_template) 3171 3304 } 3172 3305 }, { 3173 3306 .alg = "lrw(camellia)", 3174 3307 .test = alg_test_skcipher, 3175 3308 .suite = { 3176 - .cipher = { 3177 - .enc = __VECS(camellia_lrw_enc_tv_template), 3178 - .dec = __VECS(camellia_lrw_dec_tv_template) 3179 - } 3309 + .cipher = __VECS(camellia_lrw_tv_template) 3180 3310 } 3181 3311 }, { 3182 3312 .alg = "lrw(cast6)", 3183 3313 .test = alg_test_skcipher, 3184 3314 .suite = { 3185 - .cipher = { 3186 - .enc = __VECS(cast6_lrw_enc_tv_template), 3187 - .dec = __VECS(cast6_lrw_dec_tv_template) 3188 - } 3315 + .cipher = __VECS(cast6_lrw_tv_template) 3189 3316 } 3190 3317 }, { 3191 3318 .alg = "lrw(serpent)", 3192 3319 .test = alg_test_skcipher, 3193 3320 .suite = { 3194 - .cipher = { 3195 - .enc = __VECS(serpent_lrw_enc_tv_template), 3196 - .dec = __VECS(serpent_lrw_dec_tv_template) 3197 - } 3321 + .cipher = __VECS(serpent_lrw_tv_template) 3198 3322 } 3199 3323 }, { 3200 3324 .alg = "lrw(twofish)", 3201 3325 .test = alg_test_skcipher, 3202 3326 .suite = { 3203 - .cipher = { 3204 - .enc = __VECS(tf_lrw_enc_tv_template), 3205 - .dec = __VECS(tf_lrw_dec_tv_template) 3206 - } 3327 + .cipher = __VECS(tf_lrw_tv_template) 3207 3328 } 3208 3329 }, { 3209 3330 .alg = "lz4", ··· 3258 3415 .test = alg_test_skcipher, 3259 3416 .fips_allowed = 1, 3260 3417 .suite = { 3261 - .cipher = { 3262 - .enc = __VECS(aes_ofb_enc_tv_template), 3263 - .dec = __VECS(aes_ofb_dec_tv_template) 3264 - } 3418 + .cipher = __VECS(aes_ofb_tv_template) 3265 3419 } 3266 3420 }, { 3267 3421 /* Same as ofb(aes) except the key is stored in ··· 3271 3431 .alg = "pcbc(fcrypt)", 3272 3432 .test = alg_test_skcipher, 3273 3433 .suite = { 3274 - .cipher = { 3275 - .enc = __VECS(fcrypt_pcbc_enc_tv_template), 3276 - .dec = __VECS(fcrypt_pcbc_dec_tv_template) 3277 - } 3434 + .cipher = __VECS(fcrypt_pcbc_tv_template) 3278 3435 } 3279 3436 }, { 3280 3437 .alg = "pkcs1pad(rsa,sha224)", ··· 3303 3466 .test = alg_test_skcipher, 3304 3467 .fips_allowed = 1, 3305 3468 .suite = { 3306 - .cipher = { 3307 - .enc = __VECS(aes_ctr_rfc3686_enc_tv_template), 3308 - .dec = __VECS(aes_ctr_rfc3686_dec_tv_template) 3309 - } 3469 + .cipher = __VECS(aes_ctr_rfc3686_tv_template) 3310 3470 } 3311 3471 }, { 3312 3472 .alg = "rfc4106(gcm(aes))", ··· 3387 3553 .alg = "salsa20", 3388 3554 .test = alg_test_skcipher, 3389 3555 .suite = { 3390 - .cipher = { 3391 - .enc = __VECS(salsa20_stream_enc_tv_template) 3392 - } 3556 + .cipher = __VECS(salsa20_stream_tv_template) 3393 3557 } 3394 3558 }, { 3395 3559 .alg = "sha1", ··· 3511 3679 .test = alg_test_skcipher, 3512 3680 .fips_allowed = 1, 3513 3681 .suite = { 3514 - .cipher = { 3515 - .enc = __VECS(aes_xts_enc_tv_template), 3516 - .dec = __VECS(aes_xts_dec_tv_template) 3517 - } 3682 + .cipher = __VECS(aes_xts_tv_template) 3518 3683 } 3519 3684 }, { 3520 3685 .alg = "xts(camellia)", 3521 3686 .test = alg_test_skcipher, 3522 3687 .suite = { 3523 - .cipher = { 3524 - .enc = __VECS(camellia_xts_enc_tv_template), 3525 - .dec = __VECS(camellia_xts_dec_tv_template) 3526 - } 3688 + .cipher = __VECS(camellia_xts_tv_template) 3527 3689 } 3528 3690 }, { 3529 3691 .alg = "xts(cast6)", 3530 3692 .test = alg_test_skcipher, 3531 3693 .suite = { 3532 - .cipher = { 3533 - .enc = __VECS(cast6_xts_enc_tv_template), 3534 - .dec = __VECS(cast6_xts_dec_tv_template) 3535 - } 3694 + .cipher = __VECS(cast6_xts_tv_template) 3536 3695 } 3537 3696 }, { 3538 3697 /* Same as xts(aes) except the key is stored in ··· 3536 3713 .alg = "xts(serpent)", 3537 3714 .test = alg_test_skcipher, 3538 3715 .suite = { 3539 - .cipher = { 3540 - .enc = __VECS(serpent_xts_enc_tv_template), 3541 - .dec = __VECS(serpent_xts_dec_tv_template) 3542 - } 3716 + .cipher = __VECS(serpent_xts_tv_template) 3543 3717 } 3544 3718 }, { 3545 3719 .alg = "xts(speck128)", 3546 3720 .test = alg_test_skcipher, 3547 3721 .suite = { 3548 - .cipher = { 3549 - .enc = __VECS(speck128_xts_enc_tv_template), 3550 - .dec = __VECS(speck128_xts_dec_tv_template) 3551 - } 3722 + .cipher = __VECS(speck128_xts_tv_template) 3552 3723 } 3553 3724 }, { 3554 3725 .alg = "xts(speck64)", 3555 3726 .test = alg_test_skcipher, 3556 3727 .suite = { 3557 - .cipher = { 3558 - .enc = __VECS(speck64_xts_enc_tv_template), 3559 - .dec = __VECS(speck64_xts_dec_tv_template) 3560 - } 3728 + .cipher = __VECS(speck64_xts_tv_template) 3561 3729 } 3562 3730 }, { 3563 3731 .alg = "xts(twofish)", 3564 3732 .test = alg_test_skcipher, 3565 3733 .suite = { 3566 - .cipher = { 3567 - .enc = __VECS(tf_xts_enc_tv_template), 3568 - .dec = __VECS(tf_xts_dec_tv_template) 3569 - } 3734 + .cipher = __VECS(tf_xts_tv_template) 3570 3735 } 3571 3736 }, { 3572 3737 .alg = "xts4096(paes)",
+809 -11424
crypto/testmgr.h
··· 44 44 }; 45 45 46 46 /* 47 - * cipher_testvec: structure to describe a cipher test 48 - * @key: A pointer to a key used by the test 49 - * @klen: The length of @key 50 - * @iv: A pointer to the IV used by the test 51 - * @input: A pointer to data used as input 52 - * @ilen The length of data in @input 53 - * @result: A pointer to what the test need to produce 54 - * @rlen: The length of data in @result 47 + * cipher_testvec: structure to describe a symmetric cipher test 48 + * @key: Pointer to key 49 + * @klen: Length of @key in bytes 50 + * @iv: Pointer to IV (optional for some ciphers) 51 + * @ptext: Pointer to plaintext 52 + * @ctext: Pointer to ciphertext 53 + * @len: Length of @ptext and @ctext in bytes 55 54 * @fail: If set to one, the test need to fail 56 55 * @wk: Does the test need CRYPTO_TFM_REQ_WEAK_KEY 57 56 * ( e.g. test needs to fail due to a weak key ) ··· 59 60 * @also_non_np: if set to 1, the test will be also done without 60 61 * splitting data in @np SGs 61 62 * @fips_skip: Skip the test vector in FIPS mode 63 + * @generates_iv: Encryption should ignore the given IV, and output @iv. 64 + * Decryption takes @iv. Needed for AES Keywrap ("kw(aes)"). 62 65 */ 63 - 64 66 struct cipher_testvec { 65 67 const char *key; 66 68 const char *iv; 67 - const char *iv_out; 68 - const char *input; 69 - const char *result; 69 + const char *ptext; 70 + const char *ctext; 70 71 unsigned short tap[MAX_TAP]; 71 72 int np; 72 73 unsigned char also_non_np; 73 74 bool fail; 74 75 unsigned char wk; /* weak key flag */ 75 76 unsigned char klen; 76 - unsigned short ilen; 77 - unsigned short rlen; 77 + unsigned short len; 78 78 bool fips_skip; 79 + bool generates_iv; 79 80 }; 80 81 81 82 struct aead_testvec { ··· 5541 5542 /* 5542 5543 * DES test vectors. 5543 5544 */ 5544 - static const struct cipher_testvec des_enc_tv_template[] = { 5545 + static const struct cipher_testvec des_tv_template[] = { 5545 5546 { /* From Applied Cryptography */ 5546 5547 .key = "\x01\x23\x45\x67\x89\xab\xcd\xef", 5547 5548 .klen = 8, 5548 - .input = "\x01\x23\x45\x67\x89\xab\xcd\xe7", 5549 - .ilen = 8, 5550 - .result = "\xc9\x57\x44\x25\x6a\x5e\xd3\x1d", 5551 - .rlen = 8, 5549 + .ptext = "\x01\x23\x45\x67\x89\xab\xcd\xe7", 5550 + .ctext = "\xc9\x57\x44\x25\x6a\x5e\xd3\x1d", 5551 + .len = 8, 5552 5552 }, { /* Same key, different plaintext block */ 5553 5553 .key = "\x01\x23\x45\x67\x89\xab\xcd\xef", 5554 5554 .klen = 8, 5555 - .input = "\x22\x33\x44\x55\x66\x77\x88\x99", 5556 - .ilen = 8, 5557 - .result = "\xf7\x9c\x89\x2a\x33\x8f\x4a\x8b", 5558 - .rlen = 8, 5555 + .ptext = "\x22\x33\x44\x55\x66\x77\x88\x99", 5556 + .ctext = "\xf7\x9c\x89\x2a\x33\x8f\x4a\x8b", 5557 + .len = 8, 5559 5558 }, { /* Sbox test from NBS */ 5560 5559 .key = "\x7c\xa1\x10\x45\x4a\x1a\x6e\x57", 5561 5560 .klen = 8, 5562 - .input = "\x01\xa1\xd6\xd0\x39\x77\x67\x42", 5563 - .ilen = 8, 5564 - .result = "\x69\x0f\x5b\x0d\x9a\x26\x93\x9b", 5565 - .rlen = 8, 5561 + .ptext = "\x01\xa1\xd6\xd0\x39\x77\x67\x42", 5562 + .ctext = "\x69\x0f\x5b\x0d\x9a\x26\x93\x9b", 5563 + .len = 8, 5566 5564 }, { /* Three blocks */ 5567 5565 .key = "\x01\x23\x45\x67\x89\xab\xcd\xef", 5568 5566 .klen = 8, 5569 - .input = "\x01\x23\x45\x67\x89\xab\xcd\xe7" 5567 + .ptext = "\x01\x23\x45\x67\x89\xab\xcd\xe7" 5570 5568 "\x22\x33\x44\x55\x66\x77\x88\x99" 5571 5569 "\xca\xfe\xba\xbe\xfe\xed\xbe\xef", 5572 - .ilen = 24, 5573 - .result = "\xc9\x57\x44\x25\x6a\x5e\xd3\x1d" 5570 + .ctext = "\xc9\x57\x44\x25\x6a\x5e\xd3\x1d" 5574 5571 "\xf7\x9c\x89\x2a\x33\x8f\x4a\x8b" 5575 5572 "\xb4\x99\x26\xf7\x1f\xe1\xd4\x90", 5576 - .rlen = 24, 5573 + .len = 24, 5577 5574 }, { /* Weak key */ 5578 5575 .fail = true, 5579 5576 .wk = 1, 5580 5577 .key = "\x01\x01\x01\x01\x01\x01\x01\x01", 5581 5578 .klen = 8, 5582 - .input = "\x01\x23\x45\x67\x89\xab\xcd\xe7", 5583 - .ilen = 8, 5584 - .result = "\xc9\x57\x44\x25\x6a\x5e\xd3\x1d", 5585 - .rlen = 8, 5579 + .ptext = "\x01\x23\x45\x67\x89\xab\xcd\xe7", 5580 + .ctext = "\xc9\x57\x44\x25\x6a\x5e\xd3\x1d", 5581 + .len = 8, 5586 5582 }, { /* Two blocks -- for testing encryption across pages */ 5587 5583 .key = "\x01\x23\x45\x67\x89\xab\xcd\xef", 5588 5584 .klen = 8, 5589 - .input = "\x01\x23\x45\x67\x89\xab\xcd\xe7" 5585 + .ptext = "\x01\x23\x45\x67\x89\xab\xcd\xe7" 5590 5586 "\x22\x33\x44\x55\x66\x77\x88\x99", 5591 - .ilen = 16, 5592 - .result = "\xc9\x57\x44\x25\x6a\x5e\xd3\x1d" 5587 + .ctext = "\xc9\x57\x44\x25\x6a\x5e\xd3\x1d" 5593 5588 "\xf7\x9c\x89\x2a\x33\x8f\x4a\x8b", 5594 - .rlen = 16, 5589 + .len = 16, 5595 5590 .np = 2, 5596 5591 .tap = { 8, 8 } 5597 5592 }, { 5598 5593 .key = "\x01\x23\x45\x67\x89\xab\xcd\xef", 5599 5594 .klen = 8, 5600 - .input = "\x01\x23\x45\x67\x89\xab\xcd\xe7" 5595 + .ptext = "\x01\x23\x45\x67\x89\xab\xcd\xe7" 5601 5596 "\xa3\x99\x7b\xca\xaf\x69\xa0\xf5", 5602 - .ilen = 16, 5603 - .result = "\xc9\x57\x44\x25\x6a\x5e\xd3\x1d" 5597 + .ctext = "\xc9\x57\x44\x25\x6a\x5e\xd3\x1d" 5604 5598 "\x69\x0f\x5b\x0d\x9a\x26\x93\x9b", 5605 - .rlen = 16, 5599 + .len = 16, 5606 5600 .np = 2, 5607 5601 .tap = { 8, 8 } 5608 5602 }, { 5609 5603 .key = "\x01\x23\x45\x67\x89\xab\xcd\xef", 5610 5604 .klen = 8, 5611 - .input = "\x01\x23\x45\x67\x89\xab\xcd\xe7" 5605 + .ptext = "\x01\x23\x45\x67\x89\xab\xcd\xe7" 5612 5606 "\xa3\x99\x7b\xca\xaf\x69\xa0\xf5", 5613 - .ilen = 16, 5614 - .result = "\xc9\x57\x44\x25\x6a\x5e\xd3\x1d" 5607 + .ctext = "\xc9\x57\x44\x25\x6a\x5e\xd3\x1d" 5615 5608 "\x69\x0f\x5b\x0d\x9a\x26\x93\x9b", 5616 - .rlen = 16, 5609 + .len = 16, 5617 5610 .np = 3, 5618 5611 .tap = { 3, 12, 1 } 5619 5612 }, { /* Four blocks -- for testing encryption with chunking */ 5620 5613 .key = "\x01\x23\x45\x67\x89\xab\xcd\xef", 5621 5614 .klen = 8, 5622 - .input = "\x01\x23\x45\x67\x89\xab\xcd\xe7" 5615 + .ptext = "\x01\x23\x45\x67\x89\xab\xcd\xe7" 5623 5616 "\x22\x33\x44\x55\x66\x77\x88\x99" 5624 5617 "\xca\xfe\xba\xbe\xfe\xed\xbe\xef" 5625 5618 "\x22\x33\x44\x55\x66\x77\x88\x99", 5626 - .ilen = 32, 5627 - .result = "\xc9\x57\x44\x25\x6a\x5e\xd3\x1d" 5619 + .ctext = "\xc9\x57\x44\x25\x6a\x5e\xd3\x1d" 5628 5620 "\xf7\x9c\x89\x2a\x33\x8f\x4a\x8b" 5629 5621 "\xb4\x99\x26\xf7\x1f\xe1\xd4\x90" 5630 5622 "\xf7\x9c\x89\x2a\x33\x8f\x4a\x8b", 5631 - .rlen = 32, 5623 + .len = 32, 5632 5624 .np = 3, 5633 5625 .tap = { 14, 10, 8 } 5634 5626 }, { 5635 5627 .key = "\x01\x23\x45\x67\x89\xab\xcd\xef", 5636 5628 .klen = 8, 5637 - .input = "\x01\x23\x45\x67\x89\xab\xcd\xe7" 5629 + .ptext = "\x01\x23\x45\x67\x89\xab\xcd\xe7" 5638 5630 "\x22\x33\x44\x55\x66\x77\x88\x99" 5639 5631 "\xca\xfe\xba\xbe\xfe\xed\xbe\xef", 5640 - .ilen = 24, 5641 - .result = "\xc9\x57\x44\x25\x6a\x5e\xd3\x1d" 5632 + .ctext = "\xc9\x57\x44\x25\x6a\x5e\xd3\x1d" 5642 5633 "\xf7\x9c\x89\x2a\x33\x8f\x4a\x8b" 5643 5634 "\xb4\x99\x26\xf7\x1f\xe1\xd4\x90", 5644 - .rlen = 24, 5635 + .len = 24, 5645 5636 .np = 4, 5646 5637 .tap = { 2, 1, 3, 18 } 5647 5638 }, { 5648 5639 .key = "\x01\x23\x45\x67\x89\xab\xcd\xef", 5649 5640 .klen = 8, 5650 - .input = "\x01\x23\x45\x67\x89\xab\xcd\xe7" 5641 + .ptext = "\x01\x23\x45\x67\x89\xab\xcd\xe7" 5651 5642 "\x22\x33\x44\x55\x66\x77\x88\x99", 5652 - .ilen = 16, 5653 - .result = "\xc9\x57\x44\x25\x6a\x5e\xd3\x1d" 5643 + .ctext = "\xc9\x57\x44\x25\x6a\x5e\xd3\x1d" 5654 5644 "\xf7\x9c\x89\x2a\x33\x8f\x4a\x8b", 5655 - .rlen = 16, 5645 + .len = 16, 5656 5646 .np = 5, 5657 5647 .tap = { 2, 2, 2, 2, 8 } 5658 5648 }, { 5659 5649 .key = "\x01\x23\x45\x67\x89\xab\xcd\xef", 5660 5650 .klen = 8, 5661 - .input = "\x01\x23\x45\x67\x89\xab\xcd\xe7", 5662 - .ilen = 8, 5663 - .result = "\xc9\x57\x44\x25\x6a\x5e\xd3\x1d", 5664 - .rlen = 8, 5651 + .ptext = "\x01\x23\x45\x67\x89\xab\xcd\xe7", 5652 + .ctext = "\xc9\x57\x44\x25\x6a\x5e\xd3\x1d", 5653 + .len = 8, 5665 5654 .np = 8, 5666 5655 .tap = { 1, 1, 1, 1, 1, 1, 1, 1 } 5667 5656 }, { /* Generated with Crypto++ */ 5668 5657 .key = "\xC9\x83\xA6\xC9\xEC\x0F\x32\x55", 5669 5658 .klen = 8, 5670 - .input = "\x50\xB9\x22\xAE\x17\x80\x0C\x75" 5659 + .ptext = "\x50\xB9\x22\xAE\x17\x80\x0C\x75" 5671 5660 "\xDE\x47\xD3\x3C\xA5\x0E\x9A\x03" 5672 5661 "\x6C\xF8\x61\xCA\x33\xBF\x28\x91" 5673 5662 "\x1D\x86\xEF\x58\xE4\x4D\xB6\x1F" ··· 5686 5699 "\xAA\x13\x7C\x08\x71\xDA\x43\xCF" 5687 5700 "\x38\xA1\x0A\x96\xFF\x68\xF4\x5D" 5688 5701 "\xC6\x2F\xBB\x24\x8D\x19\x82\xEB", 5689 - .ilen = 248, 5690 - .result = "\x88\xCB\x1F\xAB\x2F\x2A\x49\x57" 5702 + .ctext = "\x88\xCB\x1F\xAB\x2F\x2A\x49\x57" 5691 5703 "\x92\xB9\x77\xFF\x2F\x47\x58\xDD" 5692 5704 "\xD7\x8A\x91\x95\x26\x33\x78\xB2" 5693 5705 "\x33\xBA\xB2\x3E\x02\xF5\x1F\xEF" ··· 5717 5731 "\x46\x31\x4C\x5E\x2E\x95\x61\xEF" 5718 5732 "\xE1\x58\x39\x09\xB4\x8B\x40\xAC" 5719 5733 "\x5F\x62\xC7\x72\xD9\xFC\xCB\x9A", 5720 - .rlen = 248, 5734 + .len = 248, 5721 5735 .also_non_np = 1, 5722 5736 .np = 3, 5723 5737 .tap = { 248 - 10, 2, 8 }, 5724 5738 }, 5725 5739 }; 5726 5740 5727 - static const struct cipher_testvec des_dec_tv_template[] = { 5728 - { /* From Applied Cryptography */ 5729 - .key = "\x01\x23\x45\x67\x89\xab\xcd\xef", 5730 - .klen = 8, 5731 - .input = "\xc9\x57\x44\x25\x6a\x5e\xd3\x1d", 5732 - .ilen = 8, 5733 - .result = "\x01\x23\x45\x67\x89\xab\xcd\xe7", 5734 - .rlen = 8, 5735 - }, { /* Sbox test from NBS */ 5736 - .key = "\x7c\xa1\x10\x45\x4a\x1a\x6e\x57", 5737 - .klen = 8, 5738 - .input = "\x69\x0f\x5b\x0d\x9a\x26\x93\x9b", 5739 - .ilen = 8, 5740 - .result = "\x01\xa1\xd6\xd0\x39\x77\x67\x42", 5741 - .rlen = 8, 5742 - }, { /* Two blocks, for chunking test */ 5743 - .key = "\x01\x23\x45\x67\x89\xab\xcd\xef", 5744 - .klen = 8, 5745 - .input = "\xc9\x57\x44\x25\x6a\x5e\xd3\x1d" 5746 - "\x69\x0f\x5b\x0d\x9a\x26\x93\x9b", 5747 - .ilen = 16, 5748 - .result = "\x01\x23\x45\x67\x89\xab\xcd\xe7" 5749 - "\xa3\x99\x7b\xca\xaf\x69\xa0\xf5", 5750 - .rlen = 16, 5751 - .np = 2, 5752 - .tap = { 8, 8 } 5753 - }, { 5754 - .key = "\x01\x23\x45\x67\x89\xab\xcd\xef", 5755 - .klen = 8, 5756 - .input = "\xc9\x57\x44\x25\x6a\x5e\xd3\x1d" 5757 - "\x69\x0f\x5b\x0d\x9a\x26\x93\x9b", 5758 - .ilen = 16, 5759 - .result = "\x01\x23\x45\x67\x89\xab\xcd\xe7" 5760 - "\xa3\x99\x7b\xca\xaf\x69\xa0\xf5", 5761 - .rlen = 16, 5762 - .np = 3, 5763 - .tap = { 3, 12, 1 } 5764 - }, { /* Generated with Crypto++ */ 5765 - .key = "\xC9\x83\xA6\xC9\xEC\x0F\x32\x55", 5766 - .klen = 8, 5767 - .input = "\x88\xCB\x1F\xAB\x2F\x2A\x49\x57" 5768 - "\x92\xB9\x77\xFF\x2F\x47\x58\xDD" 5769 - "\xD7\x8A\x91\x95\x26\x33\x78\xB2" 5770 - "\x33\xBA\xB2\x3E\x02\xF5\x1F\xEF" 5771 - "\x98\xC5\xA6\xD2\x7D\x79\xEC\xB3" 5772 - "\x45\xF3\x4C\x61\xAC\x6C\xC2\x55" 5773 - "\xE5\xD3\x06\x58\x8A\x42\x3E\xDD" 5774 - "\x3D\x20\x45\xE9\x6F\x0D\x25\xA8" 5775 - "\xA5\xC7\x69\xCE\xD5\x3B\x7B\xC9" 5776 - "\x9E\x65\xE7\xA3\xF2\xE4\x18\x94" 5777 - "\xD2\x81\xE9\x33\x2B\x2D\x49\xC4" 5778 - "\xFE\xDA\x7F\xE2\xF2\x8C\x9C\xDC" 5779 - "\x73\x58\x11\x1F\x81\xD7\x21\x1A" 5780 - "\x80\xD0\x0D\xE8\x45\xD6\xD8\xD5" 5781 - "\x2E\x51\x16\xCA\x09\x89\x54\x62" 5782 - "\xF7\x04\x3D\x75\xB9\xA3\x84\xF4" 5783 - "\x62\xF0\x02\x58\x83\xAF\x30\x87" 5784 - "\x85\x3F\x01\xCD\x8E\x58\x42\xC4" 5785 - "\x41\x73\xE0\x15\x0A\xE6\x2E\x80" 5786 - "\x94\xF8\x5B\x3A\x4E\xDF\x51\xB2" 5787 - "\x9D\xE4\xC4\x9D\xF7\x3F\xF8\x8E" 5788 - "\x37\x22\x4D\x00\x2A\xEF\xC1\x0F" 5789 - "\x14\xA0\x66\xAB\x79\x39\xD0\x8E" 5790 - "\xE9\x95\x61\x74\x12\xED\x07\xD7" 5791 - "\xDD\x95\xDC\x7B\x57\x25\x27\x9C" 5792 - "\x51\x96\x16\xF7\x94\x61\xB8\x87" 5793 - "\xF0\x21\x1B\x32\xFB\x07\x0F\x29" 5794 - "\x56\xBD\x9D\x22\xA2\x9F\xA2\xB9" 5795 - "\x46\x31\x4C\x5E\x2E\x95\x61\xEF" 5796 - "\xE1\x58\x39\x09\xB4\x8B\x40\xAC" 5797 - "\x5F\x62\xC7\x72\xD9\xFC\xCB\x9A", 5798 - .ilen = 248, 5799 - .result = "\x50\xB9\x22\xAE\x17\x80\x0C\x75" 5800 - "\xDE\x47\xD3\x3C\xA5\x0E\x9A\x03" 5801 - "\x6C\xF8\x61\xCA\x33\xBF\x28\x91" 5802 - "\x1D\x86\xEF\x58\xE4\x4D\xB6\x1F" 5803 - "\xAB\x14\x7D\x09\x72\xDB\x44\xD0" 5804 - "\x39\xA2\x0B\x97\x00\x69\xF5\x5E" 5805 - "\xC7\x30\xBC\x25\x8E\x1A\x83\xEC" 5806 - "\x55\xE1\x4A\xB3\x1C\xA8\x11\x7A" 5807 - "\x06\x6F\xD8\x41\xCD\x36\x9F\x08" 5808 - "\x94\xFD\x66\xF2\x5B\xC4\x2D\xB9" 5809 - "\x22\x8B\x17\x80\xE9\x52\xDE\x47" 5810 - "\xB0\x19\xA5\x0E\x77\x03\x6C\xD5" 5811 - "\x3E\xCA\x33\x9C\x05\x91\xFA\x63" 5812 - "\xEF\x58\xC1\x2A\xB6\x1F\x88\x14" 5813 - "\x7D\xE6\x4F\xDB\x44\xAD\x16\xA2" 5814 - "\x0B\x74\x00\x69\xD2\x3B\xC7\x30" 5815 - "\x99\x02\x8E\xF7\x60\xEC\x55\xBE" 5816 - "\x27\xB3\x1C\x85\x11\x7A\xE3\x4C" 5817 - "\xD8\x41\xAA\x13\x9F\x08\x71\xFD" 5818 - "\x66\xCF\x38\xC4\x2D\x96\x22\x8B" 5819 - "\xF4\x5D\xE9\x52\xBB\x24\xB0\x19" 5820 - "\x82\x0E\x77\xE0\x49\xD5\x3E\xA7" 5821 - "\x10\x9C\x05\x6E\xFA\x63\xCC\x35" 5822 - "\xC1\x2A\x93\x1F\x88\xF1\x5A\xE6" 5823 - "\x4F\xB8\x21\xAD\x16\x7F\x0B\x74" 5824 - "\xDD\x46\xD2\x3B\xA4\x0D\x99\x02" 5825 - "\x6B\xF7\x60\xC9\x32\xBE\x27\x90" 5826 - "\x1C\x85\xEE\x57\xE3\x4C\xB5\x1E" 5827 - "\xAA\x13\x7C\x08\x71\xDA\x43\xCF" 5828 - "\x38\xA1\x0A\x96\xFF\x68\xF4\x5D" 5829 - "\xC6\x2F\xBB\x24\x8D\x19\x82\xEB", 5830 - .rlen = 248, 5831 - .also_non_np = 1, 5832 - .np = 3, 5833 - .tap = { 248 - 10, 2, 8 }, 5834 - }, 5835 - }; 5836 - 5837 - static const struct cipher_testvec des_cbc_enc_tv_template[] = { 5741 + static const struct cipher_testvec des_cbc_tv_template[] = { 5838 5742 { /* From OpenSSL */ 5839 5743 .key = "\x01\x23\x45\x67\x89\xab\xcd\xef", 5840 5744 .klen = 8, 5841 5745 .iv = "\xfe\xdc\xba\x98\x76\x54\x32\x10", 5842 - .input = "\x37\x36\x35\x34\x33\x32\x31\x20" 5746 + .ptext = "\x37\x36\x35\x34\x33\x32\x31\x20" 5843 5747 "\x4e\x6f\x77\x20\x69\x73\x20\x74" 5844 5748 "\x68\x65\x20\x74\x69\x6d\x65\x20", 5845 - .ilen = 24, 5846 - .result = "\xcc\xd1\x73\xff\xab\x20\x39\xf4" 5749 + .ctext = "\xcc\xd1\x73\xff\xab\x20\x39\xf4" 5847 5750 "\xac\xd8\xae\xfd\xdf\xd8\xa1\xeb" 5848 5751 "\x46\x8e\x91\x15\x78\x88\xba\x68", 5849 - .rlen = 24, 5752 + .len = 24, 5850 5753 }, { /* FIPS Pub 81 */ 5851 5754 .key = "\x01\x23\x45\x67\x89\xab\xcd\xef", 5852 5755 .klen = 8, 5853 5756 .iv = "\x12\x34\x56\x78\x90\xab\xcd\xef", 5854 - .input = "\x4e\x6f\x77\x20\x69\x73\x20\x74", 5855 - .ilen = 8, 5856 - .result = "\xe5\xc7\xcd\xde\x87\x2b\xf2\x7c", 5857 - .rlen = 8, 5757 + .ptext = "\x4e\x6f\x77\x20\x69\x73\x20\x74", 5758 + .ctext = "\xe5\xc7\xcd\xde\x87\x2b\xf2\x7c", 5759 + .len = 8, 5858 5760 }, { 5859 5761 .key = "\x01\x23\x45\x67\x89\xab\xcd\xef", 5860 5762 .klen = 8, 5861 5763 .iv = "\xe5\xc7\xcd\xde\x87\x2b\xf2\x7c", 5862 - .input = "\x68\x65\x20\x74\x69\x6d\x65\x20", 5863 - .ilen = 8, 5864 - .result = "\x43\xe9\x34\x00\x8c\x38\x9c\x0f", 5865 - .rlen = 8, 5764 + .ptext = "\x68\x65\x20\x74\x69\x6d\x65\x20", 5765 + .ctext = "\x43\xe9\x34\x00\x8c\x38\x9c\x0f", 5766 + .len = 8, 5866 5767 }, { 5867 5768 .key = "\x01\x23\x45\x67\x89\xab\xcd\xef", 5868 5769 .klen = 8, 5869 5770 .iv = "\x43\xe9\x34\x00\x8c\x38\x9c\x0f", 5870 - .input = "\x66\x6f\x72\x20\x61\x6c\x6c\x20", 5871 - .ilen = 8, 5872 - .result = "\x68\x37\x88\x49\x9a\x7c\x05\xf6", 5873 - .rlen = 8, 5771 + .ptext = "\x66\x6f\x72\x20\x61\x6c\x6c\x20", 5772 + .ctext = "\x68\x37\x88\x49\x9a\x7c\x05\xf6", 5773 + .len = 8, 5874 5774 .np = 2, 5875 5775 .tap = { 4, 4 }, 5876 5776 .also_non_np = 1, ··· 5765 5893 .key = "\x01\x23\x45\x67\x89\xab\xcd\xef", 5766 5894 .klen = 8, 5767 5895 .iv = "\xfe\xdc\xba\x98\x76\x54\x32\x10", 5768 - .input = "\x37\x36\x35\x34\x33\x32\x31\x20" 5896 + .ptext = "\x37\x36\x35\x34\x33\x32\x31\x20" 5769 5897 "\x4e\x6f\x77\x20\x69\x73\x20\x74" 5770 5898 "\x68\x65\x20\x74\x69\x6d\x65\x20", 5771 - .ilen = 24, 5772 - .result = "\xcc\xd1\x73\xff\xab\x20\x39\xf4" 5899 + .ctext = "\xcc\xd1\x73\xff\xab\x20\x39\xf4" 5773 5900 "\xac\xd8\xae\xfd\xdf\xd8\xa1\xeb" 5774 5901 "\x46\x8e\x91\x15\x78\x88\xba\x68", 5775 - .rlen = 24, 5902 + .len = 24, 5776 5903 .np = 2, 5777 5904 .tap = { 13, 11 } 5778 5905 }, { /* Generated with Crypto++ */ 5779 5906 .key = "\xC9\x83\xA6\xC9\xEC\x0F\x32\x55", 5780 5907 .klen = 8, 5781 5908 .iv = "\xE7\x82\x1D\xB8\x53\x11\xAC\x47", 5782 - .input = "\x50\xB9\x22\xAE\x17\x80\x0C\x75" 5909 + .ptext = "\x50\xB9\x22\xAE\x17\x80\x0C\x75" 5783 5910 "\xDE\x47\xD3\x3C\xA5\x0E\x9A\x03" 5784 5911 "\x6C\xF8\x61\xCA\x33\xBF\x28\x91" 5785 5912 "\x1D\x86\xEF\x58\xE4\x4D\xB6\x1F" ··· 5809 5938 "\xAA\x13\x7C\x08\x71\xDA\x43\xCF" 5810 5939 "\x38\xA1\x0A\x96\xFF\x68\xF4\x5D" 5811 5940 "\xC6\x2F\xBB\x24\x8D\x19\x82\xEB", 5812 - .ilen = 248, 5813 - .result = "\x71\xCC\x56\x1C\x87\x2C\x43\x20" 5941 + .ctext = "\x71\xCC\x56\x1C\x87\x2C\x43\x20" 5814 5942 "\x1C\x20\x13\x09\xF9\x2B\x40\x47" 5815 5943 "\x99\x10\xD1\x1B\x65\x33\x33\xBA" 5816 5944 "\x88\x0D\xA2\xD1\x86\xFF\x4D\xF4" ··· 5840 5970 "\xD7\x07\x8A\xD7\x18\x92\x36\x8C" 5841 5971 "\x82\xA9\xBD\x6A\x31\x91\x39\x11" 5842 5972 "\xC6\x4A\xF3\x55\xC7\x29\x2E\x63", 5843 - .rlen = 248, 5973 + .len = 248, 5844 5974 .also_non_np = 1, 5845 5975 .np = 3, 5846 5976 .tap = { 248 - 10, 2, 8 }, 5847 5977 }, 5848 5978 }; 5849 5979 5850 - static const struct cipher_testvec des_cbc_dec_tv_template[] = { 5851 - { /* FIPS Pub 81 */ 5852 - .key = "\x01\x23\x45\x67\x89\xab\xcd\xef", 5853 - .klen = 8, 5854 - .iv = "\x12\x34\x56\x78\x90\xab\xcd\xef", 5855 - .input = "\xe5\xc7\xcd\xde\x87\x2b\xf2\x7c", 5856 - .ilen = 8, 5857 - .result = "\x4e\x6f\x77\x20\x69\x73\x20\x74", 5858 - .rlen = 8, 5859 - }, { 5860 - .key = "\x01\x23\x45\x67\x89\xab\xcd\xef", 5861 - .klen = 8, 5862 - .iv = "\xe5\xc7\xcd\xde\x87\x2b\xf2\x7c", 5863 - .input = "\x43\xe9\x34\x00\x8c\x38\x9c\x0f", 5864 - .ilen = 8, 5865 - .result = "\x68\x65\x20\x74\x69\x6d\x65\x20", 5866 - .rlen = 8, 5867 - }, { 5868 - .key = "\x01\x23\x45\x67\x89\xab\xcd\xef", 5869 - .klen = 8, 5870 - .iv = "\x43\xe9\x34\x00\x8c\x38\x9c\x0f", 5871 - .input = "\x68\x37\x88\x49\x9a\x7c\x05\xf6", 5872 - .ilen = 8, 5873 - .result = "\x66\x6f\x72\x20\x61\x6c\x6c\x20", 5874 - .rlen = 8, 5875 - }, { /* Copy of above, for chunk testing */ 5876 - .key = "\x01\x23\x45\x67\x89\xab\xcd\xef", 5877 - .klen = 8, 5878 - .iv = "\x43\xe9\x34\x00\x8c\x38\x9c\x0f", 5879 - .input = "\x68\x37\x88\x49\x9a\x7c\x05\xf6", 5880 - .ilen = 8, 5881 - .result = "\x66\x6f\x72\x20\x61\x6c\x6c\x20", 5882 - .rlen = 8, 5883 - .np = 2, 5884 - .tap = { 4, 4 } 5885 - }, { /* Generated with Crypto++ */ 5886 - .key = "\xC9\x83\xA6\xC9\xEC\x0F\x32\x55", 5887 - .klen = 8, 5888 - .iv = "\xE7\x82\x1D\xB8\x53\x11\xAC\x47", 5889 - .input = "\x71\xCC\x56\x1C\x87\x2C\x43\x20" 5890 - "\x1C\x20\x13\x09\xF9\x2B\x40\x47" 5891 - "\x99\x10\xD1\x1B\x65\x33\x33\xBA" 5892 - "\x88\x0D\xA2\xD1\x86\xFF\x4D\xF4" 5893 - "\x5A\x0C\x12\x96\x32\x57\xAA\x26" 5894 - "\xA7\xF4\x32\x8D\xBC\x10\x31\x9E" 5895 - "\x81\x72\x74\xDE\x30\x19\x69\x49" 5896 - "\x54\x9C\xC3\xEB\x0B\x97\xDD\xD1" 5897 - "\xE8\x6D\x0D\x05\x83\xA5\x12\x08" 5898 - "\x47\xF8\x88\x03\x86\x51\x3C\xEF" 5899 - "\xE7\x11\x73\x4D\x44\x2B\xE2\x16" 5900 - "\xE8\xA5\x06\x50\x66\x70\x0E\x14" 5901 - "\xBA\x21\x3B\xD5\x23\x5B\xA7\x8F" 5902 - "\x56\xB6\xA7\x44\xDB\x86\xAB\x69" 5903 - "\x33\x3C\xBE\x64\xC4\x22\xD3\xFE" 5904 - "\x49\x90\x88\x6A\x09\x8F\x76\x59" 5905 - "\xCB\xB7\xA0\x2D\x79\x75\x92\x8A" 5906 - "\x82\x1D\xC2\xFE\x09\x1F\x78\x6B" 5907 - "\x2F\xD6\xA4\x87\x1E\xC4\x53\x63" 5908 - "\x80\x02\x61\x2F\xE3\x46\xB6\xB5" 5909 - "\xAA\x95\xF4\xEE\xA7\x64\x2B\x4F" 5910 - "\x20\xCF\xD2\x47\x4E\x39\x65\xB3" 5911 - "\x11\x87\xA2\x6C\x49\x7E\x36\xC7" 5912 - "\x62\x8B\x48\x0D\x6A\x64\x00\xBD" 5913 - "\x71\x91\x8C\xE9\x70\x19\x01\x4F" 5914 - "\x4E\x68\x23\xBA\xDA\x24\x2E\x45" 5915 - "\x02\x14\x33\x21\xAE\x58\x4B\xCF" 5916 - "\x3B\x4B\xE8\xF8\xF6\x4F\x34\x93" 5917 - "\xD7\x07\x8A\xD7\x18\x92\x36\x8C" 5918 - "\x82\xA9\xBD\x6A\x31\x91\x39\x11" 5919 - "\xC6\x4A\xF3\x55\xC7\x29\x2E\x63", 5920 - .ilen = 248, 5921 - .result = "\x50\xB9\x22\xAE\x17\x80\x0C\x75" 5922 - "\xDE\x47\xD3\x3C\xA5\x0E\x9A\x03" 5923 - "\x6C\xF8\x61\xCA\x33\xBF\x28\x91" 5924 - "\x1D\x86\xEF\x58\xE4\x4D\xB6\x1F" 5925 - "\xAB\x14\x7D\x09\x72\xDB\x44\xD0" 5926 - "\x39\xA2\x0B\x97\x00\x69\xF5\x5E" 5927 - "\xC7\x30\xBC\x25\x8E\x1A\x83\xEC" 5928 - "\x55\xE1\x4A\xB3\x1C\xA8\x11\x7A" 5929 - "\x06\x6F\xD8\x41\xCD\x36\x9F\x08" 5930 - "\x94\xFD\x66\xF2\x5B\xC4\x2D\xB9" 5931 - "\x22\x8B\x17\x80\xE9\x52\xDE\x47" 5932 - "\xB0\x19\xA5\x0E\x77\x03\x6C\xD5" 5933 - "\x3E\xCA\x33\x9C\x05\x91\xFA\x63" 5934 - "\xEF\x58\xC1\x2A\xB6\x1F\x88\x14" 5935 - "\x7D\xE6\x4F\xDB\x44\xAD\x16\xA2" 5936 - "\x0B\x74\x00\x69\xD2\x3B\xC7\x30" 5937 - "\x99\x02\x8E\xF7\x60\xEC\x55\xBE" 5938 - "\x27\xB3\x1C\x85\x11\x7A\xE3\x4C" 5939 - "\xD8\x41\xAA\x13\x9F\x08\x71\xFD" 5940 - "\x66\xCF\x38\xC4\x2D\x96\x22\x8B" 5941 - "\xF4\x5D\xE9\x52\xBB\x24\xB0\x19" 5942 - "\x82\x0E\x77\xE0\x49\xD5\x3E\xA7" 5943 - "\x10\x9C\x05\x6E\xFA\x63\xCC\x35" 5944 - "\xC1\x2A\x93\x1F\x88\xF1\x5A\xE6" 5945 - "\x4F\xB8\x21\xAD\x16\x7F\x0B\x74" 5946 - "\xDD\x46\xD2\x3B\xA4\x0D\x99\x02" 5947 - "\x6B\xF7\x60\xC9\x32\xBE\x27\x90" 5948 - "\x1C\x85\xEE\x57\xE3\x4C\xB5\x1E" 5949 - "\xAA\x13\x7C\x08\x71\xDA\x43\xCF" 5950 - "\x38\xA1\x0A\x96\xFF\x68\xF4\x5D" 5951 - "\xC6\x2F\xBB\x24\x8D\x19\x82\xEB", 5952 - .rlen = 248, 5953 - .also_non_np = 1, 5954 - .np = 3, 5955 - .tap = { 248 - 10, 2, 8 }, 5956 - }, 5957 - }; 5958 - 5959 - static const struct cipher_testvec des_ctr_enc_tv_template[] = { 5980 + static const struct cipher_testvec des_ctr_tv_template[] = { 5960 5981 { /* Generated with Crypto++ */ 5961 5982 .key = "\xC9\x83\xA6\xC9\xEC\x0F\x32\x55", 5962 5983 .klen = 8, 5963 5984 .iv = "\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFD", 5964 - .input = "\x50\xB9\x22\xAE\x17\x80\x0C\x75" 5985 + .ptext = "\x50\xB9\x22\xAE\x17\x80\x0C\x75" 5965 5986 "\xDE\x47\xD3\x3C\xA5\x0E\x9A\x03" 5966 5987 "\x6C\xF8\x61\xCA\x33\xBF\x28\x91" 5967 5988 "\x1D\x86\xEF\x58\xE4\x4D\xB6\x1F" ··· 5883 6122 "\xAA\x13\x7C\x08\x71\xDA\x43\xCF" 5884 6123 "\x38\xA1\x0A\x96\xFF\x68\xF4\x5D" 5885 6124 "\xC6\x2F\xBB\x24\x8D\x19\x82\xEB", 5886 - .ilen = 248, 5887 - .result = "\x2F\x96\x06\x0F\x50\xC9\x68\x03" 6125 + .ctext = "\x2F\x96\x06\x0F\x50\xC9\x68\x03" 5888 6126 "\x0F\x31\xD4\x64\xA5\x29\x77\x35" 5889 6127 "\xBC\x7A\x9F\x19\xE7\x0D\x33\x3E" 5890 6128 "\x12\x0B\x8C\xAE\x48\xAE\xD9\x02" ··· 5914 6154 "\x5C\xC4\x15\xC9\x9A\x21\xC5\xCD" 5915 6155 "\x19\x7F\x99\x19\x53\xCE\x1D\x14" 5916 6156 "\x69\x74\xA1\x06\x46\x0F\x4E\x75", 5917 - .rlen = 248, 6157 + .len = 248, 5918 6158 .also_non_np = 1, 5919 6159 .np = 3, 5920 6160 .tap = { 248 - 10, 2, 8 }, ··· 5922 6162 .key = "\xC9\x83\xA6\xC9\xEC\x0F\x32\x55", 5923 6163 .klen = 8, 5924 6164 .iv = "\xE7\x82\x1D\xB8\x53\x11\xAC\x47", 5925 - .input = "\x50\xB9\x22\xAE\x17\x80\x0C\x75" 6165 + .ptext = "\x50\xB9\x22\xAE\x17\x80\x0C\x75" 5926 6166 "\xDE\x47\xD3\x3C\xA5\x0E\x9A\x03" 5927 6167 "\x6C\xF8\x61\xCA\x33\xBF\x28\x91" 5928 6168 "\x1D\x86\xEF\x58\xE4\x4D\xB6\x1F" ··· 5953 6193 "\xAA\x13\x7C\x08\x71\xDA\x43\xCF" 5954 6194 "\x38\xA1\x0A\x96\xFF\x68\xF4\x5D" 5955 6195 "\xC6\x2F\xBB\x24\x8D\x19\x82", 5956 - .ilen = 247, 5957 - .result = "\x62\xE5\xF4\xDC\x99\xE7\x89\xE3" 6196 + .ctext = "\x62\xE5\xF4\xDC\x99\xE7\x89\xE3" 5958 6197 "\xF4\x10\xCC\x21\x99\xEB\xDC\x15" 5959 6198 "\x19\x13\x93\x27\x9D\xB6\x6F\x45" 5960 6199 "\x17\x55\x61\x72\xC8\xD3\x7F\xA5" ··· 5984 6225 "\xDF\x85\x2D\xE1\xB2\xD6\xAB\x94" 5985 6226 "\xA5\xA6\xE7\xB0\x51\x36\x52\x37" 5986 6227 "\x91\x45\x05\x3E\x58\xBF\x32", 5987 - .rlen = 247, 6228 + .len = 247, 5988 6229 .also_non_np = 1, 5989 6230 .np = 2, 5990 6231 .tap = { 247 - 8, 8 }, 5991 6232 }, 5992 6233 }; 5993 6234 5994 - static const struct cipher_testvec des_ctr_dec_tv_template[] = { 5995 - { /* Generated with Crypto++ */ 5996 - .key = "\xC9\x83\xA6\xC9\xEC\x0F\x32\x55", 5997 - .klen = 8, 5998 - .iv = "\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFD", 5999 - .input = "\x2F\x96\x06\x0F\x50\xC9\x68\x03" 6000 - "\x0F\x31\xD4\x64\xA5\x29\x77\x35" 6001 - "\xBC\x7A\x9F\x19\xE7\x0D\x33\x3E" 6002 - "\x12\x0B\x8C\xAE\x48\xAE\xD9\x02" 6003 - "\x0A\xD4\xB0\xD6\x37\xB2\x65\x1C" 6004 - "\x4B\x65\xEB\x24\xB5\x8E\xAD\x47" 6005 - "\x0D\xDA\x79\x77\xA0\x29\xA0\x2B" 6006 - "\xC8\x0F\x85\xDC\x03\x13\xA9\x04" 6007 - "\x19\x40\xBE\xBE\x5C\x49\x4A\x69" 6008 - "\xED\xE8\xE1\x9E\x14\x43\x74\xDE" 6009 - "\xEC\x6E\x11\x3F\x36\xEF\x7B\xFB" 6010 - "\xBE\x4C\x91\x43\x22\x65\x72\x48" 6011 - "\xE2\x12\xED\x88\xAC\xA7\xC9\x91" 6012 - "\x14\xA2\x36\x1C\x29\xFF\xC8\x4F" 6013 - "\x72\x5C\x4B\xB0\x1E\x93\xC2\xFA" 6014 - "\x9D\x53\x86\xA0\xAE\xC6\xB7\x3C" 6015 - "\x59\x0C\xD0\x8F\xA6\xD8\xA4\x31" 6016 - "\xB7\x30\x1C\x21\x38\xFB\x68\x8C" 6017 - "\x2E\xF5\x6E\x73\xC3\x16\x5F\x12" 6018 - "\x0C\x33\xB9\x1E\x7B\x70\xDE\x86" 6019 - "\x32\xB3\xC1\x16\xAB\xD9\x49\x0B" 6020 - "\x96\x28\x72\x6B\xF3\x30\xA9\xEB" 6021 - "\x69\xE2\x1E\x58\x46\xA2\x8E\xC7" 6022 - "\xC0\xEF\x07\xB7\x77\x2C\x00\x05" 6023 - "\x46\xBD\xFE\x53\x81\x8B\xA4\x03" 6024 - "\x20\x0F\xDB\x78\x0B\x1F\x53\x04" 6025 - "\x4C\x60\x4C\xC3\x2A\x86\x86\x7E" 6026 - "\x13\xD2\x26\xED\x5D\x3E\x9C\xF2" 6027 - "\x5C\xC4\x15\xC9\x9A\x21\xC5\xCD" 6028 - "\x19\x7F\x99\x19\x53\xCE\x1D\x14" 6029 - "\x69\x74\xA1\x06\x46\x0F\x4E\x75", 6030 - .ilen = 248, 6031 - .result = "\x50\xB9\x22\xAE\x17\x80\x0C\x75" 6032 - "\xDE\x47\xD3\x3C\xA5\x0E\x9A\x03" 6033 - "\x6C\xF8\x61\xCA\x33\xBF\x28\x91" 6034 - "\x1D\x86\xEF\x58\xE4\x4D\xB6\x1F" 6035 - "\xAB\x14\x7D\x09\x72\xDB\x44\xD0" 6036 - "\x39\xA2\x0B\x97\x00\x69\xF5\x5E" 6037 - "\xC7\x30\xBC\x25\x8E\x1A\x83\xEC" 6038 - "\x55\xE1\x4A\xB3\x1C\xA8\x11\x7A" 6039 - "\x06\x6F\xD8\x41\xCD\x36\x9F\x08" 6040 - "\x94\xFD\x66\xF2\x5B\xC4\x2D\xB9" 6041 - "\x22\x8B\x17\x80\xE9\x52\xDE\x47" 6042 - "\xB0\x19\xA5\x0E\x77\x03\x6C\xD5" 6043 - "\x3E\xCA\x33\x9C\x05\x91\xFA\x63" 6044 - "\xEF\x58\xC1\x2A\xB6\x1F\x88\x14" 6045 - "\x7D\xE6\x4F\xDB\x44\xAD\x16\xA2" 6046 - "\x0B\x74\x00\x69\xD2\x3B\xC7\x30" 6047 - "\x99\x02\x8E\xF7\x60\xEC\x55\xBE" 6048 - "\x27\xB3\x1C\x85\x11\x7A\xE3\x4C" 6049 - "\xD8\x41\xAA\x13\x9F\x08\x71\xFD" 6050 - "\x66\xCF\x38\xC4\x2D\x96\x22\x8B" 6051 - "\xF4\x5D\xE9\x52\xBB\x24\xB0\x19" 6052 - "\x82\x0E\x77\xE0\x49\xD5\x3E\xA7" 6053 - "\x10\x9C\x05\x6E\xFA\x63\xCC\x35" 6054 - "\xC1\x2A\x93\x1F\x88\xF1\x5A\xE6" 6055 - "\x4F\xB8\x21\xAD\x16\x7F\x0B\x74" 6056 - "\xDD\x46\xD2\x3B\xA4\x0D\x99\x02" 6057 - "\x6B\xF7\x60\xC9\x32\xBE\x27\x90" 6058 - "\x1C\x85\xEE\x57\xE3\x4C\xB5\x1E" 6059 - "\xAA\x13\x7C\x08\x71\xDA\x43\xCF" 6060 - "\x38\xA1\x0A\x96\xFF\x68\xF4\x5D" 6061 - "\xC6\x2F\xBB\x24\x8D\x19\x82\xEB", 6062 - .rlen = 248, 6063 - .also_non_np = 1, 6064 - .np = 3, 6065 - .tap = { 248 - 10, 2, 8 }, 6066 - }, { /* Generated with Crypto++ */ 6067 - .key = "\xC9\x83\xA6\xC9\xEC\x0F\x32\x55", 6068 - .klen = 8, 6069 - .iv = "\xE7\x82\x1D\xB8\x53\x11\xAC\x47", 6070 - .input = "\x62\xE5\xF4\xDC\x99\xE7\x89\xE3" 6071 - "\xF4\x10\xCC\x21\x99\xEB\xDC\x15" 6072 - "\x19\x13\x93\x27\x9D\xB6\x6F\x45" 6073 - "\x17\x55\x61\x72\xC8\xD3\x7F\xA5" 6074 - "\x32\xD0\xD3\x02\x15\xA4\x05\x23" 6075 - "\x9C\x23\x61\x60\x77\x7B\x6C\x95" 6076 - "\x26\x49\x42\x2E\xF3\xC1\x8C\x6D" 6077 - "\xC8\x47\xD5\x94\xE7\x53\xC8\x23" 6078 - "\x1B\xA5\x0B\xCB\x12\xD3\x7A\x12" 6079 - "\xA4\x42\x15\x34\xF7\x5F\xDC\x58" 6080 - "\x5B\x58\x4C\xAD\xD1\x33\x8E\xE6" 6081 - "\xE5\xA0\xDA\x4D\x94\x3D\x63\xA8" 6082 - "\x02\x82\xBB\x16\xB8\xDC\xB5\x58" 6083 - "\xC3\x2D\x79\xE4\x25\x79\x43\xF9" 6084 - "\x6D\xD3\xCA\xC0\xE8\x12\xD4\x7E" 6085 - "\x04\x25\x79\xFD\x27\xFB\xC4\xEA" 6086 - "\x32\x94\x48\x92\xF3\x68\x1A\x7F" 6087 - "\x36\x33\x43\x79\xF7\xCA\xC2\x38" 6088 - "\xC0\x68\xD4\x53\xA9\xCC\x43\x0C" 6089 - "\x40\x57\x3E\xED\x00\x9F\x22\x6E" 6090 - "\x80\x99\x0B\xCC\x40\x63\x46\x8A" 6091 - "\xE8\xC4\x9B\x6D\x7A\x08\x6E\xA9" 6092 - "\x6F\x84\xBC\xB3\xF4\x95\x0B\x2D" 6093 - "\x6A\xBA\x37\x50\xC3\xCF\x9F\x7C" 6094 - "\x59\x5E\xDE\x0B\x30\xFA\x34\x8A" 6095 - "\xF8\xD1\xA2\xF8\x4E\xBD\x5D\x5E" 6096 - "\x7D\x71\x99\xE0\xF6\xE5\x7C\xE0" 6097 - "\x6D\xEE\x82\x89\x92\xD4\xF5\xD7" 6098 - "\xDF\x85\x2D\xE1\xB2\xD6\xAB\x94" 6099 - "\xA5\xA6\xE7\xB0\x51\x36\x52\x37" 6100 - "\x91\x45\x05\x3E\x58\xBF\x32", 6101 - .ilen = 247, 6102 - .result = "\x50\xB9\x22\xAE\x17\x80\x0C\x75" 6103 - "\xDE\x47\xD3\x3C\xA5\x0E\x9A\x03" 6104 - "\x6C\xF8\x61\xCA\x33\xBF\x28\x91" 6105 - "\x1D\x86\xEF\x58\xE4\x4D\xB6\x1F" 6106 - "\xAB\x14\x7D\x09\x72\xDB\x44\xD0" 6107 - "\x39\xA2\x0B\x97\x00\x69\xF5\x5E" 6108 - "\xC7\x30\xBC\x25\x8E\x1A\x83\xEC" 6109 - "\x55\xE1\x4A\xB3\x1C\xA8\x11\x7A" 6110 - "\x06\x6F\xD8\x41\xCD\x36\x9F\x08" 6111 - "\x94\xFD\x66\xF2\x5B\xC4\x2D\xB9" 6112 - "\x22\x8B\x17\x80\xE9\x52\xDE\x47" 6113 - "\xB0\x19\xA5\x0E\x77\x03\x6C\xD5" 6114 - "\x3E\xCA\x33\x9C\x05\x91\xFA\x63" 6115 - "\xEF\x58\xC1\x2A\xB6\x1F\x88\x14" 6116 - "\x7D\xE6\x4F\xDB\x44\xAD\x16\xA2" 6117 - "\x0B\x74\x00\x69\xD2\x3B\xC7\x30" 6118 - "\x99\x02\x8E\xF7\x60\xEC\x55\xBE" 6119 - "\x27\xB3\x1C\x85\x11\x7A\xE3\x4C" 6120 - "\xD8\x41\xAA\x13\x9F\x08\x71\xFD" 6121 - "\x66\xCF\x38\xC4\x2D\x96\x22\x8B" 6122 - "\xF4\x5D\xE9\x52\xBB\x24\xB0\x19" 6123 - "\x82\x0E\x77\xE0\x49\xD5\x3E\xA7" 6124 - "\x10\x9C\x05\x6E\xFA\x63\xCC\x35" 6125 - "\xC1\x2A\x93\x1F\x88\xF1\x5A\xE6" 6126 - "\x4F\xB8\x21\xAD\x16\x7F\x0B\x74" 6127 - "\xDD\x46\xD2\x3B\xA4\x0D\x99\x02" 6128 - "\x6B\xF7\x60\xC9\x32\xBE\x27\x90" 6129 - "\x1C\x85\xEE\x57\xE3\x4C\xB5\x1E" 6130 - "\xAA\x13\x7C\x08\x71\xDA\x43\xCF" 6131 - "\x38\xA1\x0A\x96\xFF\x68\xF4\x5D" 6132 - "\xC6\x2F\xBB\x24\x8D\x19\x82", 6133 - .rlen = 247, 6134 - .also_non_np = 1, 6135 - .np = 2, 6136 - .tap = { 247 - 8, 8 }, 6137 - }, 6138 - }; 6139 - 6140 - static const struct cipher_testvec des3_ede_enc_tv_template[] = { 6235 + static const struct cipher_testvec des3_ede_tv_template[] = { 6141 6236 { /* These are from openssl */ 6142 6237 .key = "\x01\x23\x45\x67\x89\xab\xcd\xef" 6143 6238 "\x55\x55\x55\x55\x55\x55\x55\x55" 6144 6239 "\xfe\xdc\xba\x98\x76\x54\x32\x10", 6145 6240 .klen = 24, 6146 - .input = "\x73\x6f\x6d\x65\x64\x61\x74\x61", 6147 - .ilen = 8, 6148 - .result = "\x18\xd7\x48\xe5\x63\x62\x05\x72", 6149 - .rlen = 8, 6241 + .ptext = "\x73\x6f\x6d\x65\x64\x61\x74\x61", 6242 + .ctext = "\x18\xd7\x48\xe5\x63\x62\x05\x72", 6243 + .len = 8, 6150 6244 }, { 6151 6245 .key = "\x03\x52\x02\x07\x67\x20\x82\x17" 6152 6246 "\x86\x02\x87\x66\x59\x08\x21\x98" 6153 6247 "\x64\x05\x6a\xbd\xfe\xa9\x34\x57", 6154 6248 .klen = 24, 6155 - .input = "\x73\x71\x75\x69\x67\x67\x6c\x65", 6156 - .ilen = 8, 6157 - .result = "\xc0\x7d\x2a\x0f\xa5\x66\xfa\x30", 6158 - .rlen = 8, 6249 + .ptext = "\x73\x71\x75\x69\x67\x67\x6c\x65", 6250 + .ctext = "\xc0\x7d\x2a\x0f\xa5\x66\xfa\x30", 6251 + .len = 8, 6159 6252 }, { 6160 6253 .key = "\x10\x46\x10\x34\x89\x98\x80\x20" 6161 6254 "\x91\x07\xd0\x15\x89\x19\x01\x01" 6162 6255 "\x19\x07\x92\x10\x98\x1a\x01\x01", 6163 6256 .klen = 24, 6164 - .input = "\x00\x00\x00\x00\x00\x00\x00\x00", 6165 - .ilen = 8, 6166 - .result = "\xe1\xef\x62\xc3\x32\xfe\x82\x5b", 6167 - .rlen = 8, 6257 + .ptext = "\x00\x00\x00\x00\x00\x00\x00\x00", 6258 + .ctext = "\xe1\xef\x62\xc3\x32\xfe\x82\x5b", 6259 + .len = 8, 6168 6260 }, { /* Generated with Crypto++ */ 6169 6261 .key = "\xF3\x9C\xD6\xF3\x9C\xB9\x5A\x67" 6170 6262 "\x00\x5A\x67\x00\x2D\xCE\xEB\x2D" 6171 6263 "\xCE\xEB\xB4\x51\x72\xB4\x51\x72", 6172 6264 .klen = 24, 6173 - .input = "\x05\xEC\x77\xFB\x42\xD5\x59\x20" 6265 + .ptext = "\x05\xEC\x77\xFB\x42\xD5\x59\x20" 6174 6266 "\x8B\x12\x86\x69\xF0\x5B\xCF\x56" 6175 6267 "\x39\xAD\x34\x9F\x66\xEA\x7D\xC4" 6176 6268 "\x48\xD3\xBA\x0D\xB1\x18\xE3\x4A" ··· 6083 6473 "\xFB\x42\xF6\x59\x20\x54\x3F\x86" 6084 6474 "\x69\x9D\x64\xCF\x56\xDA\xAD\x34" 6085 6475 "\xB8\x03\xEA\x7D\xE1\x48\xD3\x47", 6086 - .ilen = 496, 6087 - .result = "\x4E\x9A\x40\x3D\x61\x7D\x17\xFA" 6476 + .ctext = "\x4E\x9A\x40\x3D\x61\x7D\x17\xFA" 6088 6477 "\x16\x86\x88\x0B\xD8\xAE\xF8\xE4" 6089 6478 "\x81\x01\x04\x00\x76\xFA\xED\xD3" 6090 6479 "\x44\x7E\x21\x9D\xF0\xFB\x2B\x64" ··· 6145 6536 "\x12\xE1\x71\x4A\xF9\x2A\xF5\xF6" 6146 6537 "\x93\x03\xD7\x51\x09\xFA\xBE\x68" 6147 6538 "\xD8\x45\xFF\x33\xBA\xBB\x2B\x63", 6148 - .rlen = 496, 6539 + .len = 496, 6149 6540 .also_non_np = 1, 6150 6541 .np = 3, 6151 6542 .tap = { 496 - 20, 4, 16 }, 6152 6543 }, 6153 6544 }; 6154 6545 6155 - static const struct cipher_testvec des3_ede_dec_tv_template[] = { 6156 - { /* These are from openssl */ 6157 - .key = "\x01\x23\x45\x67\x89\xab\xcd\xef" 6158 - "\x55\x55\x55\x55\x55\x55\x55\x55" 6159 - "\xfe\xdc\xba\x98\x76\x54\x32\x10", 6160 - .klen = 24, 6161 - .input = "\x18\xd7\x48\xe5\x63\x62\x05\x72", 6162 - .ilen = 8, 6163 - .result = "\x73\x6f\x6d\x65\x64\x61\x74\x61", 6164 - .rlen = 8, 6165 - }, { 6166 - .key = "\x03\x52\x02\x07\x67\x20\x82\x17" 6167 - "\x86\x02\x87\x66\x59\x08\x21\x98" 6168 - "\x64\x05\x6a\xbd\xfe\xa9\x34\x57", 6169 - .klen = 24, 6170 - .input = "\xc0\x7d\x2a\x0f\xa5\x66\xfa\x30", 6171 - .ilen = 8, 6172 - .result = "\x73\x71\x75\x69\x67\x67\x6c\x65", 6173 - .rlen = 8, 6174 - }, { 6175 - .key = "\x10\x46\x10\x34\x89\x98\x80\x20" 6176 - "\x91\x07\xd0\x15\x89\x19\x01\x01" 6177 - "\x19\x07\x92\x10\x98\x1a\x01\x01", 6178 - .klen = 24, 6179 - .input = "\xe1\xef\x62\xc3\x32\xfe\x82\x5b", 6180 - .ilen = 8, 6181 - .result = "\x00\x00\x00\x00\x00\x00\x00\x00", 6182 - .rlen = 8, 6183 - }, { /* Generated with Crypto++ */ 6184 - .key = "\xF3\x9C\xD6\xF3\x9C\xB9\x5A\x67" 6185 - "\x00\x5A\x67\x00\x2D\xCE\xEB\x2D" 6186 - "\xCE\xEB\xB4\x51\x72\xB4\x51\x72", 6187 - .klen = 24, 6188 - .input = "\x4E\x9A\x40\x3D\x61\x7D\x17\xFA" 6189 - "\x16\x86\x88\x0B\xD8\xAE\xF8\xE4" 6190 - "\x81\x01\x04\x00\x76\xFA\xED\xD3" 6191 - "\x44\x7E\x21\x9D\xF0\xFB\x2B\x64" 6192 - "\xCA\x4E\x90\xE0\xC0\x63\x28\x92" 6193 - "\xF3\x1F\xA4\x53\x2C\x77\xCC\x77" 6194 - "\x69\x56\xD0\x19\xAD\x00\x2D\x97" 6195 - "\xBC\xDE\x49\x6A\x82\xBC\x16\xE2" 6196 - "\x2F\x3E\x72\xEE\xD1\xCE\xFC\x1B" 6197 - "\xEA\x32\x56\xE4\x0B\xAF\x27\x36" 6198 - "\xAF\x08\xB9\x61\xB7\x48\x23\x27" 6199 - "\xEE\x4D\xC8\x79\x56\x06\xEB\xC7" 6200 - "\x5B\xCA\x0A\xC6\x5E\x5C\xCB\xB6" 6201 - "\x9D\xDA\x04\x59\xE2\x09\x48\x7E" 6202 - "\x6B\x37\xC6\xFE\x92\xA9\x1E\x6E" 6203 - "\x0D\x19\xFA\x33\x0F\xEE\x36\x68" 6204 - "\x11\xBB\xF9\x5A\x73\xAB\x3A\xEA" 6205 - "\xAC\x28\xD8\xD5\x27\xE8\x6B\x16" 6206 - "\x45\x86\x50\x01\x70\x35\x99\x92" 6207 - "\xDF\x0C\x07\x88\x8B\x7F\x9E\x4B" 6208 - "\xD2\x04\x84\x90\xC4\x27\xDF\x0A" 6209 - "\x49\xA8\xA7\x1A\x6D\x78\x16\xCA" 6210 - "\xB3\x18\x5C\xC3\x93\x63\x5A\x68" 6211 - "\x77\x02\xBA\xED\x62\x71\xB1\xD9" 6212 - "\x5E\xE5\x6F\x1A\xCC\x1D\xBE\x2E" 6213 - "\x11\xF3\xA6\x97\xCA\x8E\xBF\xB4" 6214 - "\x56\xA1\x36\x6B\xB1\x0A\x3E\x70" 6215 - "\xEA\xD7\xCD\x72\x7B\x79\xC8\xAD" 6216 - "\x6B\xFE\xFB\xBA\x64\xAE\x19\xC1" 6217 - "\x82\xCF\x8A\xA1\x50\x17\x7F\xB2" 6218 - "\x6F\x7B\x0F\x52\xC5\x3E\x4A\x52" 6219 - "\x3F\xD9\x3F\x01\xA6\x41\x1A\xB3" 6220 - "\xB3\x7A\x0E\x8E\x75\xB2\xB1\x5F" 6221 - "\xDB\xEA\x84\x13\x26\x6C\x85\x4E" 6222 - "\xAE\x6B\xDC\xE7\xE7\xAD\xB0\x06" 6223 - "\x5C\xBA\x92\xD0\x30\xBB\x8D\xD2" 6224 - "\xAE\x4C\x70\x85\xA0\x07\xE3\x2C" 6225 - "\xD1\x27\x9C\xCF\xDB\x13\xB7\xE5" 6226 - "\xF9\x6A\x02\xD0\x39\x9D\xB6\xE7" 6227 - "\xD1\x17\x25\x08\xF9\xA9\xA6\x67" 6228 - "\x38\x80\xD1\x22\xAB\x1A\xD7\x26" 6229 - "\xAD\xCA\x19\x1B\xFA\x18\xA7\x57" 6230 - "\x31\xEC\xC9\xED\xDB\x79\xC0\x48" 6231 - "\xAC\x31\x9F\x03\x8B\x62\x5B\x7E" 6232 - "\x0E\xA6\xD0\x64\xEE\xEA\x00\xFC" 6233 - "\x58\xC8\xDE\x51\x4E\x17\x15\x11" 6234 - "\x66\x58\xB6\x90\xDC\xDF\xA1\x49" 6235 - "\xCA\x79\xE9\x31\x31\x42\xDC\x56" 6236 - "\x0B\xCD\xB6\x0D\xC7\x64\xF7\x19" 6237 - "\xD9\x42\x05\x7F\xBC\x2F\xFC\x90" 6238 - "\xAE\x29\x86\xAA\x43\x7A\x4F\x6B" 6239 - "\xCE\xEA\xBC\x31\x8D\x65\x9D\x46" 6240 - "\xEA\x77\xB4\xF9\x58\xEA\x5D\x84" 6241 - "\xE4\xDC\x14\xBB\xBD\x15\x0E\xDA" 6242 - "\xD8\xE4\xA4\x5D\x61\xF9\x58\x0F" 6243 - "\xE4\x82\x77\xCE\x87\xC0\x09\xF0" 6244 - "\xD6\x10\x9E\x34\xE1\x0C\x67\x55" 6245 - "\x7B\x6D\xD5\x51\x4B\x00\xEE\xBA" 6246 - "\xF2\x7B\xBE\x75\x07\x42\x9D\x99" 6247 - "\x12\xE1\x71\x4A\xF9\x2A\xF5\xF6" 6248 - "\x93\x03\xD7\x51\x09\xFA\xBE\x68" 6249 - "\xD8\x45\xFF\x33\xBA\xBB\x2B\x63", 6250 - .ilen = 496, 6251 - .result = "\x05\xEC\x77\xFB\x42\xD5\x59\x20" 6252 - "\x8B\x12\x86\x69\xF0\x5B\xCF\x56" 6253 - "\x39\xAD\x34\x9F\x66\xEA\x7D\xC4" 6254 - "\x48\xD3\xBA\x0D\xB1\x18\xE3\x4A" 6255 - "\xFE\x41\x28\x5C\x27\x8E\x11\x85" 6256 - "\x6C\xF7\x5E\xC2\x55\x3C\xA0\x0B" 6257 - "\x92\x65\xE9\x70\xDB\x4F\xD6\xB9" 6258 - "\x00\xB4\x1F\xE6\x49\xFD\x44\x2F" 6259 - "\x53\x3A\x8D\x14\x98\x63\xCA\x5D" 6260 - "\xC1\xA8\x33\xA7\x0E\x91\x78\xEC" 6261 - "\x77\xDE\x42\xD5\xBC\x07\x8B\x12" 6262 - "\xE5\x4C\xF0\x5B\x22\x56\x39\x80" 6263 - "\x6B\x9F\x66\xC9\x50\xC4\xAF\x36" 6264 - "\xBA\x0D\x94\x7F\xE3\x4A\xDD\x41" 6265 - "\x28\xB3\x1A\x8E\x11\xF8\x43\xF7" 6266 - "\x5E\x21\x55\x3C\x87\x6E\x92\x65" 6267 - "\xCC\x57\xDB\xA2\x35\xB9\x00\xEB" 6268 - "\x72\xE6\x49\xD0\x44\x2F\xB6\x19" 6269 - "\x8D\x14\xFF\x46\xCA\x5D\x24\xA8" 6270 - "\x33\x9A\x6D\x91\x78\xC3\x77\xDE" 6271 - "\xA1\x08\xBC\x07\xEE\x71\xE5\x4C" 6272 - "\xD7\x5B\x22\xB5\x1C\x80\x6B\xF2" 6273 - "\x45\xC9\x50\x3B\xAF\x36\x99\x60" 6274 - "\x94\x7F\xC6\x4A\xDD\xA4\x0F\xB3" 6275 - "\x1A\xED\x74\xF8\x43\x2A\x5E\x21" 6276 - "\x88\x13\x87\x6E\xF1\x58\xCC\x57" 6277 - "\x3E\xA2\x35\x9C\x67\xEB\x72\xC5" 6278 - "\x49\xD0\xBB\x02\xB6\x19\xE0\x4B" 6279 - "\xFF\x46\x29\x5D\x24\x8F\x16\x9A" 6280 - "\x6D\xF4\x5F\xC3\xAA\x3D\xA1\x08" 6281 - "\x93\x7A\xEE\x71\xD8\x4C\xD7\xBE" 6282 - "\x01\xB5\x1C\xE7\x4E\xF2\x45\x2C" 6283 - "\x50\x3B\x82\x15\x99\x60\xCB\x52" 6284 - "\xC6\xA9\x30\xA4\x0F\x96\x79\xED" 6285 - "\x74\xDF\x43\x2A\xBD\x04\x88\x13" 6286 - "\xFA\x4D\xF1\x58\x23\x57\x3E\x81" 6287 - "\x68\x9C\x67\xCE\x51\xC5\xAC\x37" 6288 - "\xBB\x02\x95\x7C\xE0\x4B\xD2\x46" 6289 - "\x29\xB0\x1B\x8F\x16\xF9\x40\xF4" 6290 - "\x5F\x26\xAA\x3D\x84\x6F\x93\x7A" 6291 - "\xCD\x54\xD8\xA3\x0A\xBE\x01\xE8" 6292 - "\x73\xE7\x4E\xD1\x45\x2C\xB7\x1E" 6293 - "\x82\x15\xFC\x47\xCB\x52\x25\xA9" 6294 - "\x30\x9B\x62\x96\x79\xC0\x74\xDF" 6295 - "\xA6\x09\xBD\x04\xEF\x76\xFA\x4D" 6296 - "\xD4\x58\x23\x8A\x1D\x81\x68\xF3" 6297 - "\x5A\xCE\x51\x38\xAC\x37\x9E\x61" 6298 - "\x95\x7C\xC7\x4B\xD2\xA5\x0C\xB0" 6299 - "\x1B\xE2\x75\xF9\x40\x2B\x5F\x26" 6300 - "\x89\x10\x84\x6F\xF6\x59\xCD\x54" 6301 - "\x3F\xA3\x0A\x9D\x64\xE8\x73\xDA" 6302 - "\x4E\xD1\xB8\x03\xB7\x1E\xE1\x48" 6303 - "\xFC\x47\x2E\x52\x25\x8C\x17\x9B" 6304 - "\x62\xF5\x5C\xC0\xAB\x32\xA6\x09" 6305 - "\x90\x7B\xEF\x76\xD9\x4D\xD4\xBF" 6306 - "\x06\x8A\x1D\xE4\x4F\xF3\x5A\x2D" 6307 - "\x51\x38\x83\x6A\x9E\x61\xC8\x53" 6308 - "\xC7\xAE\x31\xA5\x0C\x97\x7E\xE2" 6309 - "\x75\xDC\x40\x2B\xB2\x05\x89\x10" 6310 - "\xFB\x42\xF6\x59\x20\x54\x3F\x86" 6311 - "\x69\x9D\x64\xCF\x56\xDA\xAD\x34" 6312 - "\xB8\x03\xEA\x7D\xE1\x48\xD3\x47", 6313 - .rlen = 496, 6314 - .also_non_np = 1, 6315 - .np = 3, 6316 - .tap = { 496 - 20, 4, 16 }, 6317 - }, 6318 - }; 6319 - 6320 - static const struct cipher_testvec des3_ede_cbc_enc_tv_template[] = { 6546 + static const struct cipher_testvec des3_ede_cbc_tv_template[] = { 6321 6547 { /* Generated from openssl */ 6322 6548 .key = "\xE9\xC0\xFF\x2E\x76\x0B\x64\x24" 6323 6549 "\x44\x4D\x99\x5A\x12\xD6\x40\xC0" 6324 6550 "\xEA\xC2\x84\xE8\x14\x95\xDB\xE8", 6325 6551 .klen = 24, 6326 6552 .iv = "\x7D\x33\x88\x93\x0F\x93\xB2\x42", 6327 - .input = "\x6f\x54\x20\x6f\x61\x4d\x79\x6e" 6553 + .ptext = "\x6f\x54\x20\x6f\x61\x4d\x79\x6e" 6328 6554 "\x53\x20\x63\x65\x65\x72\x73\x74" 6329 6555 "\x54\x20\x6f\x6f\x4d\x20\x6e\x61" 6330 6556 "\x20\x79\x65\x53\x72\x63\x74\x65" ··· 6175 6731 "\x20\x6f\x61\x4d\x79\x6e\x53\x20" 6176 6732 "\x63\x65\x65\x72\x73\x74\x54\x20" 6177 6733 "\x6f\x6f\x4d\x20\x6e\x61\x0a\x79", 6178 - .ilen = 128, 6179 - .result = "\x0e\x2d\xb6\x97\x3c\x56\x33\xf4" 6734 + .ctext = "\x0e\x2d\xb6\x97\x3c\x56\x33\xf4" 6180 6735 "\x67\x17\x21\xc7\x6e\x8a\xd5\x49" 6181 6736 "\x74\xb3\x49\x05\xc5\x1c\xd0\xed" 6182 6737 "\x12\x56\x5c\x53\x96\xb6\x00\x7d" ··· 6191 6748 "\xd6\xbc\x5a\xd3\x2d\x54\x43\xcc" 6192 6749 "\x9d\xde\xa5\x70\xe9\x42\x45\x8a" 6193 6750 "\x6b\xfa\xb1\x91\x13\xb0\xd9\x19", 6194 - .rlen = 128, 6751 + .len = 128, 6195 6752 }, { /* Generated with Crypto++ */ 6196 6753 .key = "\x9C\xD6\xF3\x9C\xB9\x5A\x67\x00" 6197 6754 "\x5A\x67\x00\x2D\xCE\xEB\x2D\xCE" ··· 6199 6756 .klen = 24, 6200 6757 .iv = "\xB2\xD7\x48\xED\x06\x44\xF9\x12" 6201 6758 "\xB7\x28\x4D\x83\x24\x59\xF2\x17", 6202 - .input = "\x05\xEC\x77\xFB\x42\xD5\x59\x20" 6759 + .ptext = "\x05\xEC\x77\xFB\x42\xD5\x59\x20" 6203 6760 "\x8B\x12\x86\x69\xF0\x5B\xCF\x56" 6204 6761 "\x39\xAD\x34\x9F\x66\xEA\x7D\xC4" 6205 6762 "\x48\xD3\xBA\x0D\xB1\x18\xE3\x4A" ··· 6261 6818 "\xFB\x42\xF6\x59\x20\x54\x3F\x86" 6262 6819 "\x69\x9D\x64\xCF\x56\xDA\xAD\x34" 6263 6820 "\xB8\x03\xEA\x7D\xE1\x48\xD3\x47", 6264 - .ilen = 496, 6265 - .result = "\xF8\xF6\xB5\x60\x5C\x5A\x75\x84" 6821 + .ctext = "\xF8\xF6\xB5\x60\x5C\x5A\x75\x84" 6266 6822 "\x87\x81\x53\xBA\xC9\x6F\xEC\xD5" 6267 6823 "\x1E\x68\x8E\x85\x12\x86\x1D\x38" 6268 6824 "\x1C\x91\x40\xCC\x69\x6A\xD5\x35" ··· 6323 6881 "\x90\xE9\xFA\x4B\x00\x10\xAC\x58" 6324 6882 "\x83\x70\xFF\x86\xE6\xAA\x0F\x1F" 6325 6883 "\x95\x63\x73\xA2\x44\xAC\xF8\xA5", 6326 - .rlen = 496, 6884 + .len = 496, 6327 6885 .also_non_np = 1, 6328 6886 .np = 3, 6329 6887 .tap = { 496 - 20, 4, 16 }, 6330 6888 }, 6331 6889 }; 6332 6890 6333 - static const struct cipher_testvec des3_ede_cbc_dec_tv_template[] = { 6334 - { /* Generated from openssl */ 6335 - .key = "\xE9\xC0\xFF\x2E\x76\x0B\x64\x24" 6336 - "\x44\x4D\x99\x5A\x12\xD6\x40\xC0" 6337 - "\xEA\xC2\x84\xE8\x14\x95\xDB\xE8", 6338 - .klen = 24, 6339 - .iv = "\x7D\x33\x88\x93\x0F\x93\xB2\x42", 6340 - .input = "\x0e\x2d\xb6\x97\x3c\x56\x33\xf4" 6341 - "\x67\x17\x21\xc7\x6e\x8a\xd5\x49" 6342 - "\x74\xb3\x49\x05\xc5\x1c\xd0\xed" 6343 - "\x12\x56\x5c\x53\x96\xb6\x00\x7d" 6344 - "\x90\x48\xfc\xf5\x8d\x29\x39\xcc" 6345 - "\x8a\xd5\x35\x18\x36\x23\x4e\xd7" 6346 - "\x76\xd1\xda\x0c\x94\x67\xbb\x04" 6347 - "\x8b\xf2\x03\x6c\xa8\xcf\xb6\xea" 6348 - "\x22\x64\x47\xaa\x8f\x75\x13\xbf" 6349 - "\x9f\xc2\xc3\xf0\xc9\x56\xc5\x7a" 6350 - "\x71\x63\x2e\x89\x7b\x1e\x12\xca" 6351 - "\xe2\x5f\xaf\xd8\xa4\xf8\xc9\x7a" 6352 - "\xd6\xf9\x21\x31\x62\x44\x45\xa6" 6353 - "\xd6\xbc\x5a\xd3\x2d\x54\x43\xcc" 6354 - "\x9d\xde\xa5\x70\xe9\x42\x45\x8a" 6355 - "\x6b\xfa\xb1\x91\x13\xb0\xd9\x19", 6356 - .ilen = 128, 6357 - .result = "\x6f\x54\x20\x6f\x61\x4d\x79\x6e" 6358 - "\x53\x20\x63\x65\x65\x72\x73\x74" 6359 - "\x54\x20\x6f\x6f\x4d\x20\x6e\x61" 6360 - "\x20\x79\x65\x53\x72\x63\x74\x65" 6361 - "\x20\x73\x6f\x54\x20\x6f\x61\x4d" 6362 - "\x79\x6e\x53\x20\x63\x65\x65\x72" 6363 - "\x73\x74\x54\x20\x6f\x6f\x4d\x20" 6364 - "\x6e\x61\x20\x79\x65\x53\x72\x63" 6365 - "\x74\x65\x20\x73\x6f\x54\x20\x6f" 6366 - "\x61\x4d\x79\x6e\x53\x20\x63\x65" 6367 - "\x65\x72\x73\x74\x54\x20\x6f\x6f" 6368 - "\x4d\x20\x6e\x61\x20\x79\x65\x53" 6369 - "\x72\x63\x74\x65\x20\x73\x6f\x54" 6370 - "\x20\x6f\x61\x4d\x79\x6e\x53\x20" 6371 - "\x63\x65\x65\x72\x73\x74\x54\x20" 6372 - "\x6f\x6f\x4d\x20\x6e\x61\x0a\x79", 6373 - .rlen = 128, 6374 - }, { /* Generated with Crypto++ */ 6375 - .key = "\x9C\xD6\xF3\x9C\xB9\x5A\x67\x00" 6376 - "\x5A\x67\x00\x2D\xCE\xEB\x2D\xCE" 6377 - "\xEB\xB4\x51\x72\xB4\x51\x72\x1F", 6378 - .klen = 24, 6379 - .iv = "\xB2\xD7\x48\xED\x06\x44\xF9\x12" 6380 - "\xB7\x28\x4D\x83\x24\x59\xF2\x17", 6381 - .input = "\xF8\xF6\xB5\x60\x5C\x5A\x75\x84" 6382 - "\x87\x81\x53\xBA\xC9\x6F\xEC\xD5" 6383 - "\x1E\x68\x8E\x85\x12\x86\x1D\x38" 6384 - "\x1C\x91\x40\xCC\x69\x6A\xD5\x35" 6385 - "\x0D\x7C\xB5\x07\x7C\x7B\x2A\xAF" 6386 - "\x32\xBC\xA1\xB3\x84\x31\x1B\x3C" 6387 - "\x0A\x2B\xFA\xD3\x9F\xB0\x8C\x37" 6388 - "\x8F\x9D\xA7\x6D\x6C\xFA\xD7\x90" 6389 - "\xE3\x69\x54\xED\x3A\xC4\xF1\x6B" 6390 - "\xB1\xCC\xFB\x7D\xD8\x8E\x17\x0B" 6391 - "\x9C\xF6\x4C\xD6\xFF\x03\x4E\xD9" 6392 - "\xE6\xA5\xAD\x25\xE6\x17\x69\x63" 6393 - "\x11\x35\x61\x94\x88\x7B\x1C\x48" 6394 - "\xF1\x24\x20\x29\x6B\x93\x1A\x8E" 6395 - "\x43\x03\x89\xD8\xB1\xDA\x47\x7B" 6396 - "\x79\x3A\x83\x76\xDA\xAE\xC6\xBB" 6397 - "\x22\xF8\xE8\x3D\x9A\x65\x54\xD8" 6398 - "\x4C\xE9\xE7\xE4\x63\x2F\x5C\x73" 6399 - "\x5A\xC3\xAE\x46\xA8\xCD\x57\xE6" 6400 - "\x67\x88\xA5\x20\x6F\x5F\x97\xC7" 6401 - "\xCC\x15\xA2\x0A\x93\xEA\x33\xE7" 6402 - "\x03\x5F\xEC\x64\x30\x6F\xEE\xD7" 6403 - "\x7E\xDF\xD6\xE9\x6F\x3F\xD6\x1E" 6404 - "\xBE\x67\x6C\x5B\x97\xA0\x09\xE6" 6405 - "\xEE\xFE\x55\xA3\x29\x65\xE0\x12" 6406 - "\xA1\x6A\x8A\x6F\xF2\xE6\xF1\x96" 6407 - "\x87\xFB\x9C\x05\xDD\x80\xEC\xFF" 6408 - "\xC5\xED\x50\xFE\xFC\x91\xCD\xCE" 6409 - "\x25\x2C\x5F\xD9\xAD\x95\x7D\x99" 6410 - "\xF0\x05\xC4\x71\x46\x5F\xF9\x0D" 6411 - "\xD2\x63\xDF\x9B\x96\x2E\x2B\xA6" 6412 - "\x2B\x1C\xD5\xFB\x96\x24\x60\x60" 6413 - "\x54\x40\xB8\x62\xA4\xF8\x46\x95" 6414 - "\x73\x28\xA3\xA6\x16\x2B\x17\xE7" 6415 - "\x7A\xF8\x62\x54\x3B\x64\x69\xE1" 6416 - "\x71\x34\x29\x5B\x4E\x05\x9B\xFA" 6417 - "\x5E\xF1\x96\xB7\xCE\x16\x9B\x59" 6418 - "\xF1\x1A\x4C\x51\x26\xFD\x79\xE2" 6419 - "\x3B\x8E\x71\x69\x6A\x91\xB6\x65" 6420 - "\x32\x09\xB8\xE4\x09\x1F\xEA\x39" 6421 - "\xCE\x20\x65\x9F\xD6\xD1\xC7\xF0" 6422 - "\x73\x50\x08\x56\x20\x9B\x94\x23" 6423 - "\x14\x39\xB7\x2B\xB1\x2D\x6D\x6F" 6424 - "\x41\x5B\xCC\xE2\x18\xAE\x62\x89" 6425 - "\x78\x8E\x67\x23\xD0\xFB\x2B\xE5" 6426 - "\x25\xC9\x48\x97\xB5\xD3\x17\xD5" 6427 - "\x6A\x9F\xA7\x48\x0C\x2B\x73\x3B" 6428 - "\x57\x08\xAE\x91\xF2\xB7\x57\x89" 6429 - "\xF4\xD0\xB0\x07\xB0\x42\x6C\xAF" 6430 - "\x98\x1A\xE7\xD1\xAC\x1E\xB5\x02" 6431 - "\xD4\x56\x42\x79\x79\x7F\x2A\x77" 6432 - "\x25\xE9\x7D\xC1\x88\x19\x2B\x49" 6433 - "\x6F\x46\x59\xAB\x56\x1F\x61\xE0" 6434 - "\x0C\x24\x9C\xC9\x5B\x63\xA9\x12" 6435 - "\xCF\x88\x96\xB6\xA8\x24\xC6\xA8" 6436 - "\x21\x85\x1A\x62\x7E\x34\xBB\xEB" 6437 - "\xBD\x02\x2A\xC7\xD8\x89\x80\xC5" 6438 - "\xB1\xBB\x60\xA5\x22\xFC\x6F\x38" 6439 - "\x02\x80\xA3\x28\x22\x75\xE1\xE9" 6440 - "\x90\xE9\xFA\x4B\x00\x10\xAC\x58" 6441 - "\x83\x70\xFF\x86\xE6\xAA\x0F\x1F" 6442 - "\x95\x63\x73\xA2\x44\xAC\xF8\xA5", 6443 - .ilen = 496, 6444 - .result = "\x05\xEC\x77\xFB\x42\xD5\x59\x20" 6445 - "\x8B\x12\x86\x69\xF0\x5B\xCF\x56" 6446 - "\x39\xAD\x34\x9F\x66\xEA\x7D\xC4" 6447 - "\x48\xD3\xBA\x0D\xB1\x18\xE3\x4A" 6448 - "\xFE\x41\x28\x5C\x27\x8E\x11\x85" 6449 - "\x6C\xF7\x5E\xC2\x55\x3C\xA0\x0B" 6450 - "\x92\x65\xE9\x70\xDB\x4F\xD6\xB9" 6451 - "\x00\xB4\x1F\xE6\x49\xFD\x44\x2F" 6452 - "\x53\x3A\x8D\x14\x98\x63\xCA\x5D" 6453 - "\xC1\xA8\x33\xA7\x0E\x91\x78\xEC" 6454 - "\x77\xDE\x42\xD5\xBC\x07\x8B\x12" 6455 - "\xE5\x4C\xF0\x5B\x22\x56\x39\x80" 6456 - "\x6B\x9F\x66\xC9\x50\xC4\xAF\x36" 6457 - "\xBA\x0D\x94\x7F\xE3\x4A\xDD\x41" 6458 - "\x28\xB3\x1A\x8E\x11\xF8\x43\xF7" 6459 - "\x5E\x21\x55\x3C\x87\x6E\x92\x65" 6460 - "\xCC\x57\xDB\xA2\x35\xB9\x00\xEB" 6461 - "\x72\xE6\x49\xD0\x44\x2F\xB6\x19" 6462 - "\x8D\x14\xFF\x46\xCA\x5D\x24\xA8" 6463 - "\x33\x9A\x6D\x91\x78\xC3\x77\xDE" 6464 - "\xA1\x08\xBC\x07\xEE\x71\xE5\x4C" 6465 - "\xD7\x5B\x22\xB5\x1C\x80\x6B\xF2" 6466 - "\x45\xC9\x50\x3B\xAF\x36\x99\x60" 6467 - "\x94\x7F\xC6\x4A\xDD\xA4\x0F\xB3" 6468 - "\x1A\xED\x74\xF8\x43\x2A\x5E\x21" 6469 - "\x88\x13\x87\x6E\xF1\x58\xCC\x57" 6470 - "\x3E\xA2\x35\x9C\x67\xEB\x72\xC5" 6471 - "\x49\xD0\xBB\x02\xB6\x19\xE0\x4B" 6472 - "\xFF\x46\x29\x5D\x24\x8F\x16\x9A" 6473 - "\x6D\xF4\x5F\xC3\xAA\x3D\xA1\x08" 6474 - "\x93\x7A\xEE\x71\xD8\x4C\xD7\xBE" 6475 - "\x01\xB5\x1C\xE7\x4E\xF2\x45\x2C" 6476 - "\x50\x3B\x82\x15\x99\x60\xCB\x52" 6477 - "\xC6\xA9\x30\xA4\x0F\x96\x79\xED" 6478 - "\x74\xDF\x43\x2A\xBD\x04\x88\x13" 6479 - "\xFA\x4D\xF1\x58\x23\x57\x3E\x81" 6480 - "\x68\x9C\x67\xCE\x51\xC5\xAC\x37" 6481 - "\xBB\x02\x95\x7C\xE0\x4B\xD2\x46" 6482 - "\x29\xB0\x1B\x8F\x16\xF9\x40\xF4" 6483 - "\x5F\x26\xAA\x3D\x84\x6F\x93\x7A" 6484 - "\xCD\x54\xD8\xA3\x0A\xBE\x01\xE8" 6485 - "\x73\xE7\x4E\xD1\x45\x2C\xB7\x1E" 6486 - "\x82\x15\xFC\x47\xCB\x52\x25\xA9" 6487 - "\x30\x9B\x62\x96\x79\xC0\x74\xDF" 6488 - "\xA6\x09\xBD\x04\xEF\x76\xFA\x4D" 6489 - "\xD4\x58\x23\x8A\x1D\x81\x68\xF3" 6490 - "\x5A\xCE\x51\x38\xAC\x37\x9E\x61" 6491 - "\x95\x7C\xC7\x4B\xD2\xA5\x0C\xB0" 6492 - "\x1B\xE2\x75\xF9\x40\x2B\x5F\x26" 6493 - "\x89\x10\x84\x6F\xF6\x59\xCD\x54" 6494 - "\x3F\xA3\x0A\x9D\x64\xE8\x73\xDA" 6495 - "\x4E\xD1\xB8\x03\xB7\x1E\xE1\x48" 6496 - "\xFC\x47\x2E\x52\x25\x8C\x17\x9B" 6497 - "\x62\xF5\x5C\xC0\xAB\x32\xA6\x09" 6498 - "\x90\x7B\xEF\x76\xD9\x4D\xD4\xBF" 6499 - "\x06\x8A\x1D\xE4\x4F\xF3\x5A\x2D" 6500 - "\x51\x38\x83\x6A\x9E\x61\xC8\x53" 6501 - "\xC7\xAE\x31\xA5\x0C\x97\x7E\xE2" 6502 - "\x75\xDC\x40\x2B\xB2\x05\x89\x10" 6503 - "\xFB\x42\xF6\x59\x20\x54\x3F\x86" 6504 - "\x69\x9D\x64\xCF\x56\xDA\xAD\x34" 6505 - "\xB8\x03\xEA\x7D\xE1\x48\xD3\x47", 6506 - .rlen = 496, 6507 - .also_non_np = 1, 6508 - .np = 3, 6509 - .tap = { 496 - 20, 4, 16 }, 6510 - }, 6511 - }; 6512 - 6513 - static const struct cipher_testvec des3_ede_ctr_enc_tv_template[] = { 6891 + static const struct cipher_testvec des3_ede_ctr_tv_template[] = { 6514 6892 { /* Generated with Crypto++ */ 6515 6893 .key = "\x9C\xD6\xF3\x9C\xB9\x5A\x67\x00" 6516 6894 "\x5A\x67\x00\x2D\xCE\xEB\x2D\xCE" ··· 6338 7076 .klen = 24, 6339 7077 .iv = "\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF" 6340 7078 "\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFD", 6341 - .input = "\x05\xEC\x77\xFB\x42\xD5\x59\x20" 7079 + .ptext = "\x05\xEC\x77\xFB\x42\xD5\x59\x20" 6342 7080 "\x8B\x12\x86\x69\xF0\x5B\xCF\x56" 6343 7081 "\x39\xAD\x34\x9F\x66\xEA\x7D\xC4" 6344 7082 "\x48\xD3\xBA\x0D\xB1\x18\xE3\x4A" ··· 6400 7138 "\xFB\x42\xF6\x59\x20\x54\x3F\x86" 6401 7139 "\x69\x9D\x64\xCF\x56\xDA\xAD\x34" 6402 7140 "\xB8\x03\xEA\x7D\xE1\x48\xD3\x47", 6403 - .ilen = 496, 6404 - .result = "\x07\xC2\x08\x20\x72\x1F\x49\xEF" 7141 + .ctext = "\x07\xC2\x08\x20\x72\x1F\x49\xEF" 6405 7142 "\x19\xCD\x6F\x32\x53\x05\x22\x15" 6406 7143 "\xA2\x85\x2B\xDB\x85\xD2\xD8\xB9" 6407 7144 "\xDD\x0D\x1B\x45\xCB\x69\x11\xD4" ··· 6462 7201 "\x46\xB9\x91\xB6\xE7\x3D\x51\x42" 6463 7202 "\xFD\x51\xB0\xC6\x2C\x63\x13\x78" 6464 7203 "\x5C\xEE\xFC\xCF\xC4\x70\x00\x34", 6465 - .rlen = 496, 7204 + .len = 496, 6466 7205 .also_non_np = 1, 6467 7206 .np = 3, 6468 7207 .tap = { 496 - 20, 4, 16 }, ··· 6473 7212 .klen = 24, 6474 7213 .iv = "\xB2\xD7\x48\xED\x06\x44\xF9\x12" 6475 7214 "\xB7\x28\x4D\x83\x24\x59\xF2\x17", 6476 - .input = "\x05\xEC\x77\xFB\x42\xD5\x59\x20" 7215 + .ptext = "\x05\xEC\x77\xFB\x42\xD5\x59\x20" 6477 7216 "\x8B\x12\x86\x69\xF0\x5B\xCF\x56" 6478 7217 "\x39\xAD\x34\x9F\x66\xEA\x7D\xC4" 6479 7218 "\x48\xD3\xBA\x0D\xB1\x18\xE3\x4A" ··· 6536 7275 "\x69\x9D\x64\xCF\x56\xDA\xAD\x34" 6537 7276 "\xB8\x03\xEA\x7D\xE1\x48\xD3\x47" 6538 7277 "\x2E\xB1\x18", 6539 - .ilen = 499, 6540 - .result = "\x23\xFF\x5C\x99\x75\xBB\x1F\xD4" 7278 + .ctext = "\x23\xFF\x5C\x99\x75\xBB\x1F\xD4" 6541 7279 "\xBC\x27\x9D\x36\x60\xA9\xC9\xF7" 6542 7280 "\x94\x9D\x1B\xFF\x8E\x95\x57\x89" 6543 7281 "\x8C\x2E\x33\x70\x43\x61\xE6\xD2" ··· 6599 7339 "\x5C\x60\x1F\x6E\xA7\xE2\xDC\xE7" 6600 7340 "\x32\x0F\x05\x2F\xF2\x4C\x95\x3B" 6601 7341 "\xF2\x79\xD9", 6602 - .rlen = 499, 6603 - .also_non_np = 1, 6604 - .np = 2, 6605 - .tap = { 499 - 16, 16 }, 6606 - }, 6607 - }; 6608 - 6609 - static const struct cipher_testvec des3_ede_ctr_dec_tv_template[] = { 6610 - { /* Generated with Crypto++ */ 6611 - .key = "\x9C\xD6\xF3\x9C\xB9\x5A\x67\x00" 6612 - "\x5A\x67\x00\x2D\xCE\xEB\x2D\xCE" 6613 - "\xEB\xB4\x51\x72\xB4\x51\x72\x1F", 6614 - .klen = 24, 6615 - .iv = "\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF" 6616 - "\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFD", 6617 - .input = "\x07\xC2\x08\x20\x72\x1F\x49\xEF" 6618 - "\x19\xCD\x6F\x32\x53\x05\x22\x15" 6619 - "\xA2\x85\x2B\xDB\x85\xD2\xD8\xB9" 6620 - "\xDD\x0D\x1B\x45\xCB\x69\x11\xD4" 6621 - "\xEA\xBE\xB2\x45\x5D\x0C\xAE\xBE" 6622 - "\xA0\xC1\x27\xAC\x65\x9F\x53\x7E" 6623 - "\xAF\xC2\x1B\xB5\xB8\x6D\x36\x0C" 6624 - "\x25\xC0\xF8\x6D\x0B\x29\x01\xDA" 6625 - "\x13\x78\xDC\x89\x12\x12\x43\xFA" 6626 - "\xF6\x12\xEF\x8D\x87\x62\x78\x83" 6627 - "\xE2\xBE\x41\x20\x4C\x6D\x35\x1B" 6628 - "\xD1\x0C\x30\xCF\xE2\xDE\x2B\x03" 6629 - "\xBF\x45\x73\xD4\xE5\x59\x95\xD1" 6630 - "\xB3\x9B\x27\x62\x97\xBD\xDE\x7F" 6631 - "\xA4\xD2\x39\x80\xAA\x50\x23\xF0" 6632 - "\x74\x88\x3D\xA8\x6A\x18\x79\x3B" 6633 - "\xC4\x96\x6C\x8D\x22\x40\x92\x6E" 6634 - "\xD6\xAD\x2A\x1F\xDE\x63\xC0\xE7" 6635 - "\x07\xF7\x2D\xF7\xB5\xF3\xF0\xCC" 6636 - "\x01\x7C\x2A\x9B\xC2\x10\xCA\xAA" 6637 - "\xFD\x2B\x3F\xC5\xF3\xF6\xFC\x9B" 6638 - "\x45\xDB\x53\xE4\x5B\xF3\xC9\x7B" 6639 - "\x8E\x52\xFF\xC8\x02\xB8\xAC\x9D" 6640 - "\xA1\x00\x39\xDA\x3D\x2D\x0E\x01" 6641 - "\x09\x7D\x8D\x5E\xBE\x53\xB9\xB0" 6642 - "\x8E\xE7\xE2\x96\x6A\xB2\x78\xEA" 6643 - "\xDE\x23\x8B\xA5\xFA\x5C\xE3\xDA" 6644 - "\xBF\x8E\x31\x6A\x55\xD1\x6A\xB2" 6645 - "\xB5\x46\x6F\xA5\xF0\xEE\xBA\x1F" 6646 - "\x9F\x98\xB0\x66\x4F\xD0\x3F\xA9" 6647 - "\xDF\x5F\x58\xC4\xF4\xFF\x75\x5C" 6648 - "\x40\x3A\x09\x7E\x6E\x1C\x97\xD4" 6649 - "\xCC\xE7\xE7\x71\xCF\x0B\x15\x08" 6650 - "\x71\xFA\x07\x97\xCD\xE6\xCA\x1D" 6651 - "\x14\x28\x0C\xCF\x99\x13\x7A\xF1" 6652 - "\xEB\xFA\xFA\x92\x07\xDE\x1D\xA1" 6653 - "\xD3\x36\x69\xFE\x51\x4D\x9F\x2E" 6654 - "\x83\x37\x4F\x1F\x48\x30\xED\x04" 6655 - "\x4D\xA4\xEF\x3A\xCA\x76\xF4\x1C" 6656 - "\x41\x8F\x63\x37\x78\x2F\x86\xA6" 6657 - "\xEF\x41\x7E\xD2\xAF\x88\xAB\x67" 6658 - "\x52\x71\xC3\x8E\xF8\x26\x93\x72" 6659 - "\xAA\xD6\x0E\xE7\x0B\x46\xB1\x3A" 6660 - "\xB4\x08\xA9\xA8\xA0\xCF\x20\x0C" 6661 - "\x52\xBC\x8B\x05\x56\xB2\xBC\x31" 6662 - "\x9B\x74\xB9\x29\x29\x96\x9A\x50" 6663 - "\xDC\x45\xDC\x1A\xEB\x0C\x64\xD4" 6664 - "\xD3\x05\x7E\x59\x55\xC3\xF4\x90" 6665 - "\xC2\xAB\xF8\x9B\x8A\xDA\xCE\xA1" 6666 - "\xC3\xF4\xAD\x77\xDD\x44\xC8\xAC" 6667 - "\xA3\xF1\xC9\xD2\x19\x5C\xB0\xCA" 6668 - "\xA2\x34\xC1\xF7\x6C\xFD\xAC\x65" 6669 - "\x32\xDC\x48\xC4\xF2\x00\x6B\x77" 6670 - "\xF1\x7D\x76\xAC\xC0\x31\x63\x2A" 6671 - "\xA5\x3A\x62\xC8\x91\xB1\x03\x65" 6672 - "\xCB\x43\xD1\x06\xDF\xC3\x67\xBC" 6673 - "\xDC\xE0\xCD\x35\xCE\x49\x65\xA0" 6674 - "\x52\x7B\xA7\x0D\x07\xA9\x1B\xB0" 6675 - "\x40\x77\x72\xC2\xEA\x0E\x3A\x78" 6676 - "\x46\xB9\x91\xB6\xE7\x3D\x51\x42" 6677 - "\xFD\x51\xB0\xC6\x2C\x63\x13\x78" 6678 - "\x5C\xEE\xFC\xCF\xC4\x70\x00\x34", 6679 - .ilen = 496, 6680 - .result = "\x05\xEC\x77\xFB\x42\xD5\x59\x20" 6681 - "\x8B\x12\x86\x69\xF0\x5B\xCF\x56" 6682 - "\x39\xAD\x34\x9F\x66\xEA\x7D\xC4" 6683 - "\x48\xD3\xBA\x0D\xB1\x18\xE3\x4A" 6684 - "\xFE\x41\x28\x5C\x27\x8E\x11\x85" 6685 - "\x6C\xF7\x5E\xC2\x55\x3C\xA0\x0B" 6686 - "\x92\x65\xE9\x70\xDB\x4F\xD6\xB9" 6687 - "\x00\xB4\x1F\xE6\x49\xFD\x44\x2F" 6688 - "\x53\x3A\x8D\x14\x98\x63\xCA\x5D" 6689 - "\xC1\xA8\x33\xA7\x0E\x91\x78\xEC" 6690 - "\x77\xDE\x42\xD5\xBC\x07\x8B\x12" 6691 - "\xE5\x4C\xF0\x5B\x22\x56\x39\x80" 6692 - "\x6B\x9F\x66\xC9\x50\xC4\xAF\x36" 6693 - "\xBA\x0D\x94\x7F\xE3\x4A\xDD\x41" 6694 - "\x28\xB3\x1A\x8E\x11\xF8\x43\xF7" 6695 - "\x5E\x21\x55\x3C\x87\x6E\x92\x65" 6696 - "\xCC\x57\xDB\xA2\x35\xB9\x00\xEB" 6697 - "\x72\xE6\x49\xD0\x44\x2F\xB6\x19" 6698 - "\x8D\x14\xFF\x46\xCA\x5D\x24\xA8" 6699 - "\x33\x9A\x6D\x91\x78\xC3\x77\xDE" 6700 - "\xA1\x08\xBC\x07\xEE\x71\xE5\x4C" 6701 - "\xD7\x5B\x22\xB5\x1C\x80\x6B\xF2" 6702 - "\x45\xC9\x50\x3B\xAF\x36\x99\x60" 6703 - "\x94\x7F\xC6\x4A\xDD\xA4\x0F\xB3" 6704 - "\x1A\xED\x74\xF8\x43\x2A\x5E\x21" 6705 - "\x88\x13\x87\x6E\xF1\x58\xCC\x57" 6706 - "\x3E\xA2\x35\x9C\x67\xEB\x72\xC5" 6707 - "\x49\xD0\xBB\x02\xB6\x19\xE0\x4B" 6708 - "\xFF\x46\x29\x5D\x24\x8F\x16\x9A" 6709 - "\x6D\xF4\x5F\xC3\xAA\x3D\xA1\x08" 6710 - "\x93\x7A\xEE\x71\xD8\x4C\xD7\xBE" 6711 - "\x01\xB5\x1C\xE7\x4E\xF2\x45\x2C" 6712 - "\x50\x3B\x82\x15\x99\x60\xCB\x52" 6713 - "\xC6\xA9\x30\xA4\x0F\x96\x79\xED" 6714 - "\x74\xDF\x43\x2A\xBD\x04\x88\x13" 6715 - "\xFA\x4D\xF1\x58\x23\x57\x3E\x81" 6716 - "\x68\x9C\x67\xCE\x51\xC5\xAC\x37" 6717 - "\xBB\x02\x95\x7C\xE0\x4B\xD2\x46" 6718 - "\x29\xB0\x1B\x8F\x16\xF9\x40\xF4" 6719 - "\x5F\x26\xAA\x3D\x84\x6F\x93\x7A" 6720 - "\xCD\x54\xD8\xA3\x0A\xBE\x01\xE8" 6721 - "\x73\xE7\x4E\xD1\x45\x2C\xB7\x1E" 6722 - "\x82\x15\xFC\x47\xCB\x52\x25\xA9" 6723 - "\x30\x9B\x62\x96\x79\xC0\x74\xDF" 6724 - "\xA6\x09\xBD\x04\xEF\x76\xFA\x4D" 6725 - "\xD4\x58\x23\x8A\x1D\x81\x68\xF3" 6726 - "\x5A\xCE\x51\x38\xAC\x37\x9E\x61" 6727 - "\x95\x7C\xC7\x4B\xD2\xA5\x0C\xB0" 6728 - "\x1B\xE2\x75\xF9\x40\x2B\x5F\x26" 6729 - "\x89\x10\x84\x6F\xF6\x59\xCD\x54" 6730 - "\x3F\xA3\x0A\x9D\x64\xE8\x73\xDA" 6731 - "\x4E\xD1\xB8\x03\xB7\x1E\xE1\x48" 6732 - "\xFC\x47\x2E\x52\x25\x8C\x17\x9B" 6733 - "\x62\xF5\x5C\xC0\xAB\x32\xA6\x09" 6734 - "\x90\x7B\xEF\x76\xD9\x4D\xD4\xBF" 6735 - "\x06\x8A\x1D\xE4\x4F\xF3\x5A\x2D" 6736 - "\x51\x38\x83\x6A\x9E\x61\xC8\x53" 6737 - "\xC7\xAE\x31\xA5\x0C\x97\x7E\xE2" 6738 - "\x75\xDC\x40\x2B\xB2\x05\x89\x10" 6739 - "\xFB\x42\xF6\x59\x20\x54\x3F\x86" 6740 - "\x69\x9D\x64\xCF\x56\xDA\xAD\x34" 6741 - "\xB8\x03\xEA\x7D\xE1\x48\xD3\x47", 6742 - .rlen = 496, 6743 - .also_non_np = 1, 6744 - .np = 3, 6745 - .tap = { 496 - 20, 4, 16 }, 6746 - }, { /* Generated with Crypto++ */ 6747 - .key = "\x9C\xD6\xF3\x9C\xB9\x5A\x67\x00" 6748 - "\x5A\x67\x00\x2D\xCE\xEB\x2D\xCE" 6749 - "\xEB\xB4\x51\x72\xB4\x51\x72\x1F", 6750 - .klen = 24, 6751 - .iv = "\xB2\xD7\x48\xED\x06\x44\xF9\x12" 6752 - "\xB7\x28\x4D\x83\x24\x59\xF2\x17", 6753 - .input = "\x23\xFF\x5C\x99\x75\xBB\x1F\xD4" 6754 - "\xBC\x27\x9D\x36\x60\xA9\xC9\xF7" 6755 - "\x94\x9D\x1B\xFF\x8E\x95\x57\x89" 6756 - "\x8C\x2E\x33\x70\x43\x61\xE6\xD2" 6757 - "\x82\x33\x63\xB6\xC4\x34\x5E\xF8" 6758 - "\x96\x07\xA7\xD2\x3B\x8E\xC9\xAA" 6759 - "\x7C\xA0\x55\x89\x2E\xE1\x85\x25" 6760 - "\x14\x04\xDA\x6B\xE0\xEE\x56\xCF" 6761 - "\x08\x2E\x69\xD4\x54\xDE\x22\x84" 6762 - "\x69\xA6\xA7\xD3\x3A\x9A\xE8\x05" 6763 - "\x63\xDB\xBF\x46\x3A\x26\x2E\x0F" 6764 - "\x58\x5C\x46\xEA\x07\x40\xDA\xE1" 6765 - "\x14\x1D\xCD\x4F\x06\xC0\xCA\x54" 6766 - "\x1E\xC9\x45\x85\x67\x7C\xC2\xB5" 6767 - "\x97\x5D\x61\x78\x2E\x46\xEC\x6A" 6768 - "\x53\xF4\xD0\xAE\xFA\xB4\x86\x29" 6769 - "\x9F\x17\x33\x24\xD8\xB9\xB2\x05" 6770 - "\x93\x88\xEA\xF7\xA0\x70\x69\x49" 6771 - "\x88\x6B\x73\x40\x41\x8D\xD9\xD9" 6772 - "\x7E\x78\xE9\xBE\x6C\x14\x22\x7A" 6773 - "\x66\xE1\xDA\xED\x10\xFF\x69\x1D" 6774 - "\xB9\xAA\xF2\x56\x72\x1B\x23\xE2" 6775 - "\x45\x54\x8B\xA3\x70\x23\xB4\x5E" 6776 - "\x8E\x96\xC9\x05\x00\xB3\xB6\xC2" 6777 - "\x2A\x02\x43\x7A\x62\xD5\xC8\xD2" 6778 - "\xC2\xD0\xE4\x78\xA1\x7B\x3E\xE8" 6779 - "\x9F\x7F\x7D\x40\x54\x30\x3B\xC0" 6780 - "\xA5\x54\xFD\xCA\x25\xEC\x44\x3E" 6781 - "\x1A\x54\x7F\x88\xD0\xE1\xFE\x71" 6782 - "\xCE\x05\x49\x89\xBA\xD6\x72\xE7" 6783 - "\xD6\x5D\x3F\xA2\xD9\xAB\xC5\x02" 6784 - "\xD6\x43\x22\xAF\xA2\xE4\x80\x85" 6785 - "\xD7\x87\xB9\xEA\x43\xDB\xC8\xEF" 6786 - "\x5C\x82\x2E\x98\x0D\x30\x41\x6B" 6787 - "\x08\x48\x8D\xF0\xF8\x60\xD7\x9D" 6788 - "\xE9\xDE\x40\xAD\x0D\xAD\x0D\x58" 6789 - "\x2A\x98\x35\xFE\xF7\xDD\x4B\x40" 6790 - "\xDE\xB0\x05\xD9\x7B\x09\x4D\xBC" 6791 - "\x42\xC0\xF1\x15\x0B\xFA\x26\x6B" 6792 - "\xC6\x12\x13\x4F\xCB\x35\xBA\x35" 6793 - "\xDD\x7A\x36\x9C\x12\x57\x55\x83" 6794 - "\x78\x58\x09\xD0\xB0\xCF\x7C\x5C" 6795 - "\x38\xCF\xBD\x79\x5B\x13\x4D\x97" 6796 - "\xC1\x85\x6F\x97\xC9\xE8\xC2\xA4" 6797 - "\x98\xE2\xBD\x77\x6B\x53\x39\x1A" 6798 - "\x28\x10\xE7\xE0\xE7\xDE\x9D\x69" 6799 - "\x78\x6F\x8E\xD2\xD9\x5D\xD2\x15" 6800 - "\x9E\xB5\x4D\x8C\xC0\x78\x22\x2F" 6801 - "\x17\x11\x2E\x99\xD7\xE3\xA4\x4F" 6802 - "\x65\xA5\x6B\x03\x2C\x35\x6F\xDA" 6803 - "\x8A\x19\x08\xE1\x08\x48\x59\x51" 6804 - "\x53\x4B\xD1\xDF\xDA\x14\x50\x5F" 6805 - "\xDF\xB5\x8C\xDF\xC6\xFD\x85\xFA" 6806 - "\xD4\xF9\x64\x45\x65\x0D\x7D\xF4" 6807 - "\xC8\xCD\x3F\x32\xAF\xDD\x30\xED" 6808 - "\x7B\xAA\xAC\xF0\xDA\x7F\xDF\x75" 6809 - "\x1C\xA4\xF1\xCB\x5E\x4F\x0B\xB4" 6810 - "\x97\x73\x28\xDE\xCF\xAF\x82\xBD" 6811 - "\xC4\xBA\xB4\x9C\x0D\x16\x77\x42" 6812 - "\x42\x39\x7C\x53\xA4\xD4\xDD\x40" 6813 - "\x5C\x60\x1F\x6E\xA7\xE2\xDC\xE7" 6814 - "\x32\x0F\x05\x2F\xF2\x4C\x95\x3B" 6815 - "\xF2\x79\xD9", 6816 - .ilen = 499, 6817 - .result = "\x05\xEC\x77\xFB\x42\xD5\x59\x20" 6818 - "\x8B\x12\x86\x69\xF0\x5B\xCF\x56" 6819 - "\x39\xAD\x34\x9F\x66\xEA\x7D\xC4" 6820 - "\x48\xD3\xBA\x0D\xB1\x18\xE3\x4A" 6821 - "\xFE\x41\x28\x5C\x27\x8E\x11\x85" 6822 - "\x6C\xF7\x5E\xC2\x55\x3C\xA0\x0B" 6823 - "\x92\x65\xE9\x70\xDB\x4F\xD6\xB9" 6824 - "\x00\xB4\x1F\xE6\x49\xFD\x44\x2F" 6825 - "\x53\x3A\x8D\x14\x98\x63\xCA\x5D" 6826 - "\xC1\xA8\x33\xA7\x0E\x91\x78\xEC" 6827 - "\x77\xDE\x42\xD5\xBC\x07\x8B\x12" 6828 - "\xE5\x4C\xF0\x5B\x22\x56\x39\x80" 6829 - "\x6B\x9F\x66\xC9\x50\xC4\xAF\x36" 6830 - "\xBA\x0D\x94\x7F\xE3\x4A\xDD\x41" 6831 - "\x28\xB3\x1A\x8E\x11\xF8\x43\xF7" 6832 - "\x5E\x21\x55\x3C\x87\x6E\x92\x65" 6833 - "\xCC\x57\xDB\xA2\x35\xB9\x00\xEB" 6834 - "\x72\xE6\x49\xD0\x44\x2F\xB6\x19" 6835 - "\x8D\x14\xFF\x46\xCA\x5D\x24\xA8" 6836 - "\x33\x9A\x6D\x91\x78\xC3\x77\xDE" 6837 - "\xA1\x08\xBC\x07\xEE\x71\xE5\x4C" 6838 - "\xD7\x5B\x22\xB5\x1C\x80\x6B\xF2" 6839 - "\x45\xC9\x50\x3B\xAF\x36\x99\x60" 6840 - "\x94\x7F\xC6\x4A\xDD\xA4\x0F\xB3" 6841 - "\x1A\xED\x74\xF8\x43\x2A\x5E\x21" 6842 - "\x88\x13\x87\x6E\xF1\x58\xCC\x57" 6843 - "\x3E\xA2\x35\x9C\x67\xEB\x72\xC5" 6844 - "\x49\xD0\xBB\x02\xB6\x19\xE0\x4B" 6845 - "\xFF\x46\x29\x5D\x24\x8F\x16\x9A" 6846 - "\x6D\xF4\x5F\xC3\xAA\x3D\xA1\x08" 6847 - "\x93\x7A\xEE\x71\xD8\x4C\xD7\xBE" 6848 - "\x01\xB5\x1C\xE7\x4E\xF2\x45\x2C" 6849 - "\x50\x3B\x82\x15\x99\x60\xCB\x52" 6850 - "\xC6\xA9\x30\xA4\x0F\x96\x79\xED" 6851 - "\x74\xDF\x43\x2A\xBD\x04\x88\x13" 6852 - "\xFA\x4D\xF1\x58\x23\x57\x3E\x81" 6853 - "\x68\x9C\x67\xCE\x51\xC5\xAC\x37" 6854 - "\xBB\x02\x95\x7C\xE0\x4B\xD2\x46" 6855 - "\x29\xB0\x1B\x8F\x16\xF9\x40\xF4" 6856 - "\x5F\x26\xAA\x3D\x84\x6F\x93\x7A" 6857 - "\xCD\x54\xD8\xA3\x0A\xBE\x01\xE8" 6858 - "\x73\xE7\x4E\xD1\x45\x2C\xB7\x1E" 6859 - "\x82\x15\xFC\x47\xCB\x52\x25\xA9" 6860 - "\x30\x9B\x62\x96\x79\xC0\x74\xDF" 6861 - "\xA6\x09\xBD\x04\xEF\x76\xFA\x4D" 6862 - "\xD4\x58\x23\x8A\x1D\x81\x68\xF3" 6863 - "\x5A\xCE\x51\x38\xAC\x37\x9E\x61" 6864 - "\x95\x7C\xC7\x4B\xD2\xA5\x0C\xB0" 6865 - "\x1B\xE2\x75\xF9\x40\x2B\x5F\x26" 6866 - "\x89\x10\x84\x6F\xF6\x59\xCD\x54" 6867 - "\x3F\xA3\x0A\x9D\x64\xE8\x73\xDA" 6868 - "\x4E\xD1\xB8\x03\xB7\x1E\xE1\x48" 6869 - "\xFC\x47\x2E\x52\x25\x8C\x17\x9B" 6870 - "\x62\xF5\x5C\xC0\xAB\x32\xA6\x09" 6871 - "\x90\x7B\xEF\x76\xD9\x4D\xD4\xBF" 6872 - "\x06\x8A\x1D\xE4\x4F\xF3\x5A\x2D" 6873 - "\x51\x38\x83\x6A\x9E\x61\xC8\x53" 6874 - "\xC7\xAE\x31\xA5\x0C\x97\x7E\xE2" 6875 - "\x75\xDC\x40\x2B\xB2\x05\x89\x10" 6876 - "\xFB\x42\xF6\x59\x20\x54\x3F\x86" 6877 - "\x69\x9D\x64\xCF\x56\xDA\xAD\x34" 6878 - "\xB8\x03\xEA\x7D\xE1\x48\xD3\x47" 6879 - "\x2E\xB1\x18", 6880 - .rlen = 499, 7342 + .len = 499, 6881 7343 .also_non_np = 1, 6882 7344 .np = 2, 6883 7345 .tap = { 499 - 16, 16 }, ··· 6609 7627 /* 6610 7628 * Blowfish test vectors. 6611 7629 */ 6612 - static const struct cipher_testvec bf_enc_tv_template[] = { 7630 + static const struct cipher_testvec bf_tv_template[] = { 6613 7631 { /* DES test vectors from OpenSSL */ 6614 7632 .key = "\x00\x00\x00\x00\x00\x00\x00\x00", 6615 7633 .klen = 8, 6616 - .input = "\x00\x00\x00\x00\x00\x00\x00\x00", 6617 - .ilen = 8, 6618 - .result = "\x4e\xf9\x97\x45\x61\x98\xdd\x78", 6619 - .rlen = 8, 7634 + .ptext = "\x00\x00\x00\x00\x00\x00\x00\x00", 7635 + .ctext = "\x4e\xf9\x97\x45\x61\x98\xdd\x78", 7636 + .len = 8, 6620 7637 }, { 6621 7638 .key = "\x1f\x1f\x1f\x1f\x0e\x0e\x0e\x0e", 6622 7639 .klen = 8, 6623 - .input = "\x01\x23\x45\x67\x89\xab\xcd\xef", 6624 - .ilen = 8, 6625 - .result = "\xa7\x90\x79\x51\x08\xea\x3c\xae", 6626 - .rlen = 8, 7640 + .ptext = "\x01\x23\x45\x67\x89\xab\xcd\xef", 7641 + .ctext = "\xa7\x90\x79\x51\x08\xea\x3c\xae", 7642 + .len = 8, 6627 7643 }, { 6628 7644 .key = "\xf0\xe1\xd2\xc3\xb4\xa5\x96\x87", 6629 7645 .klen = 8, 6630 - .input = "\xfe\xdc\xba\x98\x76\x54\x32\x10", 6631 - .ilen = 8, 6632 - .result = "\xe8\x7a\x24\x4e\x2c\xc8\x5e\x82", 6633 - .rlen = 8, 7646 + .ptext = "\xfe\xdc\xba\x98\x76\x54\x32\x10", 7647 + .ctext = "\xe8\x7a\x24\x4e\x2c\xc8\x5e\x82", 7648 + .len = 8, 6634 7649 }, { /* Vary the keylength... */ 6635 7650 .key = "\xf0\xe1\xd2\xc3\xb4\xa5\x96\x87" 6636 7651 "\x78\x69\x5a\x4b\x3c\x2d\x1e\x0f", 6637 7652 .klen = 16, 6638 - .input = "\xfe\xdc\xba\x98\x76\x54\x32\x10", 6639 - .ilen = 8, 6640 - .result = "\x93\x14\x28\x87\xee\x3b\xe1\x5c", 6641 - .rlen = 8, 7653 + .ptext = "\xfe\xdc\xba\x98\x76\x54\x32\x10", 7654 + .ctext = "\x93\x14\x28\x87\xee\x3b\xe1\x5c", 7655 + .len = 8, 6642 7656 }, { 6643 7657 .key = "\xf0\xe1\xd2\xc3\xb4\xa5\x96\x87" 6644 7658 "\x78\x69\x5a\x4b\x3c\x2d\x1e\x0f" 6645 7659 "\x00\x11\x22\x33\x44", 6646 7660 .klen = 21, 6647 - .input = "\xfe\xdc\xba\x98\x76\x54\x32\x10", 6648 - .ilen = 8, 6649 - .result = "\xe6\xf5\x1e\xd7\x9b\x9d\xb2\x1f", 6650 - .rlen = 8, 7661 + .ptext = "\xfe\xdc\xba\x98\x76\x54\x32\x10", 7662 + .ctext = "\xe6\xf5\x1e\xd7\x9b\x9d\xb2\x1f", 7663 + .len = 8, 6651 7664 }, { /* Generated with bf488 */ 6652 7665 .key = "\xf0\xe1\xd2\xc3\xb4\xa5\x96\x87" 6653 7666 "\x78\x69\x5a\x4b\x3c\x2d\x1e\x0f" ··· 6652 7675 "\x1f\x1f\x1f\x1f\x0e\x0e\x0e\x0e" 6653 7676 "\xff\xff\xff\xff\xff\xff\xff\xff", 6654 7677 .klen = 56, 6655 - .input = "\xfe\xdc\xba\x98\x76\x54\x32\x10", 6656 - .ilen = 8, 6657 - .result = "\xc0\x45\x04\x01\x2e\x4e\x1f\x53", 6658 - .rlen = 8, 7678 + .ptext = "\xfe\xdc\xba\x98\x76\x54\x32\x10", 7679 + .ctext = "\xc0\x45\x04\x01\x2e\x4e\x1f\x53", 7680 + .len = 8, 6659 7681 }, { /* Generated with Crypto++ */ 6660 7682 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 6661 7683 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" 6662 7684 "\x27\x04\xE1\x27\x04\xE1\xBE\x9B" 6663 7685 "\x78\xBE\x9B\x78\x55\x32\x0F\x55", 6664 7686 .klen = 32, 6665 - .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 7687 + .ptext = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 6666 7688 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 6667 7689 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 6668 7690 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" ··· 6724 7748 "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 6725 7749 "\xDC\x50\xE7\x7E\x15\x89\x20\xB7" 6726 7750 "\x2B\xC2\x59\xF0\x64\xFB\x92\x06", 6727 - .ilen = 504, 6728 - .result = "\x96\x87\x3D\x0C\x7B\xFB\xBD\x1F" 7751 + .ctext = "\x96\x87\x3D\x0C\x7B\xFB\xBD\x1F" 6729 7752 "\xE3\xC1\x99\x6D\x39\xD4\xC2\x7D" 6730 7753 "\xD7\x87\xA1\xF2\xDF\x51\x71\x26" 6731 7754 "\xC2\xF4\x6D\xFF\xF6\xCD\x6B\x40" ··· 6787 7812 "\x54\x59\x09\xA5\x3D\xC5\x84\x68" 6788 7813 "\x56\xEB\x36\x77\x3D\xAA\xB8\xF5" 6789 7814 "\xC9\x1A\xFB\x5D\xDE\xBB\x43\xF4", 6790 - .rlen = 504, 7815 + .len = 504, 6791 7816 .also_non_np = 1, 6792 7817 .np = 3, 6793 7818 .tap = { 504 - 10, 2, 8 }, 6794 7819 }, 6795 7820 }; 6796 7821 6797 - static const struct cipher_testvec bf_dec_tv_template[] = { 6798 - { /* DES test vectors from OpenSSL */ 6799 - .key = "\x00\x00\x00\x00\x00\x00\x00\x00", 6800 - .klen = 8, 6801 - .input = "\x4e\xf9\x97\x45\x61\x98\xdd\x78", 6802 - .ilen = 8, 6803 - .result = "\x00\x00\x00\x00\x00\x00\x00\x00", 6804 - .rlen = 8, 6805 - }, { 6806 - .key = "\x1f\x1f\x1f\x1f\x0e\x0e\x0e\x0e", 6807 - .klen = 8, 6808 - .input = "\xa7\x90\x79\x51\x08\xea\x3c\xae", 6809 - .ilen = 8, 6810 - .result = "\x01\x23\x45\x67\x89\xab\xcd\xef", 6811 - .rlen = 8, 6812 - }, { 6813 - .key = "\xf0\xe1\xd2\xc3\xb4\xa5\x96\x87", 6814 - .klen = 8, 6815 - .input = "\xe8\x7a\x24\x4e\x2c\xc8\x5e\x82", 6816 - .ilen = 8, 6817 - .result = "\xfe\xdc\xba\x98\x76\x54\x32\x10", 6818 - .rlen = 8, 6819 - }, { /* Vary the keylength... */ 6820 - .key = "\xf0\xe1\xd2\xc3\xb4\xa5\x96\x87" 6821 - "\x78\x69\x5a\x4b\x3c\x2d\x1e\x0f", 6822 - .klen = 16, 6823 - .input = "\x93\x14\x28\x87\xee\x3b\xe1\x5c", 6824 - .ilen = 8, 6825 - .result = "\xfe\xdc\xba\x98\x76\x54\x32\x10", 6826 - .rlen = 8, 6827 - }, { 6828 - .key = "\xf0\xe1\xd2\xc3\xb4\xa5\x96\x87" 6829 - "\x78\x69\x5a\x4b\x3c\x2d\x1e\x0f" 6830 - "\x00\x11\x22\x33\x44", 6831 - .klen = 21, 6832 - .input = "\xe6\xf5\x1e\xd7\x9b\x9d\xb2\x1f", 6833 - .ilen = 8, 6834 - .result = "\xfe\xdc\xba\x98\x76\x54\x32\x10", 6835 - .rlen = 8, 6836 - }, { /* Generated with bf488, using OpenSSL, Libgcrypt and Nettle */ 6837 - .key = "\xf0\xe1\xd2\xc3\xb4\xa5\x96\x87" 6838 - "\x78\x69\x5a\x4b\x3c\x2d\x1e\x0f" 6839 - "\x00\x11\x22\x33\x44\x55\x66\x77" 6840 - "\x04\x68\x91\x04\xc2\xfd\x3b\x2f" 6841 - "\x58\x40\x23\x64\x1a\xba\x61\x76" 6842 - "\x1f\x1f\x1f\x1f\x0e\x0e\x0e\x0e" 6843 - "\xff\xff\xff\xff\xff\xff\xff\xff", 6844 - .klen = 56, 6845 - .input = "\xc0\x45\x04\x01\x2e\x4e\x1f\x53", 6846 - .ilen = 8, 6847 - .result = "\xfe\xdc\xba\x98\x76\x54\x32\x10", 6848 - .rlen = 8, 6849 - }, { /* Generated with Crypto++ */ 6850 - .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 6851 - "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" 6852 - "\x27\x04\xE1\x27\x04\xE1\xBE\x9B" 6853 - "\x78\xBE\x9B\x78\x55\x32\x0F\x55", 6854 - .klen = 32, 6855 - .input = "\x96\x87\x3D\x0C\x7B\xFB\xBD\x1F" 6856 - "\xE3\xC1\x99\x6D\x39\xD4\xC2\x7D" 6857 - "\xD7\x87\xA1\xF2\xDF\x51\x71\x26" 6858 - "\xC2\xF4\x6D\xFF\xF6\xCD\x6B\x40" 6859 - "\xE1\xB3\xBF\xD4\x38\x2B\xC8\x3B" 6860 - "\xD3\xB2\xD4\x61\xC7\x9F\x06\xE9" 6861 - "\xCD\xF3\x88\x39\x39\x7A\xDF\x19" 6862 - "\xE8\x03\x2A\x0B\x9E\xA0\x2B\x86" 6863 - "\x31\xF8\x9D\xB1\xEE\x78\x9D\xB5" 6864 - "\xCD\x8B\x7C\x2E\xF5\xA2\x2D\x5D" 6865 - "\x6E\x66\xAF\x38\x6C\xD3\x13\xED" 6866 - "\x14\xEA\x5D\xD0\x17\x77\x0F\x4A" 6867 - "\x50\xF2\xD0\x0F\xC8\xF7\x1E\x7B" 6868 - "\x9D\x5B\x54\x65\x4F\x16\x8A\x97" 6869 - "\xF3\xF6\xD4\xAA\x87\x36\x77\x72" 6870 - "\x99\x4A\xB5\x5E\x88\xC3\xCD\x7D" 6871 - "\x1D\x97\xF9\x11\xBD\xE0\x1F\x1F" 6872 - "\x96\x3E\x4B\x22\xF4\xC0\xE6\xB8" 6873 - "\x47\x82\x98\x23\x33\x36\xBC\x1B" 6874 - "\x36\xE7\xF6\xCF\x97\x37\x16\xC0" 6875 - "\x87\x31\x8B\xB0\xDB\x19\x42\xA5" 6876 - "\x1F\x90\x7E\x66\x34\xDD\x5E\xE9" 6877 - "\x4F\xB2\x2B\x9A\xDE\xB3\x5D\x71" 6878 - "\x4D\x68\xF0\xDC\xA6\xEA\xE3\x9B" 6879 - "\x60\x00\x55\x57\x06\x8B\xD5\xB3" 6880 - "\x86\x30\x78\xDA\x33\x9A\x9D\xCC" 6881 - "\xBA\x0B\x81\x06\x77\x43\xC7\xC9" 6882 - "\xDB\x37\x60\x11\x45\x59\x6D\x2D" 6883 - "\x90\x3D\x65\x3E\xD0\x13\xC6\x3C" 6884 - "\x0E\x78\x7D\x9A\x00\xD6\x2F\x0B" 6885 - "\x3B\x53\x19\x1E\xA8\x9B\x11\xD9" 6886 - "\x98\xE4\x7F\xC3\x6E\x51\x24\x70" 6887 - "\x9F\x04\x9C\xC2\x9E\x44\x84\xE3" 6888 - "\xE0\x8A\x44\xA2\x5C\x94\x74\x34" 6889 - "\x37\x52\x7C\x03\xE8\x8E\x97\xE1" 6890 - "\x5B\x5C\x0E\xB0\x70\xFE\x54\x3F" 6891 - "\xD8\x65\xA9\xC5\xCD\xEC\xF4\x45" 6892 - "\x55\xC5\xA7\xA3\x19\x80\x28\x51" 6893 - "\xBE\x64\x4A\xC1\xD4\xE1\xBE\xEB" 6894 - "\x73\x4C\xB6\xF9\x5F\x6D\x82\xBC" 6895 - "\x3E\x42\x14\x49\x88\x51\xBF\x68" 6896 - "\x45\x75\x27\x1B\x0A\x72\xED\xAF" 6897 - "\xDA\xC4\x4D\x67\x0D\xEE\x75\xE3" 6898 - "\x34\xDD\x91\x19\x42\x3A\xCB\xDA" 6899 - "\x38\xFA\x3C\x93\x62\xF2\xE3\x81" 6900 - "\xB3\xE4\xBB\xF6\x0D\x0B\x1D\x09" 6901 - "\x9C\x52\x0D\x50\x63\xA4\xB2\xD2" 6902 - "\x82\xA0\x23\x3F\x1F\xB6\xED\x6E" 6903 - "\xC2\x9C\x1C\xD0\x9A\x40\xB6\xFC" 6904 - "\x36\x56\x6E\x85\x73\xD7\x52\xBA" 6905 - "\x35\x5E\x32\x89\x5D\x42\xF5\x36" 6906 - "\x52\x8D\x46\x7D\xC8\x71\xAD\x33" 6907 - "\xE1\xAF\x6A\xA8\xEC\xBA\x1C\xDC" 6908 - "\xFE\x88\xE6\x16\xE4\xC8\x13\x00" 6909 - "\x3C\xDA\x59\x32\x38\x19\xD5\xEB" 6910 - "\xB6\x7F\x78\x45\x1B\x8E\x07\x8C" 6911 - "\x66\x52\x75\xFF\xAF\xCE\x2D\x2B" 6912 - "\x22\x29\xCA\xB3\x5F\x7F\xE3\x29" 6913 - "\xB2\xB8\x9D\xEB\x16\xC8\xC5\x1D" 6914 - "\xC9\x0D\x59\x82\x27\x57\x9D\x42" 6915 - "\x54\x59\x09\xA5\x3D\xC5\x84\x68" 6916 - "\x56\xEB\x36\x77\x3D\xAA\xB8\xF5" 6917 - "\xC9\x1A\xFB\x5D\xDE\xBB\x43\xF4", 6918 - .ilen = 504, 6919 - .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 6920 - "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 6921 - "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 6922 - "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" 6923 - "\x1E\x92\x29\xC0\x34\xCB\x62\xF9" 6924 - "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48" 6925 - "\xDF\x76\x0D\x81\x18\xAF\x23\xBA" 6926 - "\x51\xE8\x5C\xF3\x8A\x21\x95\x2C" 6927 - "\xC3\x37\xCE\x65\xFC\x70\x07\x9E" 6928 - "\x12\xA9\x40\xD7\x4B\xE2\x79\x10" 6929 - "\x84\x1B\xB2\x26\xBD\x54\xEB\x5F" 6930 - "\xF6\x8D\x01\x98\x2F\xC6\x3A\xD1" 6931 - "\x68\xFF\x73\x0A\xA1\x15\xAC\x43" 6932 - "\xDA\x4E\xE5\x7C\x13\x87\x1E\xB5" 6933 - "\x29\xC0\x57\xEE\x62\xF9\x90\x04" 6934 - "\x9B\x32\xC9\x3D\xD4\x6B\x02\x76" 6935 - "\x0D\xA4\x18\xAF\x46\xDD\x51\xE8" 6936 - "\x7F\x16\x8A\x21\xB8\x2C\xC3\x5A" 6937 - "\xF1\x65\xFC\x93\x07\x9E\x35\xCC" 6938 - "\x40\xD7\x6E\x05\x79\x10\xA7\x1B" 6939 - "\xB2\x49\xE0\x54\xEB\x82\x19\x8D" 6940 - "\x24\xBB\x2F\xC6\x5D\xF4\x68\xFF" 6941 - "\x96\x0A\xA1\x38\xCF\x43\xDA\x71" 6942 - "\x08\x7C\x13\xAA\x1E\xB5\x4C\xE3" 6943 - "\x57\xEE\x85\x1C\x90\x27\xBE\x32" 6944 - "\xC9\x60\xF7\x6B\x02\x99\x0D\xA4" 6945 - "\x3B\xD2\x46\xDD\x74\x0B\x7F\x16" 6946 - "\xAD\x21\xB8\x4F\xE6\x5A\xF1\x88" 6947 - "\x1F\x93\x2A\xC1\x35\xCC\x63\xFA" 6948 - "\x6E\x05\x9C\x10\xA7\x3E\xD5\x49" 6949 - "\xE0\x77\x0E\x82\x19\xB0\x24\xBB" 6950 - "\x52\xE9\x5D\xF4\x8B\x22\x96\x2D" 6951 - "\xC4\x38\xCF\x66\xFD\x71\x08\x9F" 6952 - "\x13\xAA\x41\xD8\x4C\xE3\x7A\x11" 6953 - "\x85\x1C\xB3\x27\xBE\x55\xEC\x60" 6954 - "\xF7\x8E\x02\x99\x30\xC7\x3B\xD2" 6955 - "\x69\x00\x74\x0B\xA2\x16\xAD\x44" 6956 - "\xDB\x4F\xE6\x7D\x14\x88\x1F\xB6" 6957 - "\x2A\xC1\x58\xEF\x63\xFA\x91\x05" 6958 - "\x9C\x33\xCA\x3E\xD5\x6C\x03\x77" 6959 - "\x0E\xA5\x19\xB0\x47\xDE\x52\xE9" 6960 - "\x80\x17\x8B\x22\xB9\x2D\xC4\x5B" 6961 - "\xF2\x66\xFD\x94\x08\x9F\x36\xCD" 6962 - "\x41\xD8\x6F\x06\x7A\x11\xA8\x1C" 6963 - "\xB3\x4A\xE1\x55\xEC\x83\x1A\x8E" 6964 - "\x25\xBC\x30\xC7\x5E\xF5\x69\x00" 6965 - "\x97\x0B\xA2\x39\xD0\x44\xDB\x72" 6966 - "\x09\x7D\x14\xAB\x1F\xB6\x4D\xE4" 6967 - "\x58\xEF\x86\x1D\x91\x28\xBF\x33" 6968 - "\xCA\x61\xF8\x6C\x03\x9A\x0E\xA5" 6969 - "\x3C\xD3\x47\xDE\x75\x0C\x80\x17" 6970 - "\xAE\x22\xB9\x50\xE7\x5B\xF2\x89" 6971 - "\x20\x94\x2B\xC2\x36\xCD\x64\xFB" 6972 - "\x6F\x06\x9D\x11\xA8\x3F\xD6\x4A" 6973 - "\xE1\x78\x0F\x83\x1A\xB1\x25\xBC" 6974 - "\x53\xEA\x5E\xF5\x8C\x00\x97\x2E" 6975 - "\xC5\x39\xD0\x67\xFE\x72\x09\xA0" 6976 - "\x14\xAB\x42\xD9\x4D\xE4\x7B\x12" 6977 - "\x86\x1D\xB4\x28\xBF\x56\xED\x61" 6978 - "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 6979 - "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 6980 - "\xDC\x50\xE7\x7E\x15\x89\x20\xB7" 6981 - "\x2B\xC2\x59\xF0\x64\xFB\x92\x06", 6982 - .rlen = 504, 6983 - .also_non_np = 1, 6984 - .np = 3, 6985 - .tap = { 504 - 10, 2, 8 }, 6986 - }, 6987 - }; 6988 - 6989 - static const struct cipher_testvec bf_cbc_enc_tv_template[] = { 7822 + static const struct cipher_testvec bf_cbc_tv_template[] = { 6990 7823 { /* From OpenSSL */ 6991 7824 .key = "\x01\x23\x45\x67\x89\xab\xcd\xef" 6992 7825 "\xf0\xe1\xd2\xc3\xb4\xa5\x96\x87", 6993 7826 .klen = 16, 6994 7827 .iv = "\xfe\xdc\xba\x98\x76\x54\x32\x10", 6995 - .input = "\x37\x36\x35\x34\x33\x32\x31\x20" 7828 + .ptext = "\x37\x36\x35\x34\x33\x32\x31\x20" 6996 7829 "\x4e\x6f\x77\x20\x69\x73\x20\x74" 6997 7830 "\x68\x65\x20\x74\x69\x6d\x65\x20" 6998 7831 "\x66\x6f\x72\x20\x00\x00\x00\x00", 6999 - .ilen = 32, 7000 - .result = "\x6b\x77\xb4\xd6\x30\x06\xde\xe6" 7832 + .ctext = "\x6b\x77\xb4\xd6\x30\x06\xde\xe6" 7001 7833 "\x05\xb1\x56\xe2\x74\x03\x97\x93" 7002 7834 "\x58\xde\xb9\xe7\x15\x46\x16\xd9" 7003 7835 "\x59\xf1\x65\x2b\xd5\xff\x92\xcc", 7004 - .rlen = 32, 7836 + .len = 32, 7005 7837 }, { /* Generated with Crypto++ */ 7006 7838 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 7007 7839 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" ··· 6816 8034 "\x78\xBE\x9B\x78\x55\x32\x0F\x55", 6817 8035 .klen = 32, 6818 8036 .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F", 6819 - .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 8037 + .ptext = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 6820 8038 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 6821 8039 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 6822 8040 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" ··· 6879 8097 "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 6880 8098 "\xDC\x50\xE7\x7E\x15\x89\x20\xB7" 6881 8099 "\x2B\xC2\x59\xF0\x64\xFB\x92\x06", 6882 - .ilen = 504, 6883 - .result = "\xB4\xFE\xA5\xBB\x3D\x2C\x27\x06" 8100 + .ctext = "\xB4\xFE\xA5\xBB\x3D\x2C\x27\x06" 6884 8101 "\x06\x2B\x3A\x92\xB2\xF5\x5E\x62" 6885 8102 "\x84\xCD\xF7\x66\x7E\x41\x6C\x8E" 6886 8103 "\x1B\xD9\x02\xB6\x48\xB0\x87\x25" ··· 6942 8161 "\xCD\xE9\xD5\x0C\xFE\x12\x39\xA9" 6943 8162 "\x93\x9B\xEE\xB5\x97\x41\xD2\xA0" 6944 8163 "\xB4\x98\xD8\x6B\x74\xE7\x65\xF4", 6945 - .rlen = 504, 8164 + .len = 504, 6946 8165 .also_non_np = 1, 6947 8166 .np = 3, 6948 8167 .tap = { 504 - 10, 2, 8 }, 6949 8168 }, 6950 8169 }; 6951 8170 6952 - static const struct cipher_testvec bf_cbc_dec_tv_template[] = { 6953 - { /* From OpenSSL */ 6954 - .key = "\x01\x23\x45\x67\x89\xab\xcd\xef" 6955 - "\xf0\xe1\xd2\xc3\xb4\xa5\x96\x87", 6956 - .klen = 16, 6957 - .iv = "\xfe\xdc\xba\x98\x76\x54\x32\x10", 6958 - .input = "\x6b\x77\xb4\xd6\x30\x06\xde\xe6" 6959 - "\x05\xb1\x56\xe2\x74\x03\x97\x93" 6960 - "\x58\xde\xb9\xe7\x15\x46\x16\xd9" 6961 - "\x59\xf1\x65\x2b\xd5\xff\x92\xcc", 6962 - .ilen = 32, 6963 - .result = "\x37\x36\x35\x34\x33\x32\x31\x20" 6964 - "\x4e\x6f\x77\x20\x69\x73\x20\x74" 6965 - "\x68\x65\x20\x74\x69\x6d\x65\x20" 6966 - "\x66\x6f\x72\x20\x00\x00\x00\x00", 6967 - .rlen = 32, 6968 - }, { /* Generated with Crypto++ */ 6969 - .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 6970 - "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" 6971 - "\x27\x04\xE1\x27\x04\xE1\xBE\x9B" 6972 - "\x78\xBE\x9B\x78\x55\x32\x0F\x55", 6973 - .klen = 32, 6974 - .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F", 6975 - .input = "\xB4\xFE\xA5\xBB\x3D\x2C\x27\x06" 6976 - "\x06\x2B\x3A\x92\xB2\xF5\x5E\x62" 6977 - "\x84\xCD\xF7\x66\x7E\x41\x6C\x8E" 6978 - "\x1B\xD9\x02\xB6\x48\xB0\x87\x25" 6979 - "\x01\x9C\x93\x63\x51\x60\x82\xD2" 6980 - "\x4D\xE5\xC2\xB7\xAE\x60\xD8\xAD" 6981 - "\x9F\xAB\x6C\xFA\x20\x05\xDA\x6F" 6982 - "\x1F\xD1\xD8\x36\x0F\xB5\x16\x69" 6983 - "\x3C\xAF\xB3\x30\x18\x33\xE6\xB5" 6984 - "\x43\x29\x9D\x94\xF4\x2F\x0A\x65" 6985 - "\x40\xB2\xB2\xB2\x42\x89\xEE\x8A" 6986 - "\x60\xD3\x52\xA8\xED\x91\xDF\xE1" 6987 - "\x91\x73\x7C\x28\xA1\x14\xC3\x4C" 6988 - "\x82\x72\x4B\x7D\x7D\x32\xD5\x19" 6989 - "\xE8\xB8\x6B\x30\x21\x09\x0E\x27" 6990 - "\x10\x9D\x2D\x3A\x6A\x4B\x7B\xE6" 6991 - "\x8D\x4E\x02\x32\xFF\x7F\x8E\x13" 6992 - "\xB0\x96\xF4\xC2\xA1\x60\x8A\x69" 6993 - "\xEF\x0F\x86\xD0\x25\x13\x1A\x7C" 6994 - "\x6E\xF0\x41\xA3\xFB\xB3\xAB\x40" 6995 - "\x7D\x19\xA0\x11\x4F\x3E\x1D\x43" 6996 - "\x65\xFE\x15\x40\xD0\x62\x41\x02" 6997 - "\xEA\x0C\x7A\xC3\x84\xEE\xB0\xBE" 6998 - "\xBE\xC8\x57\x51\xCD\x4F\xAD\x5C" 6999 - "\xCC\x79\xBA\x0D\x85\x3A\xED\x6B" 7000 - "\xAC\x6B\xA3\x4D\xBC\xE8\x02\x6A" 7001 - "\xC2\x6D\xBD\x5E\x89\x95\x86\x43" 7002 - "\x2C\x17\x4B\xC6\x40\xA2\xBD\x24" 7003 - "\x04\xF0\x86\x08\x78\x18\x42\xE0" 7004 - "\x39\x1B\x22\x9E\x89\x4C\x04\x6B" 7005 - "\x65\xC5\xB6\x0E\xF6\x63\xFC\xD7" 7006 - "\xAE\x9E\x87\x13\xCC\xD3\x1A\xEC" 7007 - "\xF0\x51\xCC\x93\x68\xFC\xE9\x19" 7008 - "\x7C\x4E\x9B\xCC\x17\xAD\xD2\xFC" 7009 - "\x97\x18\x92\xFF\x15\x11\xCE\xED" 7010 - "\x04\x41\x05\xA3\x92\xFF\x3B\xE6" 7011 - "\xB6\x8C\x90\xC6\xCD\x15\xA0\x04" 7012 - "\x25\x8B\x5D\x5B\x5F\xDB\xAE\x68" 7013 - "\xEF\xB3\x61\x18\xDB\x83\x9B\x39" 7014 - "\xCA\x82\xD1\x88\xF0\xA2\x5C\x02" 7015 - "\x87\xBD\x8D\x8F\xBB\x62\xF0\x35" 7016 - "\x75\x6F\x06\x81\x0A\x97\x4D\xF0" 7017 - "\x43\x12\x73\x77\xDB\x91\x83\x5B" 7018 - "\xE7\x3A\xA6\x07\x7B\xBF\x2C\x50" 7019 - "\x94\xDE\x7B\x65\xDA\x1C\xF1\x9F" 7020 - "\x7E\x12\x40\xB2\x3E\x19\x23\xF1" 7021 - "\x7C\x1B\x5F\xA8\xF3\xAC\x63\x87" 7022 - "\xEB\x3E\x0C\xBE\xA3\x63\x97\x88" 7023 - "\x8D\x27\xC6\x2A\xF8\xF2\x67\x9A" 7024 - "\x0D\x14\x16\x2B\x6F\xCB\xD4\x76" 7025 - "\x14\x48\x2E\xDE\x2A\x44\x5E\x45" 7026 - "\xF1\x97\x82\xEF\xB7\xAE\xED\x3A" 7027 - "\xED\x73\xD3\x79\xF7\x38\x1D\xD0" 7028 - "\xC5\xF8\x69\x83\x28\x84\x87\x56" 7029 - "\x3F\xAE\x81\x04\x79\x1F\xD1\x09" 7030 - "\xC5\xE5\x05\x0D\x64\x16\xCE\x42" 7031 - "\xC5\xF8\xDB\x57\x89\x33\x22\xFC" 7032 - "\xB4\xD7\x94\xB9\xF3\xCC\x02\x90" 7033 - "\x02\xBA\x55\x1E\x24\x3E\x02\x1D" 7034 - "\xC6\xCD\x8F\xD9\xBD\xED\xB0\x51" 7035 - "\xCD\xE9\xD5\x0C\xFE\x12\x39\xA9" 7036 - "\x93\x9B\xEE\xB5\x97\x41\xD2\xA0" 7037 - "\xB4\x98\xD8\x6B\x74\xE7\x65\xF4", 7038 - .ilen = 504, 7039 - .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 7040 - "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 7041 - "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 7042 - "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" 7043 - "\x1E\x92\x29\xC0\x34\xCB\x62\xF9" 7044 - "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48" 7045 - "\xDF\x76\x0D\x81\x18\xAF\x23\xBA" 7046 - "\x51\xE8\x5C\xF3\x8A\x21\x95\x2C" 7047 - "\xC3\x37\xCE\x65\xFC\x70\x07\x9E" 7048 - "\x12\xA9\x40\xD7\x4B\xE2\x79\x10" 7049 - "\x84\x1B\xB2\x26\xBD\x54\xEB\x5F" 7050 - "\xF6\x8D\x01\x98\x2F\xC6\x3A\xD1" 7051 - "\x68\xFF\x73\x0A\xA1\x15\xAC\x43" 7052 - "\xDA\x4E\xE5\x7C\x13\x87\x1E\xB5" 7053 - "\x29\xC0\x57\xEE\x62\xF9\x90\x04" 7054 - "\x9B\x32\xC9\x3D\xD4\x6B\x02\x76" 7055 - "\x0D\xA4\x18\xAF\x46\xDD\x51\xE8" 7056 - "\x7F\x16\x8A\x21\xB8\x2C\xC3\x5A" 7057 - "\xF1\x65\xFC\x93\x07\x9E\x35\xCC" 7058 - "\x40\xD7\x6E\x05\x79\x10\xA7\x1B" 7059 - "\xB2\x49\xE0\x54\xEB\x82\x19\x8D" 7060 - "\x24\xBB\x2F\xC6\x5D\xF4\x68\xFF" 7061 - "\x96\x0A\xA1\x38\xCF\x43\xDA\x71" 7062 - "\x08\x7C\x13\xAA\x1E\xB5\x4C\xE3" 7063 - "\x57\xEE\x85\x1C\x90\x27\xBE\x32" 7064 - "\xC9\x60\xF7\x6B\x02\x99\x0D\xA4" 7065 - "\x3B\xD2\x46\xDD\x74\x0B\x7F\x16" 7066 - "\xAD\x21\xB8\x4F\xE6\x5A\xF1\x88" 7067 - "\x1F\x93\x2A\xC1\x35\xCC\x63\xFA" 7068 - "\x6E\x05\x9C\x10\xA7\x3E\xD5\x49" 7069 - "\xE0\x77\x0E\x82\x19\xB0\x24\xBB" 7070 - "\x52\xE9\x5D\xF4\x8B\x22\x96\x2D" 7071 - "\xC4\x38\xCF\x66\xFD\x71\x08\x9F" 7072 - "\x13\xAA\x41\xD8\x4C\xE3\x7A\x11" 7073 - "\x85\x1C\xB3\x27\xBE\x55\xEC\x60" 7074 - "\xF7\x8E\x02\x99\x30\xC7\x3B\xD2" 7075 - "\x69\x00\x74\x0B\xA2\x16\xAD\x44" 7076 - "\xDB\x4F\xE6\x7D\x14\x88\x1F\xB6" 7077 - "\x2A\xC1\x58\xEF\x63\xFA\x91\x05" 7078 - "\x9C\x33\xCA\x3E\xD5\x6C\x03\x77" 7079 - "\x0E\xA5\x19\xB0\x47\xDE\x52\xE9" 7080 - "\x80\x17\x8B\x22\xB9\x2D\xC4\x5B" 7081 - "\xF2\x66\xFD\x94\x08\x9F\x36\xCD" 7082 - "\x41\xD8\x6F\x06\x7A\x11\xA8\x1C" 7083 - "\xB3\x4A\xE1\x55\xEC\x83\x1A\x8E" 7084 - "\x25\xBC\x30\xC7\x5E\xF5\x69\x00" 7085 - "\x97\x0B\xA2\x39\xD0\x44\xDB\x72" 7086 - "\x09\x7D\x14\xAB\x1F\xB6\x4D\xE4" 7087 - "\x58\xEF\x86\x1D\x91\x28\xBF\x33" 7088 - "\xCA\x61\xF8\x6C\x03\x9A\x0E\xA5" 7089 - "\x3C\xD3\x47\xDE\x75\x0C\x80\x17" 7090 - "\xAE\x22\xB9\x50\xE7\x5B\xF2\x89" 7091 - "\x20\x94\x2B\xC2\x36\xCD\x64\xFB" 7092 - "\x6F\x06\x9D\x11\xA8\x3F\xD6\x4A" 7093 - "\xE1\x78\x0F\x83\x1A\xB1\x25\xBC" 7094 - "\x53\xEA\x5E\xF5\x8C\x00\x97\x2E" 7095 - "\xC5\x39\xD0\x67\xFE\x72\x09\xA0" 7096 - "\x14\xAB\x42\xD9\x4D\xE4\x7B\x12" 7097 - "\x86\x1D\xB4\x28\xBF\x56\xED\x61" 7098 - "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 7099 - "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 7100 - "\xDC\x50\xE7\x7E\x15\x89\x20\xB7" 7101 - "\x2B\xC2\x59\xF0\x64\xFB\x92\x06", 7102 - .rlen = 504, 7103 - .also_non_np = 1, 7104 - .np = 3, 7105 - .tap = { 504 - 10, 2, 8 }, 7106 - }, 7107 - }; 7108 - 7109 - static const struct cipher_testvec bf_ctr_enc_tv_template[] = { 8171 + static const struct cipher_testvec bf_ctr_tv_template[] = { 7110 8172 { /* Generated with Crypto++ */ 7111 8173 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 7112 8174 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" ··· 6957 8333 "\x78\xBE\x9B\x78\x55\x32\x0F\x55", 6958 8334 .klen = 32, 6959 8335 .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F", 6960 - .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 8336 + .ptext = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 6961 8337 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 6962 8338 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 6963 8339 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" ··· 7020 8396 "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 7021 8397 "\xDC\x50\xE7\x7E\x15\x89\x20\xB7" 7022 8398 "\x2B\xC2\x59\xF0\x64\xFB\x92\x06", 7023 - .ilen = 504, 7024 - .result = "\xC7\xA3\xDF\xB9\x05\xF4\x9E\x8D" 8399 + .ctext = "\xC7\xA3\xDF\xB9\x05\xF4\x9E\x8D" 7025 8400 "\x9E\xDF\x38\x18\x83\x07\xEF\xC1" 7026 8401 "\x93\x3C\xAA\xAA\xFE\x06\x42\xCC" 7027 8402 "\x0D\x70\x86\x5A\x44\xAD\x85\x17" ··· 7083 8460 "\x64\xBB\x15\xB8\x56\xCF\xEE\xE5" 7084 8461 "\x32\x44\x96\x1C\xD8\xEB\x95\xD2" 7085 8462 "\xF3\x71\xEF\xEB\x4E\xBB\x4D\x29", 7086 - .rlen = 504, 8463 + .len = 504, 7087 8464 }, { /* Generated with Crypto++ */ 7088 8465 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 7089 8466 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" ··· 7091 8468 "\x78\xBE\x9B\x78\x55\x32\x0F\x55", 7092 8469 .klen = 32, 7093 8470 .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F", 7094 - .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 8471 + .ptext = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 7095 8472 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 7096 8473 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 7097 8474 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" ··· 7154 8531 "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 7155 8532 "\xDC\x50\xE7\x7E\x15\x89\x20\xB7" 7156 8533 "\x2B\xC2\x59\xF0\x64\xFB\x92", 7157 - .ilen = 503, 7158 - .result = "\xC7\xA3\xDF\xB9\x05\xF4\x9E\x8D" 8534 + .ctext = "\xC7\xA3\xDF\xB9\x05\xF4\x9E\x8D" 7159 8535 "\x9E\xDF\x38\x18\x83\x07\xEF\xC1" 7160 8536 "\x93\x3C\xAA\xAA\xFE\x06\x42\xCC" 7161 8537 "\x0D\x70\x86\x5A\x44\xAD\x85\x17" ··· 7217 8595 "\x64\xBB\x15\xB8\x56\xCF\xEE\xE5" 7218 8596 "\x32\x44\x96\x1C\xD8\xEB\x95\xD2" 7219 8597 "\xF3\x71\xEF\xEB\x4E\xBB\x4D", 7220 - .rlen = 503, 8598 + .len = 503, 7221 8599 .also_non_np = 1, 7222 8600 .np = 2, 7223 8601 .tap = { 503 - 8, 8 }, ··· 7228 8606 "\x78\xBE\x9B\x78\x55\x32\x0F\x55", 7229 8607 .klen = 32, 7230 8608 .iv = "\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFD", 7231 - .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 8609 + .ptext = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 7232 8610 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 7233 8611 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 7234 8612 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" ··· 7291 8669 "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 7292 8670 "\xDC\x50\xE7\x7E\x15\x89\x20\xB7" 7293 8671 "\x2B\xC2\x59\xF0\x64\xFB\x92\x06", 7294 - .ilen = 504, 7295 - .result = "\x5F\x58\x6E\x60\x51\x6E\xDC\x3D" 8672 + .ctext = "\x5F\x58\x6E\x60\x51\x6E\xDC\x3D" 7296 8673 "\xD1\xBB\xF7\xB7\xFD\x04\x44\x82" 7297 8674 "\xDC\x9F\x4B\x02\xF1\xD2\x5A\x6F" 7298 8675 "\x25\xF9\x27\x21\xF2\xD2\x9A\x01" ··· 7354 8733 "\xB5\x77\xBA\x1C\xEE\x71\xFA\xB0" 7355 8734 "\x16\x4C\x18\x6B\xF2\x69\xA0\x07" 7356 8735 "\xEF\xBE\xEC\x69\xAC\xA8\x63\x9E", 7357 - .rlen = 504, 7358 - }, 7359 - }; 7360 - 7361 - static const struct cipher_testvec bf_ctr_dec_tv_template[] = { 7362 - { /* Generated with Crypto++ */ 7363 - .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 7364 - "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" 7365 - "\x27\x04\xE1\x27\x04\xE1\xBE\x9B" 7366 - "\x78\xBE\x9B\x78\x55\x32\x0F\x55", 7367 - .klen = 32, 7368 - .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F", 7369 - .input = "\xC7\xA3\xDF\xB9\x05\xF4\x9E\x8D" 7370 - "\x9E\xDF\x38\x18\x83\x07\xEF\xC1" 7371 - "\x93\x3C\xAA\xAA\xFE\x06\x42\xCC" 7372 - "\x0D\x70\x86\x5A\x44\xAD\x85\x17" 7373 - "\xE4\x1F\x5E\xA5\x89\xAC\x32\xBC" 7374 - "\x3D\xA7\xE9\x0A\x5C\x70\x4D\xDE" 7375 - "\x99\x38\x07\xCA\x1D\x21\xC1\x11" 7376 - "\x97\xEB\x98\x75\xC4\x73\x45\x83" 7377 - "\x46\x1C\x9C\x91\x87\xC1\xA0\x56" 7378 - "\x98\xA1\x8B\xDB\x22\x76\xBD\x62" 7379 - "\xA4\xBC\xE8\x86\xDA\xD2\x51\x13" 7380 - "\x13\xD2\x96\x68\x69\x10\x67\x0C" 7381 - "\xD0\x17\x25\x7C\xB2\xAE\x4F\x93" 7382 - "\xA6\x82\x20\xCF\x0F\xA6\x47\x79" 7383 - "\x88\x09\x40\x59\xBD\x12\x64\xB5" 7384 - "\x19\x38\x0D\xFF\x86\xD9\x42\x20" 7385 - "\x81\x0D\x96\x99\xAF\x22\x1F\x94" 7386 - "\x5C\x6E\xEC\xEA\xA3\x39\xCB\x09" 7387 - "\x43\x19\x7F\xD0\xBB\x10\xC2\x49" 7388 - "\xF7\xE9\xF2\xEE\xBF\xF7\xF8\xB3" 7389 - "\x0E\x1A\xF1\x8D\x70\x82\x0C\x04" 7390 - "\xFD\x29\x1A\xAC\xC0\x92\x48\x34" 7391 - "\x6A\xE3\x1D\x4F\xFC\x1C\x72\x6A" 7392 - "\x57\xCB\xAD\xD0\x98\xAB\xB1\x01" 7393 - "\x03\x6A\x45\xDD\x07\x71\x5F\x5B" 7394 - "\xB5\x4A\xE4\xE5\xB9\xB9\xBC\xAC" 7395 - "\x44\xF7\x41\xA4\x5F\x2E\xE9\x28" 7396 - "\xE3\x05\xD2\x94\x78\x4C\x33\x1B" 7397 - "\xBD\xC1\x6E\x51\xD9\xAD\xD9\x86" 7398 - "\x15\x4A\x78\xAE\x7B\xAD\x3B\xBC" 7399 - "\x2F\xE0\x0E\xC5\x7B\x54\x97\x5F" 7400 - "\x60\x51\x14\x65\xF9\x91\xE9\xDA" 7401 - "\x9A\xBC\xFC\x19\x29\x67\xAA\x63" 7402 - "\x5E\xF2\x48\x88\xEB\x79\xE1\xE4" 7403 - "\xF7\xF6\x4C\xA9\xE2\x8C\x3B\xE0" 7404 - "\xED\x52\xAE\x90\x8F\x5B\x98\x34" 7405 - "\x29\x94\x34\x7F\xF9\x6C\x1E\xB6" 7406 - "\xA4\xE7\x2D\x06\x54\x9D\xC3\x02" 7407 - "\xC1\x90\xA4\x72\x31\x6B\x24\x51" 7408 - "\x0B\xB3\x7C\x63\x15\xBA\xAF\x5D" 7409 - "\x41\xE0\x37\x6D\xBE\x41\x58\xDE" 7410 - "\xF2\x07\x62\x99\xBE\xC1\x8C\x0F" 7411 - "\x0F\x28\xFB\x8F\x0E\x1D\x91\xE2" 7412 - "\xDA\x99\x5C\x49\xBA\x9C\xA8\x86" 7413 - "\x82\x63\x11\xB3\x54\x49\x00\x08" 7414 - "\x07\xF2\xE8\x1F\x34\x49\x61\xF4" 7415 - "\x81\xE9\xF6\xA9\x5A\x28\x60\x1F" 7416 - "\x66\x99\x08\x06\xF2\xE8\x2D\xD1" 7417 - "\xD0\x67\xBA\x32\x1F\x02\x86\x7B" 7418 - "\xFB\x79\x3D\xC5\xB1\x7F\x15\xAF" 7419 - "\xD7\xBF\x31\x46\x22\x7F\xAE\x5B" 7420 - "\x8B\x95\x47\xC2\xB1\x62\xA1\xCE" 7421 - "\x52\xAC\x9C\x8B\xC2\x49\x7F\xBC" 7422 - "\x9C\x89\xB8\xB6\xCA\xE3\x8F\xEA" 7423 - "\xAC\xB4\x5D\xE4\x50\xDC\x3A\xB5" 7424 - "\x91\x04\x94\x99\x03\x3B\x42\x6D" 7425 - "\x9C\x4A\x02\xF5\xB5\x38\x98\xA8" 7426 - "\x5C\x97\x2E\x4D\x79\x67\x71\xAF" 7427 - "\xF0\x70\x77\xFF\x2D\xDA\xA0\x9E" 7428 - "\x23\x8D\xD6\xA6\x68\x10\x78\x9A" 7429 - "\x64\xBB\x15\xB8\x56\xCF\xEE\xE5" 7430 - "\x32\x44\x96\x1C\xD8\xEB\x95\xD2" 7431 - "\xF3\x71\xEF\xEB\x4E\xBB\x4D\x29", 7432 - .ilen = 504, 7433 - .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 7434 - "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 7435 - "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 7436 - "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" 7437 - "\x1E\x92\x29\xC0\x34\xCB\x62\xF9" 7438 - "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48" 7439 - "\xDF\x76\x0D\x81\x18\xAF\x23\xBA" 7440 - "\x51\xE8\x5C\xF3\x8A\x21\x95\x2C" 7441 - "\xC3\x37\xCE\x65\xFC\x70\x07\x9E" 7442 - "\x12\xA9\x40\xD7\x4B\xE2\x79\x10" 7443 - "\x84\x1B\xB2\x26\xBD\x54\xEB\x5F" 7444 - "\xF6\x8D\x01\x98\x2F\xC6\x3A\xD1" 7445 - "\x68\xFF\x73\x0A\xA1\x15\xAC\x43" 7446 - "\xDA\x4E\xE5\x7C\x13\x87\x1E\xB5" 7447 - "\x29\xC0\x57\xEE\x62\xF9\x90\x04" 7448 - "\x9B\x32\xC9\x3D\xD4\x6B\x02\x76" 7449 - "\x0D\xA4\x18\xAF\x46\xDD\x51\xE8" 7450 - "\x7F\x16\x8A\x21\xB8\x2C\xC3\x5A" 7451 - "\xF1\x65\xFC\x93\x07\x9E\x35\xCC" 7452 - "\x40\xD7\x6E\x05\x79\x10\xA7\x1B" 7453 - "\xB2\x49\xE0\x54\xEB\x82\x19\x8D" 7454 - "\x24\xBB\x2F\xC6\x5D\xF4\x68\xFF" 7455 - "\x96\x0A\xA1\x38\xCF\x43\xDA\x71" 7456 - "\x08\x7C\x13\xAA\x1E\xB5\x4C\xE3" 7457 - "\x57\xEE\x85\x1C\x90\x27\xBE\x32" 7458 - "\xC9\x60\xF7\x6B\x02\x99\x0D\xA4" 7459 - "\x3B\xD2\x46\xDD\x74\x0B\x7F\x16" 7460 - "\xAD\x21\xB8\x4F\xE6\x5A\xF1\x88" 7461 - "\x1F\x93\x2A\xC1\x35\xCC\x63\xFA" 7462 - "\x6E\x05\x9C\x10\xA7\x3E\xD5\x49" 7463 - "\xE0\x77\x0E\x82\x19\xB0\x24\xBB" 7464 - "\x52\xE9\x5D\xF4\x8B\x22\x96\x2D" 7465 - "\xC4\x38\xCF\x66\xFD\x71\x08\x9F" 7466 - "\x13\xAA\x41\xD8\x4C\xE3\x7A\x11" 7467 - "\x85\x1C\xB3\x27\xBE\x55\xEC\x60" 7468 - "\xF7\x8E\x02\x99\x30\xC7\x3B\xD2" 7469 - "\x69\x00\x74\x0B\xA2\x16\xAD\x44" 7470 - "\xDB\x4F\xE6\x7D\x14\x88\x1F\xB6" 7471 - "\x2A\xC1\x58\xEF\x63\xFA\x91\x05" 7472 - "\x9C\x33\xCA\x3E\xD5\x6C\x03\x77" 7473 - "\x0E\xA5\x19\xB0\x47\xDE\x52\xE9" 7474 - "\x80\x17\x8B\x22\xB9\x2D\xC4\x5B" 7475 - "\xF2\x66\xFD\x94\x08\x9F\x36\xCD" 7476 - "\x41\xD8\x6F\x06\x7A\x11\xA8\x1C" 7477 - "\xB3\x4A\xE1\x55\xEC\x83\x1A\x8E" 7478 - "\x25\xBC\x30\xC7\x5E\xF5\x69\x00" 7479 - "\x97\x0B\xA2\x39\xD0\x44\xDB\x72" 7480 - "\x09\x7D\x14\xAB\x1F\xB6\x4D\xE4" 7481 - "\x58\xEF\x86\x1D\x91\x28\xBF\x33" 7482 - "\xCA\x61\xF8\x6C\x03\x9A\x0E\xA5" 7483 - "\x3C\xD3\x47\xDE\x75\x0C\x80\x17" 7484 - "\xAE\x22\xB9\x50\xE7\x5B\xF2\x89" 7485 - "\x20\x94\x2B\xC2\x36\xCD\x64\xFB" 7486 - "\x6F\x06\x9D\x11\xA8\x3F\xD6\x4A" 7487 - "\xE1\x78\x0F\x83\x1A\xB1\x25\xBC" 7488 - "\x53\xEA\x5E\xF5\x8C\x00\x97\x2E" 7489 - "\xC5\x39\xD0\x67\xFE\x72\x09\xA0" 7490 - "\x14\xAB\x42\xD9\x4D\xE4\x7B\x12" 7491 - "\x86\x1D\xB4\x28\xBF\x56\xED\x61" 7492 - "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 7493 - "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 7494 - "\xDC\x50\xE7\x7E\x15\x89\x20\xB7" 7495 - "\x2B\xC2\x59\xF0\x64\xFB\x92\x06", 7496 - .rlen = 504, 7497 - }, { /* Generated with Crypto++ */ 7498 - .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 7499 - "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" 7500 - "\x27\x04\xE1\x27\x04\xE1\xBE\x9B" 7501 - "\x78\xBE\x9B\x78\x55\x32\x0F\x55", 7502 - .klen = 32, 7503 - .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F", 7504 - .input = "\xC7\xA3\xDF\xB9\x05\xF4\x9E\x8D" 7505 - "\x9E\xDF\x38\x18\x83\x07\xEF\xC1" 7506 - "\x93\x3C\xAA\xAA\xFE\x06\x42\xCC" 7507 - "\x0D\x70\x86\x5A\x44\xAD\x85\x17" 7508 - "\xE4\x1F\x5E\xA5\x89\xAC\x32\xBC" 7509 - "\x3D\xA7\xE9\x0A\x5C\x70\x4D\xDE" 7510 - "\x99\x38\x07\xCA\x1D\x21\xC1\x11" 7511 - "\x97\xEB\x98\x75\xC4\x73\x45\x83" 7512 - "\x46\x1C\x9C\x91\x87\xC1\xA0\x56" 7513 - "\x98\xA1\x8B\xDB\x22\x76\xBD\x62" 7514 - "\xA4\xBC\xE8\x86\xDA\xD2\x51\x13" 7515 - "\x13\xD2\x96\x68\x69\x10\x67\x0C" 7516 - "\xD0\x17\x25\x7C\xB2\xAE\x4F\x93" 7517 - "\xA6\x82\x20\xCF\x0F\xA6\x47\x79" 7518 - "\x88\x09\x40\x59\xBD\x12\x64\xB5" 7519 - "\x19\x38\x0D\xFF\x86\xD9\x42\x20" 7520 - "\x81\x0D\x96\x99\xAF\x22\x1F\x94" 7521 - "\x5C\x6E\xEC\xEA\xA3\x39\xCB\x09" 7522 - "\x43\x19\x7F\xD0\xBB\x10\xC2\x49" 7523 - "\xF7\xE9\xF2\xEE\xBF\xF7\xF8\xB3" 7524 - "\x0E\x1A\xF1\x8D\x70\x82\x0C\x04" 7525 - "\xFD\x29\x1A\xAC\xC0\x92\x48\x34" 7526 - "\x6A\xE3\x1D\x4F\xFC\x1C\x72\x6A" 7527 - "\x57\xCB\xAD\xD0\x98\xAB\xB1\x01" 7528 - "\x03\x6A\x45\xDD\x07\x71\x5F\x5B" 7529 - "\xB5\x4A\xE4\xE5\xB9\xB9\xBC\xAC" 7530 - "\x44\xF7\x41\xA4\x5F\x2E\xE9\x28" 7531 - "\xE3\x05\xD2\x94\x78\x4C\x33\x1B" 7532 - "\xBD\xC1\x6E\x51\xD9\xAD\xD9\x86" 7533 - "\x15\x4A\x78\xAE\x7B\xAD\x3B\xBC" 7534 - "\x2F\xE0\x0E\xC5\x7B\x54\x97\x5F" 7535 - "\x60\x51\x14\x65\xF9\x91\xE9\xDA" 7536 - "\x9A\xBC\xFC\x19\x29\x67\xAA\x63" 7537 - "\x5E\xF2\x48\x88\xEB\x79\xE1\xE4" 7538 - "\xF7\xF6\x4C\xA9\xE2\x8C\x3B\xE0" 7539 - "\xED\x52\xAE\x90\x8F\x5B\x98\x34" 7540 - "\x29\x94\x34\x7F\xF9\x6C\x1E\xB6" 7541 - "\xA4\xE7\x2D\x06\x54\x9D\xC3\x02" 7542 - "\xC1\x90\xA4\x72\x31\x6B\x24\x51" 7543 - "\x0B\xB3\x7C\x63\x15\xBA\xAF\x5D" 7544 - "\x41\xE0\x37\x6D\xBE\x41\x58\xDE" 7545 - "\xF2\x07\x62\x99\xBE\xC1\x8C\x0F" 7546 - "\x0F\x28\xFB\x8F\x0E\x1D\x91\xE2" 7547 - "\xDA\x99\x5C\x49\xBA\x9C\xA8\x86" 7548 - "\x82\x63\x11\xB3\x54\x49\x00\x08" 7549 - "\x07\xF2\xE8\x1F\x34\x49\x61\xF4" 7550 - "\x81\xE9\xF6\xA9\x5A\x28\x60\x1F" 7551 - "\x66\x99\x08\x06\xF2\xE8\x2D\xD1" 7552 - "\xD0\x67\xBA\x32\x1F\x02\x86\x7B" 7553 - "\xFB\x79\x3D\xC5\xB1\x7F\x15\xAF" 7554 - "\xD7\xBF\x31\x46\x22\x7F\xAE\x5B" 7555 - "\x8B\x95\x47\xC2\xB1\x62\xA1\xCE" 7556 - "\x52\xAC\x9C\x8B\xC2\x49\x7F\xBC" 7557 - "\x9C\x89\xB8\xB6\xCA\xE3\x8F\xEA" 7558 - "\xAC\xB4\x5D\xE4\x50\xDC\x3A\xB5" 7559 - "\x91\x04\x94\x99\x03\x3B\x42\x6D" 7560 - "\x9C\x4A\x02\xF5\xB5\x38\x98\xA8" 7561 - "\x5C\x97\x2E\x4D\x79\x67\x71\xAF" 7562 - "\xF0\x70\x77\xFF\x2D\xDA\xA0\x9E" 7563 - "\x23\x8D\xD6\xA6\x68\x10\x78\x9A" 7564 - "\x64\xBB\x15\xB8\x56\xCF\xEE\xE5" 7565 - "\x32\x44\x96\x1C\xD8\xEB\x95\xD2" 7566 - "\xF3\x71\xEF\xEB\x4E\xBB\x4D", 7567 - .ilen = 503, 7568 - .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 7569 - "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 7570 - "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 7571 - "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" 7572 - "\x1E\x92\x29\xC0\x34\xCB\x62\xF9" 7573 - "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48" 7574 - "\xDF\x76\x0D\x81\x18\xAF\x23\xBA" 7575 - "\x51\xE8\x5C\xF3\x8A\x21\x95\x2C" 7576 - "\xC3\x37\xCE\x65\xFC\x70\x07\x9E" 7577 - "\x12\xA9\x40\xD7\x4B\xE2\x79\x10" 7578 - "\x84\x1B\xB2\x26\xBD\x54\xEB\x5F" 7579 - "\xF6\x8D\x01\x98\x2F\xC6\x3A\xD1" 7580 - "\x68\xFF\x73\x0A\xA1\x15\xAC\x43" 7581 - "\xDA\x4E\xE5\x7C\x13\x87\x1E\xB5" 7582 - "\x29\xC0\x57\xEE\x62\xF9\x90\x04" 7583 - "\x9B\x32\xC9\x3D\xD4\x6B\x02\x76" 7584 - "\x0D\xA4\x18\xAF\x46\xDD\x51\xE8" 7585 - "\x7F\x16\x8A\x21\xB8\x2C\xC3\x5A" 7586 - "\xF1\x65\xFC\x93\x07\x9E\x35\xCC" 7587 - "\x40\xD7\x6E\x05\x79\x10\xA7\x1B" 7588 - "\xB2\x49\xE0\x54\xEB\x82\x19\x8D" 7589 - "\x24\xBB\x2F\xC6\x5D\xF4\x68\xFF" 7590 - "\x96\x0A\xA1\x38\xCF\x43\xDA\x71" 7591 - "\x08\x7C\x13\xAA\x1E\xB5\x4C\xE3" 7592 - "\x57\xEE\x85\x1C\x90\x27\xBE\x32" 7593 - "\xC9\x60\xF7\x6B\x02\x99\x0D\xA4" 7594 - "\x3B\xD2\x46\xDD\x74\x0B\x7F\x16" 7595 - "\xAD\x21\xB8\x4F\xE6\x5A\xF1\x88" 7596 - "\x1F\x93\x2A\xC1\x35\xCC\x63\xFA" 7597 - "\x6E\x05\x9C\x10\xA7\x3E\xD5\x49" 7598 - "\xE0\x77\x0E\x82\x19\xB0\x24\xBB" 7599 - "\x52\xE9\x5D\xF4\x8B\x22\x96\x2D" 7600 - "\xC4\x38\xCF\x66\xFD\x71\x08\x9F" 7601 - "\x13\xAA\x41\xD8\x4C\xE3\x7A\x11" 7602 - "\x85\x1C\xB3\x27\xBE\x55\xEC\x60" 7603 - "\xF7\x8E\x02\x99\x30\xC7\x3B\xD2" 7604 - "\x69\x00\x74\x0B\xA2\x16\xAD\x44" 7605 - "\xDB\x4F\xE6\x7D\x14\x88\x1F\xB6" 7606 - "\x2A\xC1\x58\xEF\x63\xFA\x91\x05" 7607 - "\x9C\x33\xCA\x3E\xD5\x6C\x03\x77" 7608 - "\x0E\xA5\x19\xB0\x47\xDE\x52\xE9" 7609 - "\x80\x17\x8B\x22\xB9\x2D\xC4\x5B" 7610 - "\xF2\x66\xFD\x94\x08\x9F\x36\xCD" 7611 - "\x41\xD8\x6F\x06\x7A\x11\xA8\x1C" 7612 - "\xB3\x4A\xE1\x55\xEC\x83\x1A\x8E" 7613 - "\x25\xBC\x30\xC7\x5E\xF5\x69\x00" 7614 - "\x97\x0B\xA2\x39\xD0\x44\xDB\x72" 7615 - "\x09\x7D\x14\xAB\x1F\xB6\x4D\xE4" 7616 - "\x58\xEF\x86\x1D\x91\x28\xBF\x33" 7617 - "\xCA\x61\xF8\x6C\x03\x9A\x0E\xA5" 7618 - "\x3C\xD3\x47\xDE\x75\x0C\x80\x17" 7619 - "\xAE\x22\xB9\x50\xE7\x5B\xF2\x89" 7620 - "\x20\x94\x2B\xC2\x36\xCD\x64\xFB" 7621 - "\x6F\x06\x9D\x11\xA8\x3F\xD6\x4A" 7622 - "\xE1\x78\x0F\x83\x1A\xB1\x25\xBC" 7623 - "\x53\xEA\x5E\xF5\x8C\x00\x97\x2E" 7624 - "\xC5\x39\xD0\x67\xFE\x72\x09\xA0" 7625 - "\x14\xAB\x42\xD9\x4D\xE4\x7B\x12" 7626 - "\x86\x1D\xB4\x28\xBF\x56\xED\x61" 7627 - "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 7628 - "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 7629 - "\xDC\x50\xE7\x7E\x15\x89\x20\xB7" 7630 - "\x2B\xC2\x59\xF0\x64\xFB\x92", 7631 - .rlen = 503, 7632 - .also_non_np = 1, 7633 - .np = 2, 7634 - .tap = { 503 - 8, 8 }, 7635 - }, { /* Generated with Crypto++ */ 7636 - .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 7637 - "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" 7638 - "\x27\x04\xE1\x27\x04\xE1\xBE\x9B" 7639 - "\x78\xBE\x9B\x78\x55\x32\x0F\x55", 7640 - .klen = 32, 7641 - .iv = "\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFD", 7642 - .input = "\x5F\x58\x6E\x60\x51\x6E\xDC\x3D" 7643 - "\xD1\xBB\xF7\xB7\xFD\x04\x44\x82" 7644 - "\xDC\x9F\x4B\x02\xF1\xD2\x5A\x6F" 7645 - "\x25\xF9\x27\x21\xF2\xD2\x9A\x01" 7646 - "\xBD\xAD\x3D\x93\x87\xCA\x0D\xFE" 7647 - "\xB7\x2C\x17\x1F\x42\x8C\x13\xB2" 7648 - "\x62\x44\x72\xB9\x5D\xC0\xF8\x37" 7649 - "\xDF\xEA\x78\x81\x8F\xA6\x34\xB2" 7650 - "\x07\x09\x7C\xB9\x3A\xA0\x2B\x18" 7651 - "\x34\x6A\x9D\x3D\xA5\xEB\xF4\x60" 7652 - "\xF8\x98\xA2\x39\x81\x23\x6C\xA9" 7653 - "\x70\xCA\xCC\x45\xD8\x1F\xDF\x44" 7654 - "\x2A\x67\x7A\x88\x28\xDC\x36\x83" 7655 - "\x18\xD7\x48\x43\x17\x2B\x1B\xE6" 7656 - "\x0B\x82\x59\x14\x26\x67\x08\x09" 7657 - "\x5B\x5D\x38\xD0\x81\xCE\x54\x2A" 7658 - "\xCD\x22\x94\x42\xF5\xBA\x74\x7E" 7659 - "\xD9\x00\x40\xA9\x0D\x0B\xBD\x8E" 7660 - "\xC4\x8E\x5E\x17\x8F\x48\xE2\xB8" 7661 - "\xF4\xCC\x19\x76\xAB\x48\x29\xAA" 7662 - "\x81\xD5\xCE\xD5\x8A\x3B\xC9\x21" 7663 - "\xEF\x50\x4F\x04\x02\xBF\xE1\x1F" 7664 - "\x59\x28\x1A\xE4\x18\x16\xA0\x29" 7665 - "\xBF\x34\xA9\x2D\x28\x83\xC0\x5E" 7666 - "\xEA\x44\xC4\x6E\xAB\x24\x79\x9D" 7667 - "\x2D\xA1\xE8\x55\xCA\x74\xFC\xBD" 7668 - "\xFE\xDD\xDA\xA5\xFB\x34\x90\x31" 7669 - "\x0E\x62\x28\x9B\xDC\xD7\xA1\xBB" 7670 - "\xF0\x1A\xB3\xE2\xD0\xFA\xBD\xE8" 7671 - "\x5C\x5A\x10\x67\xF6\x6A\x17\x3F" 7672 - "\xC5\xE9\x09\x08\xDD\x22\x77\x42" 7673 - "\x26\x6A\x6A\x7A\x3F\x87\x80\x0C" 7674 - "\xF0\xFF\x15\x8E\x84\x86\xC0\x10" 7675 - "\x0F\x8D\x33\x06\xB8\x72\xA4\x47" 7676 - "\x6B\xED\x2E\x05\x94\x6C\x5C\x5B" 7677 - "\x13\xF6\x77\xEE\x3B\x16\xDF\xC2" 7678 - "\x63\x66\x07\x6D\x3F\x6C\x51\x7C" 7679 - "\x1C\xAC\x80\xB6\x58\x48\xB7\x9D" 7680 - "\xB4\x19\xD8\x19\x45\x66\x27\x02" 7681 - "\xA1\xA9\x99\xF3\x1F\xE5\xA7\x1D" 7682 - "\x31\xE7\x1B\x0D\xFF\xBB\xB5\xA1" 7683 - "\xF5\x9C\x45\x1E\x18\x19\xA1\xE7" 7684 - "\xC2\xF1\xBF\x68\xC3\xEC\xCF\x53" 7685 - "\x67\xA6\x2B\x7D\x3C\x6D\x24\xC3" 7686 - "\xE8\xE6\x07\x5A\x09\xE0\x32\xA8" 7687 - "\x52\xF6\xE9\xED\x0E\xC6\x0A\x6A" 7688 - "\xFC\x60\x2A\xE0\x93\xCE\xB8\x2E" 7689 - "\xA2\xA8\x0E\x79\x9E\x34\x5D\x37" 7690 - "\x6F\x12\xFE\x48\x7B\xE7\xB9\x22" 7691 - "\x29\xE8\xD7\xBE\x5D\xD1\x8B\xD9" 7692 - "\x91\x51\x4E\x71\xF2\x98\x85\x16" 7693 - "\x25\x7A\x76\x8A\x51\x0E\x65\x14" 7694 - "\x81\xB5\x3A\x37\xFD\xEC\xB5\x8A" 7695 - "\xE1\xCF\x41\x72\x14\x29\x4C\xF0" 7696 - "\x20\xD9\x9A\xC5\x66\xA4\x03\x76" 7697 - "\x5B\xA4\x15\x4F\x0E\x64\x39\x40" 7698 - "\x25\xF9\x20\x22\xF5\x88\xF5\xBA" 7699 - "\xE4\xDF\x45\x61\xBF\x8D\x7A\x24" 7700 - "\x4B\x92\x71\xD9\x2F\x77\xA7\x95" 7701 - "\xA8\x7F\x61\xD5\xA4\x57\xB0\xFB" 7702 - "\xB5\x77\xBA\x1C\xEE\x71\xFA\xB0" 7703 - "\x16\x4C\x18\x6B\xF2\x69\xA0\x07" 7704 - "\xEF\xBE\xEC\x69\xAC\xA8\x63\x9E", 7705 - .ilen = 504, 7706 - .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 7707 - "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 7708 - "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 7709 - "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" 7710 - "\x1E\x92\x29\xC0\x34\xCB\x62\xF9" 7711 - "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48" 7712 - "\xDF\x76\x0D\x81\x18\xAF\x23\xBA" 7713 - "\x51\xE8\x5C\xF3\x8A\x21\x95\x2C" 7714 - "\xC3\x37\xCE\x65\xFC\x70\x07\x9E" 7715 - "\x12\xA9\x40\xD7\x4B\xE2\x79\x10" 7716 - "\x84\x1B\xB2\x26\xBD\x54\xEB\x5F" 7717 - "\xF6\x8D\x01\x98\x2F\xC6\x3A\xD1" 7718 - "\x68\xFF\x73\x0A\xA1\x15\xAC\x43" 7719 - "\xDA\x4E\xE5\x7C\x13\x87\x1E\xB5" 7720 - "\x29\xC0\x57\xEE\x62\xF9\x90\x04" 7721 - "\x9B\x32\xC9\x3D\xD4\x6B\x02\x76" 7722 - "\x0D\xA4\x18\xAF\x46\xDD\x51\xE8" 7723 - "\x7F\x16\x8A\x21\xB8\x2C\xC3\x5A" 7724 - "\xF1\x65\xFC\x93\x07\x9E\x35\xCC" 7725 - "\x40\xD7\x6E\x05\x79\x10\xA7\x1B" 7726 - "\xB2\x49\xE0\x54\xEB\x82\x19\x8D" 7727 - "\x24\xBB\x2F\xC6\x5D\xF4\x68\xFF" 7728 - "\x96\x0A\xA1\x38\xCF\x43\xDA\x71" 7729 - "\x08\x7C\x13\xAA\x1E\xB5\x4C\xE3" 7730 - "\x57\xEE\x85\x1C\x90\x27\xBE\x32" 7731 - "\xC9\x60\xF7\x6B\x02\x99\x0D\xA4" 7732 - "\x3B\xD2\x46\xDD\x74\x0B\x7F\x16" 7733 - "\xAD\x21\xB8\x4F\xE6\x5A\xF1\x88" 7734 - "\x1F\x93\x2A\xC1\x35\xCC\x63\xFA" 7735 - "\x6E\x05\x9C\x10\xA7\x3E\xD5\x49" 7736 - "\xE0\x77\x0E\x82\x19\xB0\x24\xBB" 7737 - "\x52\xE9\x5D\xF4\x8B\x22\x96\x2D" 7738 - "\xC4\x38\xCF\x66\xFD\x71\x08\x9F" 7739 - "\x13\xAA\x41\xD8\x4C\xE3\x7A\x11" 7740 - "\x85\x1C\xB3\x27\xBE\x55\xEC\x60" 7741 - "\xF7\x8E\x02\x99\x30\xC7\x3B\xD2" 7742 - "\x69\x00\x74\x0B\xA2\x16\xAD\x44" 7743 - "\xDB\x4F\xE6\x7D\x14\x88\x1F\xB6" 7744 - "\x2A\xC1\x58\xEF\x63\xFA\x91\x05" 7745 - "\x9C\x33\xCA\x3E\xD5\x6C\x03\x77" 7746 - "\x0E\xA5\x19\xB0\x47\xDE\x52\xE9" 7747 - "\x80\x17\x8B\x22\xB9\x2D\xC4\x5B" 7748 - "\xF2\x66\xFD\x94\x08\x9F\x36\xCD" 7749 - "\x41\xD8\x6F\x06\x7A\x11\xA8\x1C" 7750 - "\xB3\x4A\xE1\x55\xEC\x83\x1A\x8E" 7751 - "\x25\xBC\x30\xC7\x5E\xF5\x69\x00" 7752 - "\x97\x0B\xA2\x39\xD0\x44\xDB\x72" 7753 - "\x09\x7D\x14\xAB\x1F\xB6\x4D\xE4" 7754 - "\x58\xEF\x86\x1D\x91\x28\xBF\x33" 7755 - "\xCA\x61\xF8\x6C\x03\x9A\x0E\xA5" 7756 - "\x3C\xD3\x47\xDE\x75\x0C\x80\x17" 7757 - "\xAE\x22\xB9\x50\xE7\x5B\xF2\x89" 7758 - "\x20\x94\x2B\xC2\x36\xCD\x64\xFB" 7759 - "\x6F\x06\x9D\x11\xA8\x3F\xD6\x4A" 7760 - "\xE1\x78\x0F\x83\x1A\xB1\x25\xBC" 7761 - "\x53\xEA\x5E\xF5\x8C\x00\x97\x2E" 7762 - "\xC5\x39\xD0\x67\xFE\x72\x09\xA0" 7763 - "\x14\xAB\x42\xD9\x4D\xE4\x7B\x12" 7764 - "\x86\x1D\xB4\x28\xBF\x56\xED\x61" 7765 - "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 7766 - "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 7767 - "\xDC\x50\xE7\x7E\x15\x89\x20\xB7" 7768 - "\x2B\xC2\x59\xF0\x64\xFB\x92\x06", 7769 - .rlen = 504, 8736 + .len = 504, 7770 8737 }, 7771 8738 }; 7772 8739 7773 8740 /* 7774 8741 * Twofish test vectors. 7775 8742 */ 7776 - static const struct cipher_testvec tf_enc_tv_template[] = { 8743 + static const struct cipher_testvec tf_tv_template[] = { 7777 8744 { 7778 8745 .key = zeroed_string, 7779 8746 .klen = 16, 7780 - .input = zeroed_string, 7781 - .ilen = 16, 7782 - .result = "\x9f\x58\x9f\x5c\xf6\x12\x2c\x32" 8747 + .ptext = zeroed_string, 8748 + .ctext = "\x9f\x58\x9f\x5c\xf6\x12\x2c\x32" 7783 8749 "\xb6\xbf\xec\x2f\x2a\xe8\xc3\x5a", 7784 - .rlen = 16, 8750 + .len = 16, 7785 8751 }, { 7786 8752 .key = "\x01\x23\x45\x67\x89\xab\xcd\xef" 7787 8753 "\xfe\xdc\xba\x98\x76\x54\x32\x10" 7788 8754 "\x00\x11\x22\x33\x44\x55\x66\x77", 7789 8755 .klen = 24, 7790 - .input = zeroed_string, 7791 - .ilen = 16, 7792 - .result = "\xcf\xd1\xd2\xe5\xa9\xbe\x9c\xdf" 8756 + .ptext = zeroed_string, 8757 + .ctext = "\xcf\xd1\xd2\xe5\xa9\xbe\x9c\xdf" 7793 8758 "\x50\x1f\x13\xb8\x92\xbd\x22\x48", 7794 - .rlen = 16, 8759 + .len = 16, 7795 8760 }, { 7796 8761 .key = "\x01\x23\x45\x67\x89\xab\xcd\xef" 7797 8762 "\xfe\xdc\xba\x98\x76\x54\x32\x10" 7798 8763 "\x00\x11\x22\x33\x44\x55\x66\x77" 7799 8764 "\x88\x99\xaa\xbb\xcc\xdd\xee\xff", 7800 8765 .klen = 32, 7801 - .input = zeroed_string, 7802 - .ilen = 16, 7803 - .result = "\x37\x52\x7b\xe0\x05\x23\x34\xb8" 8766 + .ptext = zeroed_string, 8767 + .ctext = "\x37\x52\x7b\xe0\x05\x23\x34\xb8" 7804 8768 "\x9f\x0c\xfc\xca\xe8\x7c\xfa\x20", 7805 - .rlen = 16, 8769 + .len = 16, 7806 8770 }, { /* Generated with Crypto++ */ 7807 8771 .key = "\x3F\x85\x62\x3F\x1C\xF9\xD6\x1C" 7808 8772 "\xF9\xD6\xB3\x90\x6D\x4A\x90\x6D" 7809 8773 "\x4A\x27\x04\xE1\x27\x04\xE1\xBE" 7810 8774 "\x9B\x78\xBE\x9B\x78\x55\x32\x0F", 7811 8775 .klen = 32, 7812 - .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 8776 + .ptext = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 7813 8777 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 7814 8778 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 7815 8779 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" ··· 7456 9250 "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 7457 9251 "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 7458 9252 "\xDC\x50\xE7\x7E\x15\x89\x20\xB7", 7459 - .ilen = 496, 7460 - .result = "\x88\xCB\x1E\xC2\xAF\x8A\x97\xFF" 9253 + .ctext = "\x88\xCB\x1E\xC2\xAF\x8A\x97\xFF" 7461 9254 "\xF6\x90\x46\x9C\x4A\x0F\x08\xDC" 7462 9255 "\xDE\xAB\xAD\xFA\xFC\xA8\xC2\x3D" 7463 9256 "\xE0\xE4\x8B\x3F\xD5\xA3\xF7\x14" ··· 7518 9313 "\xF0\x29\xD8\x59\x5D\x33\x37\xF9" 7519 9314 "\x58\x33\x9B\x78\xC7\x58\x48\x6B" 7520 9315 "\x2C\x75\x64\xC4\xCA\xC1\x7E\xD5", 7521 - .rlen = 496, 9316 + .len = 496, 7522 9317 .also_non_np = 1, 7523 9318 .np = 3, 7524 9319 .tap = { 496 - 20, 4, 16 }, 7525 9320 }, 7526 9321 }; 7527 9322 7528 - static const struct cipher_testvec tf_dec_tv_template[] = { 7529 - { 7530 - .key = zeroed_string, 7531 - .klen = 16, 7532 - .input = "\x9f\x58\x9f\x5c\xf6\x12\x2c\x32" 7533 - "\xb6\xbf\xec\x2f\x2a\xe8\xc3\x5a", 7534 - .ilen = 16, 7535 - .result = zeroed_string, 7536 - .rlen = 16, 7537 - }, { 7538 - .key = "\x01\x23\x45\x67\x89\xab\xcd\xef" 7539 - "\xfe\xdc\xba\x98\x76\x54\x32\x10" 7540 - "\x00\x11\x22\x33\x44\x55\x66\x77", 7541 - .klen = 24, 7542 - .input = "\xcf\xd1\xd2\xe5\xa9\xbe\x9c\xdf" 7543 - "\x50\x1f\x13\xb8\x92\xbd\x22\x48", 7544 - .ilen = 16, 7545 - .result = zeroed_string, 7546 - .rlen = 16, 7547 - }, { 7548 - .key = "\x01\x23\x45\x67\x89\xab\xcd\xef" 7549 - "\xfe\xdc\xba\x98\x76\x54\x32\x10" 7550 - "\x00\x11\x22\x33\x44\x55\x66\x77" 7551 - "\x88\x99\xaa\xbb\xcc\xdd\xee\xff", 7552 - .klen = 32, 7553 - .input = "\x37\x52\x7b\xe0\x05\x23\x34\xb8" 7554 - "\x9f\x0c\xfc\xca\xe8\x7c\xfa\x20", 7555 - .ilen = 16, 7556 - .result = zeroed_string, 7557 - .rlen = 16, 7558 - }, { /* Generated with Crypto++ */ 7559 - .key = "\x3F\x85\x62\x3F\x1C\xF9\xD6\x1C" 7560 - "\xF9\xD6\xB3\x90\x6D\x4A\x90\x6D" 7561 - "\x4A\x27\x04\xE1\x27\x04\xE1\xBE" 7562 - "\x9B\x78\xBE\x9B\x78\x55\x32\x0F", 7563 - .klen = 32, 7564 - .input = "\x88\xCB\x1E\xC2\xAF\x8A\x97\xFF" 7565 - "\xF6\x90\x46\x9C\x4A\x0F\x08\xDC" 7566 - "\xDE\xAB\xAD\xFA\xFC\xA8\xC2\x3D" 7567 - "\xE0\xE4\x8B\x3F\xD5\xA3\xF7\x14" 7568 - "\x34\x9E\xB6\x08\xB2\xDD\xA8\xF5" 7569 - "\xDF\xFA\xC7\xE8\x09\x50\x76\x08" 7570 - "\xA2\xB6\x6A\x59\xC0\x2B\x6D\x05" 7571 - "\x89\xF6\x82\xF0\xD3\xDB\x06\x02" 7572 - "\xB5\x11\x5C\x5E\x79\x1A\xAC\x43" 7573 - "\x5C\xC0\x30\x4B\x6B\x16\xA1\x40" 7574 - "\x80\x27\x88\xBA\x2C\x74\x42\xE0" 7575 - "\x1B\xA5\x85\x08\xB9\xE6\x22\x7A" 7576 - "\x36\x3B\x0D\x9F\xA0\x22\x6C\x2A" 7577 - "\x91\x75\x47\xBC\x67\x21\x4E\xF9" 7578 - "\xEA\xFF\xD9\xD5\xC0\xFC\x9E\x2C" 7579 - "\x3E\xAD\xC6\x61\x0E\x93\x7A\x22" 7580 - "\x09\xC8\x8D\xC1\x8E\xB4\x8B\x5C" 7581 - "\xC6\x24\x42\xB8\x23\x66\x80\xA9" 7582 - "\x32\x0B\x7A\x29\xBF\xB3\x0B\x63" 7583 - "\x43\x27\x13\xA9\xBE\xEB\xBD\xF3" 7584 - "\x33\x62\x70\xE2\x1B\x86\x7A\xA1" 7585 - "\x51\x4A\x16\xFE\x29\x63\x7E\xD0" 7586 - "\x7A\xA4\x6E\x2C\xF8\xC1\xDB\xE8" 7587 - "\xCB\x4D\xD2\x8C\x04\x14\xB4\x66" 7588 - "\x41\xB7\x3A\x96\x16\x7C\x1D\x5B" 7589 - "\xB6\x41\x42\x64\x43\xEE\x6E\x7C" 7590 - "\x8B\xAF\x01\x9C\xA4\x6E\x75\x8F" 7591 - "\xDE\x10\x9F\xA6\xE7\xD6\x44\x97" 7592 - "\x66\xA3\x96\x0F\x1C\x25\x60\xF5" 7593 - "\x3C\x2E\x32\x69\x0E\x82\xFF\x27" 7594 - "\x0F\xB5\x06\xDA\xD8\x31\x15\x6C" 7595 - "\xDF\x18\x6C\x87\xF5\x3B\x11\x9A" 7596 - "\x1B\x42\x1F\x5B\x29\x19\x96\x13" 7597 - "\x68\x2E\x5E\x08\x1C\x8F\x32\x4B" 7598 - "\x81\x77\x6D\xF4\xA0\x01\x42\xEC" 7599 - "\xDD\x5B\xFD\x3A\x8E\x6A\x14\xFB" 7600 - "\x83\x54\xDF\x0F\x86\xB7\xEA\x40" 7601 - "\x46\x39\xF7\x2A\x89\x8D\x4E\x96" 7602 - "\x5F\x5F\x6D\x76\xC6\x13\x9D\x3D" 7603 - "\x1D\x5F\x0C\x7D\xE2\xBC\xC2\x16" 7604 - "\x16\xBE\x89\x3E\xB0\x61\xA2\x5D" 7605 - "\xAF\xD1\x40\x5F\x1A\xB8\x26\x41" 7606 - "\xC6\xBD\x36\xEF\xED\x29\x50\x6D" 7607 - "\x10\xEF\x26\xE8\xA8\x93\x11\x3F" 7608 - "\x2D\x1F\x88\x20\x77\x45\xF5\x66" 7609 - "\x08\xB9\xF1\xEF\xB1\x93\xA8\x81" 7610 - "\x65\xC5\xCD\x3E\x8C\x06\x60\x2C" 7611 - "\xB2\x10\x7A\xCA\x05\x25\x59\xDB" 7612 - "\xC7\x28\xF5\x20\x35\x52\x9E\x62" 7613 - "\xF8\x88\x24\x1C\x4D\x84\x12\x39" 7614 - "\x39\xE4\x2E\xF4\xD4\x9D\x2B\xBC" 7615 - "\x87\x66\xE6\xC0\x6B\x31\x9A\x66" 7616 - "\x03\xDC\x95\xD8\x6B\xD0\x30\x8F" 7617 - "\xDF\x8F\x8D\xFA\xEC\x1F\x08\xBD" 7618 - "\xA3\x63\xE2\x71\x4F\x03\x94\x87" 7619 - "\x50\xDF\x15\x1F\xED\x3A\xA3\x7F" 7620 - "\x1F\x2A\xB5\xA1\x69\xAC\x4B\x0D" 7621 - "\x84\x9B\x2A\xE9\x55\xDD\x46\x91" 7622 - "\x15\x33\xF3\x2B\x9B\x46\x97\x00" 7623 - "\xF0\x29\xD8\x59\x5D\x33\x37\xF9" 7624 - "\x58\x33\x9B\x78\xC7\x58\x48\x6B" 7625 - "\x2C\x75\x64\xC4\xCA\xC1\x7E\xD5", 7626 - .ilen = 496, 7627 - .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 7628 - "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 7629 - "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 7630 - "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" 7631 - "\x1E\x92\x29\xC0\x34\xCB\x62\xF9" 7632 - "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48" 7633 - "\xDF\x76\x0D\x81\x18\xAF\x23\xBA" 7634 - "\x51\xE8\x5C\xF3\x8A\x21\x95\x2C" 7635 - "\xC3\x37\xCE\x65\xFC\x70\x07\x9E" 7636 - "\x12\xA9\x40\xD7\x4B\xE2\x79\x10" 7637 - "\x84\x1B\xB2\x26\xBD\x54\xEB\x5F" 7638 - "\xF6\x8D\x01\x98\x2F\xC6\x3A\xD1" 7639 - "\x68\xFF\x73\x0A\xA1\x15\xAC\x43" 7640 - "\xDA\x4E\xE5\x7C\x13\x87\x1E\xB5" 7641 - "\x29\xC0\x57\xEE\x62\xF9\x90\x04" 7642 - "\x9B\x32\xC9\x3D\xD4\x6B\x02\x76" 7643 - "\x0D\xA4\x18\xAF\x46\xDD\x51\xE8" 7644 - "\x7F\x16\x8A\x21\xB8\x2C\xC3\x5A" 7645 - "\xF1\x65\xFC\x93\x07\x9E\x35\xCC" 7646 - "\x40\xD7\x6E\x05\x79\x10\xA7\x1B" 7647 - "\xB2\x49\xE0\x54\xEB\x82\x19\x8D" 7648 - "\x24\xBB\x2F\xC6\x5D\xF4\x68\xFF" 7649 - "\x96\x0A\xA1\x38\xCF\x43\xDA\x71" 7650 - "\x08\x7C\x13\xAA\x1E\xB5\x4C\xE3" 7651 - "\x57\xEE\x85\x1C\x90\x27\xBE\x32" 7652 - "\xC9\x60\xF7\x6B\x02\x99\x0D\xA4" 7653 - "\x3B\xD2\x46\xDD\x74\x0B\x7F\x16" 7654 - "\xAD\x21\xB8\x4F\xE6\x5A\xF1\x88" 7655 - "\x1F\x93\x2A\xC1\x35\xCC\x63\xFA" 7656 - "\x6E\x05\x9C\x10\xA7\x3E\xD5\x49" 7657 - "\xE0\x77\x0E\x82\x19\xB0\x24\xBB" 7658 - "\x52\xE9\x5D\xF4\x8B\x22\x96\x2D" 7659 - "\xC4\x38\xCF\x66\xFD\x71\x08\x9F" 7660 - "\x13\xAA\x41\xD8\x4C\xE3\x7A\x11" 7661 - "\x85\x1C\xB3\x27\xBE\x55\xEC\x60" 7662 - "\xF7\x8E\x02\x99\x30\xC7\x3B\xD2" 7663 - "\x69\x00\x74\x0B\xA2\x16\xAD\x44" 7664 - "\xDB\x4F\xE6\x7D\x14\x88\x1F\xB6" 7665 - "\x2A\xC1\x58\xEF\x63\xFA\x91\x05" 7666 - "\x9C\x33\xCA\x3E\xD5\x6C\x03\x77" 7667 - "\x0E\xA5\x19\xB0\x47\xDE\x52\xE9" 7668 - "\x80\x17\x8B\x22\xB9\x2D\xC4\x5B" 7669 - "\xF2\x66\xFD\x94\x08\x9F\x36\xCD" 7670 - "\x41\xD8\x6F\x06\x7A\x11\xA8\x1C" 7671 - "\xB3\x4A\xE1\x55\xEC\x83\x1A\x8E" 7672 - "\x25\xBC\x30\xC7\x5E\xF5\x69\x00" 7673 - "\x97\x0B\xA2\x39\xD0\x44\xDB\x72" 7674 - "\x09\x7D\x14\xAB\x1F\xB6\x4D\xE4" 7675 - "\x58\xEF\x86\x1D\x91\x28\xBF\x33" 7676 - "\xCA\x61\xF8\x6C\x03\x9A\x0E\xA5" 7677 - "\x3C\xD3\x47\xDE\x75\x0C\x80\x17" 7678 - "\xAE\x22\xB9\x50\xE7\x5B\xF2\x89" 7679 - "\x20\x94\x2B\xC2\x36\xCD\x64\xFB" 7680 - "\x6F\x06\x9D\x11\xA8\x3F\xD6\x4A" 7681 - "\xE1\x78\x0F\x83\x1A\xB1\x25\xBC" 7682 - "\x53\xEA\x5E\xF5\x8C\x00\x97\x2E" 7683 - "\xC5\x39\xD0\x67\xFE\x72\x09\xA0" 7684 - "\x14\xAB\x42\xD9\x4D\xE4\x7B\x12" 7685 - "\x86\x1D\xB4\x28\xBF\x56\xED\x61" 7686 - "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 7687 - "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 7688 - "\xDC\x50\xE7\x7E\x15\x89\x20\xB7", 7689 - .rlen = 496, 7690 - .also_non_np = 1, 7691 - .np = 3, 7692 - .tap = { 496 - 20, 4, 16 }, 7693 - }, 7694 - }; 7695 - 7696 - static const struct cipher_testvec tf_cbc_enc_tv_template[] = { 9323 + static const struct cipher_testvec tf_cbc_tv_template[] = { 7697 9324 { /* Generated with Nettle */ 7698 9325 .key = zeroed_string, 7699 9326 .klen = 16, 7700 9327 .iv = zeroed_string, 7701 - .input = zeroed_string, 7702 - .ilen = 16, 7703 - .result = "\x9f\x58\x9f\x5c\xf6\x12\x2c\x32" 9328 + .ptext = zeroed_string, 9329 + .ctext = "\x9f\x58\x9f\x5c\xf6\x12\x2c\x32" 7704 9330 "\xb6\xbf\xec\x2f\x2a\xe8\xc3\x5a", 7705 - .rlen = 16, 9331 + .len = 16, 7706 9332 }, { 7707 9333 .key = zeroed_string, 7708 9334 .klen = 16, 7709 9335 .iv = "\x9f\x58\x9f\x5c\xf6\x12\x2c\x32" 7710 9336 "\xb6\xbf\xec\x2f\x2a\xe8\xc3\x5a", 7711 - .input = zeroed_string, 7712 - .ilen = 16, 7713 - .result = "\xd4\x91\xdb\x16\xe7\xb1\xc3\x9e" 9337 + .ptext = zeroed_string, 9338 + .ctext = "\xd4\x91\xdb\x16\xe7\xb1\xc3\x9e" 7714 9339 "\x86\xcb\x08\x6b\x78\x9f\x54\x19", 7715 - .rlen = 16, 9340 + .len = 16, 7716 9341 }, { 7717 9342 .key = zeroed_string, 7718 9343 .klen = 16, 7719 9344 .iv = "\xd4\x91\xdb\x16\xe7\xb1\xc3\x9e" 7720 9345 "\x86\xcb\x08\x6b\x78\x9f\x54\x19", 7721 - .input = zeroed_string, 7722 - .ilen = 16, 7723 - .result = "\x05\xef\x8c\x61\xa8\x11\x58\x26" 9346 + .ptext = zeroed_string, 9347 + .ctext = "\x05\xef\x8c\x61\xa8\x11\x58\x26" 7724 9348 "\x34\xba\x5c\xb7\x10\x6a\xa6\x41", 7725 - .rlen = 16, 9349 + .len = 16, 7726 9350 }, { 7727 9351 .key = zeroed_string, 7728 9352 .klen = 16, 7729 9353 .iv = zeroed_string, 7730 - .input = zeroed_string, 7731 - .ilen = 48, 7732 - .result = "\x9f\x58\x9f\x5c\xf6\x12\x2c\x32" 9354 + .ptext = zeroed_string, 9355 + .ctext = "\x9f\x58\x9f\x5c\xf6\x12\x2c\x32" 7733 9356 "\xb6\xbf\xec\x2f\x2a\xe8\xc3\x5a" 7734 9357 "\xd4\x91\xdb\x16\xe7\xb1\xc3\x9e" 7735 9358 "\x86\xcb\x08\x6b\x78\x9f\x54\x19" 7736 9359 "\x05\xef\x8c\x61\xa8\x11\x58\x26" 7737 9360 "\x34\xba\x5c\xb7\x10\x6a\xa6\x41", 7738 - .rlen = 48, 9361 + .len = 48, 7739 9362 }, { /* Generated with Crypto++ */ 7740 9363 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 7741 9364 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" ··· 7572 9539 .klen = 32, 7573 9540 .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F" 7574 9541 "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64", 7575 - .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 9542 + .ptext = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 7576 9543 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 7577 9544 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 7578 9545 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" ··· 7634 9601 "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 7635 9602 "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 7636 9603 "\xDC\x50\xE7\x7E\x15\x89\x20\xB7", 7637 - .ilen = 496, 7638 - .result = "\xC8\xFF\xF2\x53\xA6\x27\x09\xD1" 9604 + .ctext = "\xC8\xFF\xF2\x53\xA6\x27\x09\xD1" 7639 9605 "\x33\x38\xC2\xC0\x0C\x14\x7E\xB5" 7640 9606 "\x26\x1B\x05\x0C\x05\x12\x3F\xC0" 7641 9607 "\xF9\x1C\x02\x28\x40\x96\x6F\xD0" ··· 7696 9664 "\x69\xA1\x62\xBD\x49\x3A\x9D\x91" 7697 9665 "\x30\x70\x56\xA4\x37\xDD\x7C\xC0" 7698 9666 "\x0A\xA3\x30\x10\x26\x25\x41\x2C", 7699 - .rlen = 496, 9667 + .len = 496, 7700 9668 .also_non_np = 1, 7701 9669 .np = 3, 7702 9670 .tap = { 496 - 20, 4, 16 }, 7703 9671 }, 7704 9672 }; 7705 9673 7706 - static const struct cipher_testvec tf_cbc_dec_tv_template[] = { 7707 - { /* Reverse of the first four above */ 7708 - .key = zeroed_string, 7709 - .klen = 16, 7710 - .iv = zeroed_string, 7711 - .input = "\x9f\x58\x9f\x5c\xf6\x12\x2c\x32" 7712 - "\xb6\xbf\xec\x2f\x2a\xe8\xc3\x5a", 7713 - .ilen = 16, 7714 - .result = zeroed_string, 7715 - .rlen = 16, 7716 - }, { 7717 - .key = zeroed_string, 7718 - .klen = 16, 7719 - .iv = "\x9f\x58\x9f\x5c\xf6\x12\x2c\x32" 7720 - "\xb6\xbf\xec\x2f\x2a\xe8\xc3\x5a", 7721 - .input = "\xd4\x91\xdb\x16\xe7\xb1\xc3\x9e" 7722 - "\x86\xcb\x08\x6b\x78\x9f\x54\x19", 7723 - .ilen = 16, 7724 - .result = zeroed_string, 7725 - .rlen = 16, 7726 - }, { 7727 - .key = zeroed_string, 7728 - .klen = 16, 7729 - .iv = "\xd4\x91\xdb\x16\xe7\xb1\xc3\x9e" 7730 - "\x86\xcb\x08\x6b\x78\x9f\x54\x19", 7731 - .input = "\x05\xef\x8c\x61\xa8\x11\x58\x26" 7732 - "\x34\xba\x5c\xb7\x10\x6a\xa6\x41", 7733 - .ilen = 16, 7734 - .result = zeroed_string, 7735 - .rlen = 16, 7736 - }, { 7737 - .key = zeroed_string, 7738 - .klen = 16, 7739 - .iv = zeroed_string, 7740 - .input = "\x9f\x58\x9f\x5c\xf6\x12\x2c\x32" 7741 - "\xb6\xbf\xec\x2f\x2a\xe8\xc3\x5a" 7742 - "\xd4\x91\xdb\x16\xe7\xb1\xc3\x9e" 7743 - "\x86\xcb\x08\x6b\x78\x9f\x54\x19" 7744 - "\x05\xef\x8c\x61\xa8\x11\x58\x26" 7745 - "\x34\xba\x5c\xb7\x10\x6a\xa6\x41", 7746 - .ilen = 48, 7747 - .result = zeroed_string, 7748 - .rlen = 48, 7749 - }, { /* Generated with Crypto++ */ 7750 - .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 7751 - "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" 7752 - "\x27\x04\xE1\x27\x04\xE1\xBE\x9B" 7753 - "\x78\xBE\x9B\x78\x55\x32\x0F\x55", 7754 - .klen = 32, 7755 - .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F" 7756 - "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64", 7757 - .input = "\xC8\xFF\xF2\x53\xA6\x27\x09\xD1" 7758 - "\x33\x38\xC2\xC0\x0C\x14\x7E\xB5" 7759 - "\x26\x1B\x05\x0C\x05\x12\x3F\xC0" 7760 - "\xF9\x1C\x02\x28\x40\x96\x6F\xD0" 7761 - "\x3D\x32\xDF\xDA\x56\x00\x6E\xEE" 7762 - "\x5B\x2A\x72\x9D\xC2\x4D\x19\xBC" 7763 - "\x8C\x53\xFA\x87\x6F\xDD\x81\xA3" 7764 - "\xB1\xD3\x44\x65\xDF\xE7\x63\x38" 7765 - "\x4A\xFC\xDC\xEC\x3F\x26\x8E\xB8" 7766 - "\x43\xFC\xFE\x18\xB5\x11\x6D\x31" 7767 - "\x81\x8B\x0D\x75\xF6\x80\xEC\x84" 7768 - "\x04\xB9\xE6\x09\x63\xED\x39\xDB" 7769 - "\xC3\xF6\x14\xD6\x6E\x5E\x8B\xBD" 7770 - "\x3E\xFA\xD7\x98\x50\x6F\xD9\x63" 7771 - "\x02\xCD\x0D\x39\x4B\x0D\xEC\x80" 7772 - "\xE3\x6A\x17\xF4\xCC\xAD\xFF\x68" 7773 - "\x45\xDD\xC8\x83\x1D\x41\x96\x0D" 7774 - "\x91\x2E\x05\xD3\x59\x82\xE0\x43" 7775 - "\x90\x4F\xB9\xF7\xAD\x6B\x2E\xAF" 7776 - "\xA7\x84\x00\x53\xCD\x6F\xD1\x0C" 7777 - "\x4E\xF9\x5A\x23\xFB\xCA\xC7\xD3" 7778 - "\xA9\xAA\x9D\xB2\x3F\x66\xF1\xAC" 7779 - "\x25\x21\x8F\xF7\xEF\xF2\x6A\xDF" 7780 - "\xE8\xDA\x75\x1A\x8A\xF1\xDD\x38" 7781 - "\x1F\xF9\x3D\x68\x4A\xBB\x9E\x34" 7782 - "\x1F\x66\x1F\x9C\x2B\x54\xFF\x60" 7783 - "\x7F\x29\x4B\x55\x80\x8F\x4E\xA7" 7784 - "\xA6\x9A\x0A\xD9\x0D\x19\x00\xF8" 7785 - "\x1F\xBC\x0C\x40\x6B\xEC\x99\x25" 7786 - "\x94\x70\x74\x0E\x1D\xC5\xBC\x12" 7787 - "\xF3\x42\xBE\x95\xBF\xFB\x4E\x55" 7788 - "\x9A\xB9\xCE\x14\x16\x5B\xDC\xD3" 7789 - "\x75\x42\x62\x04\x31\x1F\x95\x7C" 7790 - "\x66\x1A\x97\xDC\x2F\x40\x5C\x39" 7791 - "\x78\xE6\x02\xDB\x49\xE1\xC6\x47" 7792 - "\xC2\x78\x9A\xBB\xF3\xBE\xCB\x93" 7793 - "\xD8\xB8\xE8\xBB\x8C\xB3\x9B\xA7" 7794 - "\xC2\x89\xF3\x91\x88\x83\x3D\xF0" 7795 - "\x29\xA2\xCD\xB5\x79\x16\xC2\x40" 7796 - "\x11\x03\x8E\x9C\xFD\xC9\x43\xC4" 7797 - "\xC2\x19\xF0\x4A\x32\xEF\x0C\x2B" 7798 - "\xD3\x2B\xE9\xD4\x4C\xDE\x95\xCF" 7799 - "\x04\x03\xD3\x2C\x7F\x82\xC8\xFA" 7800 - "\x0F\xD8\x7A\x39\x7B\x01\x41\x9C" 7801 - "\x78\xB6\xC9\xBF\xF9\x78\x57\x88" 7802 - "\xB1\xA5\xE1\xE0\xD9\x16\xD4\xC8" 7803 - "\xEE\xC4\xBE\x7B\x55\x59\x00\x48" 7804 - "\x1B\xBC\x14\xFA\x2A\x9D\xC9\x1C" 7805 - "\xFB\x28\x3F\x95\xDD\xB7\xD6\xCE" 7806 - "\x3A\x7F\x09\x0C\x0E\x69\x30\x7D" 7807 - "\xBC\x68\x9C\x91\x2A\x59\x57\x04" 7808 - "\xED\x1A\x1E\x00\xB1\x85\x92\x04" 7809 - "\x28\x8C\x0C\x3C\xC1\xD5\x12\xF7" 7810 - "\x4C\x3E\xB0\xE7\x86\x62\x68\x91" 7811 - "\xFC\xC4\xE2\xCE\xA6\xDC\x5E\x93" 7812 - "\x5D\x8D\x8C\x68\xB3\xB2\xB9\x64" 7813 - "\x16\xB8\xC8\x6F\xD8\xEE\x21\xBD" 7814 - "\xAC\x18\x0C\x7D\x0D\x05\xAB\xF1" 7815 - "\xFA\xDD\xE2\x48\xDF\x4C\x02\x39" 7816 - "\x69\xA1\x62\xBD\x49\x3A\x9D\x91" 7817 - "\x30\x70\x56\xA4\x37\xDD\x7C\xC0" 7818 - "\x0A\xA3\x30\x10\x26\x25\x41\x2C", 7819 - .ilen = 496, 7820 - .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 7821 - "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 7822 - "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 7823 - "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" 7824 - "\x1E\x92\x29\xC0\x34\xCB\x62\xF9" 7825 - "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48" 7826 - "\xDF\x76\x0D\x81\x18\xAF\x23\xBA" 7827 - "\x51\xE8\x5C\xF3\x8A\x21\x95\x2C" 7828 - "\xC3\x37\xCE\x65\xFC\x70\x07\x9E" 7829 - "\x12\xA9\x40\xD7\x4B\xE2\x79\x10" 7830 - "\x84\x1B\xB2\x26\xBD\x54\xEB\x5F" 7831 - "\xF6\x8D\x01\x98\x2F\xC6\x3A\xD1" 7832 - "\x68\xFF\x73\x0A\xA1\x15\xAC\x43" 7833 - "\xDA\x4E\xE5\x7C\x13\x87\x1E\xB5" 7834 - "\x29\xC0\x57\xEE\x62\xF9\x90\x04" 7835 - "\x9B\x32\xC9\x3D\xD4\x6B\x02\x76" 7836 - "\x0D\xA4\x18\xAF\x46\xDD\x51\xE8" 7837 - "\x7F\x16\x8A\x21\xB8\x2C\xC3\x5A" 7838 - "\xF1\x65\xFC\x93\x07\x9E\x35\xCC" 7839 - "\x40\xD7\x6E\x05\x79\x10\xA7\x1B" 7840 - "\xB2\x49\xE0\x54\xEB\x82\x19\x8D" 7841 - "\x24\xBB\x2F\xC6\x5D\xF4\x68\xFF" 7842 - "\x96\x0A\xA1\x38\xCF\x43\xDA\x71" 7843 - "\x08\x7C\x13\xAA\x1E\xB5\x4C\xE3" 7844 - "\x57\xEE\x85\x1C\x90\x27\xBE\x32" 7845 - "\xC9\x60\xF7\x6B\x02\x99\x0D\xA4" 7846 - "\x3B\xD2\x46\xDD\x74\x0B\x7F\x16" 7847 - "\xAD\x21\xB8\x4F\xE6\x5A\xF1\x88" 7848 - "\x1F\x93\x2A\xC1\x35\xCC\x63\xFA" 7849 - "\x6E\x05\x9C\x10\xA7\x3E\xD5\x49" 7850 - "\xE0\x77\x0E\x82\x19\xB0\x24\xBB" 7851 - "\x52\xE9\x5D\xF4\x8B\x22\x96\x2D" 7852 - "\xC4\x38\xCF\x66\xFD\x71\x08\x9F" 7853 - "\x13\xAA\x41\xD8\x4C\xE3\x7A\x11" 7854 - "\x85\x1C\xB3\x27\xBE\x55\xEC\x60" 7855 - "\xF7\x8E\x02\x99\x30\xC7\x3B\xD2" 7856 - "\x69\x00\x74\x0B\xA2\x16\xAD\x44" 7857 - "\xDB\x4F\xE6\x7D\x14\x88\x1F\xB6" 7858 - "\x2A\xC1\x58\xEF\x63\xFA\x91\x05" 7859 - "\x9C\x33\xCA\x3E\xD5\x6C\x03\x77" 7860 - "\x0E\xA5\x19\xB0\x47\xDE\x52\xE9" 7861 - "\x80\x17\x8B\x22\xB9\x2D\xC4\x5B" 7862 - "\xF2\x66\xFD\x94\x08\x9F\x36\xCD" 7863 - "\x41\xD8\x6F\x06\x7A\x11\xA8\x1C" 7864 - "\xB3\x4A\xE1\x55\xEC\x83\x1A\x8E" 7865 - "\x25\xBC\x30\xC7\x5E\xF5\x69\x00" 7866 - "\x97\x0B\xA2\x39\xD0\x44\xDB\x72" 7867 - "\x09\x7D\x14\xAB\x1F\xB6\x4D\xE4" 7868 - "\x58\xEF\x86\x1D\x91\x28\xBF\x33" 7869 - "\xCA\x61\xF8\x6C\x03\x9A\x0E\xA5" 7870 - "\x3C\xD3\x47\xDE\x75\x0C\x80\x17" 7871 - "\xAE\x22\xB9\x50\xE7\x5B\xF2\x89" 7872 - "\x20\x94\x2B\xC2\x36\xCD\x64\xFB" 7873 - "\x6F\x06\x9D\x11\xA8\x3F\xD6\x4A" 7874 - "\xE1\x78\x0F\x83\x1A\xB1\x25\xBC" 7875 - "\x53\xEA\x5E\xF5\x8C\x00\x97\x2E" 7876 - "\xC5\x39\xD0\x67\xFE\x72\x09\xA0" 7877 - "\x14\xAB\x42\xD9\x4D\xE4\x7B\x12" 7878 - "\x86\x1D\xB4\x28\xBF\x56\xED\x61" 7879 - "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 7880 - "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 7881 - "\xDC\x50\xE7\x7E\x15\x89\x20\xB7", 7882 - .rlen = 496, 7883 - .also_non_np = 1, 7884 - .np = 3, 7885 - .tap = { 496 - 20, 4, 16 }, 7886 - }, 7887 - }; 7888 - 7889 - static const struct cipher_testvec tf_ctr_enc_tv_template[] = { 9674 + static const struct cipher_testvec tf_ctr_tv_template[] = { 7890 9675 { /* Generated with Crypto++ */ 7891 9676 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 7892 9677 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" ··· 7712 9863 .klen = 32, 7713 9864 .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F" 7714 9865 "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64", 7715 - .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 9866 + .ptext = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 7716 9867 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 7717 9868 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 7718 9869 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" ··· 7774 9925 "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 7775 9926 "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 7776 9927 "\xDC\x50\xE7\x7E\x15\x89\x20\xB7", 7777 - .ilen = 496, 7778 - .result = "\xDF\xDD\x69\xFA\xB0\x2E\xFD\xFE" 9928 + .ctext = "\xDF\xDD\x69\xFA\xB0\x2E\xFD\xFE" 7779 9929 "\x70\x9E\xC5\x4B\xC9\xD4\xA1\x30" 7780 9930 "\x26\x9B\x89\xA1\xEE\x43\xE0\x52" 7781 9931 "\x55\x17\x4E\xC7\x0E\x33\x1F\xF1" ··· 7836 9988 "\xE8\x47\x2A\x4D\xFD\xA1\xBC\xE3" 7837 9989 "\xB9\x32\xE2\xC1\x82\xAC\xFE\xCC" 7838 9990 "\xC5\xC9\x7F\x9E\xCF\x33\x7A\xDF", 7839 - .rlen = 496, 9991 + .len = 496, 7840 9992 }, { /* Generated with Crypto++ */ 7841 9993 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 7842 9994 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" ··· 7845 9997 .klen = 32, 7846 9998 .iv = "\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF" 7847 9999 "\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFD", 7848 - .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 10000 + .ptext = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 7849 10001 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 7850 10002 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 7851 10003 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" ··· 7907 10059 "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 7908 10060 "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 7909 10061 "\xDC\x50\xE7\x7E\x15\x89\x20\xB7", 7910 - .ilen = 496, 7911 - .result = "\xEB\x44\xAF\x49\x27\xB8\xFB\x44" 10062 + .ctext = "\xEB\x44\xAF\x49\x27\xB8\xFB\x44" 7912 10063 "\x4C\xA6\xC3\x0C\x8B\xD0\x01\x0C" 7913 10064 "\x53\xC8\x16\x38\xDE\x40\x4F\x91" 7914 10065 "\x25\x6D\x4C\xA0\x9A\x87\x1E\xDA" ··· 7969 10122 "\x4C\xB6\xF8\xF4\x5F\x48\x52\x54" 7970 10123 "\x94\x63\xA8\x4E\xCF\xD2\x1B\x1B" 7971 10124 "\x22\x18\x6A\xAF\x6E\x3E\xE1\x0D", 7972 - .rlen = 496, 10125 + .len = 496, 7973 10126 }, { /* Generated with Crypto++ */ 7974 10127 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 7975 10128 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" ··· 7978 10131 .klen = 32, 7979 10132 .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F" 7980 10133 "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64", 7981 - .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 10134 + .ptext = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 7982 10135 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 7983 10136 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 7984 10137 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" ··· 8041 10194 "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 8042 10195 "\xDC\x50\xE7\x7E\x15\x89\x20\xB7" 8043 10196 "\x2B\xC2\x59", 8044 - .ilen = 499, 8045 - .result = "\xDF\xDD\x69\xFA\xB0\x2E\xFD\xFE" 10197 + .ctext = "\xDF\xDD\x69\xFA\xB0\x2E\xFD\xFE" 8046 10198 "\x70\x9E\xC5\x4B\xC9\xD4\xA1\x30" 8047 10199 "\x26\x9B\x89\xA1\xEE\x43\xE0\x52" 8048 10200 "\x55\x17\x4E\xC7\x0E\x33\x1F\xF1" ··· 8104 10258 "\xB9\x32\xE2\xC1\x82\xAC\xFE\xCC" 8105 10259 "\xC5\xC9\x7F\x9E\xCF\x33\x7A\xDF" 8106 10260 "\x6C\x82\x9D", 8107 - .rlen = 499, 10261 + .len = 499, 8108 10262 .also_non_np = 1, 8109 10263 .np = 2, 8110 10264 .tap = { 499 - 16, 16 }, 8111 10265 }, 8112 10266 }; 8113 10267 8114 - static const struct cipher_testvec tf_ctr_dec_tv_template[] = { 8115 - { /* Generated with Crypto++ */ 8116 - .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 8117 - "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" 8118 - "\x27\x04\xE1\x27\x04\xE1\xBE\x9B" 8119 - "\x78\xBE\x9B\x78\x55\x32\x0F\x55", 8120 - .klen = 32, 8121 - .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F" 8122 - "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64", 8123 - .input = "\xDF\xDD\x69\xFA\xB0\x2E\xFD\xFE" 8124 - "\x70\x9E\xC5\x4B\xC9\xD4\xA1\x30" 8125 - "\x26\x9B\x89\xA1\xEE\x43\xE0\x52" 8126 - "\x55\x17\x4E\xC7\x0E\x33\x1F\xF1" 8127 - "\x9F\x8D\x40\x9F\x24\xFD\x92\xA0" 8128 - "\xBC\x8F\x35\xDD\x67\x38\xD8\xAA" 8129 - "\xCF\xF8\x48\xCA\xFB\xE4\x5C\x60" 8130 - "\x01\x41\x21\x12\x38\xAB\x52\x4F" 8131 - "\xA8\x57\x20\xE0\x21\x6A\x17\x0D" 8132 - "\x0E\xF9\x8E\x49\x42\x00\x3C\x94" 8133 - "\x14\xC0\xD0\x8D\x8A\x98\xEB\x29" 8134 - "\xEC\xAE\x96\x44\xC0\x3C\x48\xDC" 8135 - "\x29\x35\x25\x2F\xE7\x11\x6C\x68" 8136 - "\xC8\x67\x0A\x2F\xF4\x07\xBE\xF9" 8137 - "\x2C\x31\x87\x40\xAB\xB2\xB6\xFA" 8138 - "\xD2\xC9\x6D\x5C\x50\xE9\xE6\x7E" 8139 - "\xE3\x0A\xD2\xD5\x6D\x8D\x64\x9E" 8140 - "\x70\xCE\x03\x76\xDD\xE0\xF0\x8C" 8141 - "\x84\x86\x8B\x6A\xFE\xC7\xF9\x69" 8142 - "\x2E\xFE\xFC\xC2\xC4\x1A\x55\x58" 8143 - "\xB3\xBE\xE2\x7E\xED\x39\x42\x6C" 8144 - "\xB4\x42\x97\x9A\xEC\xE1\x0A\x06" 8145 - "\x02\xC5\x03\x9D\xC4\x48\x15\x66" 8146 - "\x35\x6A\xC2\xC9\xA2\x26\x30\xBB" 8147 - "\xDB\x2D\xC8\x08\x2B\xA0\x29\x1A" 8148 - "\x23\x61\x48\xEA\x80\x04\x27\xAA" 8149 - "\x69\x49\xE8\xE8\x4A\x83\x6B\x5A" 8150 - "\xCA\x7C\xD3\xB1\xB5\x0B\xCC\x23" 8151 - "\x74\x1F\xA9\x87\xCD\xED\xC0\x2D" 8152 - "\xBF\xEB\xCF\x16\x2D\x2A\x2E\x1D" 8153 - "\x96\xBA\x36\x11\x45\x41\xDA\xCE" 8154 - "\xA4\x48\x80\x8B\x06\xF4\x98\x89" 8155 - "\x8B\x23\x08\x53\xF4\xD4\x5A\x24" 8156 - "\x8B\xF8\x43\x73\xD1\xEE\xC4\xB0" 8157 - "\xF8\xFE\x09\x0C\x75\x05\x38\x0B" 8158 - "\x7C\x81\xDE\x9D\xE4\x61\x37\x63" 8159 - "\x63\xAD\x12\xD2\x04\xB9\xCE\x45" 8160 - "\x5A\x1A\x6E\xB3\x78\x2A\xA4\x74" 8161 - "\x86\xD0\xE3\xFF\xDA\x38\x9C\xB5" 8162 - "\xB8\xB1\xDB\x38\x2F\xC5\x6A\xB4" 8163 - "\xEB\x6E\x96\xE8\x43\x80\xB5\x51" 8164 - "\x61\x2D\x48\xAA\x07\x65\x11\x8C" 8165 - "\x48\xE3\x90\x7E\x78\x3A\xEC\x97" 8166 - "\x05\x3D\x84\xE7\x90\x2B\xAA\xBD" 8167 - "\x83\x29\x0E\x1A\x81\x73\x7B\xE0" 8168 - "\x7A\x01\x4A\x37\x3B\x77\x7F\x8D" 8169 - "\x49\xA4\x2F\x6E\xBE\x68\x99\x08" 8170 - "\x99\xAA\x4C\x12\x04\xAE\x1F\x77" 8171 - "\x35\x88\xF1\x65\x06\x0A\x0B\x4D" 8172 - "\x47\xF9\x50\x38\x5D\x71\xF9\x6E" 8173 - "\xDE\xEC\x61\x35\x2C\x4C\x96\x50" 8174 - "\xE8\x28\x93\x9C\x7E\x01\xC6\x04" 8175 - "\xB2\xD6\xBC\x6C\x17\xEB\xC1\x7D" 8176 - "\x11\xE9\x43\x83\x76\xAA\x53\x37" 8177 - "\x0C\x1D\x39\x89\x53\x72\x09\x7E" 8178 - "\xD9\x85\x16\x04\xA5\x2C\x05\x6F" 8179 - "\x17\x0C\x6E\x66\xAA\x84\xA7\xD9" 8180 - "\xE2\xD9\xC4\xEB\x43\x3E\xB1\x8D" 8181 - "\x7C\x36\xC7\x71\x70\x9C\x10\xD8" 8182 - "\xE8\x47\x2A\x4D\xFD\xA1\xBC\xE3" 8183 - "\xB9\x32\xE2\xC1\x82\xAC\xFE\xCC" 8184 - "\xC5\xC9\x7F\x9E\xCF\x33\x7A\xDF", 8185 - .ilen = 496, 8186 - .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 8187 - "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 8188 - "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 8189 - "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" 8190 - "\x1E\x92\x29\xC0\x34\xCB\x62\xF9" 8191 - "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48" 8192 - "\xDF\x76\x0D\x81\x18\xAF\x23\xBA" 8193 - "\x51\xE8\x5C\xF3\x8A\x21\x95\x2C" 8194 - "\xC3\x37\xCE\x65\xFC\x70\x07\x9E" 8195 - "\x12\xA9\x40\xD7\x4B\xE2\x79\x10" 8196 - "\x84\x1B\xB2\x26\xBD\x54\xEB\x5F" 8197 - "\xF6\x8D\x01\x98\x2F\xC6\x3A\xD1" 8198 - "\x68\xFF\x73\x0A\xA1\x15\xAC\x43" 8199 - "\xDA\x4E\xE5\x7C\x13\x87\x1E\xB5" 8200 - "\x29\xC0\x57\xEE\x62\xF9\x90\x04" 8201 - "\x9B\x32\xC9\x3D\xD4\x6B\x02\x76" 8202 - "\x0D\xA4\x18\xAF\x46\xDD\x51\xE8" 8203 - "\x7F\x16\x8A\x21\xB8\x2C\xC3\x5A" 8204 - "\xF1\x65\xFC\x93\x07\x9E\x35\xCC" 8205 - "\x40\xD7\x6E\x05\x79\x10\xA7\x1B" 8206 - "\xB2\x49\xE0\x54\xEB\x82\x19\x8D" 8207 - "\x24\xBB\x2F\xC6\x5D\xF4\x68\xFF" 8208 - "\x96\x0A\xA1\x38\xCF\x43\xDA\x71" 8209 - "\x08\x7C\x13\xAA\x1E\xB5\x4C\xE3" 8210 - "\x57\xEE\x85\x1C\x90\x27\xBE\x32" 8211 - "\xC9\x60\xF7\x6B\x02\x99\x0D\xA4" 8212 - "\x3B\xD2\x46\xDD\x74\x0B\x7F\x16" 8213 - "\xAD\x21\xB8\x4F\xE6\x5A\xF1\x88" 8214 - "\x1F\x93\x2A\xC1\x35\xCC\x63\xFA" 8215 - "\x6E\x05\x9C\x10\xA7\x3E\xD5\x49" 8216 - "\xE0\x77\x0E\x82\x19\xB0\x24\xBB" 8217 - "\x52\xE9\x5D\xF4\x8B\x22\x96\x2D" 8218 - "\xC4\x38\xCF\x66\xFD\x71\x08\x9F" 8219 - "\x13\xAA\x41\xD8\x4C\xE3\x7A\x11" 8220 - "\x85\x1C\xB3\x27\xBE\x55\xEC\x60" 8221 - "\xF7\x8E\x02\x99\x30\xC7\x3B\xD2" 8222 - "\x69\x00\x74\x0B\xA2\x16\xAD\x44" 8223 - "\xDB\x4F\xE6\x7D\x14\x88\x1F\xB6" 8224 - "\x2A\xC1\x58\xEF\x63\xFA\x91\x05" 8225 - "\x9C\x33\xCA\x3E\xD5\x6C\x03\x77" 8226 - "\x0E\xA5\x19\xB0\x47\xDE\x52\xE9" 8227 - "\x80\x17\x8B\x22\xB9\x2D\xC4\x5B" 8228 - "\xF2\x66\xFD\x94\x08\x9F\x36\xCD" 8229 - "\x41\xD8\x6F\x06\x7A\x11\xA8\x1C" 8230 - "\xB3\x4A\xE1\x55\xEC\x83\x1A\x8E" 8231 - "\x25\xBC\x30\xC7\x5E\xF5\x69\x00" 8232 - "\x97\x0B\xA2\x39\xD0\x44\xDB\x72" 8233 - "\x09\x7D\x14\xAB\x1F\xB6\x4D\xE4" 8234 - "\x58\xEF\x86\x1D\x91\x28\xBF\x33" 8235 - "\xCA\x61\xF8\x6C\x03\x9A\x0E\xA5" 8236 - "\x3C\xD3\x47\xDE\x75\x0C\x80\x17" 8237 - "\xAE\x22\xB9\x50\xE7\x5B\xF2\x89" 8238 - "\x20\x94\x2B\xC2\x36\xCD\x64\xFB" 8239 - "\x6F\x06\x9D\x11\xA8\x3F\xD6\x4A" 8240 - "\xE1\x78\x0F\x83\x1A\xB1\x25\xBC" 8241 - "\x53\xEA\x5E\xF5\x8C\x00\x97\x2E" 8242 - "\xC5\x39\xD0\x67\xFE\x72\x09\xA0" 8243 - "\x14\xAB\x42\xD9\x4D\xE4\x7B\x12" 8244 - "\x86\x1D\xB4\x28\xBF\x56\xED\x61" 8245 - "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 8246 - "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 8247 - "\xDC\x50\xE7\x7E\x15\x89\x20\xB7", 8248 - .rlen = 496, 8249 - }, { /* Generated with Crypto++ */ 8250 - .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 8251 - "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" 8252 - "\x27\x04\xE1\x27\x04\xE1\xBE\x9B" 8253 - "\x78\xBE\x9B\x78\x55\x32\x0F\x55", 8254 - .klen = 32, 8255 - .iv = "\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF" 8256 - "\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFD", 8257 - .input = "\xEB\x44\xAF\x49\x27\xB8\xFB\x44" 8258 - "\x4C\xA6\xC3\x0C\x8B\xD0\x01\x0C" 8259 - "\x53\xC8\x16\x38\xDE\x40\x4F\x91" 8260 - "\x25\x6D\x4C\xA0\x9A\x87\x1E\xDA" 8261 - "\x88\x7E\x89\xE9\x67\x2B\x83\xA2" 8262 - "\x5F\x2E\x23\x3E\x45\xB9\x77\x7B" 8263 - "\xA6\x7E\x47\x36\x81\x9F\x9B\xF3" 8264 - "\xE0\xF0\xD7\x47\xA9\xC8\xEF\x33" 8265 - "\x0C\x43\xFE\x67\x50\x0A\x2C\x3E" 8266 - "\xA0\xE1\x25\x8E\x80\x07\x4A\xC0" 8267 - "\x64\x89\x9F\x6A\x27\x96\x07\xA6" 8268 - "\x9B\xC8\x1B\x21\x60\xAE\x5D\x01" 8269 - "\xE2\xCD\xC8\xAA\x6C\x9D\x1C\x34" 8270 - "\x39\x18\x09\xA4\x82\x59\x78\xE7" 8271 - "\xFC\x59\x65\xF2\x94\xFF\xFB\xE2" 8272 - "\x3C\xDA\xB1\x90\x95\xBF\x91\xE3" 8273 - "\xE6\x87\x31\x9E\x16\x85\xAD\xB1" 8274 - "\x4C\xAE\x43\x4D\x19\x58\xB5\x5E" 8275 - "\x2E\xF5\x09\xAA\x39\xF4\xC0\xB3" 8276 - "\xD4\x4D\xDB\x73\x7A\xD4\xF1\xBF" 8277 - "\x89\x16\x4D\x2D\xA2\x26\x33\x72" 8278 - "\x18\x33\x7E\xD6\xD2\x16\xA4\x54" 8279 - "\xF4\x8C\xB3\x52\xDF\x21\x9C\xEB" 8280 - "\xBF\x49\xD3\xF9\x05\x06\xCB\xD2" 8281 - "\xA9\xD2\x3B\x6E\x19\x8C\xBC\x19" 8282 - "\xAB\x89\xD6\xD8\xCD\x56\x89\x5E" 8283 - "\xAC\x00\xE3\x50\x63\x4A\x80\x9A" 8284 - "\x05\xBC\x50\x39\xD3\x32\xD9\x0D" 8285 - "\xE3\x20\x0D\x75\x54\xEC\xE6\x31" 8286 - "\x14\xB9\x3A\x59\x00\x43\x37\x8E" 8287 - "\x8C\x5A\x79\x62\x14\x76\x8A\xAE" 8288 - "\x8F\xCC\xA1\x6C\x38\x78\xDD\x2D" 8289 - "\x8B\x6D\xEA\xBD\x7B\x25\xFF\x60" 8290 - "\xC9\x87\xB1\x79\x1E\xA5\x86\x68" 8291 - "\x81\xB4\xE2\xC1\x05\x7D\x3A\x73" 8292 - "\xD0\xDA\x75\x77\x9E\x05\x27\xF1" 8293 - "\x08\xA9\x66\x64\x6C\xBC\x82\x17" 8294 - "\x2C\x23\x5F\x62\x4D\x02\x1A\x58" 8295 - "\xE7\xB7\x23\x6D\xE2\x20\xDA\xEF" 8296 - "\xB4\xB3\x3F\xB2\x2B\x69\x98\x83" 8297 - "\x95\x87\x13\x57\x60\xD7\xB5\xB1" 8298 - "\xEE\x0A\x2F\x95\x36\x4C\x76\x5D" 8299 - "\x5F\xD9\x19\xED\xB9\xA5\x48\xBF" 8300 - "\xC8\xAB\x0F\x71\xCC\x61\x8E\x0A" 8301 - "\xD0\x29\x44\xA8\xB9\xC1\xE8\xC8" 8302 - "\xC9\xA8\x28\x81\xFB\x50\xF2\xF0" 8303 - "\x26\xAE\x39\xB8\x91\xCD\xA8\xAC" 8304 - "\xDE\x55\x1B\x50\x14\x53\x44\x17" 8305 - "\x54\x46\xFC\xB1\xE4\x07\x6B\x9A" 8306 - "\x01\x14\xF0\x2E\x2E\xDB\x46\x1B" 8307 - "\x1A\x09\x97\xA9\xB6\x97\x79\x06" 8308 - "\xFB\xCB\x85\xCF\xDD\xA1\x41\xB1" 8309 - "\x00\xAA\xF7\xE0\x89\x73\xFB\xE5" 8310 - "\xBF\x84\xDB\xC9\xCD\xC4\xA2\x0D" 8311 - "\x3B\xAC\xF9\xDF\x96\xBF\x88\x23" 8312 - "\x41\x67\xA1\x24\x99\x7E\xCC\x9B" 8313 - "\x02\x8F\x6A\x49\xF6\x25\xBA\x7A" 8314 - "\xF4\x78\xFD\x79\x62\x63\x4F\x14" 8315 - "\xD6\x11\x11\x04\x05\x5F\x7E\xEA" 8316 - "\x4C\xB6\xF8\xF4\x5F\x48\x52\x54" 8317 - "\x94\x63\xA8\x4E\xCF\xD2\x1B\x1B" 8318 - "\x22\x18\x6A\xAF\x6E\x3E\xE1\x0D", 8319 - .ilen = 496, 8320 - .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 8321 - "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 8322 - "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 8323 - "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" 8324 - "\x1E\x92\x29\xC0\x34\xCB\x62\xF9" 8325 - "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48" 8326 - "\xDF\x76\x0D\x81\x18\xAF\x23\xBA" 8327 - "\x51\xE8\x5C\xF3\x8A\x21\x95\x2C" 8328 - "\xC3\x37\xCE\x65\xFC\x70\x07\x9E" 8329 - "\x12\xA9\x40\xD7\x4B\xE2\x79\x10" 8330 - "\x84\x1B\xB2\x26\xBD\x54\xEB\x5F" 8331 - "\xF6\x8D\x01\x98\x2F\xC6\x3A\xD1" 8332 - "\x68\xFF\x73\x0A\xA1\x15\xAC\x43" 8333 - "\xDA\x4E\xE5\x7C\x13\x87\x1E\xB5" 8334 - "\x29\xC0\x57\xEE\x62\xF9\x90\x04" 8335 - "\x9B\x32\xC9\x3D\xD4\x6B\x02\x76" 8336 - "\x0D\xA4\x18\xAF\x46\xDD\x51\xE8" 8337 - "\x7F\x16\x8A\x21\xB8\x2C\xC3\x5A" 8338 - "\xF1\x65\xFC\x93\x07\x9E\x35\xCC" 8339 - "\x40\xD7\x6E\x05\x79\x10\xA7\x1B" 8340 - "\xB2\x49\xE0\x54\xEB\x82\x19\x8D" 8341 - "\x24\xBB\x2F\xC6\x5D\xF4\x68\xFF" 8342 - "\x96\x0A\xA1\x38\xCF\x43\xDA\x71" 8343 - "\x08\x7C\x13\xAA\x1E\xB5\x4C\xE3" 8344 - "\x57\xEE\x85\x1C\x90\x27\xBE\x32" 8345 - "\xC9\x60\xF7\x6B\x02\x99\x0D\xA4" 8346 - "\x3B\xD2\x46\xDD\x74\x0B\x7F\x16" 8347 - "\xAD\x21\xB8\x4F\xE6\x5A\xF1\x88" 8348 - "\x1F\x93\x2A\xC1\x35\xCC\x63\xFA" 8349 - "\x6E\x05\x9C\x10\xA7\x3E\xD5\x49" 8350 - "\xE0\x77\x0E\x82\x19\xB0\x24\xBB" 8351 - "\x52\xE9\x5D\xF4\x8B\x22\x96\x2D" 8352 - "\xC4\x38\xCF\x66\xFD\x71\x08\x9F" 8353 - "\x13\xAA\x41\xD8\x4C\xE3\x7A\x11" 8354 - "\x85\x1C\xB3\x27\xBE\x55\xEC\x60" 8355 - "\xF7\x8E\x02\x99\x30\xC7\x3B\xD2" 8356 - "\x69\x00\x74\x0B\xA2\x16\xAD\x44" 8357 - "\xDB\x4F\xE6\x7D\x14\x88\x1F\xB6" 8358 - "\x2A\xC1\x58\xEF\x63\xFA\x91\x05" 8359 - "\x9C\x33\xCA\x3E\xD5\x6C\x03\x77" 8360 - "\x0E\xA5\x19\xB0\x47\xDE\x52\xE9" 8361 - "\x80\x17\x8B\x22\xB9\x2D\xC4\x5B" 8362 - "\xF2\x66\xFD\x94\x08\x9F\x36\xCD" 8363 - "\x41\xD8\x6F\x06\x7A\x11\xA8\x1C" 8364 - "\xB3\x4A\xE1\x55\xEC\x83\x1A\x8E" 8365 - "\x25\xBC\x30\xC7\x5E\xF5\x69\x00" 8366 - "\x97\x0B\xA2\x39\xD0\x44\xDB\x72" 8367 - "\x09\x7D\x14\xAB\x1F\xB6\x4D\xE4" 8368 - "\x58\xEF\x86\x1D\x91\x28\xBF\x33" 8369 - "\xCA\x61\xF8\x6C\x03\x9A\x0E\xA5" 8370 - "\x3C\xD3\x47\xDE\x75\x0C\x80\x17" 8371 - "\xAE\x22\xB9\x50\xE7\x5B\xF2\x89" 8372 - "\x20\x94\x2B\xC2\x36\xCD\x64\xFB" 8373 - "\x6F\x06\x9D\x11\xA8\x3F\xD6\x4A" 8374 - "\xE1\x78\x0F\x83\x1A\xB1\x25\xBC" 8375 - "\x53\xEA\x5E\xF5\x8C\x00\x97\x2E" 8376 - "\xC5\x39\xD0\x67\xFE\x72\x09\xA0" 8377 - "\x14\xAB\x42\xD9\x4D\xE4\x7B\x12" 8378 - "\x86\x1D\xB4\x28\xBF\x56\xED\x61" 8379 - "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 8380 - "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 8381 - "\xDC\x50\xE7\x7E\x15\x89\x20\xB7", 8382 - .rlen = 496, 8383 - }, { /* Generated with Crypto++ */ 8384 - .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 8385 - "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" 8386 - "\x27\x04\xE1\x27\x04\xE1\xBE\x9B" 8387 - "\x78\xBE\x9B\x78\x55\x32\x0F\x55", 8388 - .klen = 32, 8389 - .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F" 8390 - "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64", 8391 - .input = "\xDF\xDD\x69\xFA\xB0\x2E\xFD\xFE" 8392 - "\x70\x9E\xC5\x4B\xC9\xD4\xA1\x30" 8393 - "\x26\x9B\x89\xA1\xEE\x43\xE0\x52" 8394 - "\x55\x17\x4E\xC7\x0E\x33\x1F\xF1" 8395 - "\x9F\x8D\x40\x9F\x24\xFD\x92\xA0" 8396 - "\xBC\x8F\x35\xDD\x67\x38\xD8\xAA" 8397 - "\xCF\xF8\x48\xCA\xFB\xE4\x5C\x60" 8398 - "\x01\x41\x21\x12\x38\xAB\x52\x4F" 8399 - "\xA8\x57\x20\xE0\x21\x6A\x17\x0D" 8400 - "\x0E\xF9\x8E\x49\x42\x00\x3C\x94" 8401 - "\x14\xC0\xD0\x8D\x8A\x98\xEB\x29" 8402 - "\xEC\xAE\x96\x44\xC0\x3C\x48\xDC" 8403 - "\x29\x35\x25\x2F\xE7\x11\x6C\x68" 8404 - "\xC8\x67\x0A\x2F\xF4\x07\xBE\xF9" 8405 - "\x2C\x31\x87\x40\xAB\xB2\xB6\xFA" 8406 - "\xD2\xC9\x6D\x5C\x50\xE9\xE6\x7E" 8407 - "\xE3\x0A\xD2\xD5\x6D\x8D\x64\x9E" 8408 - "\x70\xCE\x03\x76\xDD\xE0\xF0\x8C" 8409 - "\x84\x86\x8B\x6A\xFE\xC7\xF9\x69" 8410 - "\x2E\xFE\xFC\xC2\xC4\x1A\x55\x58" 8411 - "\xB3\xBE\xE2\x7E\xED\x39\x42\x6C" 8412 - "\xB4\x42\x97\x9A\xEC\xE1\x0A\x06" 8413 - "\x02\xC5\x03\x9D\xC4\x48\x15\x66" 8414 - "\x35\x6A\xC2\xC9\xA2\x26\x30\xBB" 8415 - "\xDB\x2D\xC8\x08\x2B\xA0\x29\x1A" 8416 - "\x23\x61\x48\xEA\x80\x04\x27\xAA" 8417 - "\x69\x49\xE8\xE8\x4A\x83\x6B\x5A" 8418 - "\xCA\x7C\xD3\xB1\xB5\x0B\xCC\x23" 8419 - "\x74\x1F\xA9\x87\xCD\xED\xC0\x2D" 8420 - "\xBF\xEB\xCF\x16\x2D\x2A\x2E\x1D" 8421 - "\x96\xBA\x36\x11\x45\x41\xDA\xCE" 8422 - "\xA4\x48\x80\x8B\x06\xF4\x98\x89" 8423 - "\x8B\x23\x08\x53\xF4\xD4\x5A\x24" 8424 - "\x8B\xF8\x43\x73\xD1\xEE\xC4\xB0" 8425 - "\xF8\xFE\x09\x0C\x75\x05\x38\x0B" 8426 - "\x7C\x81\xDE\x9D\xE4\x61\x37\x63" 8427 - "\x63\xAD\x12\xD2\x04\xB9\xCE\x45" 8428 - "\x5A\x1A\x6E\xB3\x78\x2A\xA4\x74" 8429 - "\x86\xD0\xE3\xFF\xDA\x38\x9C\xB5" 8430 - "\xB8\xB1\xDB\x38\x2F\xC5\x6A\xB4" 8431 - "\xEB\x6E\x96\xE8\x43\x80\xB5\x51" 8432 - "\x61\x2D\x48\xAA\x07\x65\x11\x8C" 8433 - "\x48\xE3\x90\x7E\x78\x3A\xEC\x97" 8434 - "\x05\x3D\x84\xE7\x90\x2B\xAA\xBD" 8435 - "\x83\x29\x0E\x1A\x81\x73\x7B\xE0" 8436 - "\x7A\x01\x4A\x37\x3B\x77\x7F\x8D" 8437 - "\x49\xA4\x2F\x6E\xBE\x68\x99\x08" 8438 - "\x99\xAA\x4C\x12\x04\xAE\x1F\x77" 8439 - "\x35\x88\xF1\x65\x06\x0A\x0B\x4D" 8440 - "\x47\xF9\x50\x38\x5D\x71\xF9\x6E" 8441 - "\xDE\xEC\x61\x35\x2C\x4C\x96\x50" 8442 - "\xE8\x28\x93\x9C\x7E\x01\xC6\x04" 8443 - "\xB2\xD6\xBC\x6C\x17\xEB\xC1\x7D" 8444 - "\x11\xE9\x43\x83\x76\xAA\x53\x37" 8445 - "\x0C\x1D\x39\x89\x53\x72\x09\x7E" 8446 - "\xD9\x85\x16\x04\xA5\x2C\x05\x6F" 8447 - "\x17\x0C\x6E\x66\xAA\x84\xA7\xD9" 8448 - "\xE2\xD9\xC4\xEB\x43\x3E\xB1\x8D" 8449 - "\x7C\x36\xC7\x71\x70\x9C\x10\xD8" 8450 - "\xE8\x47\x2A\x4D\xFD\xA1\xBC\xE3" 8451 - "\xB9\x32\xE2\xC1\x82\xAC\xFE\xCC" 8452 - "\xC5\xC9\x7F\x9E\xCF\x33\x7A\xDF" 8453 - "\x6C\x82\x9D", 8454 - .ilen = 499, 8455 - .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 8456 - "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 8457 - "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 8458 - "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" 8459 - "\x1E\x92\x29\xC0\x34\xCB\x62\xF9" 8460 - "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48" 8461 - "\xDF\x76\x0D\x81\x18\xAF\x23\xBA" 8462 - "\x51\xE8\x5C\xF3\x8A\x21\x95\x2C" 8463 - "\xC3\x37\xCE\x65\xFC\x70\x07\x9E" 8464 - "\x12\xA9\x40\xD7\x4B\xE2\x79\x10" 8465 - "\x84\x1B\xB2\x26\xBD\x54\xEB\x5F" 8466 - "\xF6\x8D\x01\x98\x2F\xC6\x3A\xD1" 8467 - "\x68\xFF\x73\x0A\xA1\x15\xAC\x43" 8468 - "\xDA\x4E\xE5\x7C\x13\x87\x1E\xB5" 8469 - "\x29\xC0\x57\xEE\x62\xF9\x90\x04" 8470 - "\x9B\x32\xC9\x3D\xD4\x6B\x02\x76" 8471 - "\x0D\xA4\x18\xAF\x46\xDD\x51\xE8" 8472 - "\x7F\x16\x8A\x21\xB8\x2C\xC3\x5A" 8473 - "\xF1\x65\xFC\x93\x07\x9E\x35\xCC" 8474 - "\x40\xD7\x6E\x05\x79\x10\xA7\x1B" 8475 - "\xB2\x49\xE0\x54\xEB\x82\x19\x8D" 8476 - "\x24\xBB\x2F\xC6\x5D\xF4\x68\xFF" 8477 - "\x96\x0A\xA1\x38\xCF\x43\xDA\x71" 8478 - "\x08\x7C\x13\xAA\x1E\xB5\x4C\xE3" 8479 - "\x57\xEE\x85\x1C\x90\x27\xBE\x32" 8480 - "\xC9\x60\xF7\x6B\x02\x99\x0D\xA4" 8481 - "\x3B\xD2\x46\xDD\x74\x0B\x7F\x16" 8482 - "\xAD\x21\xB8\x4F\xE6\x5A\xF1\x88" 8483 - "\x1F\x93\x2A\xC1\x35\xCC\x63\xFA" 8484 - "\x6E\x05\x9C\x10\xA7\x3E\xD5\x49" 8485 - "\xE0\x77\x0E\x82\x19\xB0\x24\xBB" 8486 - "\x52\xE9\x5D\xF4\x8B\x22\x96\x2D" 8487 - "\xC4\x38\xCF\x66\xFD\x71\x08\x9F" 8488 - "\x13\xAA\x41\xD8\x4C\xE3\x7A\x11" 8489 - "\x85\x1C\xB3\x27\xBE\x55\xEC\x60" 8490 - "\xF7\x8E\x02\x99\x30\xC7\x3B\xD2" 8491 - "\x69\x00\x74\x0B\xA2\x16\xAD\x44" 8492 - "\xDB\x4F\xE6\x7D\x14\x88\x1F\xB6" 8493 - "\x2A\xC1\x58\xEF\x63\xFA\x91\x05" 8494 - "\x9C\x33\xCA\x3E\xD5\x6C\x03\x77" 8495 - "\x0E\xA5\x19\xB0\x47\xDE\x52\xE9" 8496 - "\x80\x17\x8B\x22\xB9\x2D\xC4\x5B" 8497 - "\xF2\x66\xFD\x94\x08\x9F\x36\xCD" 8498 - "\x41\xD8\x6F\x06\x7A\x11\xA8\x1C" 8499 - "\xB3\x4A\xE1\x55\xEC\x83\x1A\x8E" 8500 - "\x25\xBC\x30\xC7\x5E\xF5\x69\x00" 8501 - "\x97\x0B\xA2\x39\xD0\x44\xDB\x72" 8502 - "\x09\x7D\x14\xAB\x1F\xB6\x4D\xE4" 8503 - "\x58\xEF\x86\x1D\x91\x28\xBF\x33" 8504 - "\xCA\x61\xF8\x6C\x03\x9A\x0E\xA5" 8505 - "\x3C\xD3\x47\xDE\x75\x0C\x80\x17" 8506 - "\xAE\x22\xB9\x50\xE7\x5B\xF2\x89" 8507 - "\x20\x94\x2B\xC2\x36\xCD\x64\xFB" 8508 - "\x6F\x06\x9D\x11\xA8\x3F\xD6\x4A" 8509 - "\xE1\x78\x0F\x83\x1A\xB1\x25\xBC" 8510 - "\x53\xEA\x5E\xF5\x8C\x00\x97\x2E" 8511 - "\xC5\x39\xD0\x67\xFE\x72\x09\xA0" 8512 - "\x14\xAB\x42\xD9\x4D\xE4\x7B\x12" 8513 - "\x86\x1D\xB4\x28\xBF\x56\xED\x61" 8514 - "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 8515 - "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 8516 - "\xDC\x50\xE7\x7E\x15\x89\x20\xB7" 8517 - "\x2B\xC2\x59", 8518 - .rlen = 499, 8519 - .also_non_np = 1, 8520 - .np = 2, 8521 - .tap = { 499 - 16, 16 }, 8522 - }, 8523 - }; 8524 - 8525 - static const struct cipher_testvec tf_lrw_enc_tv_template[] = { 10268 + static const struct cipher_testvec tf_lrw_tv_template[] = { 8526 10269 /* Generated from AES-LRW test vectors */ 8527 10270 { 8528 10271 .key = "\x45\x62\xac\x25\xf8\x28\x17\x6d" ··· 8121 10686 .klen = 32, 8122 10687 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 8123 10688 "\x00\x00\x00\x00\x00\x00\x00\x01", 8124 - .input = "\x30\x31\x32\x33\x34\x35\x36\x37" 10689 + .ptext = "\x30\x31\x32\x33\x34\x35\x36\x37" 8125 10690 "\x38\x39\x41\x42\x43\x44\x45\x46", 8126 - .ilen = 16, 8127 - .result = "\xa1\x6c\x50\x69\x26\xa4\xef\x7b" 10691 + .ctext = "\xa1\x6c\x50\x69\x26\xa4\xef\x7b" 8128 10692 "\x7c\xc6\x91\xeb\x72\xdd\x9b\xee", 8129 - .rlen = 16, 10693 + .len = 16, 8130 10694 }, { 8131 10695 .key = "\x59\x70\x47\x14\xf5\x57\x47\x8c" 8132 10696 "\xd7\x79\xe8\x0f\x54\x88\x79\x44" ··· 8134 10700 .klen = 32, 8135 10701 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 8136 10702 "\x00\x00\x00\x00\x00\x00\x00\x02", 8137 - .input = "\x30\x31\x32\x33\x34\x35\x36\x37" 10703 + .ptext = "\x30\x31\x32\x33\x34\x35\x36\x37" 8138 10704 "\x38\x39\x41\x42\x43\x44\x45\x46", 8139 - .ilen = 16, 8140 - .result = "\xab\x72\x0a\xad\x3b\x0c\xf0\xc9" 10705 + .ctext = "\xab\x72\x0a\xad\x3b\x0c\xf0\xc9" 8141 10706 "\x42\x2f\xf1\xae\xf1\x3c\xb1\xbd", 8142 - .rlen = 16, 10707 + .len = 16, 8143 10708 }, { 8144 10709 .key = "\xd8\x2a\x91\x34\xb2\x6a\x56\x50" 8145 10710 "\x30\xfe\x69\xe2\x37\x7f\x98\x47" ··· 8147 10714 .klen = 32, 8148 10715 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 8149 10716 "\x00\x00\x00\x02\x00\x00\x00\x00", 8150 - .input = "\x30\x31\x32\x33\x34\x35\x36\x37" 10717 + .ptext = "\x30\x31\x32\x33\x34\x35\x36\x37" 8151 10718 "\x38\x39\x41\x42\x43\x44\x45\x46", 8152 - .ilen = 16, 8153 - .result = "\x85\xa7\x56\x67\x08\xfa\x42\xe1" 10719 + .ctext = "\x85\xa7\x56\x67\x08\xfa\x42\xe1" 8154 10720 "\x22\xe6\x82\xfc\xd9\xb4\xd7\xd4", 8155 - .rlen = 16, 10721 + .len = 16, 8156 10722 }, { 8157 10723 .key = "\x0f\x6a\xef\xf8\xd3\xd2\xbb\x15" 8158 10724 "\x25\x83\xf7\x3c\x1f\x01\x28\x74" ··· 8161 10729 .klen = 40, 8162 10730 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 8163 10731 "\x00\x00\x00\x00\x00\x00\x00\x01", 8164 - .input = "\x30\x31\x32\x33\x34\x35\x36\x37" 10732 + .ptext = "\x30\x31\x32\x33\x34\x35\x36\x37" 8165 10733 "\x38\x39\x41\x42\x43\x44\x45\x46", 8166 - .ilen = 16, 8167 - .result = "\xd2\xaf\x69\x35\x24\x1d\x0e\x1c" 10734 + .ctext = "\xd2\xaf\x69\x35\x24\x1d\x0e\x1c" 8168 10735 "\x84\x8b\x05\xe4\xa2\x2f\x16\xf5", 8169 - .rlen = 16, 10736 + .len = 16, 8170 10737 }, { 8171 10738 .key = "\x8a\xd4\xee\x10\x2f\xbd\x81\xff" 8172 10739 "\xf8\x86\xce\xac\x93\xc5\xad\xc6" ··· 8175 10744 .klen = 40, 8176 10745 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 8177 10746 "\x00\x00\x00\x02\x00\x00\x00\x00", 8178 - .input = "\x30\x31\x32\x33\x34\x35\x36\x37" 10747 + .ptext = "\x30\x31\x32\x33\x34\x35\x36\x37" 8179 10748 "\x38\x39\x41\x42\x43\x44\x45\x46", 8180 - .ilen = 16, 8181 - .result = "\x4a\x23\x56\xd7\xff\x90\xd0\x9a" 10749 + .ctext = "\x4a\x23\x56\xd7\xff\x90\xd0\x9a" 8182 10750 "\x0d\x7c\x26\xfc\xf0\xf0\xf6\xe4", 8183 - .rlen = 16, 10751 + .len = 16, 8184 10752 }, { 8185 10753 .key = "\xf8\xd4\x76\xff\xd6\x46\xee\x6c" 8186 10754 "\x23\x84\xcb\x1c\x77\xd6\x19\x5d" ··· 8190 10760 .klen = 48, 8191 10761 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 8192 10762 "\x00\x00\x00\x00\x00\x00\x00\x01", 8193 - .input = "\x30\x31\x32\x33\x34\x35\x36\x37" 10763 + .ptext = "\x30\x31\x32\x33\x34\x35\x36\x37" 8194 10764 "\x38\x39\x41\x42\x43\x44\x45\x46", 8195 - .ilen = 16, 8196 - .result = "\x30\xaf\x26\x05\x9d\x5d\x0a\x58" 10765 + .ctext = "\x30\xaf\x26\x05\x9d\x5d\x0a\x58" 8197 10766 "\xe2\xe7\xce\x8a\xb2\x56\x6d\x76", 8198 - .rlen = 16, 10767 + .len = 16, 8199 10768 }, { 8200 10769 .key = "\xfb\x76\x15\xb2\x3d\x80\x89\x1d" 8201 10770 "\xd4\x70\x98\x0b\xc7\x95\x84\xc8" ··· 8205 10776 .klen = 48, 8206 10777 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 8207 10778 "\x00\x00\x00\x02\x00\x00\x00\x00", 8208 - .input = "\x30\x31\x32\x33\x34\x35\x36\x37" 10779 + .ptext = "\x30\x31\x32\x33\x34\x35\x36\x37" 8209 10780 "\x38\x39\x41\x42\x43\x44\x45\x46", 8210 - .ilen = 16, 8211 - .result = "\xdf\xcf\xdc\xd2\xe1\xcf\x86\x75" 10781 + .ctext = "\xdf\xcf\xdc\xd2\xe1\xcf\x86\x75" 8212 10782 "\x17\x66\x5e\x0c\x14\xa1\x3d\x40", 8213 - .rlen = 16, 10783 + .len = 16, 8214 10784 }, { 8215 10785 .key = "\xf8\xd4\x76\xff\xd6\x46\xee\x6c" 8216 10786 "\x23\x84\xcb\x1c\x77\xd6\x19\x5d" ··· 8220 10792 .klen = 48, 8221 10793 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 8222 10794 "\x00\x00\x00\x00\x00\x00\x00\x01", 8223 - .input = "\x05\x11\xb7\x18\xab\xc6\x2d\xac" 10795 + .ptext = "\x05\x11\xb7\x18\xab\xc6\x2d\xac" 8224 10796 "\x70\x5d\xf6\x22\x94\xcd\xe5\x6c" 8225 10797 "\x17\x6b\xf6\x1c\xf0\xf3\x6e\xf8" 8226 10798 "\x50\x38\x1f\x71\x49\xb6\x57\xd6" ··· 8284 10856 "\xa4\xc7\xa8\xb4\xf6\x13\x03\xf6" 8285 10857 "\xe9\x2e\xc4\x29\x0f\x84\xdb\xc4" 8286 10858 "\x21\xc4\xc2\x75\x67\x89\x37\x0a", 8287 - .ilen = 512, 8288 - .result = "\x30\x38\xeb\xaf\x12\x43\x1a\x89" 10859 + .ctext = "\x30\x38\xeb\xaf\x12\x43\x1a\x89" 8289 10860 "\x62\xa2\x36\xe5\xcf\x77\x1e\xd9" 8290 10861 "\x08\xc3\x0d\xdd\x95\xab\x19\x96" 8291 10862 "\x27\x52\x41\xc3\xca\xfb\xf6\xee" ··· 8348 10921 "\x81\x00\xd3\xfe\x4c\x3c\x05\x61" 8349 10922 "\x80\x18\xc4\x6c\x03\xd3\xb7\xba" 8350 10923 "\x11\xd7\xb8\x6e\xea\xe1\x80\x30", 8351 - .rlen = 512, 10924 + .len = 512, 8352 10925 .also_non_np = 1, 8353 10926 .np = 3, 8354 10927 .tap = { 512 - 20, 4, 16 }, 8355 10928 }, 8356 10929 }; 8357 10930 8358 - static const struct cipher_testvec tf_lrw_dec_tv_template[] = { 8359 - /* Generated from AES-LRW test vectors */ 8360 - /* same as enc vectors with input and result reversed */ 8361 - { 8362 - .key = "\x45\x62\xac\x25\xf8\x28\x17\x6d" 8363 - "\x4c\x26\x84\x14\xb5\x68\x01\x85" 8364 - "\x25\x8e\x2a\x05\xe7\x3e\x9d\x03" 8365 - "\xee\x5a\x83\x0c\xcc\x09\x4c\x87", 8366 - .klen = 32, 8367 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 8368 - "\x00\x00\x00\x00\x00\x00\x00\x01", 8369 - .input = "\xa1\x6c\x50\x69\x26\xa4\xef\x7b" 8370 - "\x7c\xc6\x91\xeb\x72\xdd\x9b\xee", 8371 - .ilen = 16, 8372 - .result = "\x30\x31\x32\x33\x34\x35\x36\x37" 8373 - "\x38\x39\x41\x42\x43\x44\x45\x46", 8374 - .rlen = 16, 8375 - }, { 8376 - .key = "\x59\x70\x47\x14\xf5\x57\x47\x8c" 8377 - "\xd7\x79\xe8\x0f\x54\x88\x79\x44" 8378 - "\x0d\x48\xf0\xb7\xb1\x5a\x53\xea" 8379 - "\x1c\xaa\x6b\x29\xc2\xca\xfb\xaf", 8380 - .klen = 32, 8381 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 8382 - "\x00\x00\x00\x00\x00\x00\x00\x02", 8383 - .input = "\xab\x72\x0a\xad\x3b\x0c\xf0\xc9" 8384 - "\x42\x2f\xf1\xae\xf1\x3c\xb1\xbd", 8385 - .ilen = 16, 8386 - .result = "\x30\x31\x32\x33\x34\x35\x36\x37" 8387 - "\x38\x39\x41\x42\x43\x44\x45\x46", 8388 - .rlen = 16, 8389 - }, { 8390 - .key = "\xd8\x2a\x91\x34\xb2\x6a\x56\x50" 8391 - "\x30\xfe\x69\xe2\x37\x7f\x98\x47" 8392 - "\xcd\xf9\x0b\x16\x0c\x64\x8f\xb6" 8393 - "\xb0\x0d\x0d\x1b\xae\x85\x87\x1f", 8394 - .klen = 32, 8395 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 8396 - "\x00\x00\x00\x02\x00\x00\x00\x00", 8397 - .input = "\x85\xa7\x56\x67\x08\xfa\x42\xe1" 8398 - "\x22\xe6\x82\xfc\xd9\xb4\xd7\xd4", 8399 - .ilen = 16, 8400 - .result = "\x30\x31\x32\x33\x34\x35\x36\x37" 8401 - "\x38\x39\x41\x42\x43\x44\x45\x46", 8402 - .rlen = 16, 8403 - }, { 8404 - .key = "\x0f\x6a\xef\xf8\xd3\xd2\xbb\x15" 8405 - "\x25\x83\xf7\x3c\x1f\x01\x28\x74" 8406 - "\xca\xc6\xbc\x35\x4d\x4a\x65\x54" 8407 - "\x90\xae\x61\xcf\x7b\xae\xbd\xcc" 8408 - "\xad\xe4\x94\xc5\x4a\x29\xae\x70", 8409 - .klen = 40, 8410 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 8411 - "\x00\x00\x00\x00\x00\x00\x00\x01", 8412 - .input = "\xd2\xaf\x69\x35\x24\x1d\x0e\x1c" 8413 - "\x84\x8b\x05\xe4\xa2\x2f\x16\xf5", 8414 - .ilen = 16, 8415 - .result = "\x30\x31\x32\x33\x34\x35\x36\x37" 8416 - "\x38\x39\x41\x42\x43\x44\x45\x46", 8417 - .rlen = 16, 8418 - }, { 8419 - .key = "\x8a\xd4\xee\x10\x2f\xbd\x81\xff" 8420 - "\xf8\x86\xce\xac\x93\xc5\xad\xc6" 8421 - "\xa0\x19\x07\xc0\x9d\xf7\xbb\xdd" 8422 - "\x52\x13\xb2\xb7\xf0\xff\x11\xd8" 8423 - "\xd6\x08\xd0\xcd\x2e\xb1\x17\x6f", 8424 - .klen = 40, 8425 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 8426 - "\x00\x00\x00\x02\x00\x00\x00\x00", 8427 - .input = "\x4a\x23\x56\xd7\xff\x90\xd0\x9a" 8428 - "\x0d\x7c\x26\xfc\xf0\xf0\xf6\xe4", 8429 - .ilen = 16, 8430 - .result = "\x30\x31\x32\x33\x34\x35\x36\x37" 8431 - "\x38\x39\x41\x42\x43\x44\x45\x46", 8432 - .rlen = 16, 8433 - }, { 8434 - .key = "\xf8\xd4\x76\xff\xd6\x46\xee\x6c" 8435 - "\x23\x84\xcb\x1c\x77\xd6\x19\x5d" 8436 - "\xfe\xf1\xa9\xf3\x7b\xbc\x8d\x21" 8437 - "\xa7\x9c\x21\xf8\xcb\x90\x02\x89" 8438 - "\xa8\x45\x34\x8e\xc8\xc5\xb5\xf1" 8439 - "\x26\xf5\x0e\x76\xfe\xfd\x1b\x1e", 8440 - .klen = 48, 8441 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 8442 - "\x00\x00\x00\x00\x00\x00\x00\x01", 8443 - .input = "\x30\xaf\x26\x05\x9d\x5d\x0a\x58" 8444 - "\xe2\xe7\xce\x8a\xb2\x56\x6d\x76", 8445 - .ilen = 16, 8446 - .result = "\x30\x31\x32\x33\x34\x35\x36\x37" 8447 - "\x38\x39\x41\x42\x43\x44\x45\x46", 8448 - .rlen = 16, 8449 - }, { 8450 - .key = "\xfb\x76\x15\xb2\x3d\x80\x89\x1d" 8451 - "\xd4\x70\x98\x0b\xc7\x95\x84\xc8" 8452 - "\xb2\xfb\x64\xce\x60\x97\x87\x8d" 8453 - "\x17\xfc\xe4\x5a\x49\xe8\x30\xb7" 8454 - "\x6e\x78\x17\xe7\x2d\x5e\x12\xd4" 8455 - "\x60\x64\x04\x7a\xf1\x2f\x9e\x0c", 8456 - .klen = 48, 8457 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 8458 - "\x00\x00\x00\x02\x00\x00\x00\x00", 8459 - .input = "\xdf\xcf\xdc\xd2\xe1\xcf\x86\x75" 8460 - "\x17\x66\x5e\x0c\x14\xa1\x3d\x40", 8461 - .ilen = 16, 8462 - .result = "\x30\x31\x32\x33\x34\x35\x36\x37" 8463 - "\x38\x39\x41\x42\x43\x44\x45\x46", 8464 - .rlen = 16, 8465 - }, { 8466 - .key = "\xf8\xd4\x76\xff\xd6\x46\xee\x6c" 8467 - "\x23\x84\xcb\x1c\x77\xd6\x19\x5d" 8468 - "\xfe\xf1\xa9\xf3\x7b\xbc\x8d\x21" 8469 - "\xa7\x9c\x21\xf8\xcb\x90\x02\x89" 8470 - "\xa8\x45\x34\x8e\xc8\xc5\xb5\xf1" 8471 - "\x26\xf5\x0e\x76\xfe\xfd\x1b\x1e", 8472 - .klen = 48, 8473 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 8474 - "\x00\x00\x00\x00\x00\x00\x00\x01", 8475 - .input = "\x30\x38\xeb\xaf\x12\x43\x1a\x89" 8476 - "\x62\xa2\x36\xe5\xcf\x77\x1e\xd9" 8477 - "\x08\xc3\x0d\xdd\x95\xab\x19\x96" 8478 - "\x27\x52\x41\xc3\xca\xfb\xf6\xee" 8479 - "\x40\x2d\xdf\xdd\x00\x0c\xb9\x0a" 8480 - "\x3a\xf0\xc0\xd1\xda\x63\x9e\x45" 8481 - "\x42\xe9\x29\xc0\xb4\x07\xb4\x31" 8482 - "\x66\x77\x72\xb5\xb6\xb3\x57\x46" 8483 - "\x34\x9a\xfe\x03\xaf\x6b\x36\x07" 8484 - "\x63\x8e\xc2\x5d\xa6\x0f\xb6\x7d" 8485 - "\xfb\x6d\x82\x51\xb6\x98\xd0\x71" 8486 - "\xe7\x10\x7a\xdf\xb2\xbd\xf1\x1d" 8487 - "\x72\x2b\x54\x13\xe3\x6d\x79\x37" 8488 - "\xa9\x39\x2c\xdf\x21\xab\x87\xd5" 8489 - "\xee\xef\x9a\x12\x50\x39\x2e\x1b" 8490 - "\x7d\xe6\x6a\x27\x48\xb9\xe7\xac" 8491 - "\xaa\xcd\x79\x5f\xf2\xf3\xa0\x08" 8492 - "\x6f\x2c\xf4\x0e\xd1\xb8\x89\x25" 8493 - "\x31\x9d\xef\xb1\x1d\x27\x55\x04" 8494 - "\xc9\x8c\xb7\x68\xdc\xb6\x67\x8a" 8495 - "\xdb\xcf\x22\xf2\x3b\x6f\xce\xbb" 8496 - "\x26\xbe\x4f\x27\x04\x42\xd1\x44" 8497 - "\x4c\x08\xa3\x95\x4c\x7f\x1a\xaf" 8498 - "\x1d\x28\x14\xfd\xb1\x1a\x34\x18" 8499 - "\xf5\x1e\x28\x69\x95\x6a\x5a\xba" 8500 - "\x8e\xb2\x58\x1d\x28\x17\x13\x3d" 8501 - "\x38\x7d\x14\x8d\xab\x5d\xf9\xe8" 8502 - "\x3c\x0f\x2b\x0d\x2b\x08\xb4\x4b" 8503 - "\x6b\x0d\xc8\xa7\x84\xc2\x3a\x1a" 8504 - "\xb7\xbd\xda\x92\x29\xb8\x5b\x5a" 8505 - "\x63\xa5\x99\x82\x09\x72\x8f\xc6" 8506 - "\xa4\x62\x24\x69\x8c\x2d\x26\x00" 8507 - "\x99\x83\x91\xd6\xc6\xcf\x57\x67" 8508 - "\x38\xea\xf2\xfc\x29\xe0\x73\x39" 8509 - "\xf9\x13\x94\x6d\xe2\x58\x28\x75" 8510 - "\x3e\xae\x71\x90\x07\x70\x1c\x38" 8511 - "\x5b\x4c\x1e\xb5\xa5\x3b\x20\xef" 8512 - "\xb1\x4c\x3e\x1a\x72\x62\xbb\x22" 8513 - "\x82\x09\xe3\x18\x3f\x4f\x48\xfc" 8514 - "\xdd\xac\xfc\xb6\x09\xdb\xd2\x7b" 8515 - "\xd6\xb7\x7e\x41\x2f\x14\xf5\x0e" 8516 - "\xc3\xac\x4a\xed\xe7\x82\xef\x31" 8517 - "\x1f\x1a\x51\x1e\x29\x60\xc8\x98" 8518 - "\x93\x51\x1d\x3d\x62\x59\x83\x82" 8519 - "\x0c\xf1\xd7\x8d\xac\x33\x44\x81" 8520 - "\x3c\x59\xb7\xd4\x5b\x65\x82\xc4" 8521 - "\xec\xdc\x24\xfd\x0e\x1a\x79\x94" 8522 - "\x34\xb0\x62\xfa\x98\x49\x26\x1f" 8523 - "\xf4\x9e\x40\x44\x5b\x1f\xf8\xbe" 8524 - "\x36\xff\xc6\xc6\x9d\xf2\xd6\xcc" 8525 - "\x63\x93\x29\xb9\x0b\x6d\xd7\x6c" 8526 - "\xdb\xf6\x21\x80\xf7\x5a\x37\x15" 8527 - "\x0c\xe3\x36\xc8\x74\x75\x20\x91" 8528 - "\xdf\x52\x2d\x0c\xe7\x45\xff\x46" 8529 - "\xb3\xf4\xec\xc2\xbd\xd3\x37\xb6" 8530 - "\x26\xa2\x5d\x7d\x61\xbf\x10\x46" 8531 - "\x57\x8d\x05\x96\x70\x0b\xd6\x41" 8532 - "\x5c\xe9\xd3\x54\x81\x39\x3a\xdd" 8533 - "\x5f\x92\x81\x6e\x35\x03\xd4\x72" 8534 - "\x3d\x5a\xe7\xb9\x3b\x0c\x84\x23" 8535 - "\x45\x5d\xec\x72\xc1\x52\xef\x2e" 8536 - "\x81\x00\xd3\xfe\x4c\x3c\x05\x61" 8537 - "\x80\x18\xc4\x6c\x03\xd3\xb7\xba" 8538 - "\x11\xd7\xb8\x6e\xea\xe1\x80\x30", 8539 - .ilen = 512, 8540 - .result = "\x05\x11\xb7\x18\xab\xc6\x2d\xac" 8541 - "\x70\x5d\xf6\x22\x94\xcd\xe5\x6c" 8542 - "\x17\x6b\xf6\x1c\xf0\xf3\x6e\xf8" 8543 - "\x50\x38\x1f\x71\x49\xb6\x57\xd6" 8544 - "\x8f\xcb\x8d\x6b\xe3\xa6\x29\x90" 8545 - "\xfe\x2a\x62\x82\xae\x6d\x8b\xf6" 8546 - "\xad\x1e\x9e\x20\x5f\x38\xbe\x04" 8547 - "\xda\x10\x8e\xed\xa2\xa4\x87\xab" 8548 - "\xda\x6b\xb4\x0c\x75\xba\xd3\x7c" 8549 - "\xc9\xac\x42\x31\x95\x7c\xc9\x04" 8550 - "\xeb\xd5\x6e\x32\x69\x8a\xdb\xa6" 8551 - "\x15\xd7\x3f\x4f\x2f\x66\x69\x03" 8552 - "\x9c\x1f\x54\x0f\xde\x1f\xf3\x65" 8553 - "\x4c\x96\x12\xed\x7c\x92\x03\x01" 8554 - "\x6f\xbc\x35\x93\xac\xf1\x27\xf1" 8555 - "\xb4\x96\x82\x5a\x5f\xb0\xa0\x50" 8556 - "\x89\xa4\x8e\x66\x44\x85\xcc\xfd" 8557 - "\x33\x14\x70\xe3\x96\xb2\xc3\xd3" 8558 - "\xbb\x54\x5a\x1a\xf9\x74\xa2\xc5" 8559 - "\x2d\x64\x75\xdd\xb4\x54\xe6\x74" 8560 - "\x8c\xd3\x9d\x9e\x86\xab\x51\x53" 8561 - "\xb7\x93\x3e\x6f\xd0\x4e\x2c\x40" 8562 - "\xf6\xa8\x2e\x3e\x9d\xf4\x66\xa5" 8563 - "\x76\x12\x73\x44\x1a\x56\xd7\x72" 8564 - "\x88\xcd\x21\x8c\x4c\x0f\xfe\xda" 8565 - "\x95\xe0\x3a\xa6\xa5\x84\x46\xcd" 8566 - "\xd5\x3e\x9d\x3a\xe2\x67\xe6\x60" 8567 - "\x1a\xe2\x70\x85\x58\xc2\x1b\x09" 8568 - "\xe1\xd7\x2c\xca\xad\xa8\x8f\xf9" 8569 - "\xac\xb3\x0e\xdb\xca\x2e\xe2\xb8" 8570 - "\x51\x71\xd9\x3c\x6c\xf1\x56\xf8" 8571 - "\xea\x9c\xf1\xfb\x0c\xe6\xb7\x10" 8572 - "\x1c\xf8\xa9\x7c\xe8\x53\x35\xc1" 8573 - "\x90\x3e\x76\x4a\x74\xa4\x21\x2c" 8574 - "\xf6\x2c\x4e\x0f\x94\x3a\x88\x2e" 8575 - "\x41\x09\x6a\x33\x7d\xf6\xdd\x3f" 8576 - "\x8d\x23\x31\x74\x84\xeb\x88\x6e" 8577 - "\xcc\xb9\xbc\x22\x83\x19\x07\x22" 8578 - "\xa5\x2d\xdf\xa5\xf3\x80\x85\x78" 8579 - "\x84\x39\x6a\x6d\x6a\x99\x4f\xa5" 8580 - "\x15\xfe\x46\xb0\xe4\x6c\xa5\x41" 8581 - "\x3c\xce\x8f\x42\x60\x71\xa7\x75" 8582 - "\x08\x40\x65\x8a\x82\xbf\xf5\x43" 8583 - "\x71\x96\xa9\x4d\x44\x8a\x20\xbe" 8584 - "\xfa\x4d\xbb\xc0\x7d\x31\x96\x65" 8585 - "\xe7\x75\xe5\x3e\xfd\x92\x3b\xc9" 8586 - "\x55\xbb\x16\x7e\xf7\xc2\x8c\xa4" 8587 - "\x40\x1d\xe5\xef\x0e\xdf\xe4\x9a" 8588 - "\x62\x73\x65\xfd\x46\x63\x25\x3d" 8589 - "\x2b\xaf\xe5\x64\xfe\xa5\x5c\xcf" 8590 - "\x24\xf3\xb4\xac\x64\xba\xdf\x4b" 8591 - "\xc6\x96\x7d\x81\x2d\x8d\x97\xf7" 8592 - "\xc5\x68\x77\x84\x32\x2b\xcc\x85" 8593 - "\x74\x96\xf0\x12\x77\x61\xb9\xeb" 8594 - "\x71\xaa\x82\xcb\x1c\xdb\x89\xc8" 8595 - "\xc6\xb5\xe3\x5c\x7d\x39\x07\x24" 8596 - "\xda\x39\x87\x45\xc0\x2b\xbb\x01" 8597 - "\xac\xbc\x2a\x5c\x7f\xfc\xe8\xce" 8598 - "\x6d\x9c\x6f\xed\xd3\xc1\xa1\xd6" 8599 - "\xc5\x55\xa9\x66\x2f\xe1\xc8\x32" 8600 - "\xa6\x5d\xa4\x3a\x98\x73\xe8\x45" 8601 - "\xa4\xc7\xa8\xb4\xf6\x13\x03\xf6" 8602 - "\xe9\x2e\xc4\x29\x0f\x84\xdb\xc4" 8603 - "\x21\xc4\xc2\x75\x67\x89\x37\x0a", 8604 - .rlen = 512, 8605 - .also_non_np = 1, 8606 - .np = 3, 8607 - .tap = { 512 - 20, 4, 16 }, 8608 - }, 8609 - }; 8610 - 8611 - static const struct cipher_testvec tf_xts_enc_tv_template[] = { 10931 + static const struct cipher_testvec tf_xts_tv_template[] = { 8612 10932 /* Generated from AES-XTS test vectors */ 8613 10933 { 8614 10934 .key = "\x00\x00\x00\x00\x00\x00\x00\x00" ··· 8365 11191 .klen = 32, 8366 11192 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 8367 11193 "\x00\x00\x00\x00\x00\x00\x00\x00", 8368 - .input = "\x00\x00\x00\x00\x00\x00\x00\x00" 11194 + .ptext = "\x00\x00\x00\x00\x00\x00\x00\x00" 8369 11195 "\x00\x00\x00\x00\x00\x00\x00\x00" 8370 11196 "\x00\x00\x00\x00\x00\x00\x00\x00" 8371 11197 "\x00\x00\x00\x00\x00\x00\x00\x00", 8372 - .ilen = 32, 8373 - .result = "\x4b\xc9\x44\x4a\x11\xa3\xef\xac" 11198 + .ctext = "\x4b\xc9\x44\x4a\x11\xa3\xef\xac" 8374 11199 "\x30\x74\xe4\x44\x52\x77\x97\x43" 8375 11200 "\xa7\x60\xb2\x45\x2e\xf9\x00\x90" 8376 11201 "\x9f\xaa\xfd\x89\x6e\x9d\x4a\xe0", 8377 - .rlen = 32, 11202 + .len = 32, 8378 11203 }, { 8379 11204 .key = "\x11\x11\x11\x11\x11\x11\x11\x11" 8380 11205 "\x11\x11\x11\x11\x11\x11\x11\x11" ··· 8382 11209 .klen = 32, 8383 11210 .iv = "\x33\x33\x33\x33\x33\x00\x00\x00" 8384 11211 "\x00\x00\x00\x00\x00\x00\x00\x00", 8385 - .input = "\x44\x44\x44\x44\x44\x44\x44\x44" 11212 + .ptext = "\x44\x44\x44\x44\x44\x44\x44\x44" 8386 11213 "\x44\x44\x44\x44\x44\x44\x44\x44" 8387 11214 "\x44\x44\x44\x44\x44\x44\x44\x44" 8388 11215 "\x44\x44\x44\x44\x44\x44\x44\x44", 8389 - .ilen = 32, 8390 - .result = "\x57\x0e\x8f\xe5\x2a\x35\x61\x4f" 11216 + .ctext = "\x57\x0e\x8f\xe5\x2a\x35\x61\x4f" 8391 11217 "\x32\xd3\xbd\x36\x05\x15\x44\x2c" 8392 11218 "\x58\x06\xf7\xf8\x00\xa8\xb6\xd5" 8393 11219 "\xc6\x28\x92\xdb\xd8\x34\xa2\xe9", 8394 - .rlen = 32, 11220 + .len = 32, 8395 11221 }, { 8396 11222 .key = "\xff\xfe\xfd\xfc\xfb\xfa\xf9\xf8" 8397 11223 "\xf7\xf6\xf5\xf4\xf3\xf2\xf1\xf0" ··· 8399 11227 .klen = 32, 8400 11228 .iv = "\x33\x33\x33\x33\x33\x00\x00\x00" 8401 11229 "\x00\x00\x00\x00\x00\x00\x00\x00", 8402 - .input = "\x44\x44\x44\x44\x44\x44\x44\x44" 11230 + .ptext = "\x44\x44\x44\x44\x44\x44\x44\x44" 8403 11231 "\x44\x44\x44\x44\x44\x44\x44\x44" 8404 11232 "\x44\x44\x44\x44\x44\x44\x44\x44" 8405 11233 "\x44\x44\x44\x44\x44\x44\x44\x44", 8406 - .ilen = 32, 8407 - .result = "\x96\x45\x8f\x8d\x7a\x75\xb1\xde" 11234 + .ctext = "\x96\x45\x8f\x8d\x7a\x75\xb1\xde" 8408 11235 "\x40\x0c\x89\x56\xf6\x4d\xa7\x07" 8409 11236 "\x38\xbb\x5b\xe9\xcd\x84\xae\xb2" 8410 11237 "\x7b\x6a\x62\xf4\x8c\xb5\x37\xea", 8411 - .rlen = 32, 11238 + .len = 32, 8412 11239 }, { 8413 11240 .key = "\x27\x18\x28\x18\x28\x45\x90\x45" 8414 11241 "\x23\x53\x60\x28\x74\x71\x35\x26" ··· 8416 11245 .klen = 32, 8417 11246 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 8418 11247 "\x00\x00\x00\x00\x00\x00\x00\x00", 8419 - .input = "\x00\x01\x02\x03\x04\x05\x06\x07" 11248 + .ptext = "\x00\x01\x02\x03\x04\x05\x06\x07" 8420 11249 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 8421 11250 "\x10\x11\x12\x13\x14\x15\x16\x17" 8422 11251 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" ··· 8480 11309 "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 8481 11310 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 8482 11311 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 8483 - .ilen = 512, 8484 - .result = "\xa9\x78\xae\x1e\xea\xa2\x44\x4c" 11312 + .ctext = "\xa9\x78\xae\x1e\xea\xa2\x44\x4c" 8485 11313 "\xa2\x7a\x64\x1f\xaf\x46\xc1\xe0" 8486 11314 "\x6c\xb2\xf3\x92\x9a\xd6\x7d\x58" 8487 11315 "\xb8\x2d\xb9\x5d\x58\x07\x66\x50" ··· 8544 11374 "\x43\xc4\x46\x24\x22\x4f\x8f\x7e" 8545 11375 "\xe5\xf4\x6d\x1e\x0e\x18\x7a\xbb" 8546 11376 "\xa6\x8f\xfb\x49\x49\xd8\x7e\x5a", 8547 - .rlen = 512, 11377 + .len = 512, 8548 11378 }, { 8549 11379 .key = "\x27\x18\x28\x18\x28\x45\x90\x45" 8550 11380 "\x23\x53\x60\x28\x74\x71\x35\x26" ··· 8557 11387 .klen = 64, 8558 11388 .iv = "\xff\x00\x00\x00\x00\x00\x00\x00" 8559 11389 "\x00\x00\x00\x00\x00\x00\x00\x00", 8560 - .input = "\x00\x01\x02\x03\x04\x05\x06\x07" 11390 + .ptext = "\x00\x01\x02\x03\x04\x05\x06\x07" 8561 11391 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 8562 11392 "\x10\x11\x12\x13\x14\x15\x16\x17" 8563 11393 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" ··· 8621 11451 "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 8622 11452 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 8623 11453 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 8624 - .ilen = 512, 8625 - .result = "\xd7\x4b\x93\x7d\x13\xa2\xa2\xe1" 11454 + .ctext = "\xd7\x4b\x93\x7d\x13\xa2\xa2\xe1" 8626 11455 "\x35\x39\x71\x88\x76\x1e\xc9\xea" 8627 11456 "\x86\xad\xf3\x14\x48\x3d\x5e\xe9" 8628 11457 "\xe9\x2d\xb2\x56\x59\x35\x9d\xec" ··· 8685 11516 "\xf3\xea\x67\x52\x78\xc2\xce\x70" 8686 11517 "\xa4\x05\x0b\xb2\xb3\xa8\x30\x97" 8687 11518 "\x37\x30\xe1\x91\x8d\xb3\x2a\xff", 8688 - .rlen = 512, 8689 - .also_non_np = 1, 8690 - .np = 3, 8691 - .tap = { 512 - 20, 4, 16 }, 8692 - }, 8693 - }; 8694 - 8695 - static const struct cipher_testvec tf_xts_dec_tv_template[] = { 8696 - /* Generated from AES-XTS test vectors */ 8697 - /* same as enc vectors with input and result reversed */ 8698 - { 8699 - .key = "\x00\x00\x00\x00\x00\x00\x00\x00" 8700 - "\x00\x00\x00\x00\x00\x00\x00\x00" 8701 - "\x00\x00\x00\x00\x00\x00\x00\x00" 8702 - "\x00\x00\x00\x00\x00\x00\x00\x00", 8703 - .klen = 32, 8704 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 8705 - "\x00\x00\x00\x00\x00\x00\x00\x00", 8706 - .input = "\x4b\xc9\x44\x4a\x11\xa3\xef\xac" 8707 - "\x30\x74\xe4\x44\x52\x77\x97\x43" 8708 - "\xa7\x60\xb2\x45\x2e\xf9\x00\x90" 8709 - "\x9f\xaa\xfd\x89\x6e\x9d\x4a\xe0", 8710 - .ilen = 32, 8711 - .result = "\x00\x00\x00\x00\x00\x00\x00\x00" 8712 - "\x00\x00\x00\x00\x00\x00\x00\x00" 8713 - "\x00\x00\x00\x00\x00\x00\x00\x00" 8714 - "\x00\x00\x00\x00\x00\x00\x00\x00", 8715 - .rlen = 32, 8716 - }, { 8717 - .key = "\x11\x11\x11\x11\x11\x11\x11\x11" 8718 - "\x11\x11\x11\x11\x11\x11\x11\x11" 8719 - "\x22\x22\x22\x22\x22\x22\x22\x22" 8720 - "\x22\x22\x22\x22\x22\x22\x22\x22", 8721 - .klen = 32, 8722 - .iv = "\x33\x33\x33\x33\x33\x00\x00\x00" 8723 - "\x00\x00\x00\x00\x00\x00\x00\x00", 8724 - .input = "\x57\x0e\x8f\xe5\x2a\x35\x61\x4f" 8725 - "\x32\xd3\xbd\x36\x05\x15\x44\x2c" 8726 - "\x58\x06\xf7\xf8\x00\xa8\xb6\xd5" 8727 - "\xc6\x28\x92\xdb\xd8\x34\xa2\xe9", 8728 - .ilen = 32, 8729 - .result = "\x44\x44\x44\x44\x44\x44\x44\x44" 8730 - "\x44\x44\x44\x44\x44\x44\x44\x44" 8731 - "\x44\x44\x44\x44\x44\x44\x44\x44" 8732 - "\x44\x44\x44\x44\x44\x44\x44\x44", 8733 - .rlen = 32, 8734 - }, { 8735 - .key = "\xff\xfe\xfd\xfc\xfb\xfa\xf9\xf8" 8736 - "\xf7\xf6\xf5\xf4\xf3\xf2\xf1\xf0" 8737 - "\x22\x22\x22\x22\x22\x22\x22\x22" 8738 - "\x22\x22\x22\x22\x22\x22\x22\x22", 8739 - .klen = 32, 8740 - .iv = "\x33\x33\x33\x33\x33\x00\x00\x00" 8741 - "\x00\x00\x00\x00\x00\x00\x00\x00", 8742 - .input = "\x96\x45\x8f\x8d\x7a\x75\xb1\xde" 8743 - "\x40\x0c\x89\x56\xf6\x4d\xa7\x07" 8744 - "\x38\xbb\x5b\xe9\xcd\x84\xae\xb2" 8745 - "\x7b\x6a\x62\xf4\x8c\xb5\x37\xea", 8746 - .ilen = 32, 8747 - .result = "\x44\x44\x44\x44\x44\x44\x44\x44" 8748 - "\x44\x44\x44\x44\x44\x44\x44\x44" 8749 - "\x44\x44\x44\x44\x44\x44\x44\x44" 8750 - "\x44\x44\x44\x44\x44\x44\x44\x44", 8751 - .rlen = 32, 8752 - }, { 8753 - .key = "\x27\x18\x28\x18\x28\x45\x90\x45" 8754 - "\x23\x53\x60\x28\x74\x71\x35\x26" 8755 - "\x31\x41\x59\x26\x53\x58\x97\x93" 8756 - "\x23\x84\x62\x64\x33\x83\x27\x95", 8757 - .klen = 32, 8758 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 8759 - "\x00\x00\x00\x00\x00\x00\x00\x00", 8760 - .input = "\xa9\x78\xae\x1e\xea\xa2\x44\x4c" 8761 - "\xa2\x7a\x64\x1f\xaf\x46\xc1\xe0" 8762 - "\x6c\xb2\xf3\x92\x9a\xd6\x7d\x58" 8763 - "\xb8\x2d\xb9\x5d\x58\x07\x66\x50" 8764 - "\xea\x35\x35\x8c\xb2\x46\x61\x06" 8765 - "\x5d\x65\xfc\x57\x8f\x69\x74\xab" 8766 - "\x8a\x06\x69\xb5\x6c\xda\x66\xc7" 8767 - "\x52\x90\xbb\x8e\x6d\x8b\xb5\xa2" 8768 - "\x78\x1d\xc2\xa9\xc2\x73\x00\xc3" 8769 - "\x32\x36\x7c\x97\x6b\x4e\x8a\x50" 8770 - "\xe4\x91\x83\x96\x8f\xf4\x94\x1a" 8771 - "\xa6\x27\xe1\x33\xcb\x91\xc6\x5f" 8772 - "\x94\x75\xbc\xd7\x3e\x3e\x6f\x9e" 8773 - "\xa9\x31\x80\x5e\xe5\xdb\xc8\x53" 8774 - "\x01\x73\x68\x32\x25\x19\xfa\xfb" 8775 - "\xe4\xcf\xb9\x3e\xa2\xa0\x8f\x31" 8776 - "\xbf\x54\x06\x93\xa8\xb1\x0f\xb6" 8777 - "\x7c\x3c\xde\x6f\x0f\xfb\x0c\x11" 8778 - "\x39\x80\x39\x09\x97\x65\xf2\x83" 8779 - "\xae\xe6\xa1\x6f\x47\xb8\x49\xde" 8780 - "\x99\x36\x20\x7d\x97\x3b\xec\xfa" 8781 - "\xb4\x33\x6e\x7a\xc7\x46\x84\x49" 8782 - "\x91\xcd\xe1\x57\x0d\xed\x40\x08" 8783 - "\x13\xf1\x4e\x3e\xa4\xa4\x5c\xe6" 8784 - "\xd2\x0c\x20\x8f\x3e\xdf\x3f\x47" 8785 - "\x9a\x2f\xde\x6d\x66\xc9\x99\x4a" 8786 - "\x2d\x9e\x9d\x4b\x1a\x27\xa2\x12" 8787 - "\x99\xf0\xf8\xb1\xb6\xf6\x57\xc3" 8788 - "\xca\x1c\xa3\x8e\xed\x39\x28\xb5" 8789 - "\x10\x1b\x4b\x08\x42\x00\x4a\xd3" 8790 - "\xad\x5a\xc6\x8e\xc8\xbb\x95\xc4" 8791 - "\x4b\xaa\xfe\xd5\x42\xa8\xa3\x6d" 8792 - "\x3c\xf3\x34\x91\x2d\xb4\xdd\x20" 8793 - "\x0c\x90\x6d\xa3\x9b\x66\x9d\x24" 8794 - "\x02\xa6\xa9\x3f\x3f\x58\x5d\x47" 8795 - "\x24\x65\x63\x7e\xbd\x8c\xe6\x52" 8796 - "\x7d\xef\x33\x53\x63\xec\xaa\x0b" 8797 - "\x64\x15\xa9\xa6\x1f\x10\x00\x38" 8798 - "\x35\xa8\xe7\xbe\x23\x70\x22\xe0" 8799 - "\xd3\xb9\xe6\xfd\xe6\xaa\x03\x50" 8800 - "\xf3\x3c\x27\x36\x8b\xcc\xfe\x9c" 8801 - "\x9c\xa3\xb3\xe7\x68\x9b\xa2\x71" 8802 - "\xe0\x07\xd9\x1f\x68\x1f\xac\x5e" 8803 - "\x7a\x74\x85\xa9\x6a\x90\xab\x2c" 8804 - "\x38\x51\xbc\x1f\x43\x4a\x56\x1c" 8805 - "\xf8\x47\x03\x4e\x67\xa8\x1f\x99" 8806 - "\x04\x39\x73\x32\xb2\x86\x79\xe7" 8807 - "\x14\x28\x70\xb8\xe2\x7d\x69\x85" 8808 - "\xb6\x0f\xc5\xd0\xd0\x01\x5c\xe6" 8809 - "\x09\x0f\x75\xf7\xb6\x81\xd2\x11" 8810 - "\x20\x9c\xa1\xee\x11\x44\x79\xd0" 8811 - "\xb2\x34\x77\xda\x10\x9a\x6f\x6f" 8812 - "\xef\x7c\xd9\xdc\x35\xb7\x61\xdd" 8813 - "\xf1\xa4\xc6\x1c\xbf\x05\x22\xac" 8814 - "\xfe\x2f\x85\x00\x44\xdf\x33\x16" 8815 - "\x35\xb6\xa3\xd3\x70\xdf\x69\x35" 8816 - "\x6a\xc7\xb4\x99\x45\x27\xc8\x8e" 8817 - "\x5a\x14\x30\xd0\x55\x3e\x4f\x64" 8818 - "\x0d\x38\xe3\xdf\x8b\xa8\x93\x26" 8819 - "\x75\xae\xf6\xb5\x23\x0b\x17\x31" 8820 - "\xbf\x27\xb8\xb5\x94\x31\xa7\x8f" 8821 - "\x43\xc4\x46\x24\x22\x4f\x8f\x7e" 8822 - "\xe5\xf4\x6d\x1e\x0e\x18\x7a\xbb" 8823 - "\xa6\x8f\xfb\x49\x49\xd8\x7e\x5a", 8824 - .ilen = 512, 8825 - .result = "\x00\x01\x02\x03\x04\x05\x06\x07" 8826 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 8827 - "\x10\x11\x12\x13\x14\x15\x16\x17" 8828 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" 8829 - "\x20\x21\x22\x23\x24\x25\x26\x27" 8830 - "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f" 8831 - "\x30\x31\x32\x33\x34\x35\x36\x37" 8832 - "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f" 8833 - "\x40\x41\x42\x43\x44\x45\x46\x47" 8834 - "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f" 8835 - "\x50\x51\x52\x53\x54\x55\x56\x57" 8836 - "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f" 8837 - "\x60\x61\x62\x63\x64\x65\x66\x67" 8838 - "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f" 8839 - "\x70\x71\x72\x73\x74\x75\x76\x77" 8840 - "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f" 8841 - "\x80\x81\x82\x83\x84\x85\x86\x87" 8842 - "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f" 8843 - "\x90\x91\x92\x93\x94\x95\x96\x97" 8844 - "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f" 8845 - "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7" 8846 - "\xa8\xa9\xaa\xab\xac\xad\xae\xaf" 8847 - "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7" 8848 - "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf" 8849 - "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7" 8850 - "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf" 8851 - "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7" 8852 - "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf" 8853 - "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7" 8854 - "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 8855 - "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 8856 - "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff" 8857 - "\x00\x01\x02\x03\x04\x05\x06\x07" 8858 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 8859 - "\x10\x11\x12\x13\x14\x15\x16\x17" 8860 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" 8861 - "\x20\x21\x22\x23\x24\x25\x26\x27" 8862 - "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f" 8863 - "\x30\x31\x32\x33\x34\x35\x36\x37" 8864 - "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f" 8865 - "\x40\x41\x42\x43\x44\x45\x46\x47" 8866 - "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f" 8867 - "\x50\x51\x52\x53\x54\x55\x56\x57" 8868 - "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f" 8869 - "\x60\x61\x62\x63\x64\x65\x66\x67" 8870 - "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f" 8871 - "\x70\x71\x72\x73\x74\x75\x76\x77" 8872 - "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f" 8873 - "\x80\x81\x82\x83\x84\x85\x86\x87" 8874 - "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f" 8875 - "\x90\x91\x92\x93\x94\x95\x96\x97" 8876 - "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f" 8877 - "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7" 8878 - "\xa8\xa9\xaa\xab\xac\xad\xae\xaf" 8879 - "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7" 8880 - "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf" 8881 - "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7" 8882 - "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf" 8883 - "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7" 8884 - "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf" 8885 - "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7" 8886 - "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 8887 - "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 8888 - "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 8889 - .rlen = 512, 8890 - }, { 8891 - .key = "\x27\x18\x28\x18\x28\x45\x90\x45" 8892 - "\x23\x53\x60\x28\x74\x71\x35\x26" 8893 - "\x62\x49\x77\x57\x24\x70\x93\x69" 8894 - "\x99\x59\x57\x49\x66\x96\x76\x27" 8895 - "\x31\x41\x59\x26\x53\x58\x97\x93" 8896 - "\x23\x84\x62\x64\x33\x83\x27\x95" 8897 - "\x02\x88\x41\x97\x16\x93\x99\x37" 8898 - "\x51\x05\x82\x09\x74\x94\x45\x92", 8899 - .klen = 64, 8900 - .iv = "\xff\x00\x00\x00\x00\x00\x00\x00" 8901 - "\x00\x00\x00\x00\x00\x00\x00\x00", 8902 - .input = "\xd7\x4b\x93\x7d\x13\xa2\xa2\xe1" 8903 - "\x35\x39\x71\x88\x76\x1e\xc9\xea" 8904 - "\x86\xad\xf3\x14\x48\x3d\x5e\xe9" 8905 - "\xe9\x2d\xb2\x56\x59\x35\x9d\xec" 8906 - "\x84\xfa\x7e\x9d\x6d\x33\x36\x8f" 8907 - "\xce\xf4\xa9\x21\x0b\x5f\x96\xec" 8908 - "\xcb\xf9\x57\x68\x33\x88\x39\xbf" 8909 - "\x2f\xbb\x59\x03\xbd\x66\x8b\x11" 8910 - "\x11\x65\x51\x2e\xb8\x67\x05\xd1" 8911 - "\x27\x11\x5c\xd4\xcc\x97\xc2\xb3" 8912 - "\xa9\x55\xaf\x07\x56\xd1\xdc\xf5" 8913 - "\x85\xdc\x46\xe6\xf0\x24\xeb\x93" 8914 - "\x4d\xf0\x9b\xf5\x73\x1c\xda\x03" 8915 - "\x22\xc8\x3a\x4f\xb4\x19\x91\x09" 8916 - "\x54\x0b\xf6\xfe\x17\x3d\x1a\x53" 8917 - "\x72\x60\x79\xcb\x0e\x32\x8a\x77" 8918 - "\xd5\xed\xdb\x33\xd7\x62\x16\x69" 8919 - "\x63\xe0\xab\xb5\xf6\x9c\x5f\x3d" 8920 - "\x69\x35\x61\x86\xf8\x86\xb9\x89" 8921 - "\x6e\x59\x35\xac\xf6\x6b\x33\xa0" 8922 - "\xea\xef\x96\x62\xd8\xa9\xcf\x56" 8923 - "\xbf\xdb\x8a\xfd\xa1\x82\x77\x73" 8924 - "\x3d\x94\x4a\x49\x42\x6d\x08\x60" 8925 - "\xa1\xea\xab\xb6\x88\x13\x94\xb8" 8926 - "\x51\x98\xdb\x35\x85\xdf\xf6\xb9" 8927 - "\x8f\xcd\xdf\x80\xd3\x40\x2d\x72" 8928 - "\xb8\xb2\x6c\x02\x43\x35\x22\x2a" 8929 - "\x31\xed\xcd\x16\x19\xdf\x62\x0f" 8930 - "\x29\xcf\x87\x04\xec\x02\x4f\xe4" 8931 - "\xa2\xed\x73\xc6\x69\xd3\x7e\x89" 8932 - "\x0b\x76\x10\x7c\xd6\xf9\x6a\x25" 8933 - "\xed\xcc\x60\x5d\x61\x20\xc1\x97" 8934 - "\x56\x91\x57\x28\xbe\x71\x0d\xcd" 8935 - "\xde\xc4\x9e\x55\x91\xbe\xd1\x28" 8936 - "\x9b\x90\xeb\x73\xf3\x68\x51\xc6" 8937 - "\xdf\x82\xcc\xd8\x1f\xce\x5b\x27" 8938 - "\xc0\x60\x5e\x33\xd6\xa7\x20\xea" 8939 - "\xb2\x54\xc7\x5d\x6a\x3b\x67\x47" 8940 - "\xcf\xa0\xe3\xab\x86\xaf\xc1\x42" 8941 - "\xe6\xb0\x23\x4a\xaf\x53\xdf\xa0" 8942 - "\xad\x12\x32\x31\x03\xf7\x21\xbe" 8943 - "\x2d\xd5\x82\x42\xb6\x4a\x3d\xcd" 8944 - "\xd8\x81\x77\xa9\x49\x98\x6c\x09" 8945 - "\xc5\xa3\x61\x12\x62\x85\x6b\xcd" 8946 - "\xb3\xf4\x20\x0c\x41\xc4\x05\x37" 8947 - "\x46\x5f\xeb\x71\x8b\xf1\xaf\x6e" 8948 - "\xba\xf3\x50\x2e\xfe\xa8\x37\xeb" 8949 - "\xe8\x8c\x4f\xa4\x0c\xf1\x31\xc8" 8950 - "\x6e\x71\x4f\xa5\xd7\x97\x73\xe0" 8951 - "\x93\x4a\x2f\xda\x7b\xe0\x20\x54" 8952 - "\x1f\x8d\x85\x79\x0b\x7b\x5e\x75" 8953 - "\xb9\x07\x67\xcc\xc8\xe7\x21\x15" 8954 - "\xa7\xc8\x98\xff\x4b\x80\x1c\x12" 8955 - "\xa8\x54\xe1\x38\x52\xe6\x74\x81" 8956 - "\x97\x47\xa1\x41\x0e\xc0\x50\xe3" 8957 - "\x55\x0e\xc3\xa7\x70\x77\xce\x07" 8958 - "\xed\x8c\x88\xe6\xa1\x5b\x14\xec" 8959 - "\xe6\xde\x06\x6d\x74\xc5\xd9\xfa" 8960 - "\xe5\x2f\x5a\xff\xc8\x05\xee\x27" 8961 - "\x35\x61\xbf\x0b\x19\x78\x9b\xd2" 8962 - "\x04\xc7\x05\xb1\x79\xb4\xff\x5f" 8963 - "\xf3\xea\x67\x52\x78\xc2\xce\x70" 8964 - "\xa4\x05\x0b\xb2\xb3\xa8\x30\x97" 8965 - "\x37\x30\xe1\x91\x8d\xb3\x2a\xff", 8966 - .ilen = 512, 8967 - .result = "\x00\x01\x02\x03\x04\x05\x06\x07" 8968 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 8969 - "\x10\x11\x12\x13\x14\x15\x16\x17" 8970 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" 8971 - "\x20\x21\x22\x23\x24\x25\x26\x27" 8972 - "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f" 8973 - "\x30\x31\x32\x33\x34\x35\x36\x37" 8974 - "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f" 8975 - "\x40\x41\x42\x43\x44\x45\x46\x47" 8976 - "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f" 8977 - "\x50\x51\x52\x53\x54\x55\x56\x57" 8978 - "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f" 8979 - "\x60\x61\x62\x63\x64\x65\x66\x67" 8980 - "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f" 8981 - "\x70\x71\x72\x73\x74\x75\x76\x77" 8982 - "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f" 8983 - "\x80\x81\x82\x83\x84\x85\x86\x87" 8984 - "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f" 8985 - "\x90\x91\x92\x93\x94\x95\x96\x97" 8986 - "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f" 8987 - "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7" 8988 - "\xa8\xa9\xaa\xab\xac\xad\xae\xaf" 8989 - "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7" 8990 - "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf" 8991 - "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7" 8992 - "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf" 8993 - "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7" 8994 - "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf" 8995 - "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7" 8996 - "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 8997 - "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 8998 - "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff" 8999 - "\x00\x01\x02\x03\x04\x05\x06\x07" 9000 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 9001 - "\x10\x11\x12\x13\x14\x15\x16\x17" 9002 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" 9003 - "\x20\x21\x22\x23\x24\x25\x26\x27" 9004 - "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f" 9005 - "\x30\x31\x32\x33\x34\x35\x36\x37" 9006 - "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f" 9007 - "\x40\x41\x42\x43\x44\x45\x46\x47" 9008 - "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f" 9009 - "\x50\x51\x52\x53\x54\x55\x56\x57" 9010 - "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f" 9011 - "\x60\x61\x62\x63\x64\x65\x66\x67" 9012 - "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f" 9013 - "\x70\x71\x72\x73\x74\x75\x76\x77" 9014 - "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f" 9015 - "\x80\x81\x82\x83\x84\x85\x86\x87" 9016 - "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f" 9017 - "\x90\x91\x92\x93\x94\x95\x96\x97" 9018 - "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f" 9019 - "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7" 9020 - "\xa8\xa9\xaa\xab\xac\xad\xae\xaf" 9021 - "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7" 9022 - "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf" 9023 - "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7" 9024 - "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf" 9025 - "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7" 9026 - "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf" 9027 - "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7" 9028 - "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 9029 - "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 9030 - "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 9031 - .rlen = 512, 11519 + .len = 512, 9032 11520 .also_non_np = 1, 9033 11521 .np = 3, 9034 11522 .tap = { 512 - 20, 4, 16 }, ··· 8696 11870 * Serpent test vectors. These are backwards because Serpent writes 8697 11871 * octet sequences in right-to-left mode. 8698 11872 */ 8699 - static const struct cipher_testvec serpent_enc_tv_template[] = { 11873 + static const struct cipher_testvec serpent_tv_template[] = { 8700 11874 { 8701 - .input = "\x00\x01\x02\x03\x04\x05\x06\x07" 11875 + .ptext = "\x00\x01\x02\x03\x04\x05\x06\x07" 8702 11876 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f", 8703 - .ilen = 16, 8704 - .result = "\x12\x07\xfc\xce\x9b\xd0\xd6\x47" 11877 + .ctext = "\x12\x07\xfc\xce\x9b\xd0\xd6\x47" 8705 11878 "\x6a\xe9\x8f\xbe\xd1\x43\xa0\xe2", 8706 - .rlen = 16, 11879 + .len = 16, 8707 11880 }, { 8708 11881 .key = "\x00\x01\x02\x03\x04\x05\x06\x07" 8709 11882 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f", 8710 11883 .klen = 16, 8711 - .input = "\x00\x01\x02\x03\x04\x05\x06\x07" 11884 + .ptext = "\x00\x01\x02\x03\x04\x05\x06\x07" 8712 11885 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f", 8713 - .ilen = 16, 8714 - .result = "\x4c\x7d\x8a\x32\x80\x72\xa2\x2c" 11886 + .ctext = "\x4c\x7d\x8a\x32\x80\x72\xa2\x2c" 8715 11887 "\x82\x3e\x4a\x1f\x3a\xcd\xa1\x6d", 8716 - .rlen = 16, 11888 + .len = 16, 8717 11889 }, { 8718 11890 .key = "\x00\x01\x02\x03\x04\x05\x06\x07" 8719 11891 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 8720 11892 "\x10\x11\x12\x13\x14\x15\x16\x17" 8721 11893 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f", 8722 11894 .klen = 32, 8723 - .input = "\x00\x01\x02\x03\x04\x05\x06\x07" 11895 + .ptext = "\x00\x01\x02\x03\x04\x05\x06\x07" 8724 11896 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f", 8725 - .ilen = 16, 8726 - .result = "\xde\x26\x9f\xf8\x33\xe4\x32\xb8" 11897 + .ctext = "\xde\x26\x9f\xf8\x33\xe4\x32\xb8" 8727 11898 "\x5b\x2e\x88\xd2\x70\x1c\xe7\x5c", 8728 - .rlen = 16, 11899 + .len = 16, 8729 11900 }, { 8730 11901 .key = "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80", 8731 11902 .klen = 16, 8732 - .input = zeroed_string, 8733 - .ilen = 16, 8734 - .result = "\xdd\xd2\x6b\x98\xa5\xff\xd8\x2c" 11903 + .ptext = zeroed_string, 11904 + .ctext = "\xdd\xd2\x6b\x98\xa5\xff\xd8\x2c" 8735 11905 "\x05\x34\x5a\x9d\xad\xbf\xaf\x49", 8736 - .rlen = 16, 11906 + .len = 16, 8737 11907 }, { /* Generated with Crypto++ */ 8738 11908 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 8739 11909 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" 8740 11910 "\x27\x04\xE1\x27\x04\xE1\xBE\x9B" 8741 11911 "\x78\xBE\x9B\x78\x55\x32\x0F\x55", 8742 11912 .klen = 32, 8743 - .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 11913 + .ptext = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 8744 11914 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 8745 11915 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 8746 11916 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" ··· 8798 11976 "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 8799 11977 "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 8800 11978 "\xDC\x50\xE7\x7E\x15\x89\x20\xB7", 8801 - .ilen = 496, 8802 - .result = "\xFB\xB0\x5D\xDE\xC0\xFE\xFC\xEB" 11979 + .ctext = "\xFB\xB0\x5D\xDE\xC0\xFE\xFC\xEB" 8803 11980 "\xB1\x80\x10\x43\xDE\x62\x70\xBD" 8804 11981 "\xFA\x8A\x93\xEA\x6B\xF7\xC5\xD7" 8805 11982 "\x0C\xD1\xBB\x29\x25\x14\x4C\x22" ··· 8860 12039 "\x34\xC1\xC9\xF2\x28\x4A\xCD\x02" 8861 12040 "\x75\x55\x9B\xFF\x36\x73\xAB\x7C" 8862 12041 "\xF4\x46\x2E\xEB\xAC\xF3\xD2\xB7", 8863 - .rlen = 496, 12042 + .len = 496, 8864 12043 .also_non_np = 1, 8865 12044 .np = 3, 8866 12045 .tap = { 496 - 20, 4, 16 }, 8867 12046 }, 8868 12047 }; 8869 12048 8870 - static const struct cipher_testvec tnepres_enc_tv_template[] = { 12049 + static const struct cipher_testvec tnepres_tv_template[] = { 8871 12050 { /* KeySize=0 */ 8872 - .input = "\x00\x01\x02\x03\x04\x05\x06\x07" 12051 + .ptext = "\x00\x01\x02\x03\x04\x05\x06\x07" 8873 12052 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f", 8874 - .ilen = 16, 8875 - .result = "\x41\xcc\x6b\x31\x59\x31\x45\x97" 12053 + .ctext = "\x41\xcc\x6b\x31\x59\x31\x45\x97" 8876 12054 "\x6d\x6f\xbb\x38\x4b\x37\x21\x28", 8877 - .rlen = 16, 12055 + .len = 16, 8878 12056 }, 8879 12057 { /* KeySize=128, PT=0, I=1 */ 8880 - .input = "\x00\x00\x00\x00\x00\x00\x00\x00" 12058 + .ptext = "\x00\x00\x00\x00\x00\x00\x00\x00" 8881 12059 "\x00\x00\x00\x00\x00\x00\x00\x00", 8882 12060 .key = "\x80\x00\x00\x00\x00\x00\x00\x00" 8883 12061 "\x00\x00\x00\x00\x00\x00\x00\x00", 8884 12062 .klen = 16, 8885 - .ilen = 16, 8886 - .result = "\x49\xaf\xbf\xad\x9d\x5a\x34\x05" 12063 + .ctext = "\x49\xaf\xbf\xad\x9d\x5a\x34\x05" 8887 12064 "\x2c\xd8\xff\xa5\x98\x6b\xd2\xdd", 8888 - .rlen = 16, 12065 + .len = 16, 8889 12066 }, { /* KeySize=128 */ 8890 12067 .key = "\x00\x01\x02\x03\x04\x05\x06\x07" 8891 12068 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f", 8892 12069 .klen = 16, 8893 - .input = "\x00\x01\x02\x03\x04\x05\x06\x07" 12070 + .ptext = "\x00\x01\x02\x03\x04\x05\x06\x07" 8894 12071 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f", 8895 - .ilen = 16, 8896 - .result = "\xea\xf4\xd7\xfc\xd8\x01\x34\x47" 12072 + .ctext = "\xea\xf4\xd7\xfc\xd8\x01\x34\x47" 8897 12073 "\x81\x45\x0b\xfa\x0c\xd6\xad\x6e", 8898 - .rlen = 16, 12074 + .len = 16, 8899 12075 }, { /* KeySize=128, I=121 */ 8900 12076 .key = "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80", 8901 12077 .klen = 16, 8902 - .input = zeroed_string, 8903 - .ilen = 16, 8904 - .result = "\x3d\xda\xbf\xc0\x06\xda\xab\x06" 12078 + .ptext = zeroed_string, 12079 + .ctext = "\x3d\xda\xbf\xc0\x06\xda\xab\x06" 8905 12080 "\x46\x2a\xf4\xef\x81\x54\x4e\x26", 8906 - .rlen = 16, 12081 + .len = 16, 8907 12082 }, { /* KeySize=192, PT=0, I=1 */ 8908 12083 .key = "\x80\x00\x00\x00\x00\x00\x00\x00" 8909 12084 "\x00\x00\x00\x00\x00\x00\x00\x00" 8910 12085 "\x00\x00\x00\x00\x00\x00\x00\x00", 8911 12086 .klen = 24, 8912 - .input = "\x00\x00\x00\x00\x00\x00\x00\x00" 12087 + .ptext = "\x00\x00\x00\x00\x00\x00\x00\x00" 8913 12088 "\x00\x00\x00\x00\x00\x00\x00\x00", 8914 - .ilen = 16, 8915 - .result = "\xe7\x8e\x54\x02\xc7\x19\x55\x68" 12089 + .ctext = "\xe7\x8e\x54\x02\xc7\x19\x55\x68" 8916 12090 "\xac\x36\x78\xf7\xa3\xf6\x0c\x66", 8917 - .rlen = 16, 12091 + .len = 16, 8918 12092 }, { /* KeySize=256, PT=0, I=1 */ 8919 12093 .key = "\x80\x00\x00\x00\x00\x00\x00\x00" 8920 12094 "\x00\x00\x00\x00\x00\x00\x00\x00" 8921 12095 "\x00\x00\x00\x00\x00\x00\x00\x00" 8922 12096 "\x00\x00\x00\x00\x00\x00\x00\x00", 8923 12097 .klen = 32, 8924 - .input = "\x00\x00\x00\x00\x00\x00\x00\x00" 12098 + .ptext = "\x00\x00\x00\x00\x00\x00\x00\x00" 8925 12099 "\x00\x00\x00\x00\x00\x00\x00\x00", 8926 - .ilen = 16, 8927 - .result = "\xab\xed\x96\xe7\x66\xbf\x28\xcb" 12100 + .ctext = "\xab\xed\x96\xe7\x66\xbf\x28\xcb" 8928 12101 "\xc0\xeb\xd2\x1a\x82\xef\x08\x19", 8929 - .rlen = 16, 12102 + .len = 16, 8930 12103 }, { /* KeySize=256, I=257 */ 8931 12104 .key = "\x1f\x1e\x1d\x1c\x1b\x1a\x19\x18" 8932 12105 "\x17\x16\x15\x14\x13\x12\x11\x10" 8933 12106 "\x0f\x0e\x0d\x0c\x0b\x0a\x09\x08" 8934 12107 "\x07\x06\x05\x04\x03\x02\x01\x00", 8935 12108 .klen = 32, 8936 - .input = "\x0f\x0e\x0d\x0c\x0b\x0a\x09\x08" 12109 + .ptext = "\x0f\x0e\x0d\x0c\x0b\x0a\x09\x08" 8937 12110 "\x07\x06\x05\x04\x03\x02\x01\x00", 8938 - .ilen = 16, 8939 - .result = "\x5c\xe7\x1c\x70\xd2\x88\x2e\x5b" 12111 + .ctext = "\x5c\xe7\x1c\x70\xd2\x88\x2e\x5b" 8940 12112 "\xb8\x32\xe4\x33\xf8\x9f\x26\xde", 8941 - .rlen = 16, 12113 + .len = 16, 8942 12114 }, { /* KeySize=256 */ 8943 12115 .key = "\x00\x01\x02\x03\x04\x05\x06\x07" 8944 12116 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 8945 12117 "\x10\x11\x12\x13\x14\x15\x16\x17" 8946 12118 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f", 8947 12119 .klen = 32, 8948 - .input = "\x00\x01\x02\x03\x04\x05\x06\x07" 12120 + .ptext = "\x00\x01\x02\x03\x04\x05\x06\x07" 8949 12121 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f", 8950 - .ilen = 16, 8951 - .result = "\x64\xa9\x1a\x37\xed\x9f\xe7\x49" 12122 + .ctext = "\x64\xa9\x1a\x37\xed\x9f\xe7\x49" 8952 12123 "\xa8\x4e\x76\xd6\xf5\x0d\x78\xee", 8953 - .rlen = 16, 12124 + .len = 16, 8954 12125 } 8955 12126 }; 8956 12127 8957 - 8958 - static const struct cipher_testvec serpent_dec_tv_template[] = { 8959 - { 8960 - .input = "\x12\x07\xfc\xce\x9b\xd0\xd6\x47" 8961 - "\x6a\xe9\x8f\xbe\xd1\x43\xa0\xe2", 8962 - .ilen = 16, 8963 - .result = "\x00\x01\x02\x03\x04\x05\x06\x07" 8964 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f", 8965 - .rlen = 16, 8966 - }, { 8967 - .key = "\x00\x01\x02\x03\x04\x05\x06\x07" 8968 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f", 8969 - .klen = 16, 8970 - .input = "\x4c\x7d\x8a\x32\x80\x72\xa2\x2c" 8971 - "\x82\x3e\x4a\x1f\x3a\xcd\xa1\x6d", 8972 - .ilen = 16, 8973 - .result = "\x00\x01\x02\x03\x04\x05\x06\x07" 8974 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f", 8975 - .rlen = 16, 8976 - }, { 8977 - .key = "\x00\x01\x02\x03\x04\x05\x06\x07" 8978 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 8979 - "\x10\x11\x12\x13\x14\x15\x16\x17" 8980 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f", 8981 - .klen = 32, 8982 - .input = "\xde\x26\x9f\xf8\x33\xe4\x32\xb8" 8983 - "\x5b\x2e\x88\xd2\x70\x1c\xe7\x5c", 8984 - .ilen = 16, 8985 - .result = "\x00\x01\x02\x03\x04\x05\x06\x07" 8986 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f", 8987 - .rlen = 16, 8988 - }, { 8989 - .key = "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80", 8990 - .klen = 16, 8991 - .input = "\xdd\xd2\x6b\x98\xa5\xff\xd8\x2c" 8992 - "\x05\x34\x5a\x9d\xad\xbf\xaf\x49", 8993 - .ilen = 16, 8994 - .result = zeroed_string, 8995 - .rlen = 16, 8996 - }, { /* Generated with Crypto++ */ 8997 - .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 8998 - "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" 8999 - "\x27\x04\xE1\x27\x04\xE1\xBE\x9B" 9000 - "\x78\xBE\x9B\x78\x55\x32\x0F\x55", 9001 - .klen = 32, 9002 - .input = "\xFB\xB0\x5D\xDE\xC0\xFE\xFC\xEB" 9003 - "\xB1\x80\x10\x43\xDE\x62\x70\xBD" 9004 - "\xFA\x8A\x93\xEA\x6B\xF7\xC5\xD7" 9005 - "\x0C\xD1\xBB\x29\x25\x14\x4C\x22" 9006 - "\x77\xA6\x38\x00\xDB\xB9\xE2\x07" 9007 - "\xD1\xAC\x82\xBA\xEA\x67\xAA\x39" 9008 - "\x99\x34\x89\x5B\x54\xE9\x12\x13" 9009 - "\x3B\x04\xE5\x12\x42\xC5\x79\xAB" 9010 - "\x0D\xC7\x3C\x58\x2D\xA3\x98\xF6" 9011 - "\xE4\x61\x9E\x17\x0B\xCE\xE8\xAA" 9012 - "\xB5\x6C\x1A\x3A\x67\x52\x81\x6A" 9013 - "\x04\xFF\x8A\x1B\x96\xFE\xE6\x87" 9014 - "\x3C\xD4\x39\x7D\x36\x9B\x03\xD5" 9015 - "\xB6\xA0\x75\x3C\x83\xE6\x1C\x73" 9016 - "\x9D\x74\x2B\x77\x53\x2D\xE5\xBD" 9017 - "\x69\xDA\x7A\x01\xF5\x6A\x70\x39" 9018 - "\x30\xD4\x2C\xF2\x8E\x06\x4B\x39" 9019 - "\xB3\x12\x1D\xB3\x17\x46\xE6\xD6" 9020 - "\xB6\x31\x36\x34\x38\x3C\x1D\x69" 9021 - "\x9F\x47\x28\x9A\x1D\x96\x70\x54" 9022 - "\x8E\x88\xCB\xE0\xF5\x6A\xAE\x0A" 9023 - "\x3C\xD5\x93\x1C\x21\xC9\x14\x3A" 9024 - "\x23\x9C\x9B\x79\xC7\x75\xC8\x39" 9025 - "\xA6\xAC\x65\x9A\x99\x37\xAF\x6D" 9026 - "\xBD\xB5\x32\xFD\xD8\x9C\x95\x7B" 9027 - "\xC6\x6A\x80\x64\xEA\xEF\x6D\x3F" 9028 - "\xA9\xFE\x5B\x16\xA3\xCF\x32\xC8" 9029 - "\xEF\x50\x22\x20\x93\x30\xBE\xE2" 9030 - "\x38\x05\x65\xAF\xBA\xB6\xE4\x72" 9031 - "\xA9\xEE\x05\x42\x88\xBD\x9D\x49" 9032 - "\xAD\x93\xCA\x4D\x45\x11\x43\x4D" 9033 - "\xB8\xF5\x74\x2B\x48\xE7\x21\xE4" 9034 - "\x4E\x3A\x4C\xDE\x65\x7A\x5A\xAD" 9035 - "\x86\xE6\x23\xEC\x6B\xA7\x17\xE6" 9036 - "\xF6\xA1\xAC\x29\xAE\xF9\x9B\x69" 9037 - "\x73\x65\x65\x51\xD6\x0B\x4E\x8C" 9038 - "\x17\x15\x9D\xB0\xCF\xB2\x42\x2B" 9039 - "\x51\xC3\x03\xE8\xB7\x7D\x2D\x39" 9040 - "\xE8\x10\x93\x16\xC8\x68\x4C\x60" 9041 - "\x87\x70\x14\xD0\x01\x57\xCB\x42" 9042 - "\x13\x59\xB1\x7F\x12\x4F\xBB\xC7" 9043 - "\xBD\x2B\xD4\xA9\x12\x26\x4F\xDE" 9044 - "\xFD\x72\xEC\xD7\x6F\x97\x14\x90" 9045 - "\x0E\x37\x13\xE6\x67\x1D\xE5\xFE" 9046 - "\x9E\x18\x3C\x8F\x3A\x3F\x59\x9B" 9047 - "\x71\x80\x05\x35\x3F\x40\x0B\x21" 9048 - "\x76\xE5\xEF\x42\x6C\xDB\x31\x05" 9049 - "\x5F\x05\xCF\x14\xE3\xF0\x61\xA2" 9050 - "\x49\x03\x5E\x77\x2E\x20\xBA\xA1" 9051 - "\xAF\x46\x51\xC0\x2B\xC4\x64\x1E" 9052 - "\x65\xCC\x51\x58\x0A\xDF\xF0\x5F" 9053 - "\x75\x9F\x48\xCD\x81\xEC\xC3\xF6" 9054 - "\xED\xC9\x4B\x7B\x4E\x26\x23\xE1" 9055 - "\xBB\xE9\x83\x0B\xCF\xE4\xDE\x00" 9056 - "\x48\xFF\xBF\x6C\xB4\x72\x16\xEF" 9057 - "\xC7\x46\xEE\x48\x8C\xB8\xAF\x45" 9058 - "\x91\x76\xE7\x6E\x65\x3D\x15\x86" 9059 - "\x10\xF8\xDB\x66\x97\x7C\x43\x4D" 9060 - "\x79\x12\x4E\xCE\x06\xD1\xD1\x6A" 9061 - "\x34\xC1\xC9\xF2\x28\x4A\xCD\x02" 9062 - "\x75\x55\x9B\xFF\x36\x73\xAB\x7C" 9063 - "\xF4\x46\x2E\xEB\xAC\xF3\xD2\xB7", 9064 - .ilen = 496, 9065 - .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 9066 - "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 9067 - "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 9068 - "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" 9069 - "\x1E\x92\x29\xC0\x34\xCB\x62\xF9" 9070 - "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48" 9071 - "\xDF\x76\x0D\x81\x18\xAF\x23\xBA" 9072 - "\x51\xE8\x5C\xF3\x8A\x21\x95\x2C" 9073 - "\xC3\x37\xCE\x65\xFC\x70\x07\x9E" 9074 - "\x12\xA9\x40\xD7\x4B\xE2\x79\x10" 9075 - "\x84\x1B\xB2\x26\xBD\x54\xEB\x5F" 9076 - "\xF6\x8D\x01\x98\x2F\xC6\x3A\xD1" 9077 - "\x68\xFF\x73\x0A\xA1\x15\xAC\x43" 9078 - "\xDA\x4E\xE5\x7C\x13\x87\x1E\xB5" 9079 - "\x29\xC0\x57\xEE\x62\xF9\x90\x04" 9080 - "\x9B\x32\xC9\x3D\xD4\x6B\x02\x76" 9081 - "\x0D\xA4\x18\xAF\x46\xDD\x51\xE8" 9082 - "\x7F\x16\x8A\x21\xB8\x2C\xC3\x5A" 9083 - "\xF1\x65\xFC\x93\x07\x9E\x35\xCC" 9084 - "\x40\xD7\x6E\x05\x79\x10\xA7\x1B" 9085 - "\xB2\x49\xE0\x54\xEB\x82\x19\x8D" 9086 - "\x24\xBB\x2F\xC6\x5D\xF4\x68\xFF" 9087 - "\x96\x0A\xA1\x38\xCF\x43\xDA\x71" 9088 - "\x08\x7C\x13\xAA\x1E\xB5\x4C\xE3" 9089 - "\x57\xEE\x85\x1C\x90\x27\xBE\x32" 9090 - "\xC9\x60\xF7\x6B\x02\x99\x0D\xA4" 9091 - "\x3B\xD2\x46\xDD\x74\x0B\x7F\x16" 9092 - "\xAD\x21\xB8\x4F\xE6\x5A\xF1\x88" 9093 - "\x1F\x93\x2A\xC1\x35\xCC\x63\xFA" 9094 - "\x6E\x05\x9C\x10\xA7\x3E\xD5\x49" 9095 - "\xE0\x77\x0E\x82\x19\xB0\x24\xBB" 9096 - "\x52\xE9\x5D\xF4\x8B\x22\x96\x2D" 9097 - "\xC4\x38\xCF\x66\xFD\x71\x08\x9F" 9098 - "\x13\xAA\x41\xD8\x4C\xE3\x7A\x11" 9099 - "\x85\x1C\xB3\x27\xBE\x55\xEC\x60" 9100 - "\xF7\x8E\x02\x99\x30\xC7\x3B\xD2" 9101 - "\x69\x00\x74\x0B\xA2\x16\xAD\x44" 9102 - "\xDB\x4F\xE6\x7D\x14\x88\x1F\xB6" 9103 - "\x2A\xC1\x58\xEF\x63\xFA\x91\x05" 9104 - "\x9C\x33\xCA\x3E\xD5\x6C\x03\x77" 9105 - "\x0E\xA5\x19\xB0\x47\xDE\x52\xE9" 9106 - "\x80\x17\x8B\x22\xB9\x2D\xC4\x5B" 9107 - "\xF2\x66\xFD\x94\x08\x9F\x36\xCD" 9108 - "\x41\xD8\x6F\x06\x7A\x11\xA8\x1C" 9109 - "\xB3\x4A\xE1\x55\xEC\x83\x1A\x8E" 9110 - "\x25\xBC\x30\xC7\x5E\xF5\x69\x00" 9111 - "\x97\x0B\xA2\x39\xD0\x44\xDB\x72" 9112 - "\x09\x7D\x14\xAB\x1F\xB6\x4D\xE4" 9113 - "\x58\xEF\x86\x1D\x91\x28\xBF\x33" 9114 - "\xCA\x61\xF8\x6C\x03\x9A\x0E\xA5" 9115 - "\x3C\xD3\x47\xDE\x75\x0C\x80\x17" 9116 - "\xAE\x22\xB9\x50\xE7\x5B\xF2\x89" 9117 - "\x20\x94\x2B\xC2\x36\xCD\x64\xFB" 9118 - "\x6F\x06\x9D\x11\xA8\x3F\xD6\x4A" 9119 - "\xE1\x78\x0F\x83\x1A\xB1\x25\xBC" 9120 - "\x53\xEA\x5E\xF5\x8C\x00\x97\x2E" 9121 - "\xC5\x39\xD0\x67\xFE\x72\x09\xA0" 9122 - "\x14\xAB\x42\xD9\x4D\xE4\x7B\x12" 9123 - "\x86\x1D\xB4\x28\xBF\x56\xED\x61" 9124 - "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 9125 - "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 9126 - "\xDC\x50\xE7\x7E\x15\x89\x20\xB7", 9127 - .rlen = 496, 9128 - .also_non_np = 1, 9129 - .np = 3, 9130 - .tap = { 496 - 20, 4, 16 }, 9131 - }, 9132 - }; 9133 - 9134 - static const struct cipher_testvec tnepres_dec_tv_template[] = { 9135 - { 9136 - .input = "\x41\xcc\x6b\x31\x59\x31\x45\x97" 9137 - "\x6d\x6f\xbb\x38\x4b\x37\x21\x28", 9138 - .ilen = 16, 9139 - .result = "\x00\x01\x02\x03\x04\x05\x06\x07" 9140 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f", 9141 - .rlen = 16, 9142 - }, { 9143 - .key = "\x00\x01\x02\x03\x04\x05\x06\x07" 9144 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f", 9145 - .klen = 16, 9146 - .input = "\xea\xf4\xd7\xfc\xd8\x01\x34\x47" 9147 - "\x81\x45\x0b\xfa\x0c\xd6\xad\x6e", 9148 - .ilen = 16, 9149 - .result = "\x00\x01\x02\x03\x04\x05\x06\x07" 9150 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f", 9151 - .rlen = 16, 9152 - }, { 9153 - .key = "\x00\x01\x02\x03\x04\x05\x06\x07" 9154 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 9155 - "\x10\x11\x12\x13\x14\x15\x16\x17" 9156 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f", 9157 - .klen = 32, 9158 - .input = "\x64\xa9\x1a\x37\xed\x9f\xe7\x49" 9159 - "\xa8\x4e\x76\xd6\xf5\x0d\x78\xee", 9160 - .ilen = 16, 9161 - .result = "\x00\x01\x02\x03\x04\x05\x06\x07" 9162 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f", 9163 - .rlen = 16, 9164 - }, { /* KeySize=128, I=121 */ 9165 - .key = "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80", 9166 - .klen = 16, 9167 - .input = "\x3d\xda\xbf\xc0\x06\xda\xab\x06" 9168 - "\x46\x2a\xf4\xef\x81\x54\x4e\x26", 9169 - .ilen = 16, 9170 - .result = zeroed_string, 9171 - .rlen = 16, 9172 - }, 9173 - }; 9174 - 9175 - static const struct cipher_testvec serpent_cbc_enc_tv_template[] = { 12128 + static const struct cipher_testvec serpent_cbc_tv_template[] = { 9176 12129 { /* Generated with Crypto++ */ 9177 12130 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 9178 12131 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" ··· 8955 12360 .klen = 32, 8956 12361 .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F" 8957 12362 "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64", 8958 - .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 12363 + .ptext = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 8959 12364 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 8960 12365 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 8961 12366 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" ··· 9017 12422 "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 9018 12423 "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 9019 12424 "\xDC\x50\xE7\x7E\x15\x89\x20\xB7", 9020 - .ilen = 496, 9021 - .result = "\x80\xCF\x11\x41\x1A\xB9\x4B\x9C" 12425 + .ctext = "\x80\xCF\x11\x41\x1A\xB9\x4B\x9C" 9022 12426 "\xFF\xB7\x6C\xEA\xF0\xAF\x77\x6E" 9023 12427 "\x71\x75\x95\x9D\x4E\x1C\xCF\xAD" 9024 12428 "\x81\x34\xE9\x8F\xAE\x5A\x91\x1C" ··· 9079 12485 "\x02\xC4\xAF\xFA\xAD\x31\xF4\xBF" 9080 12486 "\xFC\x66\xAA\x37\xF2\x37\x39\x6B" 9081 12487 "\xBC\x08\x3A\xA2\x29\xB3\xDF\xD1", 9082 - .rlen = 496, 12488 + .len = 496, 9083 12489 .also_non_np = 1, 9084 12490 .np = 3, 9085 12491 .tap = { 496 - 20, 4, 16 }, 9086 12492 }, 9087 12493 }; 9088 12494 9089 - static const struct cipher_testvec serpent_cbc_dec_tv_template[] = { 12495 + static const struct cipher_testvec serpent_ctr_tv_template[] = { 9090 12496 { /* Generated with Crypto++ */ 9091 12497 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 9092 12498 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" ··· 9095 12501 .klen = 32, 9096 12502 .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F" 9097 12503 "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64", 9098 - .input = "\x80\xCF\x11\x41\x1A\xB9\x4B\x9C" 9099 - "\xFF\xB7\x6C\xEA\xF0\xAF\x77\x6E" 9100 - "\x71\x75\x95\x9D\x4E\x1C\xCF\xAD" 9101 - "\x81\x34\xE9\x8F\xAE\x5A\x91\x1C" 9102 - "\x38\x63\x35\x7E\x79\x18\x0A\xE8" 9103 - "\x67\x06\x76\xD5\xFF\x22\x2F\xDA" 9104 - "\xB6\x2D\x57\x13\xB6\x3C\xBC\x97" 9105 - "\xFE\x53\x75\x35\x97\x7F\x51\xEA" 9106 - "\xDF\x5D\xE8\x9D\xCC\xD9\xAE\xE7" 9107 - "\x62\x67\xFF\x04\xC2\x18\x22\x5F" 9108 - "\x2E\x06\xC1\xE2\x26\xCD\xC6\x1E" 9109 - "\xE5\x2C\x4E\x87\x23\xDD\xF0\x41" 9110 - "\x08\xA5\xB4\x3E\x07\x1E\x0B\xBB" 9111 - "\x72\x84\xF8\x0A\x3F\x38\x5E\x91" 9112 - "\x15\x26\xE1\xDB\xA4\x3D\x74\xD2" 9113 - "\x41\x1E\x3F\xA9\xC6\x7D\x2A\xAB" 9114 - "\x27\xDF\x89\x1D\x86\x3E\xF7\x5A" 9115 - "\xF6\xE3\x0F\xC7\x6B\x4C\x96\x7C" 9116 - "\x2D\x12\xA5\x05\x92\xCB\xD7\x4A" 9117 - "\x4D\x1E\x88\x21\xE1\x63\xB4\xFC" 9118 - "\x4A\xF2\xCD\x35\xB9\xD7\x70\x97" 9119 - "\x5A\x5E\x7E\x96\x52\x20\xDC\x25" 9120 - "\xE9\x6B\x36\xB4\xE0\x98\x85\x2C" 9121 - "\x3C\xD2\xF7\x78\x8A\x73\x26\x9B" 9122 - "\xAF\x0B\x11\xE8\x4D\x67\x23\xE9" 9123 - "\x77\xDF\x58\xF6\x6F\x9E\xA4\xC5" 9124 - "\x10\xA1\x82\x0E\x80\xA0\x8F\x4B" 9125 - "\xA1\xC0\x12\x54\x4E\xC9\x20\x92" 9126 - "\x11\x00\x10\x4E\xB3\x7C\xCA\x63" 9127 - "\xE5\x3F\xD3\x41\x37\xCD\x74\xB7" 9128 - "\xA5\x7C\x61\xB8\x0B\x7A\x7F\x4D" 9129 - "\xFE\x96\x7D\x1B\xBE\x60\x37\xB7" 9130 - "\x81\x92\x66\x67\x15\x1E\x39\x98" 9131 - "\x52\xC0\xF4\x69\xC0\x99\x4F\x5A" 9132 - "\x2E\x32\xAD\x7C\x8B\xE9\xAD\x05" 9133 - "\x55\xF9\x0A\x1F\x97\x5C\xFA\x2B" 9134 - "\xF4\x99\x76\x3A\x6E\x4D\xE1\x4C" 9135 - "\x14\x4E\x6F\x87\xEE\x1A\x85\xA3" 9136 - "\x96\xC6\x66\x49\xDA\x0D\x71\xAC" 9137 - "\x04\x05\x46\xD3\x90\x0F\x64\x64" 9138 - "\x01\x66\x2C\x62\x5D\x34\xD1\xCB" 9139 - "\x3A\x24\xCE\x95\xEF\xAE\x2C\x97" 9140 - "\x0E\x0C\x1D\x36\x49\xEB\xE9\x3D" 9141 - "\x62\xA6\x19\x28\x9E\x26\xB4\x3F" 9142 - "\xD7\x55\x42\x3C\xCD\x72\x0A\xF0" 9143 - "\x7D\xE9\x95\x45\x86\xED\xB1\xE0" 9144 - "\x8D\xE9\xC5\x86\x13\x24\x28\x7D" 9145 - "\x74\xEF\xCA\x50\x12\x7E\x64\x8F" 9146 - "\x1B\xF5\x5B\xFE\xE2\xAC\xFA\xE7" 9147 - "\xBD\x38\x8C\x11\x20\xEF\xB1\xAA" 9148 - "\x7B\xE5\xE5\x78\xAD\x9D\x2D\xA2" 9149 - "\x8E\xDD\x48\xB3\xEF\x18\x92\x7E" 9150 - "\xE6\x75\x0D\x54\x64\x11\xA3\x3A" 9151 - "\xDB\x97\x0F\xD3\xDF\x07\xD3\x7E" 9152 - "\x1E\xD1\x87\xE4\x74\xBB\x46\xF4" 9153 - "\xBA\x23\x2D\x8D\x29\x07\x12\xCF" 9154 - "\x34\xCD\x72\x7F\x01\x30\xE7\xA0" 9155 - "\xF8\xDD\xA8\x08\xF0\xBC\xB1\xA2" 9156 - "\xCC\xE1\x6B\x5F\xBE\xEA\xF1\xE4" 9157 - "\x02\xC4\xAF\xFA\xAD\x31\xF4\xBF" 9158 - "\xFC\x66\xAA\x37\xF2\x37\x39\x6B" 9159 - "\xBC\x08\x3A\xA2\x29\xB3\xDF\xD1", 9160 - .ilen = 496, 9161 - .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 12504 + .ptext = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 9162 12505 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 9163 12506 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 9164 12507 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" ··· 9157 12626 "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 9158 12627 "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 9159 12628 "\xDC\x50\xE7\x7E\x15\x89\x20\xB7", 9160 - .rlen = 496, 9161 - .also_non_np = 1, 9162 - .np = 3, 9163 - .tap = { 496 - 20, 4, 16 }, 9164 - }, 9165 - }; 9166 - 9167 - static const struct cipher_testvec serpent_ctr_enc_tv_template[] = { 9168 - { /* Generated with Crypto++ */ 9169 - .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 9170 - "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" 9171 - "\x27\x04\xE1\x27\x04\xE1\xBE\x9B" 9172 - "\x78\xBE\x9B\x78\x55\x32\x0F\x55", 9173 - .klen = 32, 9174 - .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F" 9175 - "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64", 9176 - .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 9177 - "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 9178 - "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 9179 - "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" 9180 - "\x1E\x92\x29\xC0\x34\xCB\x62\xF9" 9181 - "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48" 9182 - "\xDF\x76\x0D\x81\x18\xAF\x23\xBA" 9183 - "\x51\xE8\x5C\xF3\x8A\x21\x95\x2C" 9184 - "\xC3\x37\xCE\x65\xFC\x70\x07\x9E" 9185 - "\x12\xA9\x40\xD7\x4B\xE2\x79\x10" 9186 - "\x84\x1B\xB2\x26\xBD\x54\xEB\x5F" 9187 - "\xF6\x8D\x01\x98\x2F\xC6\x3A\xD1" 9188 - "\x68\xFF\x73\x0A\xA1\x15\xAC\x43" 9189 - "\xDA\x4E\xE5\x7C\x13\x87\x1E\xB5" 9190 - "\x29\xC0\x57\xEE\x62\xF9\x90\x04" 9191 - "\x9B\x32\xC9\x3D\xD4\x6B\x02\x76" 9192 - "\x0D\xA4\x18\xAF\x46\xDD\x51\xE8" 9193 - "\x7F\x16\x8A\x21\xB8\x2C\xC3\x5A" 9194 - "\xF1\x65\xFC\x93\x07\x9E\x35\xCC" 9195 - "\x40\xD7\x6E\x05\x79\x10\xA7\x1B" 9196 - "\xB2\x49\xE0\x54\xEB\x82\x19\x8D" 9197 - "\x24\xBB\x2F\xC6\x5D\xF4\x68\xFF" 9198 - "\x96\x0A\xA1\x38\xCF\x43\xDA\x71" 9199 - "\x08\x7C\x13\xAA\x1E\xB5\x4C\xE3" 9200 - "\x57\xEE\x85\x1C\x90\x27\xBE\x32" 9201 - "\xC9\x60\xF7\x6B\x02\x99\x0D\xA4" 9202 - "\x3B\xD2\x46\xDD\x74\x0B\x7F\x16" 9203 - "\xAD\x21\xB8\x4F\xE6\x5A\xF1\x88" 9204 - "\x1F\x93\x2A\xC1\x35\xCC\x63\xFA" 9205 - "\x6E\x05\x9C\x10\xA7\x3E\xD5\x49" 9206 - "\xE0\x77\x0E\x82\x19\xB0\x24\xBB" 9207 - "\x52\xE9\x5D\xF4\x8B\x22\x96\x2D" 9208 - "\xC4\x38\xCF\x66\xFD\x71\x08\x9F" 9209 - "\x13\xAA\x41\xD8\x4C\xE3\x7A\x11" 9210 - "\x85\x1C\xB3\x27\xBE\x55\xEC\x60" 9211 - "\xF7\x8E\x02\x99\x30\xC7\x3B\xD2" 9212 - "\x69\x00\x74\x0B\xA2\x16\xAD\x44" 9213 - "\xDB\x4F\xE6\x7D\x14\x88\x1F\xB6" 9214 - "\x2A\xC1\x58\xEF\x63\xFA\x91\x05" 9215 - "\x9C\x33\xCA\x3E\xD5\x6C\x03\x77" 9216 - "\x0E\xA5\x19\xB0\x47\xDE\x52\xE9" 9217 - "\x80\x17\x8B\x22\xB9\x2D\xC4\x5B" 9218 - "\xF2\x66\xFD\x94\x08\x9F\x36\xCD" 9219 - "\x41\xD8\x6F\x06\x7A\x11\xA8\x1C" 9220 - "\xB3\x4A\xE1\x55\xEC\x83\x1A\x8E" 9221 - "\x25\xBC\x30\xC7\x5E\xF5\x69\x00" 9222 - "\x97\x0B\xA2\x39\xD0\x44\xDB\x72" 9223 - "\x09\x7D\x14\xAB\x1F\xB6\x4D\xE4" 9224 - "\x58\xEF\x86\x1D\x91\x28\xBF\x33" 9225 - "\xCA\x61\xF8\x6C\x03\x9A\x0E\xA5" 9226 - "\x3C\xD3\x47\xDE\x75\x0C\x80\x17" 9227 - "\xAE\x22\xB9\x50\xE7\x5B\xF2\x89" 9228 - "\x20\x94\x2B\xC2\x36\xCD\x64\xFB" 9229 - "\x6F\x06\x9D\x11\xA8\x3F\xD6\x4A" 9230 - "\xE1\x78\x0F\x83\x1A\xB1\x25\xBC" 9231 - "\x53\xEA\x5E\xF5\x8C\x00\x97\x2E" 9232 - "\xC5\x39\xD0\x67\xFE\x72\x09\xA0" 9233 - "\x14\xAB\x42\xD9\x4D\xE4\x7B\x12" 9234 - "\x86\x1D\xB4\x28\xBF\x56\xED\x61" 9235 - "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 9236 - "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 9237 - "\xDC\x50\xE7\x7E\x15\x89\x20\xB7", 9238 - .ilen = 496, 9239 - .result = "\x84\x68\xEC\xF2\x1C\x88\x20\xCA" 12629 + .ctext = "\x84\x68\xEC\xF2\x1C\x88\x20\xCA" 9240 12630 "\x37\x69\xE3\x3A\x22\x85\x48\x46" 9241 12631 "\x70\xAA\x25\xB4\xCD\x8B\x04\x4E" 9242 12632 "\x8D\x15\x2B\x98\xDF\x7B\x6D\xB9" ··· 9219 12767 "\xB2\xE6\x7E\x86\x7A\x12\x17\x5B" 9220 12768 "\x30\xF3\x9B\x0D\xFA\x57\xE4\x50" 9221 12769 "\x40\x53\x77\x8C\x15\xF8\x8D\x13", 9222 - .rlen = 496, 12770 + .len = 496, 9223 12771 }, { /* Generated with Crypto++ */ 9224 12772 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 9225 12773 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" ··· 9228 12776 .klen = 32, 9229 12777 .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F" 9230 12778 "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64", 9231 - .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 12779 + .ptext = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 9232 12780 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 9233 12781 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 9234 12782 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" ··· 9291 12839 "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 9292 12840 "\xDC\x50\xE7\x7E\x15\x89\x20\xB7" 9293 12841 "\x2B\xC2\x59", 9294 - .ilen = 499, 9295 - .result = "\x84\x68\xEC\xF2\x1C\x88\x20\xCA" 12842 + .ctext = "\x84\x68\xEC\xF2\x1C\x88\x20\xCA" 9296 12843 "\x37\x69\xE3\x3A\x22\x85\x48\x46" 9297 12844 "\x70\xAA\x25\xB4\xCD\x8B\x04\x4E" 9298 12845 "\x8D\x15\x2B\x98\xDF\x7B\x6D\xB9" ··· 9354 12903 "\x30\xF3\x9B\x0D\xFA\x57\xE4\x50" 9355 12904 "\x40\x53\x77\x8C\x15\xF8\x8D\x13" 9356 12905 "\x38\xE2\xE5", 9357 - .rlen = 499, 12906 + .len = 499, 9358 12907 .also_non_np = 1, 9359 12908 .np = 2, 9360 12909 .tap = { 499 - 16, 16 }, ··· 9366 12915 .klen = 32, 9367 12916 .iv = "\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF" 9368 12917 "\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFD", 9369 - .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 12918 + .ptext = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 9370 12919 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 9371 12920 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 9372 12921 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" ··· 9428 12977 "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 9429 12978 "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 9430 12979 "\xDC\x50\xE7\x7E\x15\x89\x20\xB7", 9431 - .ilen = 496, 9432 - .result = "\x06\x9A\xF8\xB4\x53\x88\x62\xFC" 12980 + .ctext = "\x06\x9A\xF8\xB4\x53\x88\x62\xFC" 9433 12981 "\x68\xB8\x2E\xDF\xC1\x05\x0F\x3D" 9434 12982 "\xAF\x4D\x95\xAE\xC4\xE9\x1C\xDC" 9435 12983 "\xF6\x2B\x8F\x90\x89\xF6\x7E\x1A" ··· 9490 13040 "\x7F\x67\x9D\xB7\x2C\xCC\xF5\x17" 9491 13041 "\x2B\x89\xAC\xB0\xD7\x1E\x47\xB0" 9492 13042 "\x61\xAF\xD4\x63\x6D\xB8\x2D\x20", 9493 - .rlen = 496, 13043 + .len = 496, 9494 13044 }, 9495 13045 }; 9496 13046 9497 - static const struct cipher_testvec serpent_ctr_dec_tv_template[] = { 9498 - { /* Generated with Crypto++ */ 9499 - .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 9500 - "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" 9501 - "\x27\x04\xE1\x27\x04\xE1\xBE\x9B" 9502 - "\x78\xBE\x9B\x78\x55\x32\x0F\x55", 9503 - .klen = 32, 9504 - .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F" 9505 - "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64", 9506 - .input = "\x84\x68\xEC\xF2\x1C\x88\x20\xCA" 9507 - "\x37\x69\xE3\x3A\x22\x85\x48\x46" 9508 - "\x70\xAA\x25\xB4\xCD\x8B\x04\x4E" 9509 - "\x8D\x15\x2B\x98\xDF\x7B\x6D\xB9" 9510 - "\xE0\x4A\x73\x00\x65\xB6\x1A\x0D" 9511 - "\x5C\x60\xDF\x34\xDC\x60\x4C\xDF" 9512 - "\xB5\x1F\x26\x8C\xDA\xC1\x11\xA8" 9513 - "\x80\xFA\x37\x7A\x89\xAA\xAE\x7B" 9514 - "\x92\x6E\xB9\xDC\xC9\x62\x4F\x88" 9515 - "\x0A\x5D\x97\x2F\x6B\xAC\x03\x7C" 9516 - "\x22\xF6\x55\x5A\xFA\x35\xA5\x17" 9517 - "\xA1\x5C\x5E\x2B\x63\x2D\xB9\x91" 9518 - "\x3E\x83\x26\x00\x4E\xD5\xBE\xCE" 9519 - "\x79\xC4\x3D\xFC\x70\xA0\xAD\x96" 9520 - "\xBA\x58\x2A\x1C\xDF\xC2\x3A\xA5" 9521 - "\x7C\xB5\x12\x89\xED\xBF\xB6\x09" 9522 - "\x13\x4F\x7D\x61\x3C\x5C\x27\xFC" 9523 - "\x5D\xE1\x4F\xA1\xEA\xB3\xCA\xB9" 9524 - "\xE6\xD0\x97\x81\xDE\xD1\xFB\x8A" 9525 - "\x30\xDB\xA3\x5D\xEC\x25\x0B\x86" 9526 - "\x71\xC8\xA7\x67\xE8\xBC\x7D\x4C" 9527 - "\xAE\x82\xD3\x73\x31\x09\xCB\xB3" 9528 - "\x4D\xD4\xC0\x8A\x2B\xFA\xA6\x55" 9529 - "\x39\x0A\xBC\x6E\x75\xAB\xC2\xE2" 9530 - "\x8A\xF2\x26\xCD\x63\x38\x35\xF7" 9531 - "\xAE\x12\x83\xCD\x8A\x9E\x7E\x4C" 9532 - "\xFE\x4D\xD7\xCE\x5C\x6E\x4C\xAF" 9533 - "\xE3\xCD\x76\xA7\x87\xA1\x54\x7C" 9534 - "\xEC\x32\xC7\x83\x2A\xFF\xF8\xEA" 9535 - "\x87\xB2\x47\xA3\x9D\xC2\x9C\xA2" 9536 - "\xB7\x2C\x7C\x1A\x24\xCB\x88\x61" 9537 - "\xFF\xA7\x1A\x16\x01\xDD\x4B\xFC" 9538 - "\x2E\xE0\x48\x67\x09\x42\xCC\x91" 9539 - "\xBE\x20\x38\xC0\x5E\x3B\x95\x00" 9540 - "\xA1\x96\x66\x0B\x8A\xE9\x9E\xF7" 9541 - "\x6B\x34\x0A\x51\xC0\x3B\xEB\x71" 9542 - "\x07\x97\x38\x4B\x5C\x56\x98\x67" 9543 - "\x78\x9C\xD0\x0E\x2B\xB5\x67\x90" 9544 - "\x75\xF8\xFE\x6D\x4E\x85\xCC\x0D" 9545 - "\x18\x06\x15\x9D\x5A\x10\x13\x37" 9546 - "\xA3\xD6\x68\xA2\xDF\x7E\xC7\x12" 9547 - "\xC9\x0D\x4D\x91\xB0\x2A\x55\xFF" 9548 - "\x6F\x73\x13\xDF\x28\xB5\x2A\x2C" 9549 - "\xE4\xFC\x20\xD9\xF1\x7A\x82\xB1" 9550 - "\xCB\x57\xB6\x3D\x8C\xF4\x8E\x27" 9551 - "\x37\xDC\x35\xF3\x79\x01\x53\xA4" 9552 - "\x7B\x37\xDE\x7C\x04\xAE\x50\xDB" 9553 - "\x9B\x1E\x8C\x07\xA7\x52\x49\x50" 9554 - "\x34\x25\x65\xDD\xA9\x8F\x7E\xBD" 9555 - "\x7A\xC9\x36\xAE\xDE\x21\x48\x64" 9556 - "\xC2\x02\xBA\xBE\x11\x1E\x3D\x9C" 9557 - "\x98\x52\xCC\x04\xBD\x5E\x61\x26" 9558 - "\x10\xD3\x21\xD9\x6E\x25\x98\x77" 9559 - "\x8E\x98\x63\xF6\xF6\x52\xFB\x13" 9560 - "\xAA\x30\xF2\xB9\xA4\x43\x53\x39" 9561 - "\x1C\x97\x07\x7E\x6B\xFF\x3D\x43" 9562 - "\xA6\x71\x6B\x66\x8F\x58\x3F\x71" 9563 - "\x90\x47\x40\x92\xE6\x69\xD1\x96" 9564 - "\x34\xB3\x3B\xE5\x43\xE4\xD5\x56" 9565 - "\xB2\xE6\x7E\x86\x7A\x12\x17\x5B" 9566 - "\x30\xF3\x9B\x0D\xFA\x57\xE4\x50" 9567 - "\x40\x53\x77\x8C\x15\xF8\x8D\x13", 9568 - .ilen = 496, 9569 - .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 9570 - "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 9571 - "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 9572 - "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" 9573 - "\x1E\x92\x29\xC0\x34\xCB\x62\xF9" 9574 - "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48" 9575 - "\xDF\x76\x0D\x81\x18\xAF\x23\xBA" 9576 - "\x51\xE8\x5C\xF3\x8A\x21\x95\x2C" 9577 - "\xC3\x37\xCE\x65\xFC\x70\x07\x9E" 9578 - "\x12\xA9\x40\xD7\x4B\xE2\x79\x10" 9579 - "\x84\x1B\xB2\x26\xBD\x54\xEB\x5F" 9580 - "\xF6\x8D\x01\x98\x2F\xC6\x3A\xD1" 9581 - "\x68\xFF\x73\x0A\xA1\x15\xAC\x43" 9582 - "\xDA\x4E\xE5\x7C\x13\x87\x1E\xB5" 9583 - "\x29\xC0\x57\xEE\x62\xF9\x90\x04" 9584 - "\x9B\x32\xC9\x3D\xD4\x6B\x02\x76" 9585 - "\x0D\xA4\x18\xAF\x46\xDD\x51\xE8" 9586 - "\x7F\x16\x8A\x21\xB8\x2C\xC3\x5A" 9587 - "\xF1\x65\xFC\x93\x07\x9E\x35\xCC" 9588 - "\x40\xD7\x6E\x05\x79\x10\xA7\x1B" 9589 - "\xB2\x49\xE0\x54\xEB\x82\x19\x8D" 9590 - "\x24\xBB\x2F\xC6\x5D\xF4\x68\xFF" 9591 - "\x96\x0A\xA1\x38\xCF\x43\xDA\x71" 9592 - "\x08\x7C\x13\xAA\x1E\xB5\x4C\xE3" 9593 - "\x57\xEE\x85\x1C\x90\x27\xBE\x32" 9594 - "\xC9\x60\xF7\x6B\x02\x99\x0D\xA4" 9595 - "\x3B\xD2\x46\xDD\x74\x0B\x7F\x16" 9596 - "\xAD\x21\xB8\x4F\xE6\x5A\xF1\x88" 9597 - "\x1F\x93\x2A\xC1\x35\xCC\x63\xFA" 9598 - "\x6E\x05\x9C\x10\xA7\x3E\xD5\x49" 9599 - "\xE0\x77\x0E\x82\x19\xB0\x24\xBB" 9600 - "\x52\xE9\x5D\xF4\x8B\x22\x96\x2D" 9601 - "\xC4\x38\xCF\x66\xFD\x71\x08\x9F" 9602 - "\x13\xAA\x41\xD8\x4C\xE3\x7A\x11" 9603 - "\x85\x1C\xB3\x27\xBE\x55\xEC\x60" 9604 - "\xF7\x8E\x02\x99\x30\xC7\x3B\xD2" 9605 - "\x69\x00\x74\x0B\xA2\x16\xAD\x44" 9606 - "\xDB\x4F\xE6\x7D\x14\x88\x1F\xB6" 9607 - "\x2A\xC1\x58\xEF\x63\xFA\x91\x05" 9608 - "\x9C\x33\xCA\x3E\xD5\x6C\x03\x77" 9609 - "\x0E\xA5\x19\xB0\x47\xDE\x52\xE9" 9610 - "\x80\x17\x8B\x22\xB9\x2D\xC4\x5B" 9611 - "\xF2\x66\xFD\x94\x08\x9F\x36\xCD" 9612 - "\x41\xD8\x6F\x06\x7A\x11\xA8\x1C" 9613 - "\xB3\x4A\xE1\x55\xEC\x83\x1A\x8E" 9614 - "\x25\xBC\x30\xC7\x5E\xF5\x69\x00" 9615 - "\x97\x0B\xA2\x39\xD0\x44\xDB\x72" 9616 - "\x09\x7D\x14\xAB\x1F\xB6\x4D\xE4" 9617 - "\x58\xEF\x86\x1D\x91\x28\xBF\x33" 9618 - "\xCA\x61\xF8\x6C\x03\x9A\x0E\xA5" 9619 - "\x3C\xD3\x47\xDE\x75\x0C\x80\x17" 9620 - "\xAE\x22\xB9\x50\xE7\x5B\xF2\x89" 9621 - "\x20\x94\x2B\xC2\x36\xCD\x64\xFB" 9622 - "\x6F\x06\x9D\x11\xA8\x3F\xD6\x4A" 9623 - "\xE1\x78\x0F\x83\x1A\xB1\x25\xBC" 9624 - "\x53\xEA\x5E\xF5\x8C\x00\x97\x2E" 9625 - "\xC5\x39\xD0\x67\xFE\x72\x09\xA0" 9626 - "\x14\xAB\x42\xD9\x4D\xE4\x7B\x12" 9627 - "\x86\x1D\xB4\x28\xBF\x56\xED\x61" 9628 - "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 9629 - "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 9630 - "\xDC\x50\xE7\x7E\x15\x89\x20\xB7", 9631 - .rlen = 496, 9632 - }, { /* Generated with Crypto++ */ 9633 - .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 9634 - "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" 9635 - "\x27\x04\xE1\x27\x04\xE1\xBE\x9B" 9636 - "\x78\xBE\x9B\x78\x55\x32\x0F\x55", 9637 - .klen = 32, 9638 - .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F" 9639 - "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64", 9640 - .input = "\x84\x68\xEC\xF2\x1C\x88\x20\xCA" 9641 - "\x37\x69\xE3\x3A\x22\x85\x48\x46" 9642 - "\x70\xAA\x25\xB4\xCD\x8B\x04\x4E" 9643 - "\x8D\x15\x2B\x98\xDF\x7B\x6D\xB9" 9644 - "\xE0\x4A\x73\x00\x65\xB6\x1A\x0D" 9645 - "\x5C\x60\xDF\x34\xDC\x60\x4C\xDF" 9646 - "\xB5\x1F\x26\x8C\xDA\xC1\x11\xA8" 9647 - "\x80\xFA\x37\x7A\x89\xAA\xAE\x7B" 9648 - "\x92\x6E\xB9\xDC\xC9\x62\x4F\x88" 9649 - "\x0A\x5D\x97\x2F\x6B\xAC\x03\x7C" 9650 - "\x22\xF6\x55\x5A\xFA\x35\xA5\x17" 9651 - "\xA1\x5C\x5E\x2B\x63\x2D\xB9\x91" 9652 - "\x3E\x83\x26\x00\x4E\xD5\xBE\xCE" 9653 - "\x79\xC4\x3D\xFC\x70\xA0\xAD\x96" 9654 - "\xBA\x58\x2A\x1C\xDF\xC2\x3A\xA5" 9655 - "\x7C\xB5\x12\x89\xED\xBF\xB6\x09" 9656 - "\x13\x4F\x7D\x61\x3C\x5C\x27\xFC" 9657 - "\x5D\xE1\x4F\xA1\xEA\xB3\xCA\xB9" 9658 - "\xE6\xD0\x97\x81\xDE\xD1\xFB\x8A" 9659 - "\x30\xDB\xA3\x5D\xEC\x25\x0B\x86" 9660 - "\x71\xC8\xA7\x67\xE8\xBC\x7D\x4C" 9661 - "\xAE\x82\xD3\x73\x31\x09\xCB\xB3" 9662 - "\x4D\xD4\xC0\x8A\x2B\xFA\xA6\x55" 9663 - "\x39\x0A\xBC\x6E\x75\xAB\xC2\xE2" 9664 - "\x8A\xF2\x26\xCD\x63\x38\x35\xF7" 9665 - "\xAE\x12\x83\xCD\x8A\x9E\x7E\x4C" 9666 - "\xFE\x4D\xD7\xCE\x5C\x6E\x4C\xAF" 9667 - "\xE3\xCD\x76\xA7\x87\xA1\x54\x7C" 9668 - "\xEC\x32\xC7\x83\x2A\xFF\xF8\xEA" 9669 - "\x87\xB2\x47\xA3\x9D\xC2\x9C\xA2" 9670 - "\xB7\x2C\x7C\x1A\x24\xCB\x88\x61" 9671 - "\xFF\xA7\x1A\x16\x01\xDD\x4B\xFC" 9672 - "\x2E\xE0\x48\x67\x09\x42\xCC\x91" 9673 - "\xBE\x20\x38\xC0\x5E\x3B\x95\x00" 9674 - "\xA1\x96\x66\x0B\x8A\xE9\x9E\xF7" 9675 - "\x6B\x34\x0A\x51\xC0\x3B\xEB\x71" 9676 - "\x07\x97\x38\x4B\x5C\x56\x98\x67" 9677 - "\x78\x9C\xD0\x0E\x2B\xB5\x67\x90" 9678 - "\x75\xF8\xFE\x6D\x4E\x85\xCC\x0D" 9679 - "\x18\x06\x15\x9D\x5A\x10\x13\x37" 9680 - "\xA3\xD6\x68\xA2\xDF\x7E\xC7\x12" 9681 - "\xC9\x0D\x4D\x91\xB0\x2A\x55\xFF" 9682 - "\x6F\x73\x13\xDF\x28\xB5\x2A\x2C" 9683 - "\xE4\xFC\x20\xD9\xF1\x7A\x82\xB1" 9684 - "\xCB\x57\xB6\x3D\x8C\xF4\x8E\x27" 9685 - "\x37\xDC\x35\xF3\x79\x01\x53\xA4" 9686 - "\x7B\x37\xDE\x7C\x04\xAE\x50\xDB" 9687 - "\x9B\x1E\x8C\x07\xA7\x52\x49\x50" 9688 - "\x34\x25\x65\xDD\xA9\x8F\x7E\xBD" 9689 - "\x7A\xC9\x36\xAE\xDE\x21\x48\x64" 9690 - "\xC2\x02\xBA\xBE\x11\x1E\x3D\x9C" 9691 - "\x98\x52\xCC\x04\xBD\x5E\x61\x26" 9692 - "\x10\xD3\x21\xD9\x6E\x25\x98\x77" 9693 - "\x8E\x98\x63\xF6\xF6\x52\xFB\x13" 9694 - "\xAA\x30\xF2\xB9\xA4\x43\x53\x39" 9695 - "\x1C\x97\x07\x7E\x6B\xFF\x3D\x43" 9696 - "\xA6\x71\x6B\x66\x8F\x58\x3F\x71" 9697 - "\x90\x47\x40\x92\xE6\x69\xD1\x96" 9698 - "\x34\xB3\x3B\xE5\x43\xE4\xD5\x56" 9699 - "\xB2\xE6\x7E\x86\x7A\x12\x17\x5B" 9700 - "\x30\xF3\x9B\x0D\xFA\x57\xE4\x50" 9701 - "\x40\x53\x77\x8C\x15\xF8\x8D\x13" 9702 - "\x38\xE2\xE5", 9703 - .ilen = 499, 9704 - .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 9705 - "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 9706 - "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 9707 - "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" 9708 - "\x1E\x92\x29\xC0\x34\xCB\x62\xF9" 9709 - "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48" 9710 - "\xDF\x76\x0D\x81\x18\xAF\x23\xBA" 9711 - "\x51\xE8\x5C\xF3\x8A\x21\x95\x2C" 9712 - "\xC3\x37\xCE\x65\xFC\x70\x07\x9E" 9713 - "\x12\xA9\x40\xD7\x4B\xE2\x79\x10" 9714 - "\x84\x1B\xB2\x26\xBD\x54\xEB\x5F" 9715 - "\xF6\x8D\x01\x98\x2F\xC6\x3A\xD1" 9716 - "\x68\xFF\x73\x0A\xA1\x15\xAC\x43" 9717 - "\xDA\x4E\xE5\x7C\x13\x87\x1E\xB5" 9718 - "\x29\xC0\x57\xEE\x62\xF9\x90\x04" 9719 - "\x9B\x32\xC9\x3D\xD4\x6B\x02\x76" 9720 - "\x0D\xA4\x18\xAF\x46\xDD\x51\xE8" 9721 - "\x7F\x16\x8A\x21\xB8\x2C\xC3\x5A" 9722 - "\xF1\x65\xFC\x93\x07\x9E\x35\xCC" 9723 - "\x40\xD7\x6E\x05\x79\x10\xA7\x1B" 9724 - "\xB2\x49\xE0\x54\xEB\x82\x19\x8D" 9725 - "\x24\xBB\x2F\xC6\x5D\xF4\x68\xFF" 9726 - "\x96\x0A\xA1\x38\xCF\x43\xDA\x71" 9727 - "\x08\x7C\x13\xAA\x1E\xB5\x4C\xE3" 9728 - "\x57\xEE\x85\x1C\x90\x27\xBE\x32" 9729 - "\xC9\x60\xF7\x6B\x02\x99\x0D\xA4" 9730 - "\x3B\xD2\x46\xDD\x74\x0B\x7F\x16" 9731 - "\xAD\x21\xB8\x4F\xE6\x5A\xF1\x88" 9732 - "\x1F\x93\x2A\xC1\x35\xCC\x63\xFA" 9733 - "\x6E\x05\x9C\x10\xA7\x3E\xD5\x49" 9734 - "\xE0\x77\x0E\x82\x19\xB0\x24\xBB" 9735 - "\x52\xE9\x5D\xF4\x8B\x22\x96\x2D" 9736 - "\xC4\x38\xCF\x66\xFD\x71\x08\x9F" 9737 - "\x13\xAA\x41\xD8\x4C\xE3\x7A\x11" 9738 - "\x85\x1C\xB3\x27\xBE\x55\xEC\x60" 9739 - "\xF7\x8E\x02\x99\x30\xC7\x3B\xD2" 9740 - "\x69\x00\x74\x0B\xA2\x16\xAD\x44" 9741 - "\xDB\x4F\xE6\x7D\x14\x88\x1F\xB6" 9742 - "\x2A\xC1\x58\xEF\x63\xFA\x91\x05" 9743 - "\x9C\x33\xCA\x3E\xD5\x6C\x03\x77" 9744 - "\x0E\xA5\x19\xB0\x47\xDE\x52\xE9" 9745 - "\x80\x17\x8B\x22\xB9\x2D\xC4\x5B" 9746 - "\xF2\x66\xFD\x94\x08\x9F\x36\xCD" 9747 - "\x41\xD8\x6F\x06\x7A\x11\xA8\x1C" 9748 - "\xB3\x4A\xE1\x55\xEC\x83\x1A\x8E" 9749 - "\x25\xBC\x30\xC7\x5E\xF5\x69\x00" 9750 - "\x97\x0B\xA2\x39\xD0\x44\xDB\x72" 9751 - "\x09\x7D\x14\xAB\x1F\xB6\x4D\xE4" 9752 - "\x58\xEF\x86\x1D\x91\x28\xBF\x33" 9753 - "\xCA\x61\xF8\x6C\x03\x9A\x0E\xA5" 9754 - "\x3C\xD3\x47\xDE\x75\x0C\x80\x17" 9755 - "\xAE\x22\xB9\x50\xE7\x5B\xF2\x89" 9756 - "\x20\x94\x2B\xC2\x36\xCD\x64\xFB" 9757 - "\x6F\x06\x9D\x11\xA8\x3F\xD6\x4A" 9758 - "\xE1\x78\x0F\x83\x1A\xB1\x25\xBC" 9759 - "\x53\xEA\x5E\xF5\x8C\x00\x97\x2E" 9760 - "\xC5\x39\xD0\x67\xFE\x72\x09\xA0" 9761 - "\x14\xAB\x42\xD9\x4D\xE4\x7B\x12" 9762 - "\x86\x1D\xB4\x28\xBF\x56\xED\x61" 9763 - "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 9764 - "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 9765 - "\xDC\x50\xE7\x7E\x15\x89\x20\xB7" 9766 - "\x2B\xC2\x59", 9767 - .rlen = 499, 9768 - .also_non_np = 1, 9769 - .np = 2, 9770 - .tap = { 499 - 16, 16 }, 9771 - }, { /* Generated with Crypto++ */ 9772 - .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 9773 - "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" 9774 - "\x27\x04\xE1\x27\x04\xE1\xBE\x9B" 9775 - "\x78\xBE\x9B\x78\x55\x32\x0F\x55", 9776 - .klen = 32, 9777 - .iv = "\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF" 9778 - "\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFD", 9779 - .input = "\x06\x9A\xF8\xB4\x53\x88\x62\xFC" 9780 - "\x68\xB8\x2E\xDF\xC1\x05\x0F\x3D" 9781 - "\xAF\x4D\x95\xAE\xC4\xE9\x1C\xDC" 9782 - "\xF6\x2B\x8F\x90\x89\xF6\x7E\x1A" 9783 - "\xA6\xB9\xE4\xF4\xFA\xCA\xE5\x7E" 9784 - "\x71\x28\x06\x4F\xE8\x08\x39\xDA" 9785 - "\xA5\x0E\xC8\xC0\xB8\x16\xE5\x69" 9786 - "\xE5\xCA\xEC\x4F\x63\x2C\xC0\x9B" 9787 - "\x9F\x3E\x39\x79\xF0\xCD\x64\x35" 9788 - "\x4A\xD3\xC8\xA9\x31\xCD\x48\x5B" 9789 - "\x92\x3D\x8F\x3F\x96\xBD\xB3\x18" 9790 - "\x74\x2A\x5D\x29\x3F\x57\x8F\xE2" 9791 - "\x67\x9A\xE0\xE5\xD4\x4A\xE2\x47" 9792 - "\xBC\xF6\xEB\x14\xF3\x8C\x20\xC2" 9793 - "\x7D\xE2\x43\x81\x86\x72\x2E\xB1" 9794 - "\x39\xF6\x95\xE1\x1F\xCB\x76\x33" 9795 - "\x5B\x7D\x23\x0F\x3A\x67\x2A\x2F" 9796 - "\xB9\x37\x9D\xDD\x1F\x16\xA1\x3C" 9797 - "\x70\xFE\x52\xAA\x93\x3C\xC4\x46" 9798 - "\xB1\xE5\xFF\xDA\xAF\xE2\x84\xFE" 9799 - "\x25\x92\xB2\x63\xBD\x49\x77\xB4" 9800 - "\x22\xA4\x6A\xD5\x04\xE0\x45\x58" 9801 - "\x1C\x34\x96\x7C\x03\x0C\x13\xA2" 9802 - "\x05\x22\xE2\xCB\x5A\x35\x03\x09" 9803 - "\x40\xD2\x82\x05\xCA\x58\x73\xF2" 9804 - "\x29\x5E\x01\x47\x13\x32\x78\xBE" 9805 - "\x06\xB0\x51\xDB\x6C\x31\xA0\x1C" 9806 - "\x74\xBC\x8D\x25\xDF\xF8\x65\xD1" 9807 - "\x38\x35\x11\x26\x4A\xB4\x06\x32" 9808 - "\xFA\xD2\x07\x77\xB3\x74\x98\x80" 9809 - "\x61\x59\xA8\x9F\xF3\x6F\x2A\xBF" 9810 - "\xE6\xA5\x9A\xC4\x6B\xA6\x49\x6F" 9811 - "\xBC\x47\xD9\xFB\xC6\xEF\x25\x65" 9812 - "\x96\xAC\x9F\xE4\x81\x4B\xD8\xBA" 9813 - "\xD6\x9B\xC9\x6D\x58\x40\x81\x02" 9814 - "\x73\x44\x4E\x43\x6E\x37\xBB\x11" 9815 - "\xE3\xF9\xB8\x2F\xEC\x76\x34\xEA" 9816 - "\x90\xCD\xB7\x2E\x0E\x32\x71\xE8" 9817 - "\xBB\x4E\x0B\x98\xA4\x17\x17\x5B" 9818 - "\x07\xB5\x82\x3A\xC4\xE8\x42\x51" 9819 - "\x5A\x4C\x4E\x7D\xBF\xC4\xC0\x4F" 9820 - "\x68\xB8\xC6\x4A\x32\x6F\x0B\xD7" 9821 - "\x85\xED\x6B\xFB\x72\xD2\xA5\x8F" 9822 - "\xBF\xF9\xAC\x59\x50\xA8\x08\x70" 9823 - "\xEC\xBD\x0A\xBF\xE5\x87\xA1\xC2" 9824 - "\x92\x14\x78\xAF\xE8\xEA\x2E\xDD" 9825 - "\xC1\x03\x9A\xAA\x89\x8B\x32\x46" 9826 - "\x5B\x18\x27\xBA\x46\xAA\x64\xDE" 9827 - "\xE3\xD5\xA3\xFC\x7B\x5B\x61\xDB" 9828 - "\x7E\xDA\xEC\x30\x17\x19\xF8\x80" 9829 - "\xB5\x5E\x27\xB5\x37\x3A\x1F\x28" 9830 - "\x07\x73\xC3\x63\xCE\xFF\x8C\xFE" 9831 - "\x81\x4E\xF8\x24\xF3\xB8\xC7\xE8" 9832 - "\x16\x9A\xCC\x58\x2F\x88\x1C\x4B" 9833 - "\xBB\x33\xA2\x73\xF0\x1C\x89\x0E" 9834 - "\xDC\x34\x27\x89\x98\xCE\x1C\xA2" 9835 - "\xD8\xB8\x90\xBE\xEC\x72\x28\x13" 9836 - "\xAC\x7B\xF1\xD0\x7F\x7A\x28\x50" 9837 - "\xB7\x99\x65\x8A\xC9\xC6\x21\x34" 9838 - "\x7F\x67\x9D\xB7\x2C\xCC\xF5\x17" 9839 - "\x2B\x89\xAC\xB0\xD7\x1E\x47\xB0" 9840 - "\x61\xAF\xD4\x63\x6D\xB8\x2D\x20", 9841 - .ilen = 496, 9842 - .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 9843 - "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 9844 - "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 9845 - "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" 9846 - "\x1E\x92\x29\xC0\x34\xCB\x62\xF9" 9847 - "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48" 9848 - "\xDF\x76\x0D\x81\x18\xAF\x23\xBA" 9849 - "\x51\xE8\x5C\xF3\x8A\x21\x95\x2C" 9850 - "\xC3\x37\xCE\x65\xFC\x70\x07\x9E" 9851 - "\x12\xA9\x40\xD7\x4B\xE2\x79\x10" 9852 - "\x84\x1B\xB2\x26\xBD\x54\xEB\x5F" 9853 - "\xF6\x8D\x01\x98\x2F\xC6\x3A\xD1" 9854 - "\x68\xFF\x73\x0A\xA1\x15\xAC\x43" 9855 - "\xDA\x4E\xE5\x7C\x13\x87\x1E\xB5" 9856 - "\x29\xC0\x57\xEE\x62\xF9\x90\x04" 9857 - "\x9B\x32\xC9\x3D\xD4\x6B\x02\x76" 9858 - "\x0D\xA4\x18\xAF\x46\xDD\x51\xE8" 9859 - "\x7F\x16\x8A\x21\xB8\x2C\xC3\x5A" 9860 - "\xF1\x65\xFC\x93\x07\x9E\x35\xCC" 9861 - "\x40\xD7\x6E\x05\x79\x10\xA7\x1B" 9862 - "\xB2\x49\xE0\x54\xEB\x82\x19\x8D" 9863 - "\x24\xBB\x2F\xC6\x5D\xF4\x68\xFF" 9864 - "\x96\x0A\xA1\x38\xCF\x43\xDA\x71" 9865 - "\x08\x7C\x13\xAA\x1E\xB5\x4C\xE3" 9866 - "\x57\xEE\x85\x1C\x90\x27\xBE\x32" 9867 - "\xC9\x60\xF7\x6B\x02\x99\x0D\xA4" 9868 - "\x3B\xD2\x46\xDD\x74\x0B\x7F\x16" 9869 - "\xAD\x21\xB8\x4F\xE6\x5A\xF1\x88" 9870 - "\x1F\x93\x2A\xC1\x35\xCC\x63\xFA" 9871 - "\x6E\x05\x9C\x10\xA7\x3E\xD5\x49" 9872 - "\xE0\x77\x0E\x82\x19\xB0\x24\xBB" 9873 - "\x52\xE9\x5D\xF4\x8B\x22\x96\x2D" 9874 - "\xC4\x38\xCF\x66\xFD\x71\x08\x9F" 9875 - "\x13\xAA\x41\xD8\x4C\xE3\x7A\x11" 9876 - "\x85\x1C\xB3\x27\xBE\x55\xEC\x60" 9877 - "\xF7\x8E\x02\x99\x30\xC7\x3B\xD2" 9878 - "\x69\x00\x74\x0B\xA2\x16\xAD\x44" 9879 - "\xDB\x4F\xE6\x7D\x14\x88\x1F\xB6" 9880 - "\x2A\xC1\x58\xEF\x63\xFA\x91\x05" 9881 - "\x9C\x33\xCA\x3E\xD5\x6C\x03\x77" 9882 - "\x0E\xA5\x19\xB0\x47\xDE\x52\xE9" 9883 - "\x80\x17\x8B\x22\xB9\x2D\xC4\x5B" 9884 - "\xF2\x66\xFD\x94\x08\x9F\x36\xCD" 9885 - "\x41\xD8\x6F\x06\x7A\x11\xA8\x1C" 9886 - "\xB3\x4A\xE1\x55\xEC\x83\x1A\x8E" 9887 - "\x25\xBC\x30\xC7\x5E\xF5\x69\x00" 9888 - "\x97\x0B\xA2\x39\xD0\x44\xDB\x72" 9889 - "\x09\x7D\x14\xAB\x1F\xB6\x4D\xE4" 9890 - "\x58\xEF\x86\x1D\x91\x28\xBF\x33" 9891 - "\xCA\x61\xF8\x6C\x03\x9A\x0E\xA5" 9892 - "\x3C\xD3\x47\xDE\x75\x0C\x80\x17" 9893 - "\xAE\x22\xB9\x50\xE7\x5B\xF2\x89" 9894 - "\x20\x94\x2B\xC2\x36\xCD\x64\xFB" 9895 - "\x6F\x06\x9D\x11\xA8\x3F\xD6\x4A" 9896 - "\xE1\x78\x0F\x83\x1A\xB1\x25\xBC" 9897 - "\x53\xEA\x5E\xF5\x8C\x00\x97\x2E" 9898 - "\xC5\x39\xD0\x67\xFE\x72\x09\xA0" 9899 - "\x14\xAB\x42\xD9\x4D\xE4\x7B\x12" 9900 - "\x86\x1D\xB4\x28\xBF\x56\xED\x61" 9901 - "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 9902 - "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 9903 - "\xDC\x50\xE7\x7E\x15\x89\x20\xB7", 9904 - .rlen = 496, 9905 - }, 9906 - }; 9907 - 9908 - static const struct cipher_testvec serpent_lrw_enc_tv_template[] = { 13047 + static const struct cipher_testvec serpent_lrw_tv_template[] = { 9909 13048 /* Generated from AES-LRW test vectors */ 9910 13049 { 9911 13050 .key = "\x45\x62\xac\x25\xf8\x28\x17\x6d" ··· 9504 13465 .klen = 32, 9505 13466 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 9506 13467 "\x00\x00\x00\x00\x00\x00\x00\x01", 9507 - .input = "\x30\x31\x32\x33\x34\x35\x36\x37" 13468 + .ptext = "\x30\x31\x32\x33\x34\x35\x36\x37" 9508 13469 "\x38\x39\x41\x42\x43\x44\x45\x46", 9509 - .ilen = 16, 9510 - .result = "\x6f\xbf\xd4\xa4\x5d\x71\x16\x79" 13470 + .ctext = "\x6f\xbf\xd4\xa4\x5d\x71\x16\x79" 9511 13471 "\x63\x9c\xa6\x8e\x40\xbe\x0d\x8a", 9512 - .rlen = 16, 13472 + .len = 16, 9513 13473 }, { 9514 13474 .key = "\x59\x70\x47\x14\xf5\x57\x47\x8c" 9515 13475 "\xd7\x79\xe8\x0f\x54\x88\x79\x44" ··· 9517 13479 .klen = 32, 9518 13480 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 9519 13481 "\x00\x00\x00\x00\x00\x00\x00\x02", 9520 - .input = "\x30\x31\x32\x33\x34\x35\x36\x37" 13482 + .ptext = "\x30\x31\x32\x33\x34\x35\x36\x37" 9521 13483 "\x38\x39\x41\x42\x43\x44\x45\x46", 9522 - .ilen = 16, 9523 - .result = "\xfd\xb2\x66\x98\x80\x96\x55\xad" 13484 + .ctext = "\xfd\xb2\x66\x98\x80\x96\x55\xad" 9524 13485 "\x08\x94\x54\x9c\x21\x7c\x69\xe3", 9525 - .rlen = 16, 13486 + .len = 16, 9526 13487 }, { 9527 13488 .key = "\xd8\x2a\x91\x34\xb2\x6a\x56\x50" 9528 13489 "\x30\xfe\x69\xe2\x37\x7f\x98\x47" ··· 9530 13493 .klen = 32, 9531 13494 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 9532 13495 "\x00\x00\x00\x02\x00\x00\x00\x00", 9533 - .input = "\x30\x31\x32\x33\x34\x35\x36\x37" 13496 + .ptext = "\x30\x31\x32\x33\x34\x35\x36\x37" 9534 13497 "\x38\x39\x41\x42\x43\x44\x45\x46", 9535 - .ilen = 16, 9536 - .result = "\x14\x5e\x3d\x70\xc0\x6e\x9c\x34" 13498 + .ctext = "\x14\x5e\x3d\x70\xc0\x6e\x9c\x34" 9537 13499 "\x5b\x5e\xcf\x0f\xe4\x8c\x21\x5c", 9538 - .rlen = 16, 13500 + .len = 16, 9539 13501 }, { 9540 13502 .key = "\x0f\x6a\xef\xf8\xd3\xd2\xbb\x15" 9541 13503 "\x25\x83\xf7\x3c\x1f\x01\x28\x74" ··· 9544 13508 .klen = 40, 9545 13509 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 9546 13510 "\x00\x00\x00\x00\x00\x00\x00\x01", 9547 - .input = "\x30\x31\x32\x33\x34\x35\x36\x37" 13511 + .ptext = "\x30\x31\x32\x33\x34\x35\x36\x37" 9548 13512 "\x38\x39\x41\x42\x43\x44\x45\x46", 9549 - .ilen = 16, 9550 - .result = "\x25\x39\xaa\xa5\xf0\x65\xc8\xdc" 13513 + .ctext = "\x25\x39\xaa\xa5\xf0\x65\xc8\xdc" 9551 13514 "\x5d\x45\x95\x30\x8f\xff\x2f\x1b", 9552 - .rlen = 16, 13515 + .len = 16, 9553 13516 }, { 9554 13517 .key = "\x8a\xd4\xee\x10\x2f\xbd\x81\xff" 9555 13518 "\xf8\x86\xce\xac\x93\xc5\xad\xc6" ··· 9558 13523 .klen = 40, 9559 13524 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 9560 13525 "\x00\x00\x00\x02\x00\x00\x00\x00", 9561 - .input = "\x30\x31\x32\x33\x34\x35\x36\x37" 13526 + .ptext = "\x30\x31\x32\x33\x34\x35\x36\x37" 9562 13527 "\x38\x39\x41\x42\x43\x44\x45\x46", 9563 - .ilen = 16, 9564 - .result = "\x0c\x20\x20\x63\xd6\x8b\xfc\x8f" 13528 + .ctext = "\x0c\x20\x20\x63\xd6\x8b\xfc\x8f" 9565 13529 "\xc0\xe2\x17\xbb\xd2\x59\x6f\x26", 9566 - .rlen = 16, 13530 + .len = 16, 9567 13531 }, { 9568 13532 .key = "\xf8\xd4\x76\xff\xd6\x46\xee\x6c" 9569 13533 "\x23\x84\xcb\x1c\x77\xd6\x19\x5d" ··· 9573 13539 .klen = 48, 9574 13540 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 9575 13541 "\x00\x00\x00\x00\x00\x00\x00\x01", 9576 - .input = "\x30\x31\x32\x33\x34\x35\x36\x37" 13542 + .ptext = "\x30\x31\x32\x33\x34\x35\x36\x37" 9577 13543 "\x38\x39\x41\x42\x43\x44\x45\x46", 9578 - .ilen = 16, 9579 - .result = "\xc1\x35\x2e\x53\xf0\x96\x4d\x9c" 13544 + .ctext = "\xc1\x35\x2e\x53\xf0\x96\x4d\x9c" 9580 13545 "\x2e\x18\xe6\x99\xcd\xd3\x15\x68", 9581 - .rlen = 16, 13546 + .len = 16, 9582 13547 }, { 9583 13548 .key = "\xfb\x76\x15\xb2\x3d\x80\x89\x1d" 9584 13549 "\xd4\x70\x98\x0b\xc7\x95\x84\xc8" ··· 9588 13555 .klen = 48, 9589 13556 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 9590 13557 "\x00\x00\x00\x02\x00\x00\x00\x00", 9591 - .input = "\x30\x31\x32\x33\x34\x35\x36\x37" 13558 + .ptext = "\x30\x31\x32\x33\x34\x35\x36\x37" 9592 13559 "\x38\x39\x41\x42\x43\x44\x45\x46", 9593 - .ilen = 16, 9594 - .result = "\x86\x0a\xc6\xa9\x1a\x9f\xe7\xe6" 13560 + .ctext = "\x86\x0a\xc6\xa9\x1a\x9f\xe7\xe6" 9595 13561 "\x64\x3b\x33\xd6\xd5\x84\xd6\xdf", 9596 - .rlen = 16, 13562 + .len = 16, 9597 13563 }, { 9598 13564 .key = "\xf8\xd4\x76\xff\xd6\x46\xee\x6c" 9599 13565 "\x23\x84\xcb\x1c\x77\xd6\x19\x5d" ··· 9603 13571 .klen = 48, 9604 13572 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 9605 13573 "\x00\x00\x00\x00\x00\x00\x00\x01", 9606 - .input = "\x05\x11\xb7\x18\xab\xc6\x2d\xac" 13574 + .ptext = "\x05\x11\xb7\x18\xab\xc6\x2d\xac" 9607 13575 "\x70\x5d\xf6\x22\x94\xcd\xe5\x6c" 9608 13576 "\x17\x6b\xf6\x1c\xf0\xf3\x6e\xf8" 9609 13577 "\x50\x38\x1f\x71\x49\xb6\x57\xd6" ··· 9667 13635 "\xa4\xc7\xa8\xb4\xf6\x13\x03\xf6" 9668 13636 "\xe9\x2e\xc4\x29\x0f\x84\xdb\xc4" 9669 13637 "\x21\xc4\xc2\x75\x67\x89\x37\x0a", 9670 - .ilen = 512, 9671 - .result = "\xe3\x5a\x38\x0f\x4d\x92\x3a\x74" 13638 + .ctext = "\xe3\x5a\x38\x0f\x4d\x92\x3a\x74" 9672 13639 "\x15\xb1\x50\x8c\x9a\xd8\x99\x1d" 9673 13640 "\x82\xec\xf1\x5f\x03\x6d\x02\x58" 9674 13641 "\x90\x67\xfc\xdd\x8d\xe1\x38\x08" ··· 9731 13700 "\x1b\x2b\x7f\xc3\x2f\x1a\x78\x0a" 9732 13701 "\x5c\xc6\x84\xfe\x7c\xcb\x26\xfd" 9733 13702 "\xd9\x51\x0f\xd7\x94\x2f\xc5\xa7", 9734 - .rlen = 512, 13703 + .len = 512, 9735 13704 .also_non_np = 1, 9736 13705 .np = 3, 9737 13706 .tap = { 512 - 20, 4, 16 }, 9738 13707 }, 9739 13708 }; 9740 13709 9741 - static const struct cipher_testvec serpent_lrw_dec_tv_template[] = { 9742 - /* Generated from AES-LRW test vectors */ 9743 - /* same as enc vectors with input and result reversed */ 9744 - { 9745 - .key = "\x45\x62\xac\x25\xf8\x28\x17\x6d" 9746 - "\x4c\x26\x84\x14\xb5\x68\x01\x85" 9747 - "\x25\x8e\x2a\x05\xe7\x3e\x9d\x03" 9748 - "\xee\x5a\x83\x0c\xcc\x09\x4c\x87", 9749 - .klen = 32, 9750 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 9751 - "\x00\x00\x00\x00\x00\x00\x00\x01", 9752 - .input = "\x6f\xbf\xd4\xa4\x5d\x71\x16\x79" 9753 - "\x63\x9c\xa6\x8e\x40\xbe\x0d\x8a", 9754 - .ilen = 16, 9755 - .result = "\x30\x31\x32\x33\x34\x35\x36\x37" 9756 - "\x38\x39\x41\x42\x43\x44\x45\x46", 9757 - .rlen = 16, 9758 - }, { 9759 - .key = "\x59\x70\x47\x14\xf5\x57\x47\x8c" 9760 - "\xd7\x79\xe8\x0f\x54\x88\x79\x44" 9761 - "\x0d\x48\xf0\xb7\xb1\x5a\x53\xea" 9762 - "\x1c\xaa\x6b\x29\xc2\xca\xfb\xaf", 9763 - .klen = 32, 9764 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 9765 - "\x00\x00\x00\x00\x00\x00\x00\x02", 9766 - .input = "\xfd\xb2\x66\x98\x80\x96\x55\xad" 9767 - "\x08\x94\x54\x9c\x21\x7c\x69\xe3", 9768 - .ilen = 16, 9769 - .result = "\x30\x31\x32\x33\x34\x35\x36\x37" 9770 - "\x38\x39\x41\x42\x43\x44\x45\x46", 9771 - .rlen = 16, 9772 - }, { 9773 - .key = "\xd8\x2a\x91\x34\xb2\x6a\x56\x50" 9774 - "\x30\xfe\x69\xe2\x37\x7f\x98\x47" 9775 - "\xcd\xf9\x0b\x16\x0c\x64\x8f\xb6" 9776 - "\xb0\x0d\x0d\x1b\xae\x85\x87\x1f", 9777 - .klen = 32, 9778 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 9779 - "\x00\x00\x00\x02\x00\x00\x00\x00", 9780 - .input = "\x14\x5e\x3d\x70\xc0\x6e\x9c\x34" 9781 - "\x5b\x5e\xcf\x0f\xe4\x8c\x21\x5c", 9782 - .ilen = 16, 9783 - .result = "\x30\x31\x32\x33\x34\x35\x36\x37" 9784 - "\x38\x39\x41\x42\x43\x44\x45\x46", 9785 - .rlen = 16, 9786 - }, { 9787 - .key = "\x0f\x6a\xef\xf8\xd3\xd2\xbb\x15" 9788 - "\x25\x83\xf7\x3c\x1f\x01\x28\x74" 9789 - "\xca\xc6\xbc\x35\x4d\x4a\x65\x54" 9790 - "\x90\xae\x61\xcf\x7b\xae\xbd\xcc" 9791 - "\xad\xe4\x94\xc5\x4a\x29\xae\x70", 9792 - .klen = 40, 9793 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 9794 - "\x00\x00\x00\x00\x00\x00\x00\x01", 9795 - .input = "\x25\x39\xaa\xa5\xf0\x65\xc8\xdc" 9796 - "\x5d\x45\x95\x30\x8f\xff\x2f\x1b", 9797 - .ilen = 16, 9798 - .result = "\x30\x31\x32\x33\x34\x35\x36\x37" 9799 - "\x38\x39\x41\x42\x43\x44\x45\x46", 9800 - .rlen = 16, 9801 - }, { 9802 - .key = "\x8a\xd4\xee\x10\x2f\xbd\x81\xff" 9803 - "\xf8\x86\xce\xac\x93\xc5\xad\xc6" 9804 - "\xa0\x19\x07\xc0\x9d\xf7\xbb\xdd" 9805 - "\x52\x13\xb2\xb7\xf0\xff\x11\xd8" 9806 - "\xd6\x08\xd0\xcd\x2e\xb1\x17\x6f", 9807 - .klen = 40, 9808 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 9809 - "\x00\x00\x00\x02\x00\x00\x00\x00", 9810 - .input = "\x0c\x20\x20\x63\xd6\x8b\xfc\x8f" 9811 - "\xc0\xe2\x17\xbb\xd2\x59\x6f\x26", 9812 - .ilen = 16, 9813 - .result = "\x30\x31\x32\x33\x34\x35\x36\x37" 9814 - "\x38\x39\x41\x42\x43\x44\x45\x46", 9815 - .rlen = 16, 9816 - }, { 9817 - .key = "\xf8\xd4\x76\xff\xd6\x46\xee\x6c" 9818 - "\x23\x84\xcb\x1c\x77\xd6\x19\x5d" 9819 - "\xfe\xf1\xa9\xf3\x7b\xbc\x8d\x21" 9820 - "\xa7\x9c\x21\xf8\xcb\x90\x02\x89" 9821 - "\xa8\x45\x34\x8e\xc8\xc5\xb5\xf1" 9822 - "\x26\xf5\x0e\x76\xfe\xfd\x1b\x1e", 9823 - .klen = 48, 9824 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 9825 - "\x00\x00\x00\x00\x00\x00\x00\x01", 9826 - .input = "\xc1\x35\x2e\x53\xf0\x96\x4d\x9c" 9827 - "\x2e\x18\xe6\x99\xcd\xd3\x15\x68", 9828 - .ilen = 16, 9829 - .result = "\x30\x31\x32\x33\x34\x35\x36\x37" 9830 - "\x38\x39\x41\x42\x43\x44\x45\x46", 9831 - .rlen = 16, 9832 - }, { 9833 - .key = "\xfb\x76\x15\xb2\x3d\x80\x89\x1d" 9834 - "\xd4\x70\x98\x0b\xc7\x95\x84\xc8" 9835 - "\xb2\xfb\x64\xce\x60\x97\x87\x8d" 9836 - "\x17\xfc\xe4\x5a\x49\xe8\x30\xb7" 9837 - "\x6e\x78\x17\xe7\x2d\x5e\x12\xd4" 9838 - "\x60\x64\x04\x7a\xf1\x2f\x9e\x0c", 9839 - .klen = 48, 9840 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 9841 - "\x00\x00\x00\x02\x00\x00\x00\x00", 9842 - .input = "\x86\x0a\xc6\xa9\x1a\x9f\xe7\xe6" 9843 - "\x64\x3b\x33\xd6\xd5\x84\xd6\xdf", 9844 - .ilen = 16, 9845 - .result = "\x30\x31\x32\x33\x34\x35\x36\x37" 9846 - "\x38\x39\x41\x42\x43\x44\x45\x46", 9847 - .rlen = 16, 9848 - }, { 9849 - .key = "\xf8\xd4\x76\xff\xd6\x46\xee\x6c" 9850 - "\x23\x84\xcb\x1c\x77\xd6\x19\x5d" 9851 - "\xfe\xf1\xa9\xf3\x7b\xbc\x8d\x21" 9852 - "\xa7\x9c\x21\xf8\xcb\x90\x02\x89" 9853 - "\xa8\x45\x34\x8e\xc8\xc5\xb5\xf1" 9854 - "\x26\xf5\x0e\x76\xfe\xfd\x1b\x1e", 9855 - .klen = 48, 9856 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 9857 - "\x00\x00\x00\x00\x00\x00\x00\x01", 9858 - .input = "\xe3\x5a\x38\x0f\x4d\x92\x3a\x74" 9859 - "\x15\xb1\x50\x8c\x9a\xd8\x99\x1d" 9860 - "\x82\xec\xf1\x5f\x03\x6d\x02\x58" 9861 - "\x90\x67\xfc\xdd\x8d\xe1\x38\x08" 9862 - "\x7b\xc9\x9b\x4b\x04\x09\x50\x15" 9863 - "\xce\xab\xda\x33\x30\x20\x12\xfa" 9864 - "\x83\xc4\xa6\x9a\x2e\x7d\x90\xd9" 9865 - "\xa6\xa6\x67\x43\xb4\xa7\xa8\x5c" 9866 - "\xbb\x6a\x49\x2b\x8b\xf8\xd0\x22" 9867 - "\xe5\x9e\xba\xe8\x8c\x67\xb8\x5b" 9868 - "\x60\xbc\xf5\xa4\x95\x4e\x66\xe5" 9869 - "\x6d\x8e\xa9\xf6\x65\x2e\x04\xf5" 9870 - "\xba\xb5\xdb\x88\xc2\xf6\x7a\x4b" 9871 - "\x89\x58\x7c\x9a\xae\x26\xe8\xb7" 9872 - "\xb7\x28\xcc\xd6\xcc\xa5\x98\x4d" 9873 - "\xb9\x91\xcb\xb4\xe4\x8b\x96\x47" 9874 - "\x5f\x03\x8b\xdd\x94\xd1\xee\x12" 9875 - "\xa7\x83\x80\xf2\xc1\x15\x74\x4f" 9876 - "\x49\xf9\xb0\x7e\x6f\xdc\x73\x2f" 9877 - "\xe2\xcf\xe0\x1b\x34\xa5\xa0\x52" 9878 - "\xfb\x3c\x5d\x85\x91\xe6\x6d\x98" 9879 - "\x04\xd6\xdd\x4c\x00\x64\xd9\x54" 9880 - "\x5c\x3c\x08\x1d\x4c\x06\x9f\xb8" 9881 - "\x1c\x4d\x8d\xdc\xa4\x3c\xb9\x3b" 9882 - "\x9e\x85\xce\xc3\xa8\x4a\x0c\xd9" 9883 - "\x04\xc3\x6f\x17\x66\xa9\x1f\x59" 9884 - "\xd9\xe2\x19\x36\xa3\x88\xb8\x0b" 9885 - "\x0f\x4a\x4d\xf8\xc8\x6f\xd5\x43" 9886 - "\xeb\xa0\xab\x1f\x61\xc0\x06\xeb" 9887 - "\x93\xb7\xb8\x6f\x0d\xbd\x07\x49" 9888 - "\xb3\xac\x5d\xcf\x31\xa0\x27\x26" 9889 - "\x21\xbe\x94\x2e\x19\xea\xf4\xee" 9890 - "\xb5\x13\x89\xf7\x94\x0b\xef\x59" 9891 - "\x44\xc5\x78\x8b\x3c\x3b\x71\x20" 9892 - "\xf9\x35\x0c\x70\x74\xdc\x5b\xc2" 9893 - "\xb4\x11\x0e\x2c\x61\xa1\x52\x46" 9894 - "\x18\x11\x16\xc6\x86\x44\xa7\xaf" 9895 - "\xd5\x0c\x7d\xa6\x9e\x25\x2d\x1b" 9896 - "\x9a\x8f\x0f\xf8\x6a\x61\xa0\xea" 9897 - "\x3f\x0e\x90\xd6\x8f\x83\x30\x64" 9898 - "\xb5\x51\x2d\x08\x3c\xcd\x99\x36" 9899 - "\x96\xd4\xb1\xb5\x48\x30\xca\x48" 9900 - "\xf7\x11\xa8\xf5\x97\x8a\x6a\x6d" 9901 - "\x12\x33\x2f\xc0\xe8\xda\xec\x8a" 9902 - "\xe1\x88\x72\x63\xde\x20\xa3\xe1" 9903 - "\x8e\xac\x84\x37\x35\xf5\xf7\x3f" 9904 - "\x00\x02\x0e\xe4\xc1\x53\x68\x3f" 9905 - "\xaa\xd5\xac\x52\x3d\x20\x2f\x4d" 9906 - "\x7c\x83\xd0\xbd\xaa\x97\x35\x36" 9907 - "\x98\x88\x59\x5d\xe7\x24\xe3\x90" 9908 - "\x9d\x30\x47\xa7\xc3\x60\x35\xf4" 9909 - "\xd5\xdb\x0e\x4d\x44\xc1\x81\x8b" 9910 - "\xfd\xbd\xc3\x2b\xba\x68\xfe\x8d" 9911 - "\x49\x5a\x3c\x8a\xa3\x01\xae\x25" 9912 - "\x42\xab\xd2\x87\x1b\x35\xd6\xd2" 9913 - "\xd7\x70\x1c\x1f\x72\xd1\xe1\x39" 9914 - "\x1c\x58\xa2\xb4\xd0\x78\x55\x72" 9915 - "\x76\x59\xea\xd9\xd7\x6e\x63\x8b" 9916 - "\xcc\x9b\xa7\x74\x89\xfc\xa3\x68" 9917 - "\x86\x28\xd1\xbb\x54\x8d\x66\xad" 9918 - "\x2a\x92\xf9\x4e\x04\x3d\xae\xfd" 9919 - "\x1b\x2b\x7f\xc3\x2f\x1a\x78\x0a" 9920 - "\x5c\xc6\x84\xfe\x7c\xcb\x26\xfd" 9921 - "\xd9\x51\x0f\xd7\x94\x2f\xc5\xa7", 9922 - .ilen = 512, 9923 - .result = "\x05\x11\xb7\x18\xab\xc6\x2d\xac" 9924 - "\x70\x5d\xf6\x22\x94\xcd\xe5\x6c" 9925 - "\x17\x6b\xf6\x1c\xf0\xf3\x6e\xf8" 9926 - "\x50\x38\x1f\x71\x49\xb6\x57\xd6" 9927 - "\x8f\xcb\x8d\x6b\xe3\xa6\x29\x90" 9928 - "\xfe\x2a\x62\x82\xae\x6d\x8b\xf6" 9929 - "\xad\x1e\x9e\x20\x5f\x38\xbe\x04" 9930 - "\xda\x10\x8e\xed\xa2\xa4\x87\xab" 9931 - "\xda\x6b\xb4\x0c\x75\xba\xd3\x7c" 9932 - "\xc9\xac\x42\x31\x95\x7c\xc9\x04" 9933 - "\xeb\xd5\x6e\x32\x69\x8a\xdb\xa6" 9934 - "\x15\xd7\x3f\x4f\x2f\x66\x69\x03" 9935 - "\x9c\x1f\x54\x0f\xde\x1f\xf3\x65" 9936 - "\x4c\x96\x12\xed\x7c\x92\x03\x01" 9937 - "\x6f\xbc\x35\x93\xac\xf1\x27\xf1" 9938 - "\xb4\x96\x82\x5a\x5f\xb0\xa0\x50" 9939 - "\x89\xa4\x8e\x66\x44\x85\xcc\xfd" 9940 - "\x33\x14\x70\xe3\x96\xb2\xc3\xd3" 9941 - "\xbb\x54\x5a\x1a\xf9\x74\xa2\xc5" 9942 - "\x2d\x64\x75\xdd\xb4\x54\xe6\x74" 9943 - "\x8c\xd3\x9d\x9e\x86\xab\x51\x53" 9944 - "\xb7\x93\x3e\x6f\xd0\x4e\x2c\x40" 9945 - "\xf6\xa8\x2e\x3e\x9d\xf4\x66\xa5" 9946 - "\x76\x12\x73\x44\x1a\x56\xd7\x72" 9947 - "\x88\xcd\x21\x8c\x4c\x0f\xfe\xda" 9948 - "\x95\xe0\x3a\xa6\xa5\x84\x46\xcd" 9949 - "\xd5\x3e\x9d\x3a\xe2\x67\xe6\x60" 9950 - "\x1a\xe2\x70\x85\x58\xc2\x1b\x09" 9951 - "\xe1\xd7\x2c\xca\xad\xa8\x8f\xf9" 9952 - "\xac\xb3\x0e\xdb\xca\x2e\xe2\xb8" 9953 - "\x51\x71\xd9\x3c\x6c\xf1\x56\xf8" 9954 - "\xea\x9c\xf1\xfb\x0c\xe6\xb7\x10" 9955 - "\x1c\xf8\xa9\x7c\xe8\x53\x35\xc1" 9956 - "\x90\x3e\x76\x4a\x74\xa4\x21\x2c" 9957 - "\xf6\x2c\x4e\x0f\x94\x3a\x88\x2e" 9958 - "\x41\x09\x6a\x33\x7d\xf6\xdd\x3f" 9959 - "\x8d\x23\x31\x74\x84\xeb\x88\x6e" 9960 - "\xcc\xb9\xbc\x22\x83\x19\x07\x22" 9961 - "\xa5\x2d\xdf\xa5\xf3\x80\x85\x78" 9962 - "\x84\x39\x6a\x6d\x6a\x99\x4f\xa5" 9963 - "\x15\xfe\x46\xb0\xe4\x6c\xa5\x41" 9964 - "\x3c\xce\x8f\x42\x60\x71\xa7\x75" 9965 - "\x08\x40\x65\x8a\x82\xbf\xf5\x43" 9966 - "\x71\x96\xa9\x4d\x44\x8a\x20\xbe" 9967 - "\xfa\x4d\xbb\xc0\x7d\x31\x96\x65" 9968 - "\xe7\x75\xe5\x3e\xfd\x92\x3b\xc9" 9969 - "\x55\xbb\x16\x7e\xf7\xc2\x8c\xa4" 9970 - "\x40\x1d\xe5\xef\x0e\xdf\xe4\x9a" 9971 - "\x62\x73\x65\xfd\x46\x63\x25\x3d" 9972 - "\x2b\xaf\xe5\x64\xfe\xa5\x5c\xcf" 9973 - "\x24\xf3\xb4\xac\x64\xba\xdf\x4b" 9974 - "\xc6\x96\x7d\x81\x2d\x8d\x97\xf7" 9975 - "\xc5\x68\x77\x84\x32\x2b\xcc\x85" 9976 - "\x74\x96\xf0\x12\x77\x61\xb9\xeb" 9977 - "\x71\xaa\x82\xcb\x1c\xdb\x89\xc8" 9978 - "\xc6\xb5\xe3\x5c\x7d\x39\x07\x24" 9979 - "\xda\x39\x87\x45\xc0\x2b\xbb\x01" 9980 - "\xac\xbc\x2a\x5c\x7f\xfc\xe8\xce" 9981 - "\x6d\x9c\x6f\xed\xd3\xc1\xa1\xd6" 9982 - "\xc5\x55\xa9\x66\x2f\xe1\xc8\x32" 9983 - "\xa6\x5d\xa4\x3a\x98\x73\xe8\x45" 9984 - "\xa4\xc7\xa8\xb4\xf6\x13\x03\xf6" 9985 - "\xe9\x2e\xc4\x29\x0f\x84\xdb\xc4" 9986 - "\x21\xc4\xc2\x75\x67\x89\x37\x0a", 9987 - .rlen = 512, 9988 - .also_non_np = 1, 9989 - .np = 3, 9990 - .tap = { 512 - 20, 4, 16 }, 9991 - }, 9992 - }; 9993 - 9994 - static const struct cipher_testvec serpent_xts_enc_tv_template[] = { 13710 + static const struct cipher_testvec serpent_xts_tv_template[] = { 9995 13711 /* Generated from AES-XTS test vectors */ 9996 13712 { 9997 13713 .key = "\x00\x00\x00\x00\x00\x00\x00\x00" ··· 9748 13970 .klen = 32, 9749 13971 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 9750 13972 "\x00\x00\x00\x00\x00\x00\x00\x00", 9751 - .input = "\x00\x00\x00\x00\x00\x00\x00\x00" 13973 + .ptext = "\x00\x00\x00\x00\x00\x00\x00\x00" 9752 13974 "\x00\x00\x00\x00\x00\x00\x00\x00" 9753 13975 "\x00\x00\x00\x00\x00\x00\x00\x00" 9754 13976 "\x00\x00\x00\x00\x00\x00\x00\x00", 9755 - .ilen = 32, 9756 - .result = "\xe1\x08\xb8\x1d\x2c\xf5\x33\x64" 13977 + .ctext = "\xe1\x08\xb8\x1d\x2c\xf5\x33\x64" 9757 13978 "\xc8\x12\x04\xc7\xb3\x70\xe8\xc4" 9758 13979 "\x6a\x31\xc5\xf3\x00\xca\xb9\x16" 9759 13980 "\xde\xe2\x77\x66\xf7\xfe\x62\x08", 9760 - .rlen = 32, 13981 + .len = 32, 9761 13982 }, { 9762 13983 .key = "\x11\x11\x11\x11\x11\x11\x11\x11" 9763 13984 "\x11\x11\x11\x11\x11\x11\x11\x11" ··· 9765 13988 .klen = 32, 9766 13989 .iv = "\x33\x33\x33\x33\x33\x00\x00\x00" 9767 13990 "\x00\x00\x00\x00\x00\x00\x00\x00", 9768 - .input = "\x44\x44\x44\x44\x44\x44\x44\x44" 13991 + .ptext = "\x44\x44\x44\x44\x44\x44\x44\x44" 9769 13992 "\x44\x44\x44\x44\x44\x44\x44\x44" 9770 13993 "\x44\x44\x44\x44\x44\x44\x44\x44" 9771 13994 "\x44\x44\x44\x44\x44\x44\x44\x44", 9772 - .ilen = 32, 9773 - .result = "\x1a\x0a\x09\x5f\xcd\x07\x07\x98" 13995 + .ctext = "\x1a\x0a\x09\x5f\xcd\x07\x07\x98" 9774 13996 "\x41\x86\x12\xaf\xb3\xd7\x68\x13" 9775 13997 "\xed\x81\xcd\x06\x87\x43\x1a\xbb" 9776 13998 "\x13\x3d\xd6\x1e\x2b\xe1\x77\xbe", 9777 - .rlen = 32, 13999 + .len = 32, 9778 14000 }, { 9779 14001 .key = "\xff\xfe\xfd\xfc\xfb\xfa\xf9\xf8" 9780 14002 "\xf7\xf6\xf5\xf4\xf3\xf2\xf1\xf0" ··· 9782 14006 .klen = 32, 9783 14007 .iv = "\x33\x33\x33\x33\x33\x00\x00\x00" 9784 14008 "\x00\x00\x00\x00\x00\x00\x00\x00", 9785 - .input = "\x44\x44\x44\x44\x44\x44\x44\x44" 14009 + .ptext = "\x44\x44\x44\x44\x44\x44\x44\x44" 9786 14010 "\x44\x44\x44\x44\x44\x44\x44\x44" 9787 14011 "\x44\x44\x44\x44\x44\x44\x44\x44" 9788 14012 "\x44\x44\x44\x44\x44\x44\x44\x44", 9789 - .ilen = 32, 9790 - .result = "\xf9\x9b\x28\xb8\x5c\xaf\x8c\x61" 14013 + .ctext = "\xf9\x9b\x28\xb8\x5c\xaf\x8c\x61" 9791 14014 "\xb6\x1c\x81\x8f\x2c\x87\x60\x89" 9792 14015 "\x0d\x8d\x7a\xe8\x60\x48\xcc\x86" 9793 14016 "\xc1\x68\x45\xaa\x00\xe9\x24\xc5", 9794 - .rlen = 32, 14017 + .len = 32, 9795 14018 }, { 9796 14019 .key = "\x27\x18\x28\x18\x28\x45\x90\x45" 9797 14020 "\x23\x53\x60\x28\x74\x71\x35\x26" ··· 9799 14024 .klen = 32, 9800 14025 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 9801 14026 "\x00\x00\x00\x00\x00\x00\x00\x00", 9802 - .input = "\x00\x01\x02\x03\x04\x05\x06\x07" 14027 + .ptext = "\x00\x01\x02\x03\x04\x05\x06\x07" 9803 14028 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 9804 14029 "\x10\x11\x12\x13\x14\x15\x16\x17" 9805 14030 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" ··· 9863 14088 "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 9864 14089 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 9865 14090 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 9866 - .ilen = 512, 9867 - .result = "\xfe\x47\x4a\xc8\x60\x7e\xb4\x8b" 14091 + .ctext = "\xfe\x47\x4a\xc8\x60\x7e\xb4\x8b" 9868 14092 "\x0d\x10\xf4\xb0\x0d\xba\xf8\x53" 9869 14093 "\x65\x6e\x38\x4b\xdb\xaa\xb1\x9e" 9870 14094 "\x28\xca\xb0\x22\xb3\x85\x75\xf4" ··· 9927 14153 "\xef\x91\x64\x1d\x18\x07\x4e\x31" 9928 14154 "\x88\x21\x7c\xb0\xa5\x12\x4c\x3c" 9929 14155 "\xb0\x20\xbd\xda\xdf\xf9\x7c\xdd", 9930 - .rlen = 512, 14156 + .len = 512, 9931 14157 }, { 9932 14158 .key = "\x27\x18\x28\x18\x28\x45\x90\x45" 9933 14159 "\x23\x53\x60\x28\x74\x71\x35\x26" ··· 9940 14166 .klen = 64, 9941 14167 .iv = "\xff\x00\x00\x00\x00\x00\x00\x00" 9942 14168 "\x00\x00\x00\x00\x00\x00\x00\x00", 9943 - .input = "\x00\x01\x02\x03\x04\x05\x06\x07" 14169 + .ptext = "\x00\x01\x02\x03\x04\x05\x06\x07" 9944 14170 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 9945 14171 "\x10\x11\x12\x13\x14\x15\x16\x17" 9946 14172 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" ··· 10004 14230 "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 10005 14231 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 10006 14232 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 10007 - .ilen = 512, 10008 - .result = "\x2b\xc9\xb4\x6b\x10\x94\xa9\x32" 14233 + .ctext = "\x2b\xc9\xb4\x6b\x10\x94\xa9\x32" 10009 14234 "\xaa\xb0\x20\xc6\x44\x3d\x74\x1f" 10010 14235 "\x75\x01\xa7\xf6\xf5\xf7\x62\x1b" 10011 14236 "\x80\x1b\x82\xcb\x01\x59\x91\x7f" ··· 10068 14295 "\x30\x05\xc8\x92\x98\x80\xff\x7a" 10069 14296 "\xaf\x43\x0b\xc5\x20\x41\x92\x20" 10070 14297 "\xd4\xa0\x91\x98\x11\x5f\x4d\xb1", 10071 - .rlen = 512, 10072 - .also_non_np = 1, 10073 - .np = 3, 10074 - .tap = { 512 - 20, 4, 16 }, 10075 - }, 10076 - }; 10077 - 10078 - static const struct cipher_testvec serpent_xts_dec_tv_template[] = { 10079 - /* Generated from AES-XTS test vectors */ 10080 - /* same as enc vectors with input and result reversed */ 10081 - { 10082 - .key = "\x00\x00\x00\x00\x00\x00\x00\x00" 10083 - "\x00\x00\x00\x00\x00\x00\x00\x00" 10084 - "\x00\x00\x00\x00\x00\x00\x00\x00" 10085 - "\x00\x00\x00\x00\x00\x00\x00\x00", 10086 - .klen = 32, 10087 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 10088 - "\x00\x00\x00\x00\x00\x00\x00\x00", 10089 - .input = "\xe1\x08\xb8\x1d\x2c\xf5\x33\x64" 10090 - "\xc8\x12\x04\xc7\xb3\x70\xe8\xc4" 10091 - "\x6a\x31\xc5\xf3\x00\xca\xb9\x16" 10092 - "\xde\xe2\x77\x66\xf7\xfe\x62\x08", 10093 - .ilen = 32, 10094 - .result = "\x00\x00\x00\x00\x00\x00\x00\x00" 10095 - "\x00\x00\x00\x00\x00\x00\x00\x00" 10096 - "\x00\x00\x00\x00\x00\x00\x00\x00" 10097 - "\x00\x00\x00\x00\x00\x00\x00\x00", 10098 - .rlen = 32, 10099 - }, { 10100 - .key = "\x11\x11\x11\x11\x11\x11\x11\x11" 10101 - "\x11\x11\x11\x11\x11\x11\x11\x11" 10102 - "\x22\x22\x22\x22\x22\x22\x22\x22" 10103 - "\x22\x22\x22\x22\x22\x22\x22\x22", 10104 - .klen = 32, 10105 - .iv = "\x33\x33\x33\x33\x33\x00\x00\x00" 10106 - "\x00\x00\x00\x00\x00\x00\x00\x00", 10107 - .input = "\x1a\x0a\x09\x5f\xcd\x07\x07\x98" 10108 - "\x41\x86\x12\xaf\xb3\xd7\x68\x13" 10109 - "\xed\x81\xcd\x06\x87\x43\x1a\xbb" 10110 - "\x13\x3d\xd6\x1e\x2b\xe1\x77\xbe", 10111 - .ilen = 32, 10112 - .result = "\x44\x44\x44\x44\x44\x44\x44\x44" 10113 - "\x44\x44\x44\x44\x44\x44\x44\x44" 10114 - "\x44\x44\x44\x44\x44\x44\x44\x44" 10115 - "\x44\x44\x44\x44\x44\x44\x44\x44", 10116 - .rlen = 32, 10117 - }, { 10118 - .key = "\xff\xfe\xfd\xfc\xfb\xfa\xf9\xf8" 10119 - "\xf7\xf6\xf5\xf4\xf3\xf2\xf1\xf0" 10120 - "\x22\x22\x22\x22\x22\x22\x22\x22" 10121 - "\x22\x22\x22\x22\x22\x22\x22\x22", 10122 - .klen = 32, 10123 - .iv = "\x33\x33\x33\x33\x33\x00\x00\x00" 10124 - "\x00\x00\x00\x00\x00\x00\x00\x00", 10125 - .input = "\xf9\x9b\x28\xb8\x5c\xaf\x8c\x61" 10126 - "\xb6\x1c\x81\x8f\x2c\x87\x60\x89" 10127 - "\x0d\x8d\x7a\xe8\x60\x48\xcc\x86" 10128 - "\xc1\x68\x45\xaa\x00\xe9\x24\xc5", 10129 - .ilen = 32, 10130 - .result = "\x44\x44\x44\x44\x44\x44\x44\x44" 10131 - "\x44\x44\x44\x44\x44\x44\x44\x44" 10132 - "\x44\x44\x44\x44\x44\x44\x44\x44" 10133 - "\x44\x44\x44\x44\x44\x44\x44\x44", 10134 - .rlen = 32, 10135 - }, { 10136 - .key = "\x27\x18\x28\x18\x28\x45\x90\x45" 10137 - "\x23\x53\x60\x28\x74\x71\x35\x26" 10138 - "\x31\x41\x59\x26\x53\x58\x97\x93" 10139 - "\x23\x84\x62\x64\x33\x83\x27\x95", 10140 - .klen = 32, 10141 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 10142 - "\x00\x00\x00\x00\x00\x00\x00\x00", 10143 - .input = "\xfe\x47\x4a\xc8\x60\x7e\xb4\x8b" 10144 - "\x0d\x10\xf4\xb0\x0d\xba\xf8\x53" 10145 - "\x65\x6e\x38\x4b\xdb\xaa\xb1\x9e" 10146 - "\x28\xca\xb0\x22\xb3\x85\x75\xf4" 10147 - "\x00\x5c\x75\x14\x06\xd6\x25\x82" 10148 - "\xe6\xcb\x08\xf7\x29\x90\x23\x8e" 10149 - "\xa4\x68\x57\xe4\xf0\xd8\x32\xf3" 10150 - "\x80\x51\x67\xb5\x0b\x85\x69\xe8" 10151 - "\x19\xfe\xc4\xc7\x3e\xea\x90\xd3" 10152 - "\x8f\xa3\xf2\x0a\xac\x17\x4b\xa0" 10153 - "\x63\x5a\x16\x0f\xf0\xce\x66\x1f" 10154 - "\x2c\x21\x07\xf1\xa4\x03\xa3\x44" 10155 - "\x41\x61\x87\x5d\x6b\xb3\xef\xd4" 10156 - "\xfc\xaa\x32\x7e\x55\x58\x04\x41" 10157 - "\xc9\x07\x33\xc6\xa2\x68\xd6\x5a" 10158 - "\x55\x79\x4b\x6f\xcf\x89\xb9\x19" 10159 - "\xe5\x54\x13\x15\xb2\x1a\xfa\x15" 10160 - "\xc2\xf0\x06\x59\xfa\xa0\x25\x05" 10161 - "\x58\xfa\x43\x91\x16\x85\x40\xbb" 10162 - "\x0d\x34\x4d\xc5\x1e\x20\xd5\x08" 10163 - "\xcd\x22\x22\x41\x11\x9f\x6c\x7c" 10164 - "\x8d\x57\xc9\xba\x57\xe8\x2c\xf7" 10165 - "\xa0\x42\xa8\xde\xfc\xa3\xca\x98" 10166 - "\x4b\x43\xb1\xce\x4b\xbf\x01\x67" 10167 - "\x6e\x29\x60\xbd\x10\x14\x84\x82" 10168 - "\x83\x82\x0c\x63\x73\x92\x02\x7c" 10169 - "\x55\x37\x20\x80\x17\x51\xc8\xbc" 10170 - "\x46\x02\xcb\x38\x07\x6d\xe2\x85" 10171 - "\xaa\x29\xaf\x24\x58\x0d\xf0\x75" 10172 - "\x08\x0a\xa5\x34\x25\x16\xf3\x74" 10173 - "\xa7\x0b\x97\xbe\xc1\xa9\xdc\x29" 10174 - "\x1a\x0a\x56\xc1\x1a\x91\x97\x8c" 10175 - "\x0b\xc7\x16\xed\x5a\x22\xa6\x2e" 10176 - "\x8c\x2b\x4f\x54\x76\x47\x53\x8e" 10177 - "\xe8\x00\xec\x92\xb9\x55\xe6\xa2" 10178 - "\xf3\xe2\x4f\x6a\x66\x60\xd0\x87" 10179 - "\xe6\xd1\xcc\xe3\x6a\xc5\x2d\x21" 10180 - "\xcc\x9d\x6a\xb6\x75\xaa\xe2\x19" 10181 - "\x21\x9f\xa1\x5e\x4c\xfd\x72\xf9" 10182 - "\x94\x4e\x63\xc7\xae\xfc\xed\x47" 10183 - "\xe2\xfe\x7a\x63\x77\xfe\x97\x82" 10184 - "\xb1\x10\x6e\x36\x1d\xe1\xc4\x80" 10185 - "\xec\x69\x41\xec\xa7\x8a\xe0\x2f" 10186 - "\xe3\x49\x26\xa2\x41\xb2\x08\x0f" 10187 - "\x28\xb4\xa7\x39\xa1\x99\x2d\x1e" 10188 - "\x43\x42\x35\xd0\xcf\xec\x77\x67" 10189 - "\xb2\x3b\x9e\x1c\x35\xde\x4f\x5e" 10190 - "\x73\x3f\x5d\x6f\x07\x4b\x2e\x50" 10191 - "\xab\x6c\x6b\xff\xea\x00\x67\xaa" 10192 - "\x0e\x82\x32\xdd\x3d\xb5\xe5\x76" 10193 - "\x2b\x77\x3f\xbe\x12\x75\xfb\x92" 10194 - "\xc6\x89\x67\x4d\xca\xf7\xd4\x50" 10195 - "\xc0\x74\x47\xcc\xd9\x0a\xd4\xc6" 10196 - "\x3b\x17\x2e\xe3\x35\xbb\x53\xb5" 10197 - "\x86\xad\x51\xcc\xd5\x96\xb8\xdc" 10198 - "\x03\x57\xe6\x98\x52\x2f\x61\x62" 10199 - "\xc4\x5c\x9c\x36\x71\x07\xfb\x94" 10200 - "\xe3\x02\xc4\x2b\x08\x75\xc7\x35" 10201 - "\xfb\x2e\x88\x7b\xbb\x67\x00\xe1" 10202 - "\xc9\xdd\x99\xb2\x13\x53\x1a\x4e" 10203 - "\x76\x87\x19\x04\x1a\x2f\x38\x3e" 10204 - "\xef\x91\x64\x1d\x18\x07\x4e\x31" 10205 - "\x88\x21\x7c\xb0\xa5\x12\x4c\x3c" 10206 - "\xb0\x20\xbd\xda\xdf\xf9\x7c\xdd", 10207 - .ilen = 512, 10208 - .result = "\x00\x01\x02\x03\x04\x05\x06\x07" 10209 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 10210 - "\x10\x11\x12\x13\x14\x15\x16\x17" 10211 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" 10212 - "\x20\x21\x22\x23\x24\x25\x26\x27" 10213 - "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f" 10214 - "\x30\x31\x32\x33\x34\x35\x36\x37" 10215 - "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f" 10216 - "\x40\x41\x42\x43\x44\x45\x46\x47" 10217 - "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f" 10218 - "\x50\x51\x52\x53\x54\x55\x56\x57" 10219 - "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f" 10220 - "\x60\x61\x62\x63\x64\x65\x66\x67" 10221 - "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f" 10222 - "\x70\x71\x72\x73\x74\x75\x76\x77" 10223 - "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f" 10224 - "\x80\x81\x82\x83\x84\x85\x86\x87" 10225 - "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f" 10226 - "\x90\x91\x92\x93\x94\x95\x96\x97" 10227 - "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f" 10228 - "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7" 10229 - "\xa8\xa9\xaa\xab\xac\xad\xae\xaf" 10230 - "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7" 10231 - "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf" 10232 - "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7" 10233 - "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf" 10234 - "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7" 10235 - "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf" 10236 - "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7" 10237 - "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 10238 - "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 10239 - "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff" 10240 - "\x00\x01\x02\x03\x04\x05\x06\x07" 10241 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 10242 - "\x10\x11\x12\x13\x14\x15\x16\x17" 10243 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" 10244 - "\x20\x21\x22\x23\x24\x25\x26\x27" 10245 - "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f" 10246 - "\x30\x31\x32\x33\x34\x35\x36\x37" 10247 - "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f" 10248 - "\x40\x41\x42\x43\x44\x45\x46\x47" 10249 - "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f" 10250 - "\x50\x51\x52\x53\x54\x55\x56\x57" 10251 - "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f" 10252 - "\x60\x61\x62\x63\x64\x65\x66\x67" 10253 - "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f" 10254 - "\x70\x71\x72\x73\x74\x75\x76\x77" 10255 - "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f" 10256 - "\x80\x81\x82\x83\x84\x85\x86\x87" 10257 - "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f" 10258 - "\x90\x91\x92\x93\x94\x95\x96\x97" 10259 - "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f" 10260 - "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7" 10261 - "\xa8\xa9\xaa\xab\xac\xad\xae\xaf" 10262 - "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7" 10263 - "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf" 10264 - "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7" 10265 - "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf" 10266 - "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7" 10267 - "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf" 10268 - "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7" 10269 - "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 10270 - "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 10271 - "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 10272 - .rlen = 512, 10273 - }, { 10274 - .key = "\x27\x18\x28\x18\x28\x45\x90\x45" 10275 - "\x23\x53\x60\x28\x74\x71\x35\x26" 10276 - "\x62\x49\x77\x57\x24\x70\x93\x69" 10277 - "\x99\x59\x57\x49\x66\x96\x76\x27" 10278 - "\x31\x41\x59\x26\x53\x58\x97\x93" 10279 - "\x23\x84\x62\x64\x33\x83\x27\x95" 10280 - "\x02\x88\x41\x97\x16\x93\x99\x37" 10281 - "\x51\x05\x82\x09\x74\x94\x45\x92", 10282 - .klen = 64, 10283 - .iv = "\xff\x00\x00\x00\x00\x00\x00\x00" 10284 - "\x00\x00\x00\x00\x00\x00\x00\x00", 10285 - .input = "\x2b\xc9\xb4\x6b\x10\x94\xa9\x32" 10286 - "\xaa\xb0\x20\xc6\x44\x3d\x74\x1f" 10287 - "\x75\x01\xa7\xf6\xf5\xf7\x62\x1b" 10288 - "\x80\x1b\x82\xcb\x01\x59\x91\x7f" 10289 - "\x80\x3a\x98\xf0\xd2\xca\xc4\xc3" 10290 - "\x34\xfd\xe6\x11\xf9\x33\x45\x12" 10291 - "\x48\xc5\x8c\x25\xf1\xc5\xc5\x23" 10292 - "\xd3\x44\xb4\x73\xd5\x04\xc0\xb7" 10293 - "\xca\x2f\xf5\xcd\xc5\xb4\xdd\xb0" 10294 - "\xf4\x60\xe8\xfb\xc6\x9c\xc5\x78" 10295 - "\xcd\xec\x7d\xdc\x19\x9c\x72\x64" 10296 - "\x63\x0b\x38\x2e\x76\xdd\x2d\x36" 10297 - "\x49\xb0\x1d\xea\x78\x9e\x00\xca" 10298 - "\x20\xcc\x1b\x1e\x98\x74\xab\xed" 10299 - "\x79\xf7\xd0\x6c\xd8\x93\x80\x29" 10300 - "\xac\xa5\x5e\x34\xa9\xab\xa0\x55" 10301 - "\x9a\xea\xaa\x95\x4d\x7b\xfe\x46" 10302 - "\x26\x8a\xfd\x88\xa2\xa8\xa6\xae" 10303 - "\x25\x42\x17\xbf\x76\x8f\x1c\x3d" 10304 - "\xec\x9a\xda\x64\x96\xb5\x61\xff" 10305 - "\x99\xeb\x12\x96\x85\x82\x9d\xd5" 10306 - "\x81\x85\x14\xa8\x59\xac\x8c\x94" 10307 - "\xbb\x3b\x85\x2b\xdf\xb3\x0c\xba" 10308 - "\x82\xc6\x4d\xca\x86\xea\x53\x28" 10309 - "\x4c\xe0\x4e\x31\xe3\x73\x2f\x79" 10310 - "\x9d\x42\xe1\x03\xe3\x8b\xc4\xff" 10311 - "\x05\xca\x81\x7b\xda\xa2\xde\x63" 10312 - "\x3a\x10\xbe\xc2\xac\x32\xc4\x05" 10313 - "\x47\x7e\xef\x67\xe2\x5f\x5b\xae" 10314 - "\xed\xf1\x70\x34\x16\x9a\x07\x7b" 10315 - "\xf2\x25\x2b\xb0\xf8\x3c\x15\x9a" 10316 - "\xa6\x59\x55\x5f\xc1\xf4\x1e\xcd" 10317 - "\x93\x1f\x06\xba\xd4\x9a\x22\x69" 10318 - "\xfa\x8e\x95\x0d\xf3\x23\x59\x2c" 10319 - "\xfe\x00\xba\xf0\x0e\xbc\x6d\xd6" 10320 - "\x62\xf0\x7a\x0e\x83\x3e\xdb\x32" 10321 - "\xfd\x43\x7d\xda\x42\x51\x87\x43" 10322 - "\x9d\xf9\xef\xf4\x30\x97\xf8\x09" 10323 - "\x88\xfc\x3f\x93\x70\xc1\x4a\xec" 10324 - "\x27\x5f\x11\xac\x71\xc7\x48\x46" 10325 - "\x2f\xf9\xdf\x8d\x9f\xf7\x2e\x56" 10326 - "\x0d\x4e\xb0\x32\x76\xce\x86\x81" 10327 - "\xcd\xdf\xe4\x00\xbf\xfd\x5f\x24" 10328 - "\xaf\xf7\x9a\xde\xff\x18\xac\x14" 10329 - "\x90\xc5\x01\x39\x34\x0f\x24\xf3" 10330 - "\x13\x2f\x5e\x4f\x30\x9a\x36\x40" 10331 - "\xec\xea\xbc\xcd\x9e\x0e\x5b\x23" 10332 - "\x50\x88\x97\x40\x69\xb1\x37\xf5" 10333 - "\xc3\x15\xf9\x3f\xb7\x79\x64\xe8" 10334 - "\x7b\x10\x20\xb9\x2b\x46\x83\x5b" 10335 - "\xd8\x39\xfc\xe4\xfa\x88\x52\xf2" 10336 - "\x72\xb0\x97\x4e\x89\xb3\x48\x00" 10337 - "\xc1\x16\x73\x50\x77\xba\xa6\x65" 10338 - "\x20\x2d\xb0\x02\x27\x89\xda\x99" 10339 - "\x45\xfb\xe9\xd3\x1d\x39\x2f\xd6" 10340 - "\x2a\xda\x09\x12\x11\xaf\xe6\x57" 10341 - "\x01\x04\x8a\xff\x86\x8b\xac\xf8" 10342 - "\xee\xe4\x1c\x98\x5b\xcf\x6b\x76" 10343 - "\xa3\x0e\x33\x74\x40\x18\x39\x72" 10344 - "\x66\x50\x31\xfd\x70\xdf\xe8\x51" 10345 - "\x96\x21\x36\xb2\x9b\xfa\x85\xd1" 10346 - "\x30\x05\xc8\x92\x98\x80\xff\x7a" 10347 - "\xaf\x43\x0b\xc5\x20\x41\x92\x20" 10348 - "\xd4\xa0\x91\x98\x11\x5f\x4d\xb1", 10349 - .ilen = 512, 10350 - .result = "\x00\x01\x02\x03\x04\x05\x06\x07" 10351 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 10352 - "\x10\x11\x12\x13\x14\x15\x16\x17" 10353 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" 10354 - "\x20\x21\x22\x23\x24\x25\x26\x27" 10355 - "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f" 10356 - "\x30\x31\x32\x33\x34\x35\x36\x37" 10357 - "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f" 10358 - "\x40\x41\x42\x43\x44\x45\x46\x47" 10359 - "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f" 10360 - "\x50\x51\x52\x53\x54\x55\x56\x57" 10361 - "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f" 10362 - "\x60\x61\x62\x63\x64\x65\x66\x67" 10363 - "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f" 10364 - "\x70\x71\x72\x73\x74\x75\x76\x77" 10365 - "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f" 10366 - "\x80\x81\x82\x83\x84\x85\x86\x87" 10367 - "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f" 10368 - "\x90\x91\x92\x93\x94\x95\x96\x97" 10369 - "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f" 10370 - "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7" 10371 - "\xa8\xa9\xaa\xab\xac\xad\xae\xaf" 10372 - "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7" 10373 - "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf" 10374 - "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7" 10375 - "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf" 10376 - "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7" 10377 - "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf" 10378 - "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7" 10379 - "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 10380 - "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 10381 - "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff" 10382 - "\x00\x01\x02\x03\x04\x05\x06\x07" 10383 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 10384 - "\x10\x11\x12\x13\x14\x15\x16\x17" 10385 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" 10386 - "\x20\x21\x22\x23\x24\x25\x26\x27" 10387 - "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f" 10388 - "\x30\x31\x32\x33\x34\x35\x36\x37" 10389 - "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f" 10390 - "\x40\x41\x42\x43\x44\x45\x46\x47" 10391 - "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f" 10392 - "\x50\x51\x52\x53\x54\x55\x56\x57" 10393 - "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f" 10394 - "\x60\x61\x62\x63\x64\x65\x66\x67" 10395 - "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f" 10396 - "\x70\x71\x72\x73\x74\x75\x76\x77" 10397 - "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f" 10398 - "\x80\x81\x82\x83\x84\x85\x86\x87" 10399 - "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f" 10400 - "\x90\x91\x92\x93\x94\x95\x96\x97" 10401 - "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f" 10402 - "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7" 10403 - "\xa8\xa9\xaa\xab\xac\xad\xae\xaf" 10404 - "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7" 10405 - "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf" 10406 - "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7" 10407 - "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf" 10408 - "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7" 10409 - "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf" 10410 - "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7" 10411 - "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 10412 - "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 10413 - "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 10414 - .rlen = 512, 14298 + .len = 512, 10415 14299 .also_non_np = 1, 10416 14300 .np = 3, 10417 14301 .tap = { 512 - 20, 4, 16 }, ··· 10080 14650 * https://tools.ietf.org/html/draft-crypto-sm4-00#ref-GBT.32907-2016 10081 14651 */ 10082 14652 10083 - static const struct cipher_testvec sm4_enc_tv_template[] = { 14653 + static const struct cipher_testvec sm4_tv_template[] = { 10084 14654 { /* SM4 Appendix A: Example Calculations. Example 1. */ 10085 14655 .key = "\x01\x23\x45\x67\x89\xAB\xCD\xEF" 10086 14656 "\xFE\xDC\xBA\x98\x76\x54\x32\x10", 10087 14657 .klen = 16, 10088 - .input = "\x01\x23\x45\x67\x89\xAB\xCD\xEF" 14658 + .ptext = "\x01\x23\x45\x67\x89\xAB\xCD\xEF" 10089 14659 "\xFE\xDC\xBA\x98\x76\x54\x32\x10", 10090 - .ilen = 16, 10091 - .result = "\x68\x1E\xDF\x34\xD2\x06\x96\x5E" 14660 + .ctext = "\x68\x1E\xDF\x34\xD2\x06\x96\x5E" 10092 14661 "\x86\xB3\xE9\x4F\x53\x6E\x42\x46", 10093 - .rlen = 16, 14662 + .len = 16, 10094 14663 }, { /* 10095 14664 * SM4 Appendix A: Example Calculations. 10096 14665 * Last 10 iterations of Example 2. ··· 10097 14668 .key = "\x01\x23\x45\x67\x89\xAB\xCD\xEF" 10098 14669 "\xFE\xDC\xBA\x98\x76\x54\x32\x10", 10099 14670 .klen = 16, 10100 - .input = "\x99\x4a\xc3\xe7\xc3\x57\x89\x6a" 14671 + .ptext = "\x99\x4a\xc3\xe7\xc3\x57\x89\x6a" 10101 14672 "\x81\xfc\xa8\xe\x38\x3e\xef\x80" 10102 14673 "\xb1\x98\xf2\xde\x3f\x4b\xae\xd1" 10103 14674 "\xf0\xf1\x30\x4c\x1\x27\x5a\x8f" ··· 10117 14688 "\xed\xce\x0\x19\xe\x16\x2\x6e" 10118 14689 "\x87\xff\x2c\xac\xe8\xe7\xe9\xbf" 10119 14690 "\x31\x51\xec\x47\xc3\x51\x83\xc1", 10120 - .ilen = 160, 10121 - .result = "\xb1\x98\xf2\xde\x3f\x4b\xae\xd1" 14691 + .ctext = "\xb1\x98\xf2\xde\x3f\x4b\xae\xd1" 10122 14692 "\xf0\xf1\x30\x4c\x1\x27\x5a\x8f" 10123 14693 "\x45\xe1\x39\xb7\xae\xff\x1f\x27" 10124 14694 "\xad\x57\x15\xab\x31\x5d\xc\xef" ··· 10137 14709 "\x31\x51\xec\x47\xc3\x51\x83\xc1" 10138 14710 "\x59\x52\x98\xc7\xc6\xfd\x27\x1f" 10139 14711 "\x4\x2\xf8\x4\xc3\x3d\x3f\x66", 10140 - .rlen = 160 10141 - } 10142 - }; 10143 - 10144 - static const struct cipher_testvec sm4_dec_tv_template[] = { 10145 - { /* SM4 Appendix A: Example Calculations. Example 1. */ 10146 - .key = "\x01\x23\x45\x67\x89\xAB\xCD\xEF" 10147 - "\xFE\xDC\xBA\x98\x76\x54\x32\x10", 10148 - .klen = 16, 10149 - .input = "\x68\x1E\xDF\x34\xD2\x06\x96\x5E" 10150 - "\x86\xB3\xE9\x4F\x53\x6E\x42\x46", 10151 - .ilen = 16, 10152 - .result = "\x01\x23\x45\x67\x89\xAB\xCD\xEF" 10153 - "\xFE\xDC\xBA\x98\x76\x54\x32\x10", 10154 - .rlen = 16, 10155 - }, { /* 10156 - * SM4 Appendix A: Example Calculations. 10157 - * Last 10 iterations of Example 2. 10158 - */ 10159 - .key = "\x01\x23\x45\x67\x89\xAB\xCD\xEF" 10160 - "\xFE\xDC\xBA\x98\x76\x54\x32\x10", 10161 - .klen = 16, 10162 - .input = "\xb1\x98\xf2\xde\x3f\x4b\xae\xd1" 10163 - "\xf0\xf1\x30\x4c\x1\x27\x5a\x8f" 10164 - "\x45\xe1\x39\xb7\xae\xff\x1f\x27" 10165 - "\xad\x57\x15\xab\x31\x5d\xc\xef" 10166 - "\x8c\xc8\x80\xbd\x11\x98\xf3\x7b" 10167 - "\xa2\xdd\x14\x20\xf9\xe8\xbb\x82" 10168 - "\xf7\x32\xca\x4b\xa8\xf7\xb3\x4d" 10169 - "\x27\xd1\xcd\xe6\xb6\x65\x5a\x23" 10170 - "\xc2\xf3\x54\x84\x53\xe3\xb9\x20" 10171 - "\xa5\x37\x0\xbe\xe7\x7b\x48\xfb" 10172 - "\x21\x3d\x9e\x48\x1d\x9e\xf5\xbf" 10173 - "\x77\xd5\xb4\x4a\x53\x71\x94\x7a" 10174 - "\x88\xa6\x6e\x6\x93\xca\x43\xa5" 10175 - "\xc4\xf6\xcd\x53\x4b\x7b\x8e\xfe" 10176 - "\xb4\x28\x7c\x42\x29\x32\x5d\x88" 10177 - "\xed\xce\x0\x19\xe\x16\x2\x6e" 10178 - "\x87\xff\x2c\xac\xe8\xe7\xe9\xbf" 10179 - "\x31\x51\xec\x47\xc3\x51\x83\xc1" 10180 - "\x59\x52\x98\xc7\xc6\xfd\x27\x1f" 10181 - "\x4\x2\xf8\x4\xc3\x3d\x3f\x66", 10182 - .ilen = 160, 10183 - .result = "\x99\x4a\xc3\xe7\xc3\x57\x89\x6a" 10184 - "\x81\xfc\xa8\xe\x38\x3e\xef\x80" 10185 - "\xb1\x98\xf2\xde\x3f\x4b\xae\xd1" 10186 - "\xf0\xf1\x30\x4c\x1\x27\x5a\x8f" 10187 - "\x45\xe1\x39\xb7\xae\xff\x1f\x27" 10188 - "\xad\x57\x15\xab\x31\x5d\xc\xef" 10189 - "\x8c\xc8\x80\xbd\x11\x98\xf3\x7b" 10190 - "\xa2\xdd\x14\x20\xf9\xe8\xbb\x82" 10191 - "\xf7\x32\xca\x4b\xa8\xf7\xb3\x4d" 10192 - "\x27\xd1\xcd\xe6\xb6\x65\x5a\x23" 10193 - "\xc2\xf3\x54\x84\x53\xe3\xb9\x20" 10194 - "\xa5\x37\x0\xbe\xe7\x7b\x48\xfb" 10195 - "\x21\x3d\x9e\x48\x1d\x9e\xf5\xbf" 10196 - "\x77\xd5\xb4\x4a\x53\x71\x94\x7a" 10197 - "\x88\xa6\x6e\x6\x93\xca\x43\xa5" 10198 - "\xc4\xf6\xcd\x53\x4b\x7b\x8e\xfe" 10199 - "\xb4\x28\x7c\x42\x29\x32\x5d\x88" 10200 - "\xed\xce\x0\x19\xe\x16\x2\x6e" 10201 - "\x87\xff\x2c\xac\xe8\xe7\xe9\xbf" 10202 - "\x31\x51\xec\x47\xc3\x51\x83\xc1", 10203 - .rlen = 160 14712 + .len = 160 10204 14713 } 10205 14714 }; 10206 14715 ··· 10155 14790 * the lowest memory address. 10156 14791 */ 10157 14792 10158 - static const struct cipher_testvec speck128_enc_tv_template[] = { 14793 + static const struct cipher_testvec speck128_tv_template[] = { 10159 14794 { /* Speck128/128 */ 10160 14795 .key = "\x00\x01\x02\x03\x04\x05\x06\x07" 10161 14796 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f", 10162 14797 .klen = 16, 10163 - .input = "\x20\x6d\x61\x64\x65\x20\x69\x74" 14798 + .ptext = "\x20\x6d\x61\x64\x65\x20\x69\x74" 10164 14799 "\x20\x65\x71\x75\x69\x76\x61\x6c", 10165 - .ilen = 16, 10166 - .result = "\x18\x0d\x57\x5c\xdf\xfe\x60\x78" 14800 + .ctext = "\x18\x0d\x57\x5c\xdf\xfe\x60\x78" 10167 14801 "\x65\x32\x78\x79\x51\x98\x5d\xa6", 10168 - .rlen = 16, 14802 + .len = 16, 10169 14803 }, { /* Speck128/192 */ 10170 14804 .key = "\x00\x01\x02\x03\x04\x05\x06\x07" 10171 14805 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 10172 14806 "\x10\x11\x12\x13\x14\x15\x16\x17", 10173 14807 .klen = 24, 10174 - .input = "\x65\x6e\x74\x20\x74\x6f\x20\x43" 14808 + .ptext = "\x65\x6e\x74\x20\x74\x6f\x20\x43" 10175 14809 "\x68\x69\x65\x66\x20\x48\x61\x72", 10176 - .ilen = 16, 10177 - .result = "\x86\x18\x3c\xe0\x5d\x18\xbc\xf9" 14810 + .ctext = "\x86\x18\x3c\xe0\x5d\x18\xbc\xf9" 10178 14811 "\x66\x55\x13\x13\x3a\xcf\xe4\x1b", 10179 - .rlen = 16, 14812 + .len = 16, 10180 14813 }, { /* Speck128/256 */ 10181 14814 .key = "\x00\x01\x02\x03\x04\x05\x06\x07" 10182 14815 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 10183 14816 "\x10\x11\x12\x13\x14\x15\x16\x17" 10184 14817 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f", 10185 14818 .klen = 32, 10186 - .input = "\x70\x6f\x6f\x6e\x65\x72\x2e\x20" 14819 + .ptext = "\x70\x6f\x6f\x6e\x65\x72\x2e\x20" 10187 14820 "\x49\x6e\x20\x74\x68\x6f\x73\x65", 10188 - .ilen = 16, 10189 - .result = "\x43\x8f\x18\x9c\x8d\xb4\xee\x4e" 14821 + .ctext = "\x43\x8f\x18\x9c\x8d\xb4\xee\x4e" 10190 14822 "\x3e\xf5\xc0\x05\x04\x01\x09\x41", 10191 - .rlen = 16, 10192 - }, 10193 - }; 10194 - 10195 - static const struct cipher_testvec speck128_dec_tv_template[] = { 10196 - { /* Speck128/128 */ 10197 - .key = "\x00\x01\x02\x03\x04\x05\x06\x07" 10198 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f", 10199 - .klen = 16, 10200 - .input = "\x18\x0d\x57\x5c\xdf\xfe\x60\x78" 10201 - "\x65\x32\x78\x79\x51\x98\x5d\xa6", 10202 - .ilen = 16, 10203 - .result = "\x20\x6d\x61\x64\x65\x20\x69\x74" 10204 - "\x20\x65\x71\x75\x69\x76\x61\x6c", 10205 - .rlen = 16, 10206 - }, { /* Speck128/192 */ 10207 - .key = "\x00\x01\x02\x03\x04\x05\x06\x07" 10208 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 10209 - "\x10\x11\x12\x13\x14\x15\x16\x17", 10210 - .klen = 24, 10211 - .input = "\x86\x18\x3c\xe0\x5d\x18\xbc\xf9" 10212 - "\x66\x55\x13\x13\x3a\xcf\xe4\x1b", 10213 - .ilen = 16, 10214 - .result = "\x65\x6e\x74\x20\x74\x6f\x20\x43" 10215 - "\x68\x69\x65\x66\x20\x48\x61\x72", 10216 - .rlen = 16, 10217 - }, { /* Speck128/256 */ 10218 - .key = "\x00\x01\x02\x03\x04\x05\x06\x07" 10219 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 10220 - "\x10\x11\x12\x13\x14\x15\x16\x17" 10221 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f", 10222 - .klen = 32, 10223 - .input = "\x43\x8f\x18\x9c\x8d\xb4\xee\x4e" 10224 - "\x3e\xf5\xc0\x05\x04\x01\x09\x41", 10225 - .ilen = 16, 10226 - .result = "\x70\x6f\x6f\x6e\x65\x72\x2e\x20" 10227 - "\x49\x6e\x20\x74\x68\x6f\x73\x65", 10228 - .rlen = 16, 14823 + .len = 16, 10229 14824 }, 10230 14825 }; 10231 14826 10232 14827 /* 10233 14828 * Speck128-XTS test vectors, taken from the AES-XTS test vectors with the 10234 - * result recomputed with Speck128 as the cipher 14829 + * ciphertext recomputed with Speck128 as the cipher 10235 14830 */ 10236 - 10237 - static const struct cipher_testvec speck128_xts_enc_tv_template[] = { 14831 + static const struct cipher_testvec speck128_xts_tv_template[] = { 10238 14832 { 10239 14833 .key = "\x00\x00\x00\x00\x00\x00\x00\x00" 10240 14834 "\x00\x00\x00\x00\x00\x00\x00\x00" ··· 10202 14878 .klen = 32, 10203 14879 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 10204 14880 "\x00\x00\x00\x00\x00\x00\x00\x00", 10205 - .input = "\x00\x00\x00\x00\x00\x00\x00\x00" 14881 + .ptext = "\x00\x00\x00\x00\x00\x00\x00\x00" 10206 14882 "\x00\x00\x00\x00\x00\x00\x00\x00" 10207 14883 "\x00\x00\x00\x00\x00\x00\x00\x00" 10208 14884 "\x00\x00\x00\x00\x00\x00\x00\x00", 10209 - .ilen = 32, 10210 - .result = "\xbe\xa0\xe7\x03\xd7\xfe\xab\x62" 14885 + .ctext = "\xbe\xa0\xe7\x03\xd7\xfe\xab\x62" 10211 14886 "\x3b\x99\x4a\x64\x74\x77\xac\xed" 10212 14887 "\xd8\xf4\xa6\xcf\xae\xb9\x07\x42" 10213 14888 "\x51\xd9\xb6\x1d\xe0\x5e\xbc\x54", 10214 - .rlen = 32, 14889 + .len = 32, 10215 14890 }, { 10216 14891 .key = "\x11\x11\x11\x11\x11\x11\x11\x11" 10217 14892 "\x11\x11\x11\x11\x11\x11\x11\x11" ··· 10219 14896 .klen = 32, 10220 14897 .iv = "\x33\x33\x33\x33\x33\x00\x00\x00" 10221 14898 "\x00\x00\x00\x00\x00\x00\x00\x00", 10222 - .input = "\x44\x44\x44\x44\x44\x44\x44\x44" 14899 + .ptext = "\x44\x44\x44\x44\x44\x44\x44\x44" 10223 14900 "\x44\x44\x44\x44\x44\x44\x44\x44" 10224 14901 "\x44\x44\x44\x44\x44\x44\x44\x44" 10225 14902 "\x44\x44\x44\x44\x44\x44\x44\x44", 10226 - .ilen = 32, 10227 - .result = "\xfb\x53\x81\x75\x6f\x9f\x34\xad" 14903 + .ctext = "\xfb\x53\x81\x75\x6f\x9f\x34\xad" 10228 14904 "\x7e\x01\xed\x7b\xcc\xda\x4e\x4a" 10229 14905 "\xd4\x84\xa4\x53\xd5\x88\x73\x1b" 10230 14906 "\xfd\xcb\xae\x0d\xf3\x04\xee\xe6", 10231 - .rlen = 32, 14907 + .len = 32, 10232 14908 }, { 10233 14909 .key = "\xff\xfe\xfd\xfc\xfb\xfa\xf9\xf8" 10234 14910 "\xf7\xf6\xf5\xf4\xf3\xf2\xf1\xf0" ··· 10236 14914 .klen = 32, 10237 14915 .iv = "\x33\x33\x33\x33\x33\x00\x00\x00" 10238 14916 "\x00\x00\x00\x00\x00\x00\x00\x00", 10239 - .input = "\x44\x44\x44\x44\x44\x44\x44\x44" 14917 + .ptext = "\x44\x44\x44\x44\x44\x44\x44\x44" 10240 14918 "\x44\x44\x44\x44\x44\x44\x44\x44" 10241 14919 "\x44\x44\x44\x44\x44\x44\x44\x44" 10242 14920 "\x44\x44\x44\x44\x44\x44\x44\x44", 10243 - .ilen = 32, 10244 - .result = "\x21\x52\x84\x15\xd1\xf7\x21\x55" 14921 + .ctext = "\x21\x52\x84\x15\xd1\xf7\x21\x55" 10245 14922 "\xd9\x75\x4a\xd3\xc5\xdb\x9f\x7d" 10246 14923 "\xda\x63\xb2\xf1\x82\xb0\x89\x59" 10247 14924 "\x86\xd4\xaa\xaa\xdd\xff\x4f\x92", 10248 - .rlen = 32, 14925 + .len = 32, 10249 14926 }, { 10250 14927 .key = "\x27\x18\x28\x18\x28\x45\x90\x45" 10251 14928 "\x23\x53\x60\x28\x74\x71\x35\x26" ··· 10253 14932 .klen = 32, 10254 14933 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 10255 14934 "\x00\x00\x00\x00\x00\x00\x00\x00", 10256 - .input = "\x00\x01\x02\x03\x04\x05\x06\x07" 14935 + .ptext = "\x00\x01\x02\x03\x04\x05\x06\x07" 10257 14936 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 10258 14937 "\x10\x11\x12\x13\x14\x15\x16\x17" 10259 14938 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" ··· 10317 14996 "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 10318 14997 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 10319 14998 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 10320 - .ilen = 512, 10321 - .result = "\x57\xb5\xf8\x71\x6e\x6d\xdd\x82" 14999 + .ctext = "\x57\xb5\xf8\x71\x6e\x6d\xdd\x82" 10322 15000 "\x53\xd0\xed\x2d\x30\xc1\x20\xef" 10323 15001 "\x70\x67\x5e\xff\x09\x70\xbb\xc1" 10324 15002 "\x3a\x7b\x48\x26\xd9\x0b\xf4\x48" ··· 10381 15061 "\xaa\xf2\x01\xa9\xc1\x8d\xee\xca" 10382 15062 "\x47\x26\xef\x39\xb8\xb4\xf2\xd1" 10383 15063 "\xd6\xbb\x1b\x2a\xc1\x34\x14\xcf", 10384 - .rlen = 512, 15064 + .len = 512, 10385 15065 }, { 10386 15066 .key = "\x27\x18\x28\x18\x28\x45\x90\x45" 10387 15067 "\x23\x53\x60\x28\x74\x71\x35\x26" ··· 10394 15074 .klen = 64, 10395 15075 .iv = "\xff\x00\x00\x00\x00\x00\x00\x00" 10396 15076 "\x00\x00\x00\x00\x00\x00\x00\x00", 10397 - .input = "\x00\x01\x02\x03\x04\x05\x06\x07" 15077 + .ptext = "\x00\x01\x02\x03\x04\x05\x06\x07" 10398 15078 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 10399 15079 "\x10\x11\x12\x13\x14\x15\x16\x17" 10400 15080 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" ··· 10458 15138 "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 10459 15139 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 10460 15140 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 10461 - .ilen = 512, 10462 - .result = "\xc5\x85\x2a\x4b\x73\xe4\xf6\xf1" 15141 + .ctext = "\xc5\x85\x2a\x4b\x73\xe4\xf6\xf1" 10463 15142 "\x7e\xf9\xf6\xe9\xa3\x73\x36\xcb" 10464 15143 "\xaa\xb6\x22\xb0\x24\x6e\x3d\x73" 10465 15144 "\x92\x99\xde\xd3\x76\xed\xcd\x63" ··· 10522 15203 "\x66\x8d\x13\xca\xe0\x59\x2a\x00" 10523 15204 "\xc9\x53\x4c\xe6\x9e\xe2\x73\xd5" 10524 15205 "\x67\x19\xb2\xbd\x9a\x63\xd7\x5c", 10525 - .rlen = 512, 15206 + .len = 512, 10526 15207 .also_non_np = 1, 10527 15208 .np = 3, 10528 15209 .tap = { 512 - 20, 4, 16 }, 10529 15210 } 10530 15211 }; 10531 15212 10532 - static const struct cipher_testvec speck128_xts_dec_tv_template[] = { 10533 - { 10534 - .key = "\x00\x00\x00\x00\x00\x00\x00\x00" 10535 - "\x00\x00\x00\x00\x00\x00\x00\x00" 10536 - "\x00\x00\x00\x00\x00\x00\x00\x00" 10537 - "\x00\x00\x00\x00\x00\x00\x00\x00", 10538 - .klen = 32, 10539 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 10540 - "\x00\x00\x00\x00\x00\x00\x00\x00", 10541 - .input = "\xbe\xa0\xe7\x03\xd7\xfe\xab\x62" 10542 - "\x3b\x99\x4a\x64\x74\x77\xac\xed" 10543 - "\xd8\xf4\xa6\xcf\xae\xb9\x07\x42" 10544 - "\x51\xd9\xb6\x1d\xe0\x5e\xbc\x54", 10545 - .ilen = 32, 10546 - .result = "\x00\x00\x00\x00\x00\x00\x00\x00" 10547 - "\x00\x00\x00\x00\x00\x00\x00\x00" 10548 - "\x00\x00\x00\x00\x00\x00\x00\x00" 10549 - "\x00\x00\x00\x00\x00\x00\x00\x00", 10550 - .rlen = 32, 10551 - }, { 10552 - .key = "\x11\x11\x11\x11\x11\x11\x11\x11" 10553 - "\x11\x11\x11\x11\x11\x11\x11\x11" 10554 - "\x22\x22\x22\x22\x22\x22\x22\x22" 10555 - "\x22\x22\x22\x22\x22\x22\x22\x22", 10556 - .klen = 32, 10557 - .iv = "\x33\x33\x33\x33\x33\x00\x00\x00" 10558 - "\x00\x00\x00\x00\x00\x00\x00\x00", 10559 - .input = "\xfb\x53\x81\x75\x6f\x9f\x34\xad" 10560 - "\x7e\x01\xed\x7b\xcc\xda\x4e\x4a" 10561 - "\xd4\x84\xa4\x53\xd5\x88\x73\x1b" 10562 - "\xfd\xcb\xae\x0d\xf3\x04\xee\xe6", 10563 - .ilen = 32, 10564 - .result = "\x44\x44\x44\x44\x44\x44\x44\x44" 10565 - "\x44\x44\x44\x44\x44\x44\x44\x44" 10566 - "\x44\x44\x44\x44\x44\x44\x44\x44" 10567 - "\x44\x44\x44\x44\x44\x44\x44\x44", 10568 - .rlen = 32, 10569 - }, { 10570 - .key = "\xff\xfe\xfd\xfc\xfb\xfa\xf9\xf8" 10571 - "\xf7\xf6\xf5\xf4\xf3\xf2\xf1\xf0" 10572 - "\x22\x22\x22\x22\x22\x22\x22\x22" 10573 - "\x22\x22\x22\x22\x22\x22\x22\x22", 10574 - .klen = 32, 10575 - .iv = "\x33\x33\x33\x33\x33\x00\x00\x00" 10576 - "\x00\x00\x00\x00\x00\x00\x00\x00", 10577 - .input = "\x21\x52\x84\x15\xd1\xf7\x21\x55" 10578 - "\xd9\x75\x4a\xd3\xc5\xdb\x9f\x7d" 10579 - "\xda\x63\xb2\xf1\x82\xb0\x89\x59" 10580 - "\x86\xd4\xaa\xaa\xdd\xff\x4f\x92", 10581 - .ilen = 32, 10582 - .result = "\x44\x44\x44\x44\x44\x44\x44\x44" 10583 - "\x44\x44\x44\x44\x44\x44\x44\x44" 10584 - "\x44\x44\x44\x44\x44\x44\x44\x44" 10585 - "\x44\x44\x44\x44\x44\x44\x44\x44", 10586 - .rlen = 32, 10587 - }, { 10588 - .key = "\x27\x18\x28\x18\x28\x45\x90\x45" 10589 - "\x23\x53\x60\x28\x74\x71\x35\x26" 10590 - "\x31\x41\x59\x26\x53\x58\x97\x93" 10591 - "\x23\x84\x62\x64\x33\x83\x27\x95", 10592 - .klen = 32, 10593 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 10594 - "\x00\x00\x00\x00\x00\x00\x00\x00", 10595 - .input = "\x57\xb5\xf8\x71\x6e\x6d\xdd\x82" 10596 - "\x53\xd0\xed\x2d\x30\xc1\x20\xef" 10597 - "\x70\x67\x5e\xff\x09\x70\xbb\xc1" 10598 - "\x3a\x7b\x48\x26\xd9\x0b\xf4\x48" 10599 - "\xbe\xce\xb1\xc7\xb2\x67\xc4\xa7" 10600 - "\x76\xf8\x36\x30\xb7\xb4\x9a\xd9" 10601 - "\xf5\x9d\xd0\x7b\xc1\x06\x96\x44" 10602 - "\x19\xc5\x58\x84\x63\xb9\x12\x68" 10603 - "\x68\xc7\xaa\x18\x98\xf2\x1f\x5c" 10604 - "\x39\xa6\xd8\x32\x2b\xc3\x51\xfd" 10605 - "\x74\x79\x2e\xb4\x44\xd7\x69\xc4" 10606 - "\xfc\x29\xe6\xed\x26\x1e\xa6\x9d" 10607 - "\x1c\xbe\x00\x0e\x7f\x3a\xca\xfb" 10608 - "\x6d\x13\x65\xa0\xf9\x31\x12\xe2" 10609 - "\x26\xd1\xec\x2b\x0a\x8b\x59\x99" 10610 - "\xa7\x49\xa0\x0e\x09\x33\x85\x50" 10611 - "\xc3\x23\xca\x7a\xdd\x13\x45\x5f" 10612 - "\xde\x4c\xa7\xcb\x00\x8a\x66\x6f" 10613 - "\xa2\xb6\xb1\x2e\xe1\xa0\x18\xf6" 10614 - "\xad\xf3\xbd\xeb\xc7\xef\x55\x4f" 10615 - "\x79\x91\x8d\x36\x13\x7b\xd0\x4a" 10616 - "\x6c\x39\xfb\x53\xb8\x6f\x02\x51" 10617 - "\xa5\x20\xac\x24\x1c\x73\x59\x73" 10618 - "\x58\x61\x3a\x87\x58\xb3\x20\x56" 10619 - "\x39\x06\x2b\x4d\xd3\x20\x2b\x89" 10620 - "\x3f\xa2\xf0\x96\xeb\x7f\xa4\xcd" 10621 - "\x11\xae\xbd\xcb\x3a\xb4\xd9\x91" 10622 - "\x09\x35\x71\x50\x65\xac\x92\xe3" 10623 - "\x7b\x32\xc0\x7a\xdd\xd4\xc3\x92" 10624 - "\x6f\xeb\x79\xde\x6f\xd3\x25\xc9" 10625 - "\xcd\x63\xf5\x1e\x7a\x3b\x26\x9d" 10626 - "\x77\x04\x80\xa9\xbf\x38\xb5\xbd" 10627 - "\xb8\x05\x07\xbd\xfd\xab\x7b\xf8" 10628 - "\x2a\x26\xcc\x49\x14\x6d\x55\x01" 10629 - "\x06\x94\xd8\xb2\x2d\x53\x83\x1b" 10630 - "\x8f\xd4\xdd\x57\x12\x7e\x18\xba" 10631 - "\x8e\xe2\x4d\x80\xef\x7e\x6b\x9d" 10632 - "\x24\xa9\x60\xa4\x97\x85\x86\x2a" 10633 - "\x01\x00\x09\xf1\xcb\x4a\x24\x1c" 10634 - "\xd8\xf6\xe6\x5b\xe7\x5d\xf2\xc4" 10635 - "\x97\x1c\x10\xc6\x4d\x66\x4f\x98" 10636 - "\x87\x30\xac\xd5\xea\x73\x49\x10" 10637 - "\x80\xea\xe5\x5f\x4d\x5f\x03\x33" 10638 - "\x66\x02\x35\x3d\x60\x06\x36\x4f" 10639 - "\x14\x1c\xd8\x07\x1f\x78\xd0\xf8" 10640 - "\x4f\x6c\x62\x7c\x15\xa5\x7c\x28" 10641 - "\x7c\xcc\xeb\x1f\xd1\x07\x90\x93" 10642 - "\x7e\xc2\xa8\x3a\x80\xc0\xf5\x30" 10643 - "\xcc\x75\xcf\x16\x26\xa9\x26\x3b" 10644 - "\xe7\x68\x2f\x15\x21\x5b\xe4\x00" 10645 - "\xbd\x48\x50\xcd\x75\x70\xc4\x62" 10646 - "\xbb\x41\xfb\x89\x4a\x88\x3b\x3b" 10647 - "\x51\x66\x02\x69\x04\x97\x36\xd4" 10648 - "\x75\xae\x0b\xa3\x42\xf8\xca\x79" 10649 - "\x8f\x93\xe9\xcc\x38\xbd\xd6\xd2" 10650 - "\xf9\x70\x4e\xc3\x6a\x8e\x25\xbd" 10651 - "\xea\x15\x5a\xa0\x85\x7e\x81\x0d" 10652 - "\x03\xe7\x05\x39\xf5\x05\x26\xee" 10653 - "\xec\xaa\x1f\x3d\xc9\x98\x76\x01" 10654 - "\x2c\xf4\xfc\xa3\x88\x77\x38\xc4" 10655 - "\x50\x65\x50\x6d\x04\x1f\xdf\x5a" 10656 - "\xaa\xf2\x01\xa9\xc1\x8d\xee\xca" 10657 - "\x47\x26\xef\x39\xb8\xb4\xf2\xd1" 10658 - "\xd6\xbb\x1b\x2a\xc1\x34\x14\xcf", 10659 - .ilen = 512, 10660 - .result = "\x00\x01\x02\x03\x04\x05\x06\x07" 10661 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 10662 - "\x10\x11\x12\x13\x14\x15\x16\x17" 10663 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" 10664 - "\x20\x21\x22\x23\x24\x25\x26\x27" 10665 - "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f" 10666 - "\x30\x31\x32\x33\x34\x35\x36\x37" 10667 - "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f" 10668 - "\x40\x41\x42\x43\x44\x45\x46\x47" 10669 - "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f" 10670 - "\x50\x51\x52\x53\x54\x55\x56\x57" 10671 - "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f" 10672 - "\x60\x61\x62\x63\x64\x65\x66\x67" 10673 - "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f" 10674 - "\x70\x71\x72\x73\x74\x75\x76\x77" 10675 - "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f" 10676 - "\x80\x81\x82\x83\x84\x85\x86\x87" 10677 - "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f" 10678 - "\x90\x91\x92\x93\x94\x95\x96\x97" 10679 - "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f" 10680 - "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7" 10681 - "\xa8\xa9\xaa\xab\xac\xad\xae\xaf" 10682 - "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7" 10683 - "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf" 10684 - "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7" 10685 - "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf" 10686 - "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7" 10687 - "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf" 10688 - "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7" 10689 - "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 10690 - "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 10691 - "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff" 10692 - "\x00\x01\x02\x03\x04\x05\x06\x07" 10693 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 10694 - "\x10\x11\x12\x13\x14\x15\x16\x17" 10695 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" 10696 - "\x20\x21\x22\x23\x24\x25\x26\x27" 10697 - "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f" 10698 - "\x30\x31\x32\x33\x34\x35\x36\x37" 10699 - "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f" 10700 - "\x40\x41\x42\x43\x44\x45\x46\x47" 10701 - "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f" 10702 - "\x50\x51\x52\x53\x54\x55\x56\x57" 10703 - "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f" 10704 - "\x60\x61\x62\x63\x64\x65\x66\x67" 10705 - "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f" 10706 - "\x70\x71\x72\x73\x74\x75\x76\x77" 10707 - "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f" 10708 - "\x80\x81\x82\x83\x84\x85\x86\x87" 10709 - "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f" 10710 - "\x90\x91\x92\x93\x94\x95\x96\x97" 10711 - "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f" 10712 - "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7" 10713 - "\xa8\xa9\xaa\xab\xac\xad\xae\xaf" 10714 - "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7" 10715 - "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf" 10716 - "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7" 10717 - "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf" 10718 - "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7" 10719 - "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf" 10720 - "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7" 10721 - "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 10722 - "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 10723 - "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 10724 - .rlen = 512, 10725 - }, { 10726 - .key = "\x27\x18\x28\x18\x28\x45\x90\x45" 10727 - "\x23\x53\x60\x28\x74\x71\x35\x26" 10728 - "\x62\x49\x77\x57\x24\x70\x93\x69" 10729 - "\x99\x59\x57\x49\x66\x96\x76\x27" 10730 - "\x31\x41\x59\x26\x53\x58\x97\x93" 10731 - "\x23\x84\x62\x64\x33\x83\x27\x95" 10732 - "\x02\x88\x41\x97\x16\x93\x99\x37" 10733 - "\x51\x05\x82\x09\x74\x94\x45\x92", 10734 - .klen = 64, 10735 - .iv = "\xff\x00\x00\x00\x00\x00\x00\x00" 10736 - "\x00\x00\x00\x00\x00\x00\x00\x00", 10737 - .input = "\xc5\x85\x2a\x4b\x73\xe4\xf6\xf1" 10738 - "\x7e\xf9\xf6\xe9\xa3\x73\x36\xcb" 10739 - "\xaa\xb6\x22\xb0\x24\x6e\x3d\x73" 10740 - "\x92\x99\xde\xd3\x76\xed\xcd\x63" 10741 - "\x64\x3a\x22\x57\xc1\x43\x49\xd4" 10742 - "\x79\x36\x31\x19\x62\xae\x10\x7e" 10743 - "\x7d\xcf\x7a\xe2\x6b\xce\x27\xfa" 10744 - "\xdc\x3d\xd9\x83\xd3\x42\x4c\xe0" 10745 - "\x1b\xd6\x1d\x1a\x6f\xd2\x03\x00" 10746 - "\xfc\x81\x99\x8a\x14\x62\xf5\x7e" 10747 - "\x0d\xe7\x12\xe8\x17\x9d\x0b\xec" 10748 - "\xe2\xf7\xc9\xa7\x63\xd1\x79\xb6" 10749 - "\x62\x62\x37\xfe\x0a\x4c\x4a\x37" 10750 - "\x70\xc7\x5e\x96\x5f\xbc\x8e\x9e" 10751 - "\x85\x3c\x4f\x26\x64\x85\xbc\x68" 10752 - "\xb0\xe0\x86\x5e\x26\x41\xce\x11" 10753 - "\x50\xda\x97\x14\xe9\x9e\xc7\x6d" 10754 - "\x3b\xdc\x43\xde\x2b\x27\x69\x7d" 10755 - "\xfc\xb0\x28\xbd\x8f\xb1\xc6\x31" 10756 - "\x14\x4d\xf0\x74\x37\xfd\x07\x25" 10757 - "\x96\x55\xe5\xfc\x9e\x27\x2a\x74" 10758 - "\x1b\x83\x4d\x15\x83\xac\x57\xa0" 10759 - "\xac\xa5\xd0\x38\xef\x19\x56\x53" 10760 - "\x25\x4b\xfc\xce\x04\x23\xe5\x6b" 10761 - "\xf6\xc6\x6c\x32\x0b\xb3\x12\xc5" 10762 - "\xed\x22\x34\x1c\x5d\xed\x17\x06" 10763 - "\x36\xa3\xe6\x77\xb9\x97\x46\xb8" 10764 - "\xe9\x3f\x7e\xc7\xbc\x13\x5c\xdc" 10765 - "\x6e\x3f\x04\x5e\xd1\x59\xa5\x82" 10766 - "\x35\x91\x3d\x1b\xe4\x97\x9f\x92" 10767 - "\x1c\x5e\x5f\x6f\x41\xd4\x62\xa1" 10768 - "\x8d\x39\xfc\x42\xfb\x38\x80\xb9" 10769 - "\x0a\xe3\xcc\x6a\x93\xd9\x7a\xb1" 10770 - "\xe9\x69\xaf\x0a\x6b\x75\x38\xa7" 10771 - "\xa1\xbf\xf7\xda\x95\x93\x4b\x78" 10772 - "\x19\xf5\x94\xf9\xd2\x00\x33\x37" 10773 - "\xcf\xf5\x9e\x9c\xf3\xcc\xa6\xee" 10774 - "\x42\xb2\x9e\x2c\x5f\x48\x23\x26" 10775 - "\x15\x25\x17\x03\x3d\xfe\x2c\xfc" 10776 - "\xeb\xba\xda\xe0\x00\x05\xb6\xa6" 10777 - "\x07\xb3\xe8\x36\x5b\xec\x5b\xbf" 10778 - "\xd6\x5b\x00\x74\xc6\x97\xf1\x6a" 10779 - "\x49\xa1\xc3\xfa\x10\x52\xb9\x14" 10780 - "\xad\xb7\x73\xf8\x78\x12\xc8\x59" 10781 - "\x17\x80\x4c\x57\x39\xf1\x6d\x80" 10782 - "\x25\x77\x0f\x5e\x7d\xf0\xaf\x21" 10783 - "\xec\xce\xb7\xc8\x02\x8a\xed\x53" 10784 - "\x2c\x25\x68\x2e\x1f\x85\x5e\x67" 10785 - "\xd1\x07\x7a\x3a\x89\x08\xe0\x34" 10786 - "\xdc\xdb\x26\xb4\x6b\x77\xfc\x40" 10787 - "\x31\x15\x72\xa0\xf0\x73\xd9\x3b" 10788 - "\xd5\xdb\xfe\xfc\x8f\xa9\x44\xa2" 10789 - "\x09\x9f\xc6\x33\xe5\xe2\x88\xe8" 10790 - "\xf3\xf0\x1a\xf4\xce\x12\x0f\xd6" 10791 - "\xf7\x36\xe6\xa4\xf4\x7a\x10\x58" 10792 - "\xcc\x1f\x48\x49\x65\x47\x75\xe9" 10793 - "\x28\xe1\x65\x7b\xf2\xc4\xb5\x07" 10794 - "\xf2\xec\x76\xd8\x8f\x09\xf3\x16" 10795 - "\xa1\x51\x89\x3b\xeb\x96\x42\xac" 10796 - "\x65\xe0\x67\x63\x29\xdc\xb4\x7d" 10797 - "\xf2\x41\x51\x6a\xcb\xde\x3c\xfb" 10798 - "\x66\x8d\x13\xca\xe0\x59\x2a\x00" 10799 - "\xc9\x53\x4c\xe6\x9e\xe2\x73\xd5" 10800 - "\x67\x19\xb2\xbd\x9a\x63\xd7\x5c", 10801 - .ilen = 512, 10802 - .result = "\x00\x01\x02\x03\x04\x05\x06\x07" 10803 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 10804 - "\x10\x11\x12\x13\x14\x15\x16\x17" 10805 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" 10806 - "\x20\x21\x22\x23\x24\x25\x26\x27" 10807 - "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f" 10808 - "\x30\x31\x32\x33\x34\x35\x36\x37" 10809 - "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f" 10810 - "\x40\x41\x42\x43\x44\x45\x46\x47" 10811 - "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f" 10812 - "\x50\x51\x52\x53\x54\x55\x56\x57" 10813 - "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f" 10814 - "\x60\x61\x62\x63\x64\x65\x66\x67" 10815 - "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f" 10816 - "\x70\x71\x72\x73\x74\x75\x76\x77" 10817 - "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f" 10818 - "\x80\x81\x82\x83\x84\x85\x86\x87" 10819 - "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f" 10820 - "\x90\x91\x92\x93\x94\x95\x96\x97" 10821 - "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f" 10822 - "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7" 10823 - "\xa8\xa9\xaa\xab\xac\xad\xae\xaf" 10824 - "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7" 10825 - "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf" 10826 - "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7" 10827 - "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf" 10828 - "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7" 10829 - "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf" 10830 - "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7" 10831 - "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 10832 - "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 10833 - "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff" 10834 - "\x00\x01\x02\x03\x04\x05\x06\x07" 10835 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 10836 - "\x10\x11\x12\x13\x14\x15\x16\x17" 10837 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" 10838 - "\x20\x21\x22\x23\x24\x25\x26\x27" 10839 - "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f" 10840 - "\x30\x31\x32\x33\x34\x35\x36\x37" 10841 - "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f" 10842 - "\x40\x41\x42\x43\x44\x45\x46\x47" 10843 - "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f" 10844 - "\x50\x51\x52\x53\x54\x55\x56\x57" 10845 - "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f" 10846 - "\x60\x61\x62\x63\x64\x65\x66\x67" 10847 - "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f" 10848 - "\x70\x71\x72\x73\x74\x75\x76\x77" 10849 - "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f" 10850 - "\x80\x81\x82\x83\x84\x85\x86\x87" 10851 - "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f" 10852 - "\x90\x91\x92\x93\x94\x95\x96\x97" 10853 - "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f" 10854 - "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7" 10855 - "\xa8\xa9\xaa\xab\xac\xad\xae\xaf" 10856 - "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7" 10857 - "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf" 10858 - "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7" 10859 - "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf" 10860 - "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7" 10861 - "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf" 10862 - "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7" 10863 - "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 10864 - "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 10865 - "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 10866 - .rlen = 512, 10867 - .also_non_np = 1, 10868 - .np = 3, 10869 - .tap = { 512 - 20, 4, 16 }, 10870 - } 10871 - }; 10872 - 10873 - static const struct cipher_testvec speck64_enc_tv_template[] = { 15213 + static const struct cipher_testvec speck64_tv_template[] = { 10874 15214 { /* Speck64/96 */ 10875 15215 .key = "\x00\x01\x02\x03\x08\x09\x0a\x0b" 10876 15216 "\x10\x11\x12\x13", 10877 15217 .klen = 12, 10878 - .input = "\x65\x61\x6e\x73\x20\x46\x61\x74", 10879 - .ilen = 8, 10880 - .result = "\x6c\x94\x75\x41\xec\x52\x79\x9f", 10881 - .rlen = 8, 15218 + .ptext = "\x65\x61\x6e\x73\x20\x46\x61\x74", 15219 + .ctext = "\x6c\x94\x75\x41\xec\x52\x79\x9f", 15220 + .len = 8, 10882 15221 }, { /* Speck64/128 */ 10883 15222 .key = "\x00\x01\x02\x03\x08\x09\x0a\x0b" 10884 15223 "\x10\x11\x12\x13\x18\x19\x1a\x1b", 10885 15224 .klen = 16, 10886 - .input = "\x2d\x43\x75\x74\x74\x65\x72\x3b", 10887 - .ilen = 8, 10888 - .result = "\x8b\x02\x4e\x45\x48\xa5\x6f\x8c", 10889 - .rlen = 8, 10890 - }, 10891 - }; 10892 - 10893 - static const struct cipher_testvec speck64_dec_tv_template[] = { 10894 - { /* Speck64/96 */ 10895 - .key = "\x00\x01\x02\x03\x08\x09\x0a\x0b" 10896 - "\x10\x11\x12\x13", 10897 - .klen = 12, 10898 - .input = "\x6c\x94\x75\x41\xec\x52\x79\x9f", 10899 - .ilen = 8, 10900 - .result = "\x65\x61\x6e\x73\x20\x46\x61\x74", 10901 - .rlen = 8, 10902 - }, { /* Speck64/128 */ 10903 - .key = "\x00\x01\x02\x03\x08\x09\x0a\x0b" 10904 - "\x10\x11\x12\x13\x18\x19\x1a\x1b", 10905 - .klen = 16, 10906 - .input = "\x8b\x02\x4e\x45\x48\xa5\x6f\x8c", 10907 - .ilen = 8, 10908 - .result = "\x2d\x43\x75\x74\x74\x65\x72\x3b", 10909 - .rlen = 8, 15225 + .ptext = "\x2d\x43\x75\x74\x74\x65\x72\x3b", 15226 + .ctext = "\x8b\x02\x4e\x45\x48\xa5\x6f\x8c", 15227 + .len = 8, 10910 15228 }, 10911 15229 }; 10912 15230 10913 15231 /* 10914 - * Speck64-XTS test vectors, taken from the AES-XTS test vectors with the result 10915 - * recomputed with Speck64 as the cipher, and key lengths adjusted 15232 + * Speck64-XTS test vectors, taken from the AES-XTS test vectors with the 15233 + * ciphertext recomputed with Speck64 as the cipher, and key lengths adjusted 10916 15234 */ 10917 - 10918 - static const struct cipher_testvec speck64_xts_enc_tv_template[] = { 15235 + static const struct cipher_testvec speck64_xts_tv_template[] = { 10919 15236 { 10920 15237 .key = "\x00\x00\x00\x00\x00\x00\x00\x00" 10921 15238 "\x00\x00\x00\x00\x00\x00\x00\x00" ··· 10559 15604 .klen = 24, 10560 15605 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 10561 15606 "\x00\x00\x00\x00\x00\x00\x00\x00", 10562 - .input = "\x00\x00\x00\x00\x00\x00\x00\x00" 15607 + .ptext = "\x00\x00\x00\x00\x00\x00\x00\x00" 10563 15608 "\x00\x00\x00\x00\x00\x00\x00\x00" 10564 15609 "\x00\x00\x00\x00\x00\x00\x00\x00" 10565 15610 "\x00\x00\x00\x00\x00\x00\x00\x00", 10566 - .ilen = 32, 10567 - .result = "\x84\xaf\x54\x07\x19\xd4\x7c\xa6" 15611 + .ctext = "\x84\xaf\x54\x07\x19\xd4\x7c\xa6" 10568 15612 "\xe4\xfe\xdf\xc4\x1f\x34\xc3\xc2" 10569 15613 "\x80\xf5\x72\xe7\xcd\xf0\x99\x22" 10570 15614 "\x35\xa7\x2f\x06\xef\xdc\x51\xaa", 10571 - .rlen = 32, 15615 + .len = 32, 10572 15616 }, { 10573 15617 .key = "\x11\x11\x11\x11\x11\x11\x11\x11" 10574 15618 "\x11\x11\x11\x11\x11\x11\x11\x11" ··· 10575 15621 .klen = 24, 10576 15622 .iv = "\x33\x33\x33\x33\x33\x00\x00\x00" 10577 15623 "\x00\x00\x00\x00\x00\x00\x00\x00", 10578 - .input = "\x44\x44\x44\x44\x44\x44\x44\x44" 15624 + .ptext = "\x44\x44\x44\x44\x44\x44\x44\x44" 10579 15625 "\x44\x44\x44\x44\x44\x44\x44\x44" 10580 15626 "\x44\x44\x44\x44\x44\x44\x44\x44" 10581 15627 "\x44\x44\x44\x44\x44\x44\x44\x44", 10582 - .ilen = 32, 10583 - .result = "\x12\x56\x73\xcd\x15\x87\xa8\x59" 15628 + .ctext = "\x12\x56\x73\xcd\x15\x87\xa8\x59" 10584 15629 "\xcf\x84\xae\xd9\x1c\x66\xd6\x9f" 10585 15630 "\xb3\x12\x69\x7e\x36\xeb\x52\xff" 10586 15631 "\x62\xdd\xba\x90\xb3\xe1\xee\x99", 10587 - .rlen = 32, 15632 + .len = 32, 10588 15633 }, { 10589 15634 .key = "\xff\xfe\xfd\xfc\xfb\xfa\xf9\xf8" 10590 15635 "\xf7\xf6\xf5\xf4\xf3\xf2\xf1\xf0" ··· 10591 15638 .klen = 24, 10592 15639 .iv = "\x33\x33\x33\x33\x33\x00\x00\x00" 10593 15640 "\x00\x00\x00\x00\x00\x00\x00\x00", 10594 - .input = "\x44\x44\x44\x44\x44\x44\x44\x44" 15641 + .ptext = "\x44\x44\x44\x44\x44\x44\x44\x44" 10595 15642 "\x44\x44\x44\x44\x44\x44\x44\x44" 10596 15643 "\x44\x44\x44\x44\x44\x44\x44\x44" 10597 15644 "\x44\x44\x44\x44\x44\x44\x44\x44", 10598 - .ilen = 32, 10599 - .result = "\x15\x1b\xe4\x2c\xa2\x5a\x2d\x2c" 15645 + .ctext = "\x15\x1b\xe4\x2c\xa2\x5a\x2d\x2c" 10600 15646 "\x27\x36\xc0\xbf\x5d\xea\x36\x37" 10601 15647 "\x2d\x1a\x88\xbc\x66\xb5\xd0\x0b" 10602 15648 "\xa1\xbc\x19\xb2\x0f\x3b\x75\x34", 10603 - .rlen = 32, 15649 + .len = 32, 10604 15650 }, { 10605 15651 .key = "\x27\x18\x28\x18\x28\x45\x90\x45" 10606 15652 "\x23\x53\x60\x28\x74\x71\x35\x26" ··· 10607 15655 .klen = 24, 10608 15656 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 10609 15657 "\x00\x00\x00\x00\x00\x00\x00\x00", 10610 - .input = "\x00\x01\x02\x03\x04\x05\x06\x07" 15658 + .ptext = "\x00\x01\x02\x03\x04\x05\x06\x07" 10611 15659 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 10612 15660 "\x10\x11\x12\x13\x14\x15\x16\x17" 10613 15661 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" ··· 10671 15719 "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 10672 15720 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 10673 15721 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 10674 - .ilen = 512, 10675 - .result = "\xaf\xa1\x81\xa6\x32\xbb\x15\x8e" 15722 + .ctext = "\xaf\xa1\x81\xa6\x32\xbb\x15\x8e" 10676 15723 "\xf8\x95\x2e\xd3\xe6\xee\x7e\x09" 10677 15724 "\x0c\x1a\xf5\x02\x97\x8b\xe3\xb3" 10678 15725 "\x11\xc7\x39\x96\xd0\x95\xf4\x56" ··· 10735 15784 "\x50\xf7\x5f\xf4\xc2\xca\x41\x97" 10736 15785 "\x37\xbe\x75\x74\xcd\xf0\x75\x6e" 10737 15786 "\x25\x23\x94\xbd\xda\x8d\xb0\xd4", 10738 - .rlen = 512, 15787 + .len = 512, 10739 15788 }, { 10740 15789 .key = "\x27\x18\x28\x18\x28\x45\x90\x45" 10741 15790 "\x23\x53\x60\x28\x74\x71\x35\x26" ··· 10744 15793 .klen = 32, 10745 15794 .iv = "\xff\x00\x00\x00\x00\x00\x00\x00" 10746 15795 "\x00\x00\x00\x00\x00\x00\x00\x00", 10747 - .input = "\x00\x01\x02\x03\x04\x05\x06\x07" 15796 + .ptext = "\x00\x01\x02\x03\x04\x05\x06\x07" 10748 15797 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 10749 15798 "\x10\x11\x12\x13\x14\x15\x16\x17" 10750 15799 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" ··· 10808 15857 "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 10809 15858 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 10810 15859 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 10811 - .ilen = 512, 10812 - .result = "\x55\xed\x71\xd3\x02\x8e\x15\x3b" 15860 + .ctext = "\x55\xed\x71\xd3\x02\x8e\x15\x3b" 10813 15861 "\xc6\x71\x29\x2d\x3e\x89\x9f\x59" 10814 15862 "\x68\x6a\xcc\x8a\x56\x97\xf3\x95" 10815 15863 "\x4e\x51\x08\xda\x2a\xf8\x6f\x3c" ··· 10872 15922 "\x9b\x63\x76\x32\x2f\x19\x72\x10" 10873 15923 "\x9f\x21\x0c\xf1\x66\x50\x7f\xa5" 10874 15924 "\x0d\x1f\x46\xe0\xba\xd3\x2f\x3c", 10875 - .rlen = 512, 10876 - .also_non_np = 1, 10877 - .np = 3, 10878 - .tap = { 512 - 20, 4, 16 }, 10879 - } 10880 - }; 10881 - 10882 - static const struct cipher_testvec speck64_xts_dec_tv_template[] = { 10883 - { 10884 - .key = "\x00\x00\x00\x00\x00\x00\x00\x00" 10885 - "\x00\x00\x00\x00\x00\x00\x00\x00" 10886 - "\x00\x00\x00\x00\x00\x00\x00\x00", 10887 - .klen = 24, 10888 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 10889 - "\x00\x00\x00\x00\x00\x00\x00\x00", 10890 - .input = "\x84\xaf\x54\x07\x19\xd4\x7c\xa6" 10891 - "\xe4\xfe\xdf\xc4\x1f\x34\xc3\xc2" 10892 - "\x80\xf5\x72\xe7\xcd\xf0\x99\x22" 10893 - "\x35\xa7\x2f\x06\xef\xdc\x51\xaa", 10894 - .ilen = 32, 10895 - .result = "\x00\x00\x00\x00\x00\x00\x00\x00" 10896 - "\x00\x00\x00\x00\x00\x00\x00\x00" 10897 - "\x00\x00\x00\x00\x00\x00\x00\x00" 10898 - "\x00\x00\x00\x00\x00\x00\x00\x00", 10899 - .rlen = 32, 10900 - }, { 10901 - .key = "\x11\x11\x11\x11\x11\x11\x11\x11" 10902 - "\x11\x11\x11\x11\x11\x11\x11\x11" 10903 - "\x22\x22\x22\x22\x22\x22\x22\x22", 10904 - .klen = 24, 10905 - .iv = "\x33\x33\x33\x33\x33\x00\x00\x00" 10906 - "\x00\x00\x00\x00\x00\x00\x00\x00", 10907 - .input = "\x12\x56\x73\xcd\x15\x87\xa8\x59" 10908 - "\xcf\x84\xae\xd9\x1c\x66\xd6\x9f" 10909 - "\xb3\x12\x69\x7e\x36\xeb\x52\xff" 10910 - "\x62\xdd\xba\x90\xb3\xe1\xee\x99", 10911 - .ilen = 32, 10912 - .result = "\x44\x44\x44\x44\x44\x44\x44\x44" 10913 - "\x44\x44\x44\x44\x44\x44\x44\x44" 10914 - "\x44\x44\x44\x44\x44\x44\x44\x44" 10915 - "\x44\x44\x44\x44\x44\x44\x44\x44", 10916 - .rlen = 32, 10917 - }, { 10918 - .key = "\xff\xfe\xfd\xfc\xfb\xfa\xf9\xf8" 10919 - "\xf7\xf6\xf5\xf4\xf3\xf2\xf1\xf0" 10920 - "\x22\x22\x22\x22\x22\x22\x22\x22", 10921 - .klen = 24, 10922 - .iv = "\x33\x33\x33\x33\x33\x00\x00\x00" 10923 - "\x00\x00\x00\x00\x00\x00\x00\x00", 10924 - .input = "\x15\x1b\xe4\x2c\xa2\x5a\x2d\x2c" 10925 - "\x27\x36\xc0\xbf\x5d\xea\x36\x37" 10926 - "\x2d\x1a\x88\xbc\x66\xb5\xd0\x0b" 10927 - "\xa1\xbc\x19\xb2\x0f\x3b\x75\x34", 10928 - .ilen = 32, 10929 - .result = "\x44\x44\x44\x44\x44\x44\x44\x44" 10930 - "\x44\x44\x44\x44\x44\x44\x44\x44" 10931 - "\x44\x44\x44\x44\x44\x44\x44\x44" 10932 - "\x44\x44\x44\x44\x44\x44\x44\x44", 10933 - .rlen = 32, 10934 - }, { 10935 - .key = "\x27\x18\x28\x18\x28\x45\x90\x45" 10936 - "\x23\x53\x60\x28\x74\x71\x35\x26" 10937 - "\x31\x41\x59\x26\x53\x58\x97\x93", 10938 - .klen = 24, 10939 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 10940 - "\x00\x00\x00\x00\x00\x00\x00\x00", 10941 - .input = "\xaf\xa1\x81\xa6\x32\xbb\x15\x8e" 10942 - "\xf8\x95\x2e\xd3\xe6\xee\x7e\x09" 10943 - "\x0c\x1a\xf5\x02\x97\x8b\xe3\xb3" 10944 - "\x11\xc7\x39\x96\xd0\x95\xf4\x56" 10945 - "\xf4\xdd\x03\x38\x01\x44\x2c\xcf" 10946 - "\x88\xae\x8e\x3c\xcd\xe7\xaa\x66" 10947 - "\xfe\x3d\xc6\xfb\x01\x23\x51\x43" 10948 - "\xd5\xd2\x13\x86\x94\x34\xe9\x62" 10949 - "\xf9\x89\xe3\xd1\x7b\xbe\xf8\xef" 10950 - "\x76\x35\x04\x3f\xdb\x23\x9d\x0b" 10951 - "\x85\x42\xb9\x02\xd6\xcc\xdb\x96" 10952 - "\xa7\x6b\x27\xb6\xd4\x45\x8f\x7d" 10953 - "\xae\xd2\x04\xd5\xda\xc1\x7e\x24" 10954 - "\x8c\x73\xbe\x48\x7e\xcf\x65\x28" 10955 - "\x29\xe5\xbe\x54\x30\xcb\x46\x95" 10956 - "\x4f\x2e\x8a\x36\xc8\x27\xc5\xbe" 10957 - "\xd0\x1a\xaf\xab\x26\xcd\x9e\x69" 10958 - "\xa1\x09\x95\x71\x26\xe9\xc4\xdf" 10959 - "\xe6\x31\xc3\x46\xda\xaf\x0b\x41" 10960 - "\x1f\xab\xb1\x8e\xd6\xfc\x0b\xb3" 10961 - "\x82\xc0\x37\x27\xfc\x91\xa7\x05" 10962 - "\xfb\xc5\xdc\x2b\x74\x96\x48\x43" 10963 - "\x5d\x9c\x19\x0f\x60\x63\x3a\x1f" 10964 - "\x6f\xf0\x03\xbe\x4d\xfd\xc8\x4a" 10965 - "\xc6\xa4\x81\x6d\xc3\x12\x2a\x5c" 10966 - "\x07\xff\xf3\x72\x74\x48\xb5\x40" 10967 - "\x50\xb5\xdd\x90\x43\x31\x18\x15" 10968 - "\x7b\xf2\xa6\xdb\x83\xc8\x4b\x4a" 10969 - "\x29\x93\x90\x8b\xda\x07\xf0\x35" 10970 - "\x6d\x90\x88\x09\x4e\x83\xf5\x5b" 10971 - "\x94\x12\xbb\x33\x27\x1d\x3f\x23" 10972 - "\x51\xa8\x7c\x07\xa2\xae\x77\xa6" 10973 - "\x50\xfd\xcc\xc0\x4f\x80\x7a\x9f" 10974 - "\x66\xdd\xcd\x75\x24\x8b\x33\xf7" 10975 - "\x20\xdb\x83\x9b\x4f\x11\x63\x6e" 10976 - "\xcf\x37\xef\xc9\x11\x01\x5c\x45" 10977 - "\x32\x99\x7c\x3c\x9e\x42\x89\xe3" 10978 - "\x70\x6d\x15\x9f\xb1\xe6\xb6\x05" 10979 - "\xfe\x0c\xb9\x49\x2d\x90\x6d\xcc" 10980 - "\x5d\x3f\xc1\xfe\x89\x0a\x2e\x2d" 10981 - "\xa0\xa8\x89\x3b\x73\x39\xa5\x94" 10982 - "\x4c\xa4\xa6\xbb\xa7\x14\x46\x89" 10983 - "\x10\xff\xaf\xef\xca\xdd\x4f\x80" 10984 - "\xb3\xdf\x3b\xab\xd4\xe5\x5a\xc7" 10985 - "\x33\xca\x00\x8b\x8b\x3f\xea\xec" 10986 - "\x68\x8a\xc2\x6d\xfd\xd4\x67\x0f" 10987 - "\x22\x31\xe1\x0e\xfe\x5a\x04\xd5" 10988 - "\x64\xa3\xf1\x1a\x76\x28\xcc\x35" 10989 - "\x36\xa7\x0a\x74\xf7\x1c\x44\x9b" 10990 - "\xc7\x1b\x53\x17\x02\xea\xd1\xad" 10991 - "\x13\x51\x73\xc0\xa0\xb2\x05\x32" 10992 - "\xa8\xa2\x37\x2e\xe1\x7a\x3a\x19" 10993 - "\x26\xb4\x6c\x62\x5d\xb3\x1a\x1d" 10994 - "\x59\xda\xee\x1a\x22\x18\xda\x0d" 10995 - "\x88\x0f\x55\x8b\x72\x62\xfd\xc1" 10996 - "\x69\x13\xcd\x0d\x5f\xc1\x09\x52" 10997 - "\xee\xd6\xe3\x84\x4d\xee\xf6\x88" 10998 - "\xaf\x83\xdc\x76\xf4\xc0\x93\x3f" 10999 - "\x4a\x75\x2f\xb0\x0b\x3e\xc4\x54" 11000 - "\x7d\x69\x8d\x00\x62\x77\x0d\x14" 11001 - "\xbe\x7c\xa6\x7d\xc5\x24\x4f\xf3" 11002 - "\x50\xf7\x5f\xf4\xc2\xca\x41\x97" 11003 - "\x37\xbe\x75\x74\xcd\xf0\x75\x6e" 11004 - "\x25\x23\x94\xbd\xda\x8d\xb0\xd4", 11005 - .ilen = 512, 11006 - .result = "\x00\x01\x02\x03\x04\x05\x06\x07" 11007 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 11008 - "\x10\x11\x12\x13\x14\x15\x16\x17" 11009 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" 11010 - "\x20\x21\x22\x23\x24\x25\x26\x27" 11011 - "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f" 11012 - "\x30\x31\x32\x33\x34\x35\x36\x37" 11013 - "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f" 11014 - "\x40\x41\x42\x43\x44\x45\x46\x47" 11015 - "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f" 11016 - "\x50\x51\x52\x53\x54\x55\x56\x57" 11017 - "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f" 11018 - "\x60\x61\x62\x63\x64\x65\x66\x67" 11019 - "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f" 11020 - "\x70\x71\x72\x73\x74\x75\x76\x77" 11021 - "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f" 11022 - "\x80\x81\x82\x83\x84\x85\x86\x87" 11023 - "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f" 11024 - "\x90\x91\x92\x93\x94\x95\x96\x97" 11025 - "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f" 11026 - "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7" 11027 - "\xa8\xa9\xaa\xab\xac\xad\xae\xaf" 11028 - "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7" 11029 - "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf" 11030 - "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7" 11031 - "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf" 11032 - "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7" 11033 - "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf" 11034 - "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7" 11035 - "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 11036 - "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 11037 - "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff" 11038 - "\x00\x01\x02\x03\x04\x05\x06\x07" 11039 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 11040 - "\x10\x11\x12\x13\x14\x15\x16\x17" 11041 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" 11042 - "\x20\x21\x22\x23\x24\x25\x26\x27" 11043 - "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f" 11044 - "\x30\x31\x32\x33\x34\x35\x36\x37" 11045 - "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f" 11046 - "\x40\x41\x42\x43\x44\x45\x46\x47" 11047 - "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f" 11048 - "\x50\x51\x52\x53\x54\x55\x56\x57" 11049 - "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f" 11050 - "\x60\x61\x62\x63\x64\x65\x66\x67" 11051 - "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f" 11052 - "\x70\x71\x72\x73\x74\x75\x76\x77" 11053 - "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f" 11054 - "\x80\x81\x82\x83\x84\x85\x86\x87" 11055 - "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f" 11056 - "\x90\x91\x92\x93\x94\x95\x96\x97" 11057 - "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f" 11058 - "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7" 11059 - "\xa8\xa9\xaa\xab\xac\xad\xae\xaf" 11060 - "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7" 11061 - "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf" 11062 - "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7" 11063 - "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf" 11064 - "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7" 11065 - "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf" 11066 - "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7" 11067 - "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 11068 - "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 11069 - "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 11070 - .rlen = 512, 11071 - }, { 11072 - .key = "\x27\x18\x28\x18\x28\x45\x90\x45" 11073 - "\x23\x53\x60\x28\x74\x71\x35\x26" 11074 - "\x62\x49\x77\x57\x24\x70\x93\x69" 11075 - "\x99\x59\x57\x49\x66\x96\x76\x27", 11076 - .klen = 32, 11077 - .iv = "\xff\x00\x00\x00\x00\x00\x00\x00" 11078 - "\x00\x00\x00\x00\x00\x00\x00\x00", 11079 - .input = "\x55\xed\x71\xd3\x02\x8e\x15\x3b" 11080 - "\xc6\x71\x29\x2d\x3e\x89\x9f\x59" 11081 - "\x68\x6a\xcc\x8a\x56\x97\xf3\x95" 11082 - "\x4e\x51\x08\xda\x2a\xf8\x6f\x3c" 11083 - "\x78\x16\xea\x80\xdb\x33\x75\x94" 11084 - "\xf9\x29\xc4\x2b\x76\x75\x97\xc7" 11085 - "\xf2\x98\x2c\xf9\xff\xc8\xd5\x2b" 11086 - "\x18\xf1\xaf\xcf\x7c\xc5\x0b\xee" 11087 - "\xad\x3c\x76\x7c\xe6\x27\xa2\x2a" 11088 - "\xe4\x66\xe1\xab\xa2\x39\xfc\x7c" 11089 - "\xf5\xec\x32\x74\xa3\xb8\x03\x88" 11090 - "\x52\xfc\x2e\x56\x3f\xa1\xf0\x9f" 11091 - "\x84\x5e\x46\xed\x20\x89\xb6\x44" 11092 - "\x8d\xd0\xed\x54\x47\x16\xbe\x95" 11093 - "\x8a\xb3\x6b\x72\xc4\x32\x52\x13" 11094 - "\x1b\xb0\x82\xbe\xac\xf9\x70\xa6" 11095 - "\x44\x18\xdd\x8c\x6e\xca\x6e\x45" 11096 - "\x8f\x1e\x10\x07\x57\x25\x98\x7b" 11097 - "\x17\x8c\x78\xdd\x80\xa7\xd9\xd8" 11098 - "\x63\xaf\xb9\x67\x57\xfd\xbc\xdb" 11099 - "\x44\xe9\xc5\x65\xd1\xc7\x3b\xff" 11100 - "\x20\xa0\x80\x1a\xc3\x9a\xad\x5e" 11101 - "\x5d\x3b\xd3\x07\xd9\xf5\xfd\x3d" 11102 - "\x4a\x8b\xa8\xd2\x6e\x7a\x51\x65" 11103 - "\x6c\x8e\x95\xe0\x45\xc9\x5f\x4a" 11104 - "\x09\x3c\x3d\x71\x7f\x0c\x84\x2a" 11105 - "\xc8\x48\x52\x1a\xc2\xd5\xd6\x78" 11106 - "\x92\x1e\xa0\x90\x2e\xea\xf0\xf3" 11107 - "\xdc\x0f\xb1\xaf\x0d\x9b\x06\x2e" 11108 - "\x35\x10\x30\x82\x0d\xe7\xc5\x9b" 11109 - "\xde\x44\x18\xbd\x9f\xd1\x45\xa9" 11110 - "\x7b\x7a\x4a\xad\x35\x65\x27\xca" 11111 - "\xb2\xc3\xd4\x9b\x71\x86\x70\xee" 11112 - "\xf1\x89\x3b\x85\x4b\x5b\xaa\xaf" 11113 - "\xfc\x42\xc8\x31\x59\xbe\x16\x60" 11114 - "\x4f\xf9\xfa\x12\xea\xd0\xa7\x14" 11115 - "\xf0\x7a\xf3\xd5\x8d\xbd\x81\xef" 11116 - "\x52\x7f\x29\x51\x94\x20\x67\x3c" 11117 - "\xd1\xaf\x77\x9f\x22\x5a\x4e\x63" 11118 - "\xe7\xff\x73\x25\xd1\xdd\x96\x8a" 11119 - "\x98\x52\x6d\xf3\xac\x3e\xf2\x18" 11120 - "\x6d\xf6\x0a\x29\xa6\x34\x3d\xed" 11121 - "\xe3\x27\x0d\x9d\x0a\x02\x44\x7e" 11122 - "\x5a\x7e\x67\x0f\x0a\x9e\xd6\xad" 11123 - "\x91\xe6\x4d\x81\x8c\x5c\x59\xaa" 11124 - "\xfb\xeb\x56\x53\xd2\x7d\x4c\x81" 11125 - "\x65\x53\x0f\x41\x11\xbd\x98\x99" 11126 - "\xf9\xc6\xfa\x51\x2e\xa3\xdd\x8d" 11127 - "\x84\x98\xf9\x34\xed\x33\x2a\x1f" 11128 - "\x82\xed\xc1\x73\x98\xd3\x02\xdc" 11129 - "\xe6\xc2\x33\x1d\xa2\xb4\xca\x76" 11130 - "\x63\x51\x34\x9d\x96\x12\xae\xce" 11131 - "\x83\xc9\x76\x5e\xa4\x1b\x53\x37" 11132 - "\x17\xd5\xc0\x80\x1d\x62\xf8\x3d" 11133 - "\x54\x27\x74\xbb\x10\x86\x57\x46" 11134 - "\x68\xe1\xed\x14\xe7\x9d\xfc\x84" 11135 - "\x47\xbc\xc2\xf8\x19\x4b\x99\xcf" 11136 - "\x7a\xe9\xc4\xb8\x8c\x82\x72\x4d" 11137 - "\x7b\x4f\x38\x55\x36\x71\x64\xc1" 11138 - "\xfc\x5c\x75\x52\x33\x02\x18\xf8" 11139 - "\x17\xe1\x2b\xc2\x43\x39\xbd\x76" 11140 - "\x9b\x63\x76\x32\x2f\x19\x72\x10" 11141 - "\x9f\x21\x0c\xf1\x66\x50\x7f\xa5" 11142 - "\x0d\x1f\x46\xe0\xba\xd3\x2f\x3c", 11143 - .ilen = 512, 11144 - .result = "\x00\x01\x02\x03\x04\x05\x06\x07" 11145 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 11146 - "\x10\x11\x12\x13\x14\x15\x16\x17" 11147 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" 11148 - "\x20\x21\x22\x23\x24\x25\x26\x27" 11149 - "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f" 11150 - "\x30\x31\x32\x33\x34\x35\x36\x37" 11151 - "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f" 11152 - "\x40\x41\x42\x43\x44\x45\x46\x47" 11153 - "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f" 11154 - "\x50\x51\x52\x53\x54\x55\x56\x57" 11155 - "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f" 11156 - "\x60\x61\x62\x63\x64\x65\x66\x67" 11157 - "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f" 11158 - "\x70\x71\x72\x73\x74\x75\x76\x77" 11159 - "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f" 11160 - "\x80\x81\x82\x83\x84\x85\x86\x87" 11161 - "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f" 11162 - "\x90\x91\x92\x93\x94\x95\x96\x97" 11163 - "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f" 11164 - "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7" 11165 - "\xa8\xa9\xaa\xab\xac\xad\xae\xaf" 11166 - "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7" 11167 - "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf" 11168 - "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7" 11169 - "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf" 11170 - "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7" 11171 - "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf" 11172 - "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7" 11173 - "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 11174 - "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 11175 - "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff" 11176 - "\x00\x01\x02\x03\x04\x05\x06\x07" 11177 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 11178 - "\x10\x11\x12\x13\x14\x15\x16\x17" 11179 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" 11180 - "\x20\x21\x22\x23\x24\x25\x26\x27" 11181 - "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f" 11182 - "\x30\x31\x32\x33\x34\x35\x36\x37" 11183 - "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f" 11184 - "\x40\x41\x42\x43\x44\x45\x46\x47" 11185 - "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f" 11186 - "\x50\x51\x52\x53\x54\x55\x56\x57" 11187 - "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f" 11188 - "\x60\x61\x62\x63\x64\x65\x66\x67" 11189 - "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f" 11190 - "\x70\x71\x72\x73\x74\x75\x76\x77" 11191 - "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f" 11192 - "\x80\x81\x82\x83\x84\x85\x86\x87" 11193 - "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f" 11194 - "\x90\x91\x92\x93\x94\x95\x96\x97" 11195 - "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f" 11196 - "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7" 11197 - "\xa8\xa9\xaa\xab\xac\xad\xae\xaf" 11198 - "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7" 11199 - "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf" 11200 - "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7" 11201 - "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf" 11202 - "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7" 11203 - "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf" 11204 - "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7" 11205 - "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 11206 - "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 11207 - "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 11208 - .rlen = 512, 15925 + .len = 512, 11209 15926 .also_non_np = 1, 11210 15927 .np = 3, 11211 15928 .tap = { 512 - 20, 4, 16 }, ··· 10880 16263 }; 10881 16264 10882 16265 /* Cast6 test vectors from RFC 2612 */ 10883 - static const struct cipher_testvec cast6_enc_tv_template[] = { 16266 + static const struct cipher_testvec cast6_tv_template[] = { 10884 16267 { 10885 16268 .key = "\x23\x42\xbb\x9e\xfa\x38\x54\x2c" 10886 16269 "\x0a\xf7\x56\x47\xf2\x9f\x61\x5d", 10887 16270 .klen = 16, 10888 - .input = zeroed_string, 10889 - .ilen = 16, 10890 - .result = "\xc8\x42\xa0\x89\x72\xb4\x3d\x20" 16271 + .ptext = zeroed_string, 16272 + .ctext = "\xc8\x42\xa0\x89\x72\xb4\x3d\x20" 10891 16273 "\x83\x6c\x91\xd1\xb7\x53\x0f\x6b", 10892 - .rlen = 16, 16274 + .len = 16, 10893 16275 }, { 10894 16276 .key = "\x23\x42\xbb\x9e\xfa\x38\x54\x2c" 10895 16277 "\xbe\xd0\xac\x83\x94\x0a\xc2\x98" 10896 16278 "\xba\xc7\x7a\x77\x17\x94\x28\x63", 10897 16279 .klen = 24, 10898 - .input = zeroed_string, 10899 - .ilen = 16, 10900 - .result = "\x1b\x38\x6c\x02\x10\xdc\xad\xcb" 16280 + .ptext = zeroed_string, 16281 + .ctext = "\x1b\x38\x6c\x02\x10\xdc\xad\xcb" 10901 16282 "\xdd\x0e\x41\xaa\x08\xa7\xa7\xe8", 10902 - .rlen = 16, 16283 + .len = 16, 10903 16284 }, { 10904 16285 .key = "\x23\x42\xbb\x9e\xfa\x38\x54\x2c" 10905 16286 "\xbe\xd0\xac\x83\x94\x0a\xc2\x98" 10906 16287 "\x8d\x7c\x47\xce\x26\x49\x08\x46" 10907 16288 "\x1c\xc1\xb5\x13\x7a\xe6\xb6\x04", 10908 16289 .klen = 32, 10909 - .input = zeroed_string, 10910 - .ilen = 16, 10911 - .result = "\x4f\x6a\x20\x38\x28\x68\x97\xb9" 16290 + .ptext = zeroed_string, 16291 + .ctext = "\x4f\x6a\x20\x38\x28\x68\x97\xb9" 10912 16292 "\xc9\x87\x01\x36\x55\x33\x17\xfa", 10913 - .rlen = 16, 16293 + .len = 16, 10914 16294 }, { /* Generated from TF test vectors */ 10915 16295 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 10916 16296 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" ··· 10916 16302 .klen = 32, 10917 16303 .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F" 10918 16304 "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64", 10919 - .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 16305 + .ptext = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 10920 16306 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 10921 16307 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 10922 16308 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" ··· 10978 16364 "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 10979 16365 "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 10980 16366 "\xDC\x50\xE7\x7E\x15\x89\x20\xB7", 10981 - .ilen = 496, 10982 - .result = "\xC3\x70\x22\x32\xF5\x80\xCB\x54" 16367 + .ctext = "\xC3\x70\x22\x32\xF5\x80\xCB\x54" 10983 16368 "\xFC\x30\xE0\xF6\xEB\x39\x57\xA6" 10984 16369 "\xB6\xB9\xC5\xA4\x91\x55\x14\x97" 10985 16370 "\xC1\x20\xFF\x6C\x5C\xF0\x67\xEA" ··· 11040 16427 "\x49\x2C\xF3\xD4\x90\xCC\x93\x4C" 11041 16428 "\x84\x52\x6D\x68\xDE\xC6\x64\xB2" 11042 16429 "\x11\x74\x93\x57\xB4\x7E\xC6\x00", 11043 - .rlen = 496, 16430 + .len = 496, 11044 16431 .also_non_np = 1, 11045 16432 .np = 3, 11046 16433 .tap = { 496 - 20, 4, 16 }, 11047 16434 }, 11048 16435 }; 11049 16436 11050 - static const struct cipher_testvec cast6_dec_tv_template[] = { 11051 - { 11052 - .key = "\x23\x42\xbb\x9e\xfa\x38\x54\x2c" 11053 - "\x0a\xf7\x56\x47\xf2\x9f\x61\x5d", 11054 - .klen = 16, 11055 - .input = "\xc8\x42\xa0\x89\x72\xb4\x3d\x20" 11056 - "\x83\x6c\x91\xd1\xb7\x53\x0f\x6b", 11057 - .ilen = 16, 11058 - .result = zeroed_string, 11059 - .rlen = 16, 11060 - }, { 11061 - .key = "\x23\x42\xbb\x9e\xfa\x38\x54\x2c" 11062 - "\xbe\xd0\xac\x83\x94\x0a\xc2\x98" 11063 - "\xba\xc7\x7a\x77\x17\x94\x28\x63", 11064 - .klen = 24, 11065 - .input = "\x1b\x38\x6c\x02\x10\xdc\xad\xcb" 11066 - "\xdd\x0e\x41\xaa\x08\xa7\xa7\xe8", 11067 - .ilen = 16, 11068 - .result = zeroed_string, 11069 - .rlen = 16, 11070 - }, { 11071 - .key = "\x23\x42\xbb\x9e\xfa\x38\x54\x2c" 11072 - "\xbe\xd0\xac\x83\x94\x0a\xc2\x98" 11073 - "\x8d\x7c\x47\xce\x26\x49\x08\x46" 11074 - "\x1c\xc1\xb5\x13\x7a\xe6\xb6\x04", 11075 - .klen = 32, 11076 - .input = "\x4f\x6a\x20\x38\x28\x68\x97\xb9" 11077 - "\xc9\x87\x01\x36\x55\x33\x17\xfa", 11078 - .ilen = 16, 11079 - .result = zeroed_string, 11080 - .rlen = 16, 11081 - }, { /* Generated from TF test vectors */ 11082 - .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 11083 - "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" 11084 - "\x27\x04\xE1\x27\x04\xE1\xBE\x9B" 11085 - "\x78\xBE\x9B\x78\x55\x32\x0F\x55", 11086 - .klen = 32, 11087 - .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F" 11088 - "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64", 11089 - .input = "\xC3\x70\x22\x32\xF5\x80\xCB\x54" 11090 - "\xFC\x30\xE0\xF6\xEB\x39\x57\xA6" 11091 - "\xB6\xB9\xC5\xA4\x91\x55\x14\x97" 11092 - "\xC1\x20\xFF\x6C\x5C\xF0\x67\xEA" 11093 - "\x2F\xED\xD8\xC9\xFB\x38\x3F\xFE" 11094 - "\x93\xBE\xDC\x00\xD3\x7F\xAD\x4C" 11095 - "\x5A\x08\x92\xD1\x47\x0C\xFA\x6C" 11096 - "\xD0\x6A\x99\x10\x72\xF8\x47\x62" 11097 - "\x81\x42\xF8\xD8\xF5\xBB\x94\x08" 11098 - "\xAA\x97\xA2\x8B\x69\xB3\xD2\x7E" 11099 - "\xBC\xB5\x00\x0C\xE5\x44\x4B\x58" 11100 - "\xE8\x63\xDC\xB3\xC4\xE5\x23\x12" 11101 - "\x5A\x72\x85\x47\x8B\xEC\x9F\x26" 11102 - "\x84\xB6\xED\x10\x33\x63\x9B\x5F" 11103 - "\x4D\x53\xEE\x94\x45\x8B\x60\x58" 11104 - "\x86\x20\xF9\x1E\x82\x08\x3E\x58" 11105 - "\x60\x1B\x34\x19\x02\xBE\x4E\x09" 11106 - "\xBB\x7C\x15\xCC\x60\x27\x55\x7A" 11107 - "\x12\xB8\xD8\x08\x89\x3C\xA6\xF3" 11108 - "\xF1\xDD\xA7\x07\xA3\x12\x85\x28" 11109 - "\xE9\x57\xAC\x80\x0C\x5C\x0F\x3A" 11110 - "\x5D\xC2\x91\xC7\x90\xE4\x8C\x43" 11111 - "\x92\xE4\x7C\x26\x69\x4D\x83\x68" 11112 - "\x14\x96\x42\x47\xBD\xA9\xE4\x8A" 11113 - "\x33\x19\xEB\x54\x8E\x0D\x4B\x6E" 11114 - "\x91\x51\xB5\x36\x08\xDE\x1C\x06" 11115 - "\x03\xBD\xDE\x81\x26\xF7\x99\xC2" 11116 - "\xBA\xF7\x6D\x87\x0D\xE4\xA6\xCF" 11117 - "\xC1\xF5\x27\x05\xB8\x02\x57\x72" 11118 - "\xE6\x42\x13\x0B\xC6\x47\x05\x74" 11119 - "\x24\x15\xF7\x0D\xC2\x23\x9D\xB9" 11120 - "\x3C\x77\x18\x93\xBA\xB4\xFC\x8C" 11121 - "\x98\x82\x67\x67\xB4\xD7\xD3\x43" 11122 - "\x23\x08\x02\xB7\x9B\x99\x05\xFB" 11123 - "\xD3\xB5\x00\x0A\xA9\x9D\x66\xD6" 11124 - "\x2E\x49\x58\xD0\xA8\x57\x29\x7F" 11125 - "\x0A\x0E\x7D\xFC\x92\x83\xCC\x67" 11126 - "\xA2\xB1\x70\x3A\x8F\x87\x4A\x8D" 11127 - "\x17\xE2\x58\x2B\x88\x0D\x68\x62" 11128 - "\xBF\x35\xD1\x6F\xC0\xF0\x18\x62" 11129 - "\xB2\xC7\x2D\x58\xC7\x16\xDE\x08" 11130 - "\xEB\x84\x1D\x25\xA7\x38\x94\x06" 11131 - "\x93\x9D\xF8\xFE\x88\x71\xE7\x84" 11132 - "\x2C\xA0\x38\xA3\x1D\x48\xCF\x29" 11133 - "\x0B\xBC\xD8\x50\x99\x1A\x26\xFB" 11134 - "\x8E\x75\x3D\x73\xEB\x6A\xED\x29" 11135 - "\xE0\x8E\xED\xFC\xFE\x6F\xF6\xBA" 11136 - "\x41\xE2\x10\x4C\x01\x8B\x69\x2B" 11137 - "\x25\x3F\x4D\x70\x7B\x92\xD6\x3B" 11138 - "\xAC\xF9\x77\x18\xD9\x6A\x30\xA6" 11139 - "\x2E\xFA\x30\xFF\xC8\xD5\x1D\x06" 11140 - "\x59\x28\x1D\x86\x43\x04\x5D\x3B" 11141 - "\x99\x4C\x04\x5A\x21\x17\x8B\x76" 11142 - "\x8F\x72\xCB\xA1\x9C\x29\x4C\xC3" 11143 - "\x65\xA2\x58\x2A\xC5\x66\x24\xBF" 11144 - "\xBA\xE6\x0C\xDD\x34\x24\x74\xC8" 11145 - "\x84\x0A\x66\x2C\xBE\x8F\x32\xA9" 11146 - "\xE7\xE4\xA1\xD7\xDA\xAB\x23\x1E" 11147 - "\xEB\xEE\x6C\x94\x6F\x9C\x2E\xD1" 11148 - "\x49\x2C\xF3\xD4\x90\xCC\x93\x4C" 11149 - "\x84\x52\x6D\x68\xDE\xC6\x64\xB2" 11150 - "\x11\x74\x93\x57\xB4\x7E\xC6\x00", 11151 - .ilen = 496, 11152 - .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 11153 - "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 11154 - "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 11155 - "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" 11156 - "\x1E\x92\x29\xC0\x34\xCB\x62\xF9" 11157 - "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48" 11158 - "\xDF\x76\x0D\x81\x18\xAF\x23\xBA" 11159 - "\x51\xE8\x5C\xF3\x8A\x21\x95\x2C" 11160 - "\xC3\x37\xCE\x65\xFC\x70\x07\x9E" 11161 - "\x12\xA9\x40\xD7\x4B\xE2\x79\x10" 11162 - "\x84\x1B\xB2\x26\xBD\x54\xEB\x5F" 11163 - "\xF6\x8D\x01\x98\x2F\xC6\x3A\xD1" 11164 - "\x68\xFF\x73\x0A\xA1\x15\xAC\x43" 11165 - "\xDA\x4E\xE5\x7C\x13\x87\x1E\xB5" 11166 - "\x29\xC0\x57\xEE\x62\xF9\x90\x04" 11167 - "\x9B\x32\xC9\x3D\xD4\x6B\x02\x76" 11168 - "\x0D\xA4\x18\xAF\x46\xDD\x51\xE8" 11169 - "\x7F\x16\x8A\x21\xB8\x2C\xC3\x5A" 11170 - "\xF1\x65\xFC\x93\x07\x9E\x35\xCC" 11171 - "\x40\xD7\x6E\x05\x79\x10\xA7\x1B" 11172 - "\xB2\x49\xE0\x54\xEB\x82\x19\x8D" 11173 - "\x24\xBB\x2F\xC6\x5D\xF4\x68\xFF" 11174 - "\x96\x0A\xA1\x38\xCF\x43\xDA\x71" 11175 - "\x08\x7C\x13\xAA\x1E\xB5\x4C\xE3" 11176 - "\x57\xEE\x85\x1C\x90\x27\xBE\x32" 11177 - "\xC9\x60\xF7\x6B\x02\x99\x0D\xA4" 11178 - "\x3B\xD2\x46\xDD\x74\x0B\x7F\x16" 11179 - "\xAD\x21\xB8\x4F\xE6\x5A\xF1\x88" 11180 - "\x1F\x93\x2A\xC1\x35\xCC\x63\xFA" 11181 - "\x6E\x05\x9C\x10\xA7\x3E\xD5\x49" 11182 - "\xE0\x77\x0E\x82\x19\xB0\x24\xBB" 11183 - "\x52\xE9\x5D\xF4\x8B\x22\x96\x2D" 11184 - "\xC4\x38\xCF\x66\xFD\x71\x08\x9F" 11185 - "\x13\xAA\x41\xD8\x4C\xE3\x7A\x11" 11186 - "\x85\x1C\xB3\x27\xBE\x55\xEC\x60" 11187 - "\xF7\x8E\x02\x99\x30\xC7\x3B\xD2" 11188 - "\x69\x00\x74\x0B\xA2\x16\xAD\x44" 11189 - "\xDB\x4F\xE6\x7D\x14\x88\x1F\xB6" 11190 - "\x2A\xC1\x58\xEF\x63\xFA\x91\x05" 11191 - "\x9C\x33\xCA\x3E\xD5\x6C\x03\x77" 11192 - "\x0E\xA5\x19\xB0\x47\xDE\x52\xE9" 11193 - "\x80\x17\x8B\x22\xB9\x2D\xC4\x5B" 11194 - "\xF2\x66\xFD\x94\x08\x9F\x36\xCD" 11195 - "\x41\xD8\x6F\x06\x7A\x11\xA8\x1C" 11196 - "\xB3\x4A\xE1\x55\xEC\x83\x1A\x8E" 11197 - "\x25\xBC\x30\xC7\x5E\xF5\x69\x00" 11198 - "\x97\x0B\xA2\x39\xD0\x44\xDB\x72" 11199 - "\x09\x7D\x14\xAB\x1F\xB6\x4D\xE4" 11200 - "\x58\xEF\x86\x1D\x91\x28\xBF\x33" 11201 - "\xCA\x61\xF8\x6C\x03\x9A\x0E\xA5" 11202 - "\x3C\xD3\x47\xDE\x75\x0C\x80\x17" 11203 - "\xAE\x22\xB9\x50\xE7\x5B\xF2\x89" 11204 - "\x20\x94\x2B\xC2\x36\xCD\x64\xFB" 11205 - "\x6F\x06\x9D\x11\xA8\x3F\xD6\x4A" 11206 - "\xE1\x78\x0F\x83\x1A\xB1\x25\xBC" 11207 - "\x53\xEA\x5E\xF5\x8C\x00\x97\x2E" 11208 - "\xC5\x39\xD0\x67\xFE\x72\x09\xA0" 11209 - "\x14\xAB\x42\xD9\x4D\xE4\x7B\x12" 11210 - "\x86\x1D\xB4\x28\xBF\x56\xED\x61" 11211 - "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 11212 - "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 11213 - "\xDC\x50\xE7\x7E\x15\x89\x20\xB7", 11214 - .rlen = 496, 11215 - .also_non_np = 1, 11216 - .np = 3, 11217 - .tap = { 496 - 20, 4, 16 }, 11218 - }, 11219 - }; 11220 - 11221 - static const struct cipher_testvec cast6_cbc_enc_tv_template[] = { 16437 + static const struct cipher_testvec cast6_cbc_tv_template[] = { 11222 16438 { /* Generated from TF test vectors */ 11223 16439 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 11224 16440 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" ··· 11056 16614 .klen = 32, 11057 16615 .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F" 11058 16616 "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64", 11059 - .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 16617 + .ptext = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 11060 16618 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 11061 16619 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 11062 16620 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" ··· 11118 16676 "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 11119 16677 "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 11120 16678 "\xDC\x50\xE7\x7E\x15\x89\x20\xB7", 11121 - .ilen = 496, 11122 - .result = "\xDF\x77\x68\x96\xC7\xBA\xF8\xE2" 16679 + .ctext = "\xDF\x77\x68\x96\xC7\xBA\xF8\xE2" 11123 16680 "\x0E\x24\x99\x1A\xAA\xF3\xC6\x9F" 11124 16681 "\xA0\x73\xB3\x70\xC3\x68\x64\x70" 11125 16682 "\xAD\x33\x02\xFB\x88\x74\xAA\x78" ··· 11180 16739 "\xC5\x5C\xAD\xB6\x07\xB6\x84\xF3" 11181 16740 "\x4D\x59\x7D\xC5\x28\x69\xFA\x92" 11182 16741 "\x22\x46\x89\x2D\x0F\x2B\x08\x24", 11183 - .rlen = 496, 16742 + .len = 496, 11184 16743 .also_non_np = 1, 11185 16744 .np = 3, 11186 16745 .tap = { 496 - 20, 4, 16 }, 11187 16746 }, 11188 16747 }; 11189 16748 11190 - static const struct cipher_testvec cast6_cbc_dec_tv_template[] = { 16749 + static const struct cipher_testvec cast6_ctr_tv_template[] = { 11191 16750 { /* Generated from TF test vectors */ 11192 16751 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 11193 16752 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" ··· 11196 16755 .klen = 32, 11197 16756 .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F" 11198 16757 "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64", 11199 - .input = "\xDF\x77\x68\x96\xC7\xBA\xF8\xE2" 11200 - "\x0E\x24\x99\x1A\xAA\xF3\xC6\x9F" 11201 - "\xA0\x73\xB3\x70\xC3\x68\x64\x70" 11202 - "\xAD\x33\x02\xFB\x88\x74\xAA\x78" 11203 - "\xC7\x47\x1A\x18\x61\x2D\xAC\x9F" 11204 - "\x7E\x6F\xDF\x05\x13\x76\xA6\x72" 11205 - "\xB7\x13\x09\x0F\x7D\x38\xDF\x25" 11206 - "\x4E\xFD\x50\x45\xFA\x35\x6A\xC0" 11207 - "\x57\x95\xE1\x21\x26\x10\x9A\x21" 11208 - "\xA1\x8A\x51\x05\xD1\xB1\x78\x35" 11209 - "\x98\xF5\xAE\xC0\xC1\x8B\x94\xFF" 11210 - "\xD0\x69\x3F\x42\xC2\x01\xA7\x9B" 11211 - "\x23\x16\x47\x72\x81\x13\x3A\x72" 11212 - "\xEC\xD9\x40\x88\x00\x9C\xB0\xA8" 11213 - "\x9C\xAC\xCE\x11\x73\x7B\x63\x3E" 11214 - "\xA3\x63\x98\x7D\x35\xE4\xD9\x83" 11215 - "\xE2\xD0\x52\x87\x0C\x1F\xB0\xB3" 11216 - "\x41\x1A\x93\x8D\x76\x31\x9F\xF2" 11217 - "\xFE\x09\xA3\x8F\x22\x6A\x3B\xB9" 11218 - "\x6C\x9E\xE4\xA1\xA0\xC4\xE7\xA1" 11219 - "\x21\x9C\x1A\xCA\x65\xDE\x44\x03" 11220 - "\x99\xF2\xD2\x39\xE3\x3F\x0F\x37" 11221 - "\x53\x50\x23\xA4\x81\x6E\xDA\xFB" 11222 - "\xF8\x7B\x01\xD7\xB2\x32\x9C\xB8" 11223 - "\xB1\x0E\x99\x17\xB5\x38\xF9\xD7" 11224 - "\x86\x2D\x6E\x94\x5C\x99\x9D\xB3" 11225 - "\xD3\x63\x4B\x2A\x7D\x44\x6A\xB2" 11226 - "\xC1\x03\xE6\x5A\x37\xD8\x64\x18" 11227 - "\xAA\x32\xCE\x29\xED\xC0\xA2\xCB" 11228 - "\x8D\xAF\xCD\xBE\x8F\xB6\xEC\xB4" 11229 - "\x89\x05\x81\x6E\x71\x4F\xC3\x28" 11230 - "\x10\xC1\x62\xC4\x41\xE9\xD2\x39" 11231 - "\xF3\x22\x39\x12\x2C\xC2\x95\x2D" 11232 - "\xBF\x93\x58\x4B\x04\xD1\x8D\x57" 11233 - "\xAE\xEB\x60\x03\x56\x35\xAD\x5A" 11234 - "\xE9\xC3\xFF\x4E\x31\xE1\x37\xF8" 11235 - "\x7D\xEE\x65\x8A\xB6\x88\x1A\x3E" 11236 - "\x07\x09\x82\xBA\xF0\x80\x8A\xD0" 11237 - "\xA0\x3F\x6A\xE9\x24\x87\x19\x65" 11238 - "\x73\x3F\x12\x91\x47\x54\xBA\x39" 11239 - "\x30\x5B\x1E\xE5\xC2\xF9\x3F\xEF" 11240 - "\xD6\x75\xF9\xB8\x7C\x8B\x05\x76" 11241 - "\xEE\xB7\x08\x25\x4B\xB6\x7B\x47" 11242 - "\x72\xC0\x4C\xD4\xDA\xE0\x75\xF1" 11243 - "\x7C\xE8\x94\x9E\x16\x6E\xB8\x12" 11244 - "\xA1\xC1\x6E\x3B\x1C\x59\x41\x2D" 11245 - "\x23\xFA\x7D\x77\xB8\x46\x75\xFE" 11246 - "\x4F\x10\xD3\x09\x60\xA1\x36\x96" 11247 - "\x5B\xC2\xDC\x6E\x84\x7D\x9B\x14" 11248 - "\x80\x21\x83\x58\x3C\x76\xFD\x28" 11249 - "\x1D\xF9\x93\x13\xD7\x0E\x62\x14" 11250 - "\x5A\xC5\x4E\x08\xA5\x56\xA4\x3C" 11251 - "\x68\x93\x44\x70\xDF\xCF\x4A\x51" 11252 - "\x0B\x81\x29\x41\xE5\x62\x4D\x36" 11253 - "\xB3\xEA\x94\xA6\xB9\xDD\x3F\x09" 11254 - "\x62\x34\xA0\x6A\x7E\x7D\xF5\xF6" 11255 - "\x01\x91\xB4\x27\xDA\x59\xD6\x17" 11256 - "\x56\x4D\x82\x62\x37\xA3\x48\x01" 11257 - "\x99\x91\x77\xB2\x08\x6B\x2C\x37" 11258 - "\xC5\x5C\xAD\xB6\x07\xB6\x84\xF3" 11259 - "\x4D\x59\x7D\xC5\x28\x69\xFA\x92" 11260 - "\x22\x46\x89\x2D\x0F\x2B\x08\x24", 11261 - .ilen = 496, 11262 - .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 11263 - "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 11264 - "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 11265 - "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" 11266 - "\x1E\x92\x29\xC0\x34\xCB\x62\xF9" 11267 - "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48" 11268 - "\xDF\x76\x0D\x81\x18\xAF\x23\xBA" 11269 - "\x51\xE8\x5C\xF3\x8A\x21\x95\x2C" 11270 - "\xC3\x37\xCE\x65\xFC\x70\x07\x9E" 11271 - "\x12\xA9\x40\xD7\x4B\xE2\x79\x10" 11272 - "\x84\x1B\xB2\x26\xBD\x54\xEB\x5F" 11273 - "\xF6\x8D\x01\x98\x2F\xC6\x3A\xD1" 11274 - "\x68\xFF\x73\x0A\xA1\x15\xAC\x43" 11275 - "\xDA\x4E\xE5\x7C\x13\x87\x1E\xB5" 11276 - "\x29\xC0\x57\xEE\x62\xF9\x90\x04" 11277 - "\x9B\x32\xC9\x3D\xD4\x6B\x02\x76" 11278 - "\x0D\xA4\x18\xAF\x46\xDD\x51\xE8" 11279 - "\x7F\x16\x8A\x21\xB8\x2C\xC3\x5A" 11280 - "\xF1\x65\xFC\x93\x07\x9E\x35\xCC" 11281 - "\x40\xD7\x6E\x05\x79\x10\xA7\x1B" 11282 - "\xB2\x49\xE0\x54\xEB\x82\x19\x8D" 11283 - "\x24\xBB\x2F\xC6\x5D\xF4\x68\xFF" 11284 - "\x96\x0A\xA1\x38\xCF\x43\xDA\x71" 11285 - "\x08\x7C\x13\xAA\x1E\xB5\x4C\xE3" 11286 - "\x57\xEE\x85\x1C\x90\x27\xBE\x32" 11287 - "\xC9\x60\xF7\x6B\x02\x99\x0D\xA4" 11288 - "\x3B\xD2\x46\xDD\x74\x0B\x7F\x16" 11289 - "\xAD\x21\xB8\x4F\xE6\x5A\xF1\x88" 11290 - "\x1F\x93\x2A\xC1\x35\xCC\x63\xFA" 11291 - "\x6E\x05\x9C\x10\xA7\x3E\xD5\x49" 11292 - "\xE0\x77\x0E\x82\x19\xB0\x24\xBB" 11293 - "\x52\xE9\x5D\xF4\x8B\x22\x96\x2D" 11294 - "\xC4\x38\xCF\x66\xFD\x71\x08\x9F" 11295 - "\x13\xAA\x41\xD8\x4C\xE3\x7A\x11" 11296 - "\x85\x1C\xB3\x27\xBE\x55\xEC\x60" 11297 - "\xF7\x8E\x02\x99\x30\xC7\x3B\xD2" 11298 - "\x69\x00\x74\x0B\xA2\x16\xAD\x44" 11299 - "\xDB\x4F\xE6\x7D\x14\x88\x1F\xB6" 11300 - "\x2A\xC1\x58\xEF\x63\xFA\x91\x05" 11301 - "\x9C\x33\xCA\x3E\xD5\x6C\x03\x77" 11302 - "\x0E\xA5\x19\xB0\x47\xDE\x52\xE9" 11303 - "\x80\x17\x8B\x22\xB9\x2D\xC4\x5B" 11304 - "\xF2\x66\xFD\x94\x08\x9F\x36\xCD" 11305 - "\x41\xD8\x6F\x06\x7A\x11\xA8\x1C" 11306 - "\xB3\x4A\xE1\x55\xEC\x83\x1A\x8E" 11307 - "\x25\xBC\x30\xC7\x5E\xF5\x69\x00" 11308 - "\x97\x0B\xA2\x39\xD0\x44\xDB\x72" 11309 - "\x09\x7D\x14\xAB\x1F\xB6\x4D\xE4" 11310 - "\x58\xEF\x86\x1D\x91\x28\xBF\x33" 11311 - "\xCA\x61\xF8\x6C\x03\x9A\x0E\xA5" 11312 - "\x3C\xD3\x47\xDE\x75\x0C\x80\x17" 11313 - "\xAE\x22\xB9\x50\xE7\x5B\xF2\x89" 11314 - "\x20\x94\x2B\xC2\x36\xCD\x64\xFB" 11315 - "\x6F\x06\x9D\x11\xA8\x3F\xD6\x4A" 11316 - "\xE1\x78\x0F\x83\x1A\xB1\x25\xBC" 11317 - "\x53\xEA\x5E\xF5\x8C\x00\x97\x2E" 11318 - "\xC5\x39\xD0\x67\xFE\x72\x09\xA0" 11319 - "\x14\xAB\x42\xD9\x4D\xE4\x7B\x12" 11320 - "\x86\x1D\xB4\x28\xBF\x56\xED\x61" 11321 - "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 11322 - "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 11323 - "\xDC\x50\xE7\x7E\x15\x89\x20\xB7", 11324 - .rlen = 496, 11325 - .also_non_np = 1, 11326 - .np = 3, 11327 - .tap = { 496 - 20, 4, 16 }, 11328 - }, 11329 - }; 11330 - 11331 - static const struct cipher_testvec cast6_ctr_enc_tv_template[] = { 11332 - { /* Generated from TF test vectors */ 11333 - .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 11334 - "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" 11335 - "\x27\x04\xE1\x27\x04\xE1\xBE\x9B" 11336 - "\x78\xBE\x9B\x78\x55\x32\x0F\x55", 11337 - .klen = 32, 11338 - .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F" 11339 - "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64", 11340 - .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 16758 + .ptext = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 11341 16759 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 11342 16760 "\x3A", 11343 - .ilen = 17, 11344 - .result = "\x26\x0A\xF1\xE2\x3F\x8A\xEF\xA3" 16761 + .ctext = "\x26\x0A\xF1\xE2\x3F\x8A\xEF\xA3" 11345 16762 "\x53\x9A\x5E\x1B\x2A\x1A\xC6\x0A" 11346 16763 "\x57", 11347 - .rlen = 17, 16764 + .len = 17, 11348 16765 }, { /* Generated from TF test vectors */ 11349 16766 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 11350 16767 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" ··· 11211 16912 .klen = 32, 11212 16913 .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F" 11213 16914 "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64", 11214 - .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 16915 + .ptext = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 11215 16916 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 11216 16917 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 11217 16918 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" ··· 11273 16974 "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 11274 16975 "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 11275 16976 "\xDC\x50\xE7\x7E\x15\x89\x20\xB7", 11276 - .ilen = 496, 11277 - .result = "\x26\x0A\xF1\xE2\x3F\x8A\xEF\xA3" 16977 + .ctext = "\x26\x0A\xF1\xE2\x3F\x8A\xEF\xA3" 11278 16978 "\x53\x9A\x5E\x1B\x2A\x1A\xC6\x0A" 11279 16979 "\x57\xA3\xEF\x47\x2A\xE8\x88\xA7" 11280 16980 "\x3C\xD0\xEC\xB9\x94\x50\x7D\x56" ··· 11335 17037 "\x9B\x66\x8D\x32\xBA\x81\x34\x87" 11336 17038 "\x0E\x74\x33\x30\x62\xB9\x89\xDF" 11337 17039 "\xF9\xC5\xDD\x27\xB3\x39\xCB\xCB", 11338 - .rlen = 496, 17040 + .len = 496, 11339 17041 .also_non_np = 1, 11340 17042 .np = 3, 11341 17043 .tap = { 496 - 20, 4, 16 }, 11342 17044 }, 11343 17045 }; 11344 17046 11345 - static const struct cipher_testvec cast6_ctr_dec_tv_template[] = { 11346 - { /* Generated from TF test vectors */ 11347 - .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 11348 - "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" 11349 - "\x27\x04\xE1\x27\x04\xE1\xBE\x9B" 11350 - "\x78\xBE\x9B\x78\x55\x32\x0F\x55", 11351 - .klen = 32, 11352 - .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F" 11353 - "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64", 11354 - .input = "\x26\x0A\xF1\xE2\x3F\x8A\xEF\xA3" 11355 - "\x53\x9A\x5E\x1B\x2A\x1A\xC6\x0A" 11356 - "\x57", 11357 - .ilen = 17, 11358 - .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 11359 - "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 11360 - "\x3A", 11361 - .rlen = 17, 11362 - }, { /* Generated from TF test vectors */ 11363 - .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 11364 - "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" 11365 - "\x27\x04\xE1\x27\x04\xE1\xBE\x9B" 11366 - "\x78\xBE\x9B\x78\x55\x32\x0F\x55", 11367 - .klen = 32, 11368 - .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F" 11369 - "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64", 11370 - .input = "\x26\x0A\xF1\xE2\x3F\x8A\xEF\xA3" 11371 - "\x53\x9A\x5E\x1B\x2A\x1A\xC6\x0A" 11372 - "\x57\xA3\xEF\x47\x2A\xE8\x88\xA7" 11373 - "\x3C\xD0\xEC\xB9\x94\x50\x7D\x56" 11374 - "\xBC\xE1\xC1\xF5\xE1\xEE\x12\xF8" 11375 - "\x4F\x03\x82\x3A\x93\x6B\x4C\xD3" 11376 - "\xE3\xF3\xFA\xC2\x23\x55\x98\x20" 11377 - "\x49\x76\x9B\x6B\xC1\x23\xBF\xE5" 11378 - "\xD4\xC4\x2F\x61\xE1\x67\x2A\x30" 11379 - "\x6F\x29\xCA\x54\xF8\x1B\xA6\x7D" 11380 - "\x66\x45\xEE\xC8\x19\xBE\x50\xF0" 11381 - "\x5F\x65\xF8\x1E\x4D\x07\x87\xD9" 11382 - "\xD3\xD9\x1B\x09\x89\xFD\x42\xC5" 11383 - "\xDB\xEB\x86\xF1\x67\x04\x0F\x5C" 11384 - "\x81\xDF\x82\x12\xC7\x4C\x1B\x07" 11385 - "\xDE\xE6\xFA\x29\x86\xD1\xB0\xBA" 11386 - "\x3D\x6A\x69\x76\xEC\x0F\xB4\xE6" 11387 - "\xCD\xA7\xF8\xA8\xB8\xE0\x33\xF5" 11388 - "\x49\x61\x22\x52\x64\x8C\x46\x41" 11389 - "\x1F\x48\x5F\x4F\xA2\x89\x36\x17" 11390 - "\x20\xF8\x2F\x8F\x4B\xFA\xF2\xC0" 11391 - "\x1E\x18\xA2\xF8\xB7\x6D\x98\xE3" 11392 - "\x00\x14\x15\x59\xC1\x30\x64\xAF" 11393 - "\xA8\x01\x38\xAB\xD4\x8B\xEC\x7C" 11394 - "\x44\x9A\xC6\x2C\x2E\x2B\x2B\xF4" 11395 - "\x02\x37\xC4\x69\xEF\x36\xC1\xF3" 11396 - "\xA0\xFB\xFE\x29\xAD\x39\xCF\xD0" 11397 - "\x51\x73\xA3\x22\x42\x41\xAB\xD2" 11398 - "\x0F\x50\x14\xB9\x54\xD3\xD4\xFA" 11399 - "\xBF\xC9\xBB\xCE\xC4\x1D\x2D\xAF" 11400 - "\xC9\x3F\x07\x87\x42\x4B\x3A\x54" 11401 - "\x34\x8E\x37\xA3\x03\x6F\x65\x66" 11402 - "\xDB\x44\xC3\xE8\xD7\xDD\x7D\xDD" 11403 - "\x61\xB4\x2B\x80\xA3\x98\x13\xF5" 11404 - "\x5A\xD3\x34\x58\xC3\x6E\xF6\xB8" 11405 - "\x0A\xC6\x50\x01\x8E\xD5\x6C\x7D" 11406 - "\xFE\x16\xB6\xCF\xFC\x51\x40\xAE" 11407 - "\xB3\x15\xAC\x90\x6F\x0B\x28\x3A" 11408 - "\x60\x40\x38\x90\x20\x46\xC7\xB3" 11409 - "\x0B\x12\x6D\x3B\x15\x14\xF9\xF4" 11410 - "\x11\x41\x76\x6B\xB3\x60\x82\x3C" 11411 - "\x84\xFB\x08\x2E\x92\x25\xCB\x79" 11412 - "\x6F\x58\xC5\x94\x00\x00\x47\xB6" 11413 - "\x9E\xDC\x0F\x29\x70\x46\x20\x76" 11414 - "\x65\x75\x66\x5C\x00\x96\xB3\xE1" 11415 - "\x0B\xA7\x11\x8B\x2E\x61\x4E\x45" 11416 - "\x73\xFC\x91\xAB\x79\x41\x23\x14" 11417 - "\x13\xB6\x72\x6C\x46\xB3\x03\x11" 11418 - "\xE4\xF1\xEE\xC9\x7A\xCF\x96\x32" 11419 - "\xB6\xF0\x8B\x97\xB4\xCF\x82\xB7" 11420 - "\x15\x48\x44\x99\x09\xF6\xE0\xD7" 11421 - "\xBC\xF1\x5B\x91\x4F\x30\x22\xA2" 11422 - "\x45\xC4\x68\x55\xC2\xBE\xA7\xD2" 11423 - "\x12\x53\x35\x9C\xF9\xE7\x35\x5D" 11424 - "\x81\xE4\x86\x42\xC3\x58\xFB\xF0" 11425 - "\x38\x9B\x8E\x5A\xEF\x83\x33\x0F" 11426 - "\x00\x4E\x3F\x9F\xF5\x84\x62\xC4" 11427 - "\x19\x35\x88\x22\x45\x59\x0E\x8F" 11428 - "\xEC\x27\xDD\x4A\xA4\x1F\xBC\x41" 11429 - "\x9B\x66\x8D\x32\xBA\x81\x34\x87" 11430 - "\x0E\x74\x33\x30\x62\xB9\x89\xDF" 11431 - "\xF9\xC5\xDD\x27\xB3\x39\xCB\xCB", 11432 - .ilen = 496, 11433 - .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 11434 - "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 11435 - "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 11436 - "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" 11437 - "\x1E\x92\x29\xC0\x34\xCB\x62\xF9" 11438 - "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48" 11439 - "\xDF\x76\x0D\x81\x18\xAF\x23\xBA" 11440 - "\x51\xE8\x5C\xF3\x8A\x21\x95\x2C" 11441 - "\xC3\x37\xCE\x65\xFC\x70\x07\x9E" 11442 - "\x12\xA9\x40\xD7\x4B\xE2\x79\x10" 11443 - "\x84\x1B\xB2\x26\xBD\x54\xEB\x5F" 11444 - "\xF6\x8D\x01\x98\x2F\xC6\x3A\xD1" 11445 - "\x68\xFF\x73\x0A\xA1\x15\xAC\x43" 11446 - "\xDA\x4E\xE5\x7C\x13\x87\x1E\xB5" 11447 - "\x29\xC0\x57\xEE\x62\xF9\x90\x04" 11448 - "\x9B\x32\xC9\x3D\xD4\x6B\x02\x76" 11449 - "\x0D\xA4\x18\xAF\x46\xDD\x51\xE8" 11450 - "\x7F\x16\x8A\x21\xB8\x2C\xC3\x5A" 11451 - "\xF1\x65\xFC\x93\x07\x9E\x35\xCC" 11452 - "\x40\xD7\x6E\x05\x79\x10\xA7\x1B" 11453 - "\xB2\x49\xE0\x54\xEB\x82\x19\x8D" 11454 - "\x24\xBB\x2F\xC6\x5D\xF4\x68\xFF" 11455 - "\x96\x0A\xA1\x38\xCF\x43\xDA\x71" 11456 - "\x08\x7C\x13\xAA\x1E\xB5\x4C\xE3" 11457 - "\x57\xEE\x85\x1C\x90\x27\xBE\x32" 11458 - "\xC9\x60\xF7\x6B\x02\x99\x0D\xA4" 11459 - "\x3B\xD2\x46\xDD\x74\x0B\x7F\x16" 11460 - "\xAD\x21\xB8\x4F\xE6\x5A\xF1\x88" 11461 - "\x1F\x93\x2A\xC1\x35\xCC\x63\xFA" 11462 - "\x6E\x05\x9C\x10\xA7\x3E\xD5\x49" 11463 - "\xE0\x77\x0E\x82\x19\xB0\x24\xBB" 11464 - "\x52\xE9\x5D\xF4\x8B\x22\x96\x2D" 11465 - "\xC4\x38\xCF\x66\xFD\x71\x08\x9F" 11466 - "\x13\xAA\x41\xD8\x4C\xE3\x7A\x11" 11467 - "\x85\x1C\xB3\x27\xBE\x55\xEC\x60" 11468 - "\xF7\x8E\x02\x99\x30\xC7\x3B\xD2" 11469 - "\x69\x00\x74\x0B\xA2\x16\xAD\x44" 11470 - "\xDB\x4F\xE6\x7D\x14\x88\x1F\xB6" 11471 - "\x2A\xC1\x58\xEF\x63\xFA\x91\x05" 11472 - "\x9C\x33\xCA\x3E\xD5\x6C\x03\x77" 11473 - "\x0E\xA5\x19\xB0\x47\xDE\x52\xE9" 11474 - "\x80\x17\x8B\x22\xB9\x2D\xC4\x5B" 11475 - "\xF2\x66\xFD\x94\x08\x9F\x36\xCD" 11476 - "\x41\xD8\x6F\x06\x7A\x11\xA8\x1C" 11477 - "\xB3\x4A\xE1\x55\xEC\x83\x1A\x8E" 11478 - "\x25\xBC\x30\xC7\x5E\xF5\x69\x00" 11479 - "\x97\x0B\xA2\x39\xD0\x44\xDB\x72" 11480 - "\x09\x7D\x14\xAB\x1F\xB6\x4D\xE4" 11481 - "\x58\xEF\x86\x1D\x91\x28\xBF\x33" 11482 - "\xCA\x61\xF8\x6C\x03\x9A\x0E\xA5" 11483 - "\x3C\xD3\x47\xDE\x75\x0C\x80\x17" 11484 - "\xAE\x22\xB9\x50\xE7\x5B\xF2\x89" 11485 - "\x20\x94\x2B\xC2\x36\xCD\x64\xFB" 11486 - "\x6F\x06\x9D\x11\xA8\x3F\xD6\x4A" 11487 - "\xE1\x78\x0F\x83\x1A\xB1\x25\xBC" 11488 - "\x53\xEA\x5E\xF5\x8C\x00\x97\x2E" 11489 - "\xC5\x39\xD0\x67\xFE\x72\x09\xA0" 11490 - "\x14\xAB\x42\xD9\x4D\xE4\x7B\x12" 11491 - "\x86\x1D\xB4\x28\xBF\x56\xED\x61" 11492 - "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 11493 - "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 11494 - "\xDC\x50\xE7\x7E\x15\x89\x20\xB7", 11495 - .rlen = 496, 11496 - .also_non_np = 1, 11497 - .np = 3, 11498 - .tap = { 496 - 20, 4, 16 }, 11499 - }, 11500 - }; 11501 - 11502 - static const struct cipher_testvec cast6_lrw_enc_tv_template[] = { 17047 + static const struct cipher_testvec cast6_lrw_tv_template[] = { 11503 17048 { /* Generated from TF test vectors */ 11504 17049 .key = "\xf8\xd4\x76\xff\xd6\x46\xee\x6c" 11505 17050 "\x23\x84\xcb\x1c\x77\xd6\x19\x5d" ··· 11353 17212 .klen = 48, 11354 17213 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 11355 17214 "\x00\x00\x00\x00\x00\x00\x00\x01", 11356 - .input = "\x05\x11\xb7\x18\xab\xc6\x2d\xac" 17215 + .ptext = "\x05\x11\xb7\x18\xab\xc6\x2d\xac" 11357 17216 "\x70\x5d\xf6\x22\x94\xcd\xe5\x6c" 11358 17217 "\x17\x6b\xf6\x1c\xf0\xf3\x6e\xf8" 11359 17218 "\x50\x38\x1f\x71\x49\xb6\x57\xd6" ··· 11417 17276 "\xa4\xc7\xa8\xb4\xf6\x13\x03\xf6" 11418 17277 "\xe9\x2e\xc4\x29\x0f\x84\xdb\xc4" 11419 17278 "\x21\xc4\xc2\x75\x67\x89\x37\x0a", 11420 - .ilen = 512, 11421 - .result = "\x55\x25\x09\x8B\xB5\xD5\xF8\xBF" 17279 + .ctext = "\x55\x25\x09\x8B\xB5\xD5\xF8\xBF" 11422 17280 "\x37\x4A\xFE\x3C\x47\xD8\xE6\xEB" 11423 17281 "\xCA\xA4\x9B\xB0\xAB\x6D\x64\xCA" 11424 17282 "\x58\xB6\x73\xF0\xD7\x52\x34\xEF" ··· 11481 17341 "\xC0\xD5\x33\x11\x56\xDE\xDC\xF5" 11482 17342 "\x8D\xD9\xCD\x3B\x22\x67\x18\xC7" 11483 17343 "\xC4\xF5\x99\x61\xBC\xBB\x5B\x46", 11484 - .rlen = 512, 17344 + .len = 512, 11485 17345 .also_non_np = 1, 11486 17346 .np = 3, 11487 17347 .tap = { 512 - 20, 4, 16 }, 11488 17348 }, 11489 17349 }; 11490 17350 11491 - static const struct cipher_testvec cast6_lrw_dec_tv_template[] = { 11492 - { /* Generated from TF test vectors */ 11493 - .key = "\xf8\xd4\x76\xff\xd6\x46\xee\x6c" 11494 - "\x23\x84\xcb\x1c\x77\xd6\x19\x5d" 11495 - "\xfe\xf1\xa9\xf3\x7b\xbc\x8d\x21" 11496 - "\xa7\x9c\x21\xf8\xcb\x90\x02\x89" 11497 - "\xa8\x45\x34\x8e\xc8\xc5\xb5\xf1" 11498 - "\x26\xf5\x0e\x76\xfe\xfd\x1b\x1e", 11499 - .klen = 48, 11500 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 11501 - "\x00\x00\x00\x00\x00\x00\x00\x01", 11502 - .input = "\x55\x25\x09\x8B\xB5\xD5\xF8\xBF" 11503 - "\x37\x4A\xFE\x3C\x47\xD8\xE6\xEB" 11504 - "\xCA\xA4\x9B\xB0\xAB\x6D\x64\xCA" 11505 - "\x58\xB6\x73\xF0\xD7\x52\x34\xEF" 11506 - "\xFB\x3E\x96\x81\xB7\x71\x34\xA4" 11507 - "\x55\x20\xBE\x39\x5A\x2B\xF9\xD1" 11508 - "\x65\x0B\xDA\xD3\x7E\xB3\xA6\xF7" 11509 - "\x2E\x0B\x5A\x52\xDB\x39\x8C\x9B" 11510 - "\x61\x17\x5F\xAF\xB6\x5A\xC8\x08" 11511 - "\xA7\xB7\x2A\x11\x7C\x97\x38\x9D" 11512 - "\x59\x0E\x66\x59\x5E\xD8\x8B\xCE" 11513 - "\x70\xE0\xC3\x42\xB0\x8C\x0F\xBA" 11514 - "\xB2\x0D\x81\xB6\xBE\x61\x1C\x2D" 11515 - "\x7E\xEA\x91\x25\xAC\xEC\xF8\x28" 11516 - "\x80\x1D\xF0\x30\xBA\x62\x77\x7D" 11517 - "\xDB\x15\x69\xDF\xFA\x2A\x81\x64" 11518 - "\x95\x5B\xA4\x7F\x3E\x4F\xE3\x30" 11519 - "\xB0\x5C\xC2\x05\xF8\xF0\x29\xE7" 11520 - "\x0A\xA0\x66\xB2\x5D\x0F\x39\x2B" 11521 - "\xB4\xB3\x00\xA9\xD0\xAB\x63\x61" 11522 - "\x5E\xDB\xFC\x11\x74\x25\x96\x65" 11523 - "\xE8\xE2\x34\x57\x77\x15\x5E\x70" 11524 - "\xFF\x10\x90\xC3\x64\xF0\x11\x0A" 11525 - "\x63\x3A\xD3\x55\x92\x15\x4B\x0C" 11526 - "\xC7\x08\x89\x17\x3B\x99\xAD\x63" 11527 - "\xE7\x06\xDF\x52\xBC\x15\x64\x45" 11528 - "\x9D\x7A\xFB\x69\xBC\x2D\x6E\xA9" 11529 - "\x35\xD9\xD8\xF5\x0C\xC4\xA2\x23" 11530 - "\x9C\x18\x8B\xA8\x8C\xFE\xF8\x0E" 11531 - "\xBD\xAB\x60\x1A\x51\x17\x54\x27" 11532 - "\xB6\xE8\xBE\x0F\xA9\xA5\x82\x19" 11533 - "\x2F\x6F\x20\xA7\x47\xED\x74\x6C" 11534 - "\x4E\xC1\xF8\x8C\x14\xF3\xBB\x1F" 11535 - "\xED\x4D\x8F\x7C\x37\xEF\x19\xA1" 11536 - "\x07\x16\xDE\x76\xCC\x5E\x94\x02" 11537 - "\xFB\xBF\xE4\x81\x50\xCE\xFC\x0F" 11538 - "\x9E\xCF\x3D\xF6\x67\x00\xBF\xA7" 11539 - "\x6E\x21\x58\x36\x06\xDE\xB3\xD4" 11540 - "\xA2\xFA\xD8\x4E\xE0\xB9\x7F\x23" 11541 - "\x51\x21\x2B\x32\x68\xAA\xF8\xA8" 11542 - "\x93\x08\xB5\x6D\xE6\x43\x2C\xB7" 11543 - "\x31\xB2\x0F\xD0\xA2\x51\xC0\x25" 11544 - "\x30\xC7\x10\x3F\x97\x27\x01\x8E" 11545 - "\xFA\xD8\x4F\x78\xD8\x2E\x1D\xEB" 11546 - "\xA1\x37\x52\x0F\x7B\x5E\x87\xA8" 11547 - "\x22\xE2\xE6\x92\xA7\x5F\x11\x32" 11548 - "\xCC\x93\x34\xFC\xD1\x7E\xAE\x54" 11549 - "\xBC\x6A\x1B\x91\xD1\x2E\x21\xEC" 11550 - "\x5D\xF1\xC4\xF1\x55\x20\xBF\xE5" 11551 - "\x96\x3D\x69\x91\x20\x4E\xF2\x61" 11552 - "\xDA\x77\xFE\xEE\xC3\x74\x57\x2A" 11553 - "\x78\x39\xB0\xE0\xCF\x12\x56\xD6" 11554 - "\x05\xDC\xF9\x19\x66\x44\x1D\xF9" 11555 - "\x82\x37\xD4\xC2\x60\xB6\x31\xDF" 11556 - "\x0C\xAF\xBC\x8B\x55\x9A\xC8\x2D" 11557 - "\xAB\xA7\x88\x7B\x41\xE8\x29\xC9" 11558 - "\x9B\x8D\xA7\x00\x86\x25\xB6\x14" 11559 - "\xF5\x13\x73\xD7\x4B\x6B\x83\xF3" 11560 - "\xAF\x96\x00\xE4\xB7\x3C\x65\xA6" 11561 - "\x15\xB7\x94\x7D\x4E\x70\x4C\x75" 11562 - "\xF3\xB4\x02\xA9\x17\x1C\x7A\x0A" 11563 - "\xC0\xD5\x33\x11\x56\xDE\xDC\xF5" 11564 - "\x8D\xD9\xCD\x3B\x22\x67\x18\xC7" 11565 - "\xC4\xF5\x99\x61\xBC\xBB\x5B\x46", 11566 - .ilen = 512, 11567 - .result = "\x05\x11\xb7\x18\xab\xc6\x2d\xac" 11568 - "\x70\x5d\xf6\x22\x94\xcd\xe5\x6c" 11569 - "\x17\x6b\xf6\x1c\xf0\xf3\x6e\xf8" 11570 - "\x50\x38\x1f\x71\x49\xb6\x57\xd6" 11571 - "\x8f\xcb\x8d\x6b\xe3\xa6\x29\x90" 11572 - "\xfe\x2a\x62\x82\xae\x6d\x8b\xf6" 11573 - "\xad\x1e\x9e\x20\x5f\x38\xbe\x04" 11574 - "\xda\x10\x8e\xed\xa2\xa4\x87\xab" 11575 - "\xda\x6b\xb4\x0c\x75\xba\xd3\x7c" 11576 - "\xc9\xac\x42\x31\x95\x7c\xc9\x04" 11577 - "\xeb\xd5\x6e\x32\x69\x8a\xdb\xa6" 11578 - "\x15\xd7\x3f\x4f\x2f\x66\x69\x03" 11579 - "\x9c\x1f\x54\x0f\xde\x1f\xf3\x65" 11580 - "\x4c\x96\x12\xed\x7c\x92\x03\x01" 11581 - "\x6f\xbc\x35\x93\xac\xf1\x27\xf1" 11582 - "\xb4\x96\x82\x5a\x5f\xb0\xa0\x50" 11583 - "\x89\xa4\x8e\x66\x44\x85\xcc\xfd" 11584 - "\x33\x14\x70\xe3\x96\xb2\xc3\xd3" 11585 - "\xbb\x54\x5a\x1a\xf9\x74\xa2\xc5" 11586 - "\x2d\x64\x75\xdd\xb4\x54\xe6\x74" 11587 - "\x8c\xd3\x9d\x9e\x86\xab\x51\x53" 11588 - "\xb7\x93\x3e\x6f\xd0\x4e\x2c\x40" 11589 - "\xf6\xa8\x2e\x3e\x9d\xf4\x66\xa5" 11590 - "\x76\x12\x73\x44\x1a\x56\xd7\x72" 11591 - "\x88\xcd\x21\x8c\x4c\x0f\xfe\xda" 11592 - "\x95\xe0\x3a\xa6\xa5\x84\x46\xcd" 11593 - "\xd5\x3e\x9d\x3a\xe2\x67\xe6\x60" 11594 - "\x1a\xe2\x70\x85\x58\xc2\x1b\x09" 11595 - "\xe1\xd7\x2c\xca\xad\xa8\x8f\xf9" 11596 - "\xac\xb3\x0e\xdb\xca\x2e\xe2\xb8" 11597 - "\x51\x71\xd9\x3c\x6c\xf1\x56\xf8" 11598 - "\xea\x9c\xf1\xfb\x0c\xe6\xb7\x10" 11599 - "\x1c\xf8\xa9\x7c\xe8\x53\x35\xc1" 11600 - "\x90\x3e\x76\x4a\x74\xa4\x21\x2c" 11601 - "\xf6\x2c\x4e\x0f\x94\x3a\x88\x2e" 11602 - "\x41\x09\x6a\x33\x7d\xf6\xdd\x3f" 11603 - "\x8d\x23\x31\x74\x84\xeb\x88\x6e" 11604 - "\xcc\xb9\xbc\x22\x83\x19\x07\x22" 11605 - "\xa5\x2d\xdf\xa5\xf3\x80\x85\x78" 11606 - "\x84\x39\x6a\x6d\x6a\x99\x4f\xa5" 11607 - "\x15\xfe\x46\xb0\xe4\x6c\xa5\x41" 11608 - "\x3c\xce\x8f\x42\x60\x71\xa7\x75" 11609 - "\x08\x40\x65\x8a\x82\xbf\xf5\x43" 11610 - "\x71\x96\xa9\x4d\x44\x8a\x20\xbe" 11611 - "\xfa\x4d\xbb\xc0\x7d\x31\x96\x65" 11612 - "\xe7\x75\xe5\x3e\xfd\x92\x3b\xc9" 11613 - "\x55\xbb\x16\x7e\xf7\xc2\x8c\xa4" 11614 - "\x40\x1d\xe5\xef\x0e\xdf\xe4\x9a" 11615 - "\x62\x73\x65\xfd\x46\x63\x25\x3d" 11616 - "\x2b\xaf\xe5\x64\xfe\xa5\x5c\xcf" 11617 - "\x24\xf3\xb4\xac\x64\xba\xdf\x4b" 11618 - "\xc6\x96\x7d\x81\x2d\x8d\x97\xf7" 11619 - "\xc5\x68\x77\x84\x32\x2b\xcc\x85" 11620 - "\x74\x96\xf0\x12\x77\x61\xb9\xeb" 11621 - "\x71\xaa\x82\xcb\x1c\xdb\x89\xc8" 11622 - "\xc6\xb5\xe3\x5c\x7d\x39\x07\x24" 11623 - "\xda\x39\x87\x45\xc0\x2b\xbb\x01" 11624 - "\xac\xbc\x2a\x5c\x7f\xfc\xe8\xce" 11625 - "\x6d\x9c\x6f\xed\xd3\xc1\xa1\xd6" 11626 - "\xc5\x55\xa9\x66\x2f\xe1\xc8\x32" 11627 - "\xa6\x5d\xa4\x3a\x98\x73\xe8\x45" 11628 - "\xa4\xc7\xa8\xb4\xf6\x13\x03\xf6" 11629 - "\xe9\x2e\xc4\x29\x0f\x84\xdb\xc4" 11630 - "\x21\xc4\xc2\x75\x67\x89\x37\x0a", 11631 - .rlen = 512, 11632 - .also_non_np = 1, 11633 - .np = 3, 11634 - .tap = { 512 - 20, 4, 16 }, 11635 - }, 11636 - }; 11637 - 11638 - static const struct cipher_testvec cast6_xts_enc_tv_template[] = { 17351 + static const struct cipher_testvec cast6_xts_tv_template[] = { 11639 17352 { /* Generated from TF test vectors */ 11640 17353 .key = "\x27\x18\x28\x18\x28\x45\x90\x45" 11641 17354 "\x23\x53\x60\x28\x74\x71\x35\x26" ··· 11501 17508 .klen = 64, 11502 17509 .iv = "\xff\x00\x00\x00\x00\x00\x00\x00" 11503 17510 "\x00\x00\x00\x00\x00\x00\x00\x00", 11504 - .input = "\x00\x01\x02\x03\x04\x05\x06\x07" 17511 + .ptext = "\x00\x01\x02\x03\x04\x05\x06\x07" 11505 17512 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 11506 17513 "\x10\x11\x12\x13\x14\x15\x16\x17" 11507 17514 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" ··· 11565 17572 "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 11566 17573 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 11567 17574 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 11568 - .ilen = 512, 11569 - .result = "\xDE\x6F\x22\xA5\xE8\x39\xE8\x78" 17575 + .ctext = "\xDE\x6F\x22\xA5\xE8\x39\xE8\x78" 11570 17576 "\x88\x5A\x4F\x8D\x82\x76\x52\x6D" 11571 17577 "\xB2\x41\x16\xF4\x2B\xA6\xEB\xF6" 11572 17578 "\xE2\xC5\x62\x8D\x61\xA1\x01\xED" ··· 11629 17637 "\x45\x72\x80\x17\x81\xBD\x9D\x62" 11630 17638 "\xA1\xAC\xE8\xCF\xC6\x74\xCF\xDC" 11631 17639 "\x22\x60\x4E\xE8\xA4\x5D\x85\xB9", 11632 - .rlen = 512, 17640 + .len = 512, 11633 17641 .also_non_np = 1, 11634 17642 .np = 3, 11635 17643 .tap = { 512 - 20, 4, 16 }, 11636 17644 }, 11637 17645 }; 11638 - 11639 - static const struct cipher_testvec cast6_xts_dec_tv_template[] = { 11640 - { /* Generated from TF test vectors */ 11641 - .key = "\x27\x18\x28\x18\x28\x45\x90\x45" 11642 - "\x23\x53\x60\x28\x74\x71\x35\x26" 11643 - "\x62\x49\x77\x57\x24\x70\x93\x69" 11644 - "\x99\x59\x57\x49\x66\x96\x76\x27" 11645 - "\x31\x41\x59\x26\x53\x58\x97\x93" 11646 - "\x23\x84\x62\x64\x33\x83\x27\x95" 11647 - "\x02\x88\x41\x97\x16\x93\x99\x37" 11648 - "\x51\x05\x82\x09\x74\x94\x45\x92", 11649 - .klen = 64, 11650 - .iv = "\xff\x00\x00\x00\x00\x00\x00\x00" 11651 - "\x00\x00\x00\x00\x00\x00\x00\x00", 11652 - .input = "\xDE\x6F\x22\xA5\xE8\x39\xE8\x78" 11653 - "\x88\x5A\x4F\x8D\x82\x76\x52\x6D" 11654 - "\xB2\x41\x16\xF4\x2B\xA6\xEB\xF6" 11655 - "\xE2\xC5\x62\x8D\x61\xA1\x01\xED" 11656 - "\xD9\x38\x01\xC1\x43\x63\x4E\x88" 11657 - "\xC9\x4B\x5A\x88\x80\xB7\x5C\x71" 11658 - "\x47\xEE\x11\xD8\xB7\x2D\x5D\x13" 11659 - "\x1A\xB1\x68\x5B\x61\xA7\xA9\x81" 11660 - "\x8B\x83\xA1\x6A\xAA\x36\xD6\xB6" 11661 - "\x60\x54\x09\x32\xFE\x6A\x76\x2E" 11662 - "\x28\xFF\xD5\xD6\xDD\x1D\x45\x7D" 11663 - "\xF0\x8B\xF3\x32\x4E\x6C\x12\xCB" 11664 - "\xB8\x25\x70\xF8\x40\xBC\x90\x1B" 11665 - "\x11\xC3\x59\xAF\xF0\x2F\x92\xDD" 11666 - "\xD3\x3B\xCF\x60\xA1\x78\x94\x57" 11667 - "\xAF\x76\xC1\x67\xA6\x3C\xCD\x98" 11668 - "\xB1\xF7\x27\xB9\xA3\xBD\x10\xEA" 11669 - "\xCD\x8B\xC2\xF2\x14\xF2\xB2\x67" 11670 - "\x05\xDD\x1D\x58\x6E\x2F\x95\x08" 11671 - "\x3A\xF8\x78\x76\x82\x56\xA7\xEC" 11672 - "\x51\x4B\x85\x77\xC2\x4C\x4A\x34" 11673 - "\x71\x38\x17\x91\x44\xE8\xFC\x65" 11674 - "\x99\x0D\x52\x91\xEE\xF8\xEF\x27" 11675 - "\x2A\x9E\x6E\x78\xC4\x26\x87\xF4" 11676 - "\x8A\xF0\x2D\x04\xE8\x14\x92\x5D" 11677 - "\x59\x22\x9B\x29\x5C\x18\xF0\xC3" 11678 - "\x47\xF3\x76\xD8\xE4\xF3\x1B\xD1" 11679 - "\x70\xA3\x0D\xB5\x70\x02\x1D\xA3" 11680 - "\x91\x3B\x49\x73\x18\xAB\xD4\xC9" 11681 - "\xC3\x1E\xEF\x1F\xFE\xD5\x59\x8A" 11682 - "\xD7\xF6\xC9\x71\x67\x79\xD7\x0E" 11683 - "\xBE\x1F\x8E\xEC\x55\x7E\x4F\x24" 11684 - "\xE6\x87\xEA\xFE\x96\x25\x67\x8E" 11685 - "\x93\x03\xFA\xFF\xCE\xAF\xB2\x3C" 11686 - "\x6F\xEB\x57\xFB\xD3\x28\x87\xA9" 11687 - "\xCE\xC2\xF5\x9C\xC6\x67\xB5\x97" 11688 - "\x49\xF7\x04\xCB\xEF\x84\x98\x33" 11689 - "\xAF\x38\xD3\x04\x1C\x24\x71\x38" 11690 - "\xC7\x71\xDD\x43\x0D\x12\x4A\x18" 11691 - "\xBA\xC4\xAF\xBA\xB2\x5B\xEB\x95" 11692 - "\x02\x43\x5D\xCE\x19\xCC\xCD\x66" 11693 - "\x91\x0B\x8C\x7F\x51\xC4\xBF\x3C" 11694 - "\x8B\xF1\xCC\xAA\x29\xD7\x87\xCB" 11695 - "\x3E\xC5\xF3\xC9\x75\xE8\xA3\x5B" 11696 - "\x30\x45\xA9\xB7\xAF\x80\x64\x6F" 11697 - "\x75\x4A\xA7\xC0\x6D\x19\x6B\xDE" 11698 - "\x17\xDE\x6D\xEA\x87\x9F\x95\xAE" 11699 - "\xF5\x3C\xEE\x54\xB8\x27\x84\xF8" 11700 - "\x97\xA3\xE1\x6F\x38\x24\x34\x88" 11701 - "\xCE\xBD\x32\x52\xE0\x00\x6C\x94" 11702 - "\xC9\xD7\x5D\x37\x81\x33\x2E\x7F" 11703 - "\x4F\x7E\x2E\x0D\x94\xBD\xEA\x59" 11704 - "\x34\x39\xA8\x35\x12\xB7\xBC\xAC" 11705 - "\xEA\x52\x9C\x78\x02\x6D\x92\x36" 11706 - "\xFB\x59\x2B\xA4\xEA\x7B\x1B\x83" 11707 - "\xE1\x4D\x5E\x2A\x7E\x92\xB1\x64" 11708 - "\xDE\xE0\x27\x4B\x0A\x6F\x4C\xE3" 11709 - "\xB0\xEB\x31\xE4\x69\x95\xAB\x35" 11710 - "\x8B\x2C\xF5\x6B\x7F\xF1\xA2\x82" 11711 - "\xF8\xD9\x47\x82\xA9\x82\x03\x91" 11712 - "\x69\x1F\xBE\x4C\xE7\xC7\x34\x2F" 11713 - "\x45\x72\x80\x17\x81\xBD\x9D\x62" 11714 - "\xA1\xAC\xE8\xCF\xC6\x74\xCF\xDC" 11715 - "\x22\x60\x4E\xE8\xA4\x5D\x85\xB9", 11716 - .ilen = 512, 11717 - .result = "\x00\x01\x02\x03\x04\x05\x06\x07" 11718 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 11719 - "\x10\x11\x12\x13\x14\x15\x16\x17" 11720 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" 11721 - "\x20\x21\x22\x23\x24\x25\x26\x27" 11722 - "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f" 11723 - "\x30\x31\x32\x33\x34\x35\x36\x37" 11724 - "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f" 11725 - "\x40\x41\x42\x43\x44\x45\x46\x47" 11726 - "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f" 11727 - "\x50\x51\x52\x53\x54\x55\x56\x57" 11728 - "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f" 11729 - "\x60\x61\x62\x63\x64\x65\x66\x67" 11730 - "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f" 11731 - "\x70\x71\x72\x73\x74\x75\x76\x77" 11732 - "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f" 11733 - "\x80\x81\x82\x83\x84\x85\x86\x87" 11734 - "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f" 11735 - "\x90\x91\x92\x93\x94\x95\x96\x97" 11736 - "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f" 11737 - "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7" 11738 - "\xa8\xa9\xaa\xab\xac\xad\xae\xaf" 11739 - "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7" 11740 - "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf" 11741 - "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7" 11742 - "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf" 11743 - "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7" 11744 - "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf" 11745 - "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7" 11746 - "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 11747 - "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 11748 - "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff" 11749 - "\x00\x01\x02\x03\x04\x05\x06\x07" 11750 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 11751 - "\x10\x11\x12\x13\x14\x15\x16\x17" 11752 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" 11753 - "\x20\x21\x22\x23\x24\x25\x26\x27" 11754 - "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f" 11755 - "\x30\x31\x32\x33\x34\x35\x36\x37" 11756 - "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f" 11757 - "\x40\x41\x42\x43\x44\x45\x46\x47" 11758 - "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f" 11759 - "\x50\x51\x52\x53\x54\x55\x56\x57" 11760 - "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f" 11761 - "\x60\x61\x62\x63\x64\x65\x66\x67" 11762 - "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f" 11763 - "\x70\x71\x72\x73\x74\x75\x76\x77" 11764 - "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f" 11765 - "\x80\x81\x82\x83\x84\x85\x86\x87" 11766 - "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f" 11767 - "\x90\x91\x92\x93\x94\x95\x96\x97" 11768 - "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f" 11769 - "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7" 11770 - "\xa8\xa9\xaa\xab\xac\xad\xae\xaf" 11771 - "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7" 11772 - "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf" 11773 - "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7" 11774 - "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf" 11775 - "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7" 11776 - "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf" 11777 - "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7" 11778 - "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 11779 - "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 11780 - "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 11781 - .rlen = 512, 11782 - .also_non_np = 1, 11783 - .np = 3, 11784 - .tap = { 512 - 20, 4, 16 }, 11785 - }, 11786 - }; 11787 - 11788 17646 11789 17647 /* 11790 17648 * AES test vectors. 11791 17649 */ 11792 - static const struct cipher_testvec aes_enc_tv_template[] = { 17650 + static const struct cipher_testvec aes_tv_template[] = { 11793 17651 { /* From FIPS-197 */ 11794 17652 .key = "\x00\x01\x02\x03\x04\x05\x06\x07" 11795 17653 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f", 11796 17654 .klen = 16, 11797 - .input = "\x00\x11\x22\x33\x44\x55\x66\x77" 17655 + .ptext = "\x00\x11\x22\x33\x44\x55\x66\x77" 11798 17656 "\x88\x99\xaa\xbb\xcc\xdd\xee\xff", 11799 - .ilen = 16, 11800 - .result = "\x69\xc4\xe0\xd8\x6a\x7b\x04\x30" 17657 + .ctext = "\x69\xc4\xe0\xd8\x6a\x7b\x04\x30" 11801 17658 "\xd8\xcd\xb7\x80\x70\xb4\xc5\x5a", 11802 - .rlen = 16, 17659 + .len = 16, 11803 17660 }, { 11804 17661 .key = "\x00\x01\x02\x03\x04\x05\x06\x07" 11805 17662 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 11806 17663 "\x10\x11\x12\x13\x14\x15\x16\x17", 11807 17664 .klen = 24, 11808 - .input = "\x00\x11\x22\x33\x44\x55\x66\x77" 17665 + .ptext = "\x00\x11\x22\x33\x44\x55\x66\x77" 11809 17666 "\x88\x99\xaa\xbb\xcc\xdd\xee\xff", 11810 - .ilen = 16, 11811 - .result = "\xdd\xa9\x7c\xa4\x86\x4c\xdf\xe0" 17667 + .ctext = "\xdd\xa9\x7c\xa4\x86\x4c\xdf\xe0" 11812 17668 "\x6e\xaf\x70\xa0\xec\x0d\x71\x91", 11813 - .rlen = 16, 17669 + .len = 16, 11814 17670 }, { 11815 17671 .key = "\x00\x01\x02\x03\x04\x05\x06\x07" 11816 17672 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 11817 17673 "\x10\x11\x12\x13\x14\x15\x16\x17" 11818 17674 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f", 11819 17675 .klen = 32, 11820 - .input = "\x00\x11\x22\x33\x44\x55\x66\x77" 17676 + .ptext = "\x00\x11\x22\x33\x44\x55\x66\x77" 11821 17677 "\x88\x99\xaa\xbb\xcc\xdd\xee\xff", 11822 - .ilen = 16, 11823 - .result = "\x8e\xa2\xb7\xca\x51\x67\x45\xbf" 17678 + .ctext = "\x8e\xa2\xb7\xca\x51\x67\x45\xbf" 11824 17679 "\xea\xfc\x49\x90\x4b\x49\x60\x89", 11825 - .rlen = 16, 17680 + .len = 16, 11826 17681 }, { /* Generated with Crypto++ */ 11827 17682 .key = "\xA6\xC9\x83\xA6\xC9\xEC\x0F\x32" 11828 17683 "\x55\x0F\x32\x55\x78\x9B\xBE\x78" 11829 17684 "\x9B\xBE\xE1\x04\x27\xE1\x04\x27" 11830 17685 "\x4A\x6D\x90\x4A\x6D\x90\xB3\xD6", 11831 17686 .klen = 32, 11832 - .input = "\x50\xB9\x22\xAE\x17\x80\x0C\x75" 17687 + .ptext = "\x50\xB9\x22\xAE\x17\x80\x0C\x75" 11833 17688 "\xDE\x47\xD3\x3C\xA5\x0E\x9A\x03" 11834 17689 "\x6C\xF8\x61\xCA\x33\xBF\x28\x91" 11835 17690 "\x1D\x86\xEF\x58\xE4\x4D\xB6\x1F" ··· 11738 17899 "\xAE\x17\xA3\x0C\x75\x01\x6A\xD3" 11739 17900 "\x3C\xC8\x31\x9A\x03\x8F\xF8\x61" 11740 17901 "\xED\x56\xBF\x28\xB4\x1D\x86\x12", 11741 - .ilen = 496, 11742 - .result = "\x71\x73\xF7\xDB\x24\x93\x21\x6D" 17902 + .ctext = "\x71\x73\xF7\xDB\x24\x93\x21\x6D" 11743 17903 "\x61\x1E\xBB\x63\x42\x79\xDB\x64" 11744 17904 "\x6F\x82\xC0\xCA\xA3\x9B\xFA\x0B" 11745 17905 "\xD9\x08\xC7\x4A\x90\xAE\x8F\x5F" ··· 11800 17962 "\x88\xE6\x68\x47\xE3\x2B\xC5\xFF" 11801 17963 "\x09\x79\xA0\x43\x5C\x0D\x08\x58" 11802 17964 "\x17\xBB\xC0\x6B\x62\x3F\x56\xE9", 11803 - .rlen = 496, 17965 + .len = 496, 11804 17966 .also_non_np = 1, 11805 17967 .np = 3, 11806 17968 .tap = { 496 - 20, 4, 16 }, 11807 17969 }, 11808 17970 }; 11809 17971 11810 - static const struct cipher_testvec aes_dec_tv_template[] = { 11811 - { /* From FIPS-197 */ 11812 - .key = "\x00\x01\x02\x03\x04\x05\x06\x07" 11813 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f", 11814 - .klen = 16, 11815 - .input = "\x69\xc4\xe0\xd8\x6a\x7b\x04\x30" 11816 - "\xd8\xcd\xb7\x80\x70\xb4\xc5\x5a", 11817 - .ilen = 16, 11818 - .result = "\x00\x11\x22\x33\x44\x55\x66\x77" 11819 - "\x88\x99\xaa\xbb\xcc\xdd\xee\xff", 11820 - .rlen = 16, 11821 - }, { 11822 - .key = "\x00\x01\x02\x03\x04\x05\x06\x07" 11823 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 11824 - "\x10\x11\x12\x13\x14\x15\x16\x17", 11825 - .klen = 24, 11826 - .input = "\xdd\xa9\x7c\xa4\x86\x4c\xdf\xe0" 11827 - "\x6e\xaf\x70\xa0\xec\x0d\x71\x91", 11828 - .ilen = 16, 11829 - .result = "\x00\x11\x22\x33\x44\x55\x66\x77" 11830 - "\x88\x99\xaa\xbb\xcc\xdd\xee\xff", 11831 - .rlen = 16, 11832 - }, { 11833 - .key = "\x00\x01\x02\x03\x04\x05\x06\x07" 11834 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 11835 - "\x10\x11\x12\x13\x14\x15\x16\x17" 11836 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f", 11837 - .klen = 32, 11838 - .input = "\x8e\xa2\xb7\xca\x51\x67\x45\xbf" 11839 - "\xea\xfc\x49\x90\x4b\x49\x60\x89", 11840 - .ilen = 16, 11841 - .result = "\x00\x11\x22\x33\x44\x55\x66\x77" 11842 - "\x88\x99\xaa\xbb\xcc\xdd\xee\xff", 11843 - .rlen = 16, 11844 - }, { /* Generated with Crypto++ */ 11845 - .key = "\xA6\xC9\x83\xA6\xC9\xEC\x0F\x32" 11846 - "\x55\x0F\x32\x55\x78\x9B\xBE\x78" 11847 - "\x9B\xBE\xE1\x04\x27\xE1\x04\x27" 11848 - "\x4A\x6D\x90\x4A\x6D\x90\xB3\xD6", 11849 - .klen = 32, 11850 - .input = "\x71\x73\xF7\xDB\x24\x93\x21\x6D" 11851 - "\x61\x1E\xBB\x63\x42\x79\xDB\x64" 11852 - "\x6F\x82\xC0\xCA\xA3\x9B\xFA\x0B" 11853 - "\xD9\x08\xC7\x4A\x90\xAE\x8F\x5F" 11854 - "\x5E\x06\xF0\x5F\x31\x51\x18\x37" 11855 - "\x45\xD7\xCA\x3A\xFD\x6C\x3F\xE1" 11856 - "\xDD\x8D\x22\x65\x2B\x00\x50\xCE" 11857 - "\xBA\x28\x67\xD7\xCE\x0E\x0D\xEA" 11858 - "\x78\x69\x7F\xAE\x8F\x8B\x69\x37" 11859 - "\x75\xE0\xDC\x96\xE0\xB7\xF4\x09" 11860 - "\xCB\x6D\xA2\xFB\xDA\xAF\x09\xF8" 11861 - "\x81\x82\x27\xFA\x45\x9C\x29\xA4" 11862 - "\x22\x8B\x78\x69\x5B\x46\xF9\x39" 11863 - "\x1B\xCC\xF9\x1D\x09\xEB\xBC\x5C" 11864 - "\x41\x72\x51\x97\x1D\x07\x49\xA0" 11865 - "\x1B\x8E\x65\x4B\xB2\x6A\x12\x03" 11866 - "\x6A\x60\x95\xAC\xBD\xAC\x1A\x64" 11867 - "\xDE\x5A\xA5\xF0\x83\x2F\xCB\xCA" 11868 - "\x22\x74\xA6\x6C\x9B\x73\xCE\x3F" 11869 - "\xE1\x8B\x22\x17\x59\x0C\x47\x89" 11870 - "\x33\xA1\xD6\x47\x03\x19\x4F\xA8" 11871 - "\x67\x69\xF0\x5B\xF0\x20\xAD\x06" 11872 - "\x27\x81\x92\xD8\xC5\xBA\x98\x12" 11873 - "\xBE\x24\xB5\x2F\x75\x02\xC2\xAD" 11874 - "\x12\x2F\x07\x32\xEE\x39\xAF\x64" 11875 - "\x05\x8F\xB3\xD4\xEB\x1B\x46\x6E" 11876 - "\xD9\x21\xF9\xC4\xB7\xC9\x45\x68" 11877 - "\xB4\xA1\x74\x9F\x82\x47\xEB\xCC" 11878 - "\xBD\x0A\x14\x95\x0F\x8B\xA8\x2F" 11879 - "\x4B\x1B\xA7\xBF\x82\xA6\x43\x0C" 11880 - "\xB9\x39\x4A\xA8\x10\x6F\x50\x7B" 11881 - "\x25\xFB\x26\x81\xE0\x2F\xF0\x96" 11882 - "\x8D\x8B\xAC\x92\x0F\xF6\xED\x64" 11883 - "\x63\x29\x4C\x8E\x18\x13\xC5\xBF" 11884 - "\xFC\xA0\xD9\xBF\x7C\x3A\x0E\x29" 11885 - "\x6F\xD1\x6C\x6F\xA5\xDA\xBF\xB1" 11886 - "\x30\xEA\x44\x2D\xC3\x8F\x16\xE1" 11887 - "\x66\xFA\xA3\x21\x3E\xFC\x13\xCA" 11888 - "\xF0\xF6\xF0\x59\xBD\x8F\x38\x50" 11889 - "\x31\xCB\x69\x3F\x96\x15\xD6\xF5" 11890 - "\xAE\xFF\xF6\xAA\x41\x85\x4C\x10" 11891 - "\x58\xE3\xF9\x44\xE6\x28\xDA\x9A" 11892 - "\xDC\x6A\x80\x34\x73\x97\x1B\xC5" 11893 - "\xCA\x26\x16\x77\x0E\x60\xAB\x89" 11894 - "\x0F\x04\x27\xBD\xCE\x3E\x71\xB4" 11895 - "\xA0\xD7\x22\x7E\xDB\xEB\x24\x70" 11896 - "\x42\x71\x51\x78\x70\xB3\xE0\x3D" 11897 - "\x84\x8E\x8D\x7B\xD0\x6D\xEA\x92" 11898 - "\x11\x08\x42\x4F\xE5\xAD\x26\x92" 11899 - "\xD2\x00\xAE\xA8\xE3\x4B\x37\x47" 11900 - "\x22\xC1\x95\xC1\x63\x7F\xCB\x03" 11901 - "\xF3\xE3\xD7\x9D\x60\xC7\xBC\xEA" 11902 - "\x35\xA2\xFD\x45\x52\x39\x13\x6F" 11903 - "\xC1\x53\xF3\x53\xDF\x33\x84\xD7" 11904 - "\xD2\xC8\x37\xB0\x75\xE3\x41\x46" 11905 - "\xB3\xC7\x83\x2E\x8A\xBB\xA4\xE5" 11906 - "\x7F\x3C\xFD\x8B\xEB\xEA\x63\xBD" 11907 - "\xB7\x46\xE7\xBF\x09\x9C\x0D\x0F" 11908 - "\x40\x86\x7F\x51\xE1\x11\x9C\xCB" 11909 - "\x88\xE6\x68\x47\xE3\x2B\xC5\xFF" 11910 - "\x09\x79\xA0\x43\x5C\x0D\x08\x58" 11911 - "\x17\xBB\xC0\x6B\x62\x3F\x56\xE9", 11912 - .ilen = 496, 11913 - .result = "\x50\xB9\x22\xAE\x17\x80\x0C\x75" 11914 - "\xDE\x47\xD3\x3C\xA5\x0E\x9A\x03" 11915 - "\x6C\xF8\x61\xCA\x33\xBF\x28\x91" 11916 - "\x1D\x86\xEF\x58\xE4\x4D\xB6\x1F" 11917 - "\xAB\x14\x7D\x09\x72\xDB\x44\xD0" 11918 - "\x39\xA2\x0B\x97\x00\x69\xF5\x5E" 11919 - "\xC7\x30\xBC\x25\x8E\x1A\x83\xEC" 11920 - "\x55\xE1\x4A\xB3\x1C\xA8\x11\x7A" 11921 - "\x06\x6F\xD8\x41\xCD\x36\x9F\x08" 11922 - "\x94\xFD\x66\xF2\x5B\xC4\x2D\xB9" 11923 - "\x22\x8B\x17\x80\xE9\x52\xDE\x47" 11924 - "\xB0\x19\xA5\x0E\x77\x03\x6C\xD5" 11925 - "\x3E\xCA\x33\x9C\x05\x91\xFA\x63" 11926 - "\xEF\x58\xC1\x2A\xB6\x1F\x88\x14" 11927 - "\x7D\xE6\x4F\xDB\x44\xAD\x16\xA2" 11928 - "\x0B\x74\x00\x69\xD2\x3B\xC7\x30" 11929 - "\x99\x02\x8E\xF7\x60\xEC\x55\xBE" 11930 - "\x27\xB3\x1C\x85\x11\x7A\xE3\x4C" 11931 - "\xD8\x41\xAA\x13\x9F\x08\x71\xFD" 11932 - "\x66\xCF\x38\xC4\x2D\x96\x22\x8B" 11933 - "\xF4\x5D\xE9\x52\xBB\x24\xB0\x19" 11934 - "\x82\x0E\x77\xE0\x49\xD5\x3E\xA7" 11935 - "\x10\x9C\x05\x6E\xFA\x63\xCC\x35" 11936 - "\xC1\x2A\x93\x1F\x88\xF1\x5A\xE6" 11937 - "\x4F\xB8\x21\xAD\x16\x7F\x0B\x74" 11938 - "\xDD\x46\xD2\x3B\xA4\x0D\x99\x02" 11939 - "\x6B\xF7\x60\xC9\x32\xBE\x27\x90" 11940 - "\x1C\x85\xEE\x57\xE3\x4C\xB5\x1E" 11941 - "\xAA\x13\x7C\x08\x71\xDA\x43\xCF" 11942 - "\x38\xA1\x0A\x96\xFF\x68\xF4\x5D" 11943 - "\xC6\x2F\xBB\x24\x8D\x19\x82\xEB" 11944 - "\x54\xE0\x49\xB2\x1B\xA7\x10\x79" 11945 - "\x05\x6E\xD7\x40\xCC\x35\x9E\x07" 11946 - "\x93\xFC\x65\xF1\x5A\xC3\x2C\xB8" 11947 - "\x21\x8A\x16\x7F\xE8\x51\xDD\x46" 11948 - "\xAF\x18\xA4\x0D\x76\x02\x6B\xD4" 11949 - "\x3D\xC9\x32\x9B\x04\x90\xF9\x62" 11950 - "\xEE\x57\xC0\x29\xB5\x1E\x87\x13" 11951 - "\x7C\xE5\x4E\xDA\x43\xAC\x15\xA1" 11952 - "\x0A\x73\xFF\x68\xD1\x3A\xC6\x2F" 11953 - "\x98\x01\x8D\xF6\x5F\xEB\x54\xBD" 11954 - "\x26\xB2\x1B\x84\x10\x79\xE2\x4B" 11955 - "\xD7\x40\xA9\x12\x9E\x07\x70\xFC" 11956 - "\x65\xCE\x37\xC3\x2C\x95\x21\x8A" 11957 - "\xF3\x5C\xE8\x51\xBA\x23\xAF\x18" 11958 - "\x81\x0D\x76\xDF\x48\xD4\x3D\xA6" 11959 - "\x0F\x9B\x04\x6D\xF9\x62\xCB\x34" 11960 - "\xC0\x29\x92\x1E\x87\xF0\x59\xE5" 11961 - "\x4E\xB7\x20\xAC\x15\x7E\x0A\x73" 11962 - "\xDC\x45\xD1\x3A\xA3\x0C\x98\x01" 11963 - "\x6A\xF6\x5F\xC8\x31\xBD\x26\x8F" 11964 - "\x1B\x84\xED\x56\xE2\x4B\xB4\x1D" 11965 - "\xA9\x12\x7B\x07\x70\xD9\x42\xCE" 11966 - "\x37\xA0\x09\x95\xFE\x67\xF3\x5C" 11967 - "\xC5\x2E\xBA\x23\x8C\x18\x81\xEA" 11968 - "\x53\xDF\x48\xB1\x1A\xA6\x0F\x78" 11969 - "\x04\x6D\xD6\x3F\xCB\x34\x9D\x06" 11970 - "\x92\xFB\x64\xF0\x59\xC2\x2B\xB7" 11971 - "\x20\x89\x15\x7E\xE7\x50\xDC\x45" 11972 - "\xAE\x17\xA3\x0C\x75\x01\x6A\xD3" 11973 - "\x3C\xC8\x31\x9A\x03\x8F\xF8\x61" 11974 - "\xED\x56\xBF\x28\xB4\x1D\x86\x12", 11975 - .rlen = 496, 11976 - .also_non_np = 1, 11977 - .np = 3, 11978 - .tap = { 496 - 20, 4, 16 }, 11979 - }, 11980 - }; 11981 - 11982 - static const struct cipher_testvec aes_cbc_enc_tv_template[] = { 17972 + static const struct cipher_testvec aes_cbc_tv_template[] = { 11983 17973 { /* From RFC 3602 */ 11984 17974 .key = "\x06\xa9\x21\x40\x36\xb8\xa1\x5b" 11985 17975 "\x51\x2e\x03\xd5\x34\x12\x00\x06", 11986 17976 .klen = 16, 11987 17977 .iv = "\x3d\xaf\xba\x42\x9d\x9e\xb4\x30" 11988 17978 "\xb4\x22\xda\x80\x2c\x9f\xac\x41", 11989 - .input = "Single block msg", 11990 - .ilen = 16, 11991 - .result = "\xe3\x53\x77\x9c\x10\x79\xae\xb8" 17979 + .ptext = "Single block msg", 17980 + .ctext = "\xe3\x53\x77\x9c\x10\x79\xae\xb8" 11992 17981 "\x27\x08\x94\x2d\xbe\x77\x18\x1a", 11993 - .rlen = 16, 17982 + .len = 16, 11994 17983 .also_non_np = 1, 11995 17984 .np = 8, 11996 17985 .tap = { 3, 2, 3, 2, 3, 1, 1, 1 }, ··· 11827 18162 .klen = 16, 11828 18163 .iv = "\x56\x2e\x17\x99\x6d\x09\x3d\x28" 11829 18164 "\xdd\xb3\xba\x69\x5a\x2e\x6f\x58", 11830 - .input = "\x00\x01\x02\x03\x04\x05\x06\x07" 18165 + .ptext = "\x00\x01\x02\x03\x04\x05\x06\x07" 11831 18166 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 11832 18167 "\x10\x11\x12\x13\x14\x15\x16\x17" 11833 18168 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f", 11834 - .ilen = 32, 11835 - .result = "\xd2\x96\xcd\x94\xc2\xcc\xcf\x8a" 18169 + .ctext = "\xd2\x96\xcd\x94\xc2\xcc\xcf\x8a" 11836 18170 "\x3a\x86\x30\x28\xb5\xe1\xdc\x0a" 11837 18171 "\x75\x86\x60\x2d\x25\x3c\xff\xf9" 11838 18172 "\x1b\x82\x66\xbe\xa6\xd6\x1a\xb1", 11839 - .rlen = 32, 18173 + .len = 32, 11840 18174 }, { /* From NIST SP800-38A */ 11841 18175 .key = "\x8e\x73\xb0\xf7\xda\x0e\x64\x52" 11842 18176 "\xc8\x10\xf3\x2b\x80\x90\x79\xe5" ··· 11843 18179 .klen = 24, 11844 18180 .iv = "\x00\x01\x02\x03\x04\x05\x06\x07" 11845 18181 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f", 11846 - .input = "\x6b\xc1\xbe\xe2\x2e\x40\x9f\x96" 18182 + .ptext = "\x6b\xc1\xbe\xe2\x2e\x40\x9f\x96" 11847 18183 "\xe9\x3d\x7e\x11\x73\x93\x17\x2a" 11848 18184 "\xae\x2d\x8a\x57\x1e\x03\xac\x9c" 11849 18185 "\x9e\xb7\x6f\xac\x45\xaf\x8e\x51" ··· 11851 18187 "\xe5\xfb\xc1\x19\x1a\x0a\x52\xef" 11852 18188 "\xf6\x9f\x24\x45\xdf\x4f\x9b\x17" 11853 18189 "\xad\x2b\x41\x7b\xe6\x6c\x37\x10", 11854 - .ilen = 64, 11855 - .result = "\x4f\x02\x1d\xb2\x43\xbc\x63\x3d" 18190 + .ctext = "\x4f\x02\x1d\xb2\x43\xbc\x63\x3d" 11856 18191 "\x71\x78\x18\x3a\x9f\xa0\x71\xe8" 11857 18192 "\xb4\xd9\xad\xa9\xad\x7d\xed\xf4" 11858 18193 "\xe5\xe7\x38\x76\x3f\x69\x14\x5a" ··· 11859 18196 "\x7f\xa9\xba\xac\x3d\xf1\x02\xe0" 11860 18197 "\x08\xb0\xe2\x79\x88\x59\x88\x81" 11861 18198 "\xd9\x20\xa9\xe6\x4f\x56\x15\xcd", 11862 - .rlen = 64, 18199 + .len = 64, 11863 18200 }, { 11864 18201 .key = "\x60\x3d\xeb\x10\x15\xca\x71\xbe" 11865 18202 "\x2b\x73\xae\xf0\x85\x7d\x77\x81" ··· 11868 18205 .klen = 32, 11869 18206 .iv = "\x00\x01\x02\x03\x04\x05\x06\x07" 11870 18207 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f", 11871 - .input = "\x6b\xc1\xbe\xe2\x2e\x40\x9f\x96" 18208 + .ptext = "\x6b\xc1\xbe\xe2\x2e\x40\x9f\x96" 11872 18209 "\xe9\x3d\x7e\x11\x73\x93\x17\x2a" 11873 18210 "\xae\x2d\x8a\x57\x1e\x03\xac\x9c" 11874 18211 "\x9e\xb7\x6f\xac\x45\xaf\x8e\x51" ··· 11876 18213 "\xe5\xfb\xc1\x19\x1a\x0a\x52\xef" 11877 18214 "\xf6\x9f\x24\x45\xdf\x4f\x9b\x17" 11878 18215 "\xad\x2b\x41\x7b\xe6\x6c\x37\x10", 11879 - .ilen = 64, 11880 - .result = "\xf5\x8c\x4c\x04\xd6\xe5\xf1\xba" 18216 + .ctext = "\xf5\x8c\x4c\x04\xd6\xe5\xf1\xba" 11881 18217 "\x77\x9e\xab\xfb\x5f\x7b\xfb\xd6" 11882 18218 "\x9c\xfc\x4e\x96\x7e\xdb\x80\x8d" 11883 18219 "\x67\x9f\x77\x7b\xc6\x70\x2c\x7d" ··· 11884 18222 "\xa5\x30\xe2\x63\x04\x23\x14\x61" 11885 18223 "\xb2\xeb\x05\xe2\xc3\x9b\xe9\xfc" 11886 18224 "\xda\x6c\x19\x07\x8c\x6a\x9d\x1b", 11887 - .rlen = 64, 18225 + .len = 64, 11888 18226 }, { /* Generated with Crypto++ */ 11889 18227 .key = "\xC9\x83\xA6\xC9\xEC\x0F\x32\x55" 11890 18228 "\x0F\x32\x55\x78\x9B\xBE\x78\x9B" ··· 11893 18231 .klen = 32, 11894 18232 .iv = "\xE7\x82\x1D\xB8\x53\x11\xAC\x47" 11895 18233 "\xE2\x7D\x18\xD6\x71\x0C\xA7\x42", 11896 - .input = "\x50\xB9\x22\xAE\x17\x80\x0C\x75" 18234 + .ptext = "\x50\xB9\x22\xAE\x17\x80\x0C\x75" 11897 18235 "\xDE\x47\xD3\x3C\xA5\x0E\x9A\x03" 11898 18236 "\x6C\xF8\x61\xCA\x33\xBF\x28\x91" 11899 18237 "\x1D\x86\xEF\x58\xE4\x4D\xB6\x1F" ··· 11955 18293 "\xAE\x17\xA3\x0C\x75\x01\x6A\xD3" 11956 18294 "\x3C\xC8\x31\x9A\x03\x8F\xF8\x61" 11957 18295 "\xED\x56\xBF\x28\xB4\x1D\x86\x12", 11958 - .ilen = 496, 11959 - .result = "\xEA\x65\x8A\x19\xB0\x66\xC1\x3F" 18296 + .ctext = "\xEA\x65\x8A\x19\xB0\x66\xC1\x3F" 11960 18297 "\xCE\xF1\x97\x75\xC1\xFD\xB5\xAF" 11961 18298 "\x52\x65\xF7\xFF\xBC\xD8\x2D\x9F" 11962 18299 "\x2F\xB9\x26\x9B\x6F\x10\xB7\xB8" ··· 12017 18356 "\xBC\x06\x41\xE3\x01\xB4\x4E\x0A" 12018 18357 "\xE0\x1F\x91\xF8\x82\x96\x2D\x65" 12019 18358 "\xA3\xAA\x13\xCC\x50\xFF\x7B\x02", 12020 - .rlen = 496, 12021 - .also_non_np = 1, 12022 - .np = 3, 12023 - .tap = { 496 - 20, 4, 16 }, 12024 - }, 12025 - }; 12026 - 12027 - static const struct cipher_testvec aes_cbc_dec_tv_template[] = { 12028 - { /* From RFC 3602 */ 12029 - .key = "\x06\xa9\x21\x40\x36\xb8\xa1\x5b" 12030 - "\x51\x2e\x03\xd5\x34\x12\x00\x06", 12031 - .klen = 16, 12032 - .iv = "\x3d\xaf\xba\x42\x9d\x9e\xb4\x30" 12033 - "\xb4\x22\xda\x80\x2c\x9f\xac\x41", 12034 - .input = "\xe3\x53\x77\x9c\x10\x79\xae\xb8" 12035 - "\x27\x08\x94\x2d\xbe\x77\x18\x1a", 12036 - .ilen = 16, 12037 - .result = "Single block msg", 12038 - .rlen = 16, 12039 - .also_non_np = 1, 12040 - .np = 8, 12041 - .tap = { 3, 2, 3, 2, 3, 1, 1, 1 }, 12042 - }, { 12043 - .key = "\xc2\x86\x69\x6d\x88\x7c\x9a\xa0" 12044 - "\x61\x1b\xbb\x3e\x20\x25\xa4\x5a", 12045 - .klen = 16, 12046 - .iv = "\x56\x2e\x17\x99\x6d\x09\x3d\x28" 12047 - "\xdd\xb3\xba\x69\x5a\x2e\x6f\x58", 12048 - .input = "\xd2\x96\xcd\x94\xc2\xcc\xcf\x8a" 12049 - "\x3a\x86\x30\x28\xb5\xe1\xdc\x0a" 12050 - "\x75\x86\x60\x2d\x25\x3c\xff\xf9" 12051 - "\x1b\x82\x66\xbe\xa6\xd6\x1a\xb1", 12052 - .ilen = 32, 12053 - .result = "\x00\x01\x02\x03\x04\x05\x06\x07" 12054 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 12055 - "\x10\x11\x12\x13\x14\x15\x16\x17" 12056 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f", 12057 - .rlen = 32, 12058 - }, { /* From NIST SP800-38A */ 12059 - .key = "\x8e\x73\xb0\xf7\xda\x0e\x64\x52" 12060 - "\xc8\x10\xf3\x2b\x80\x90\x79\xe5" 12061 - "\x62\xf8\xea\xd2\x52\x2c\x6b\x7b", 12062 - .klen = 24, 12063 - .iv = "\x00\x01\x02\x03\x04\x05\x06\x07" 12064 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f", 12065 - .input = "\x4f\x02\x1d\xb2\x43\xbc\x63\x3d" 12066 - "\x71\x78\x18\x3a\x9f\xa0\x71\xe8" 12067 - "\xb4\xd9\xad\xa9\xad\x7d\xed\xf4" 12068 - "\xe5\xe7\x38\x76\x3f\x69\x14\x5a" 12069 - "\x57\x1b\x24\x20\x12\xfb\x7a\xe0" 12070 - "\x7f\xa9\xba\xac\x3d\xf1\x02\xe0" 12071 - "\x08\xb0\xe2\x79\x88\x59\x88\x81" 12072 - "\xd9\x20\xa9\xe6\x4f\x56\x15\xcd", 12073 - .ilen = 64, 12074 - .result = "\x6b\xc1\xbe\xe2\x2e\x40\x9f\x96" 12075 - "\xe9\x3d\x7e\x11\x73\x93\x17\x2a" 12076 - "\xae\x2d\x8a\x57\x1e\x03\xac\x9c" 12077 - "\x9e\xb7\x6f\xac\x45\xaf\x8e\x51" 12078 - "\x30\xc8\x1c\x46\xa3\x5c\xe4\x11" 12079 - "\xe5\xfb\xc1\x19\x1a\x0a\x52\xef" 12080 - "\xf6\x9f\x24\x45\xdf\x4f\x9b\x17" 12081 - "\xad\x2b\x41\x7b\xe6\x6c\x37\x10", 12082 - .rlen = 64, 12083 - }, { 12084 - .key = "\x60\x3d\xeb\x10\x15\xca\x71\xbe" 12085 - "\x2b\x73\xae\xf0\x85\x7d\x77\x81" 12086 - "\x1f\x35\x2c\x07\x3b\x61\x08\xd7" 12087 - "\x2d\x98\x10\xa3\x09\x14\xdf\xf4", 12088 - .klen = 32, 12089 - .iv = "\x00\x01\x02\x03\x04\x05\x06\x07" 12090 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f", 12091 - .input = "\xf5\x8c\x4c\x04\xd6\xe5\xf1\xba" 12092 - "\x77\x9e\xab\xfb\x5f\x7b\xfb\xd6" 12093 - "\x9c\xfc\x4e\x96\x7e\xdb\x80\x8d" 12094 - "\x67\x9f\x77\x7b\xc6\x70\x2c\x7d" 12095 - "\x39\xf2\x33\x69\xa9\xd9\xba\xcf" 12096 - "\xa5\x30\xe2\x63\x04\x23\x14\x61" 12097 - "\xb2\xeb\x05\xe2\xc3\x9b\xe9\xfc" 12098 - "\xda\x6c\x19\x07\x8c\x6a\x9d\x1b", 12099 - .ilen = 64, 12100 - .result = "\x6b\xc1\xbe\xe2\x2e\x40\x9f\x96" 12101 - "\xe9\x3d\x7e\x11\x73\x93\x17\x2a" 12102 - "\xae\x2d\x8a\x57\x1e\x03\xac\x9c" 12103 - "\x9e\xb7\x6f\xac\x45\xaf\x8e\x51" 12104 - "\x30\xc8\x1c\x46\xa3\x5c\xe4\x11" 12105 - "\xe5\xfb\xc1\x19\x1a\x0a\x52\xef" 12106 - "\xf6\x9f\x24\x45\xdf\x4f\x9b\x17" 12107 - "\xad\x2b\x41\x7b\xe6\x6c\x37\x10", 12108 - .rlen = 64, 12109 - }, { /* Generated with Crypto++ */ 12110 - .key = "\xC9\x83\xA6\xC9\xEC\x0F\x32\x55" 12111 - "\x0F\x32\x55\x78\x9B\xBE\x78\x9B" 12112 - "\xBE\xE1\x04\x27\xE1\x04\x27\x4A" 12113 - "\x6D\x90\x4A\x6D\x90\xB3\xD6\xF9", 12114 - .klen = 32, 12115 - .iv = "\xE7\x82\x1D\xB8\x53\x11\xAC\x47" 12116 - "\xE2\x7D\x18\xD6\x71\x0C\xA7\x42", 12117 - .input = "\xEA\x65\x8A\x19\xB0\x66\xC1\x3F" 12118 - "\xCE\xF1\x97\x75\xC1\xFD\xB5\xAF" 12119 - "\x52\x65\xF7\xFF\xBC\xD8\x2D\x9F" 12120 - "\x2F\xB9\x26\x9B\x6F\x10\xB7\xB8" 12121 - "\x26\xA1\x02\x46\xA2\xAD\xC6\xC0" 12122 - "\x11\x15\xFF\x6D\x1E\x82\x04\xA6" 12123 - "\xB1\x74\xD1\x08\x13\xFD\x90\x7C" 12124 - "\xF5\xED\xD3\xDB\x5A\x0A\x0C\x2F" 12125 - "\x0A\x70\xF1\x88\x07\xCF\x21\x26" 12126 - "\x40\x40\x8A\xF5\x53\xF7\x24\x4F" 12127 - "\x83\x38\x43\x5F\x08\x99\xEB\xE3" 12128 - "\xDC\x02\x64\x67\x50\x6E\x15\xC3" 12129 - "\x01\x1A\xA0\x81\x13\x65\xA6\x73" 12130 - "\x71\xA6\x3B\x91\x83\x77\xBE\xFA" 12131 - "\xDB\x71\x73\xA6\xC1\xAE\x43\xC3" 12132 - "\x36\xCE\xD6\xEB\xF9\x30\x1C\x4F" 12133 - "\x80\x38\x5E\x9C\x6E\xAB\x98\x2F" 12134 - "\x53\xAF\xCF\xC8\x9A\xB8\x86\x43" 12135 - "\x3E\x86\xE7\xA1\xF4\x2F\x30\x40" 12136 - "\x03\xA8\x6C\x50\x42\x9F\x77\x59" 12137 - "\x89\xA0\xC5\xEC\x9A\xB8\xDD\x99" 12138 - "\x16\x24\x02\x07\x48\xAE\xF2\x31" 12139 - "\x34\x0E\xC3\x85\xFE\x1C\x95\x99" 12140 - "\x87\x58\x98\x8B\xE7\xC6\xC5\x70" 12141 - "\x73\x81\x07\x7C\x56\x2F\xD8\x1B" 12142 - "\xB7\xB9\x2B\xAB\xE3\x01\x87\x0F" 12143 - "\xD8\xBB\xC0\x0D\xAC\x2C\x2F\x98" 12144 - "\x3C\x0B\xA2\x99\x4A\x8C\xF7\x04" 12145 - "\xE0\xE0\xCF\xD1\x81\x5B\xFE\xF5" 12146 - "\x24\x04\xFD\xB8\xDF\x13\xD8\xCD" 12147 - "\xF1\xE3\x3D\x98\x50\x02\x77\x9E" 12148 - "\xBC\x22\xAB\xFA\xC2\x43\x1F\x66" 12149 - "\x20\x02\x23\xDA\xDF\xA0\x89\xF6" 12150 - "\xD8\xF3\x45\x24\x53\x6F\x16\x77" 12151 - "\x02\x3E\x7B\x36\x5F\xA0\x3B\x78" 12152 - "\x63\xA2\xBD\xB5\xA4\xCA\x1E\xD3" 12153 - "\x57\xBC\x0B\x9F\x43\x51\x28\x4F" 12154 - "\x07\x50\x6C\x68\x12\x07\xCF\xFA" 12155 - "\x6B\x72\x0B\xEB\xF8\x88\x90\x2C" 12156 - "\x7E\xF5\x91\xD1\x03\xD8\xD5\xBD" 12157 - "\x22\x39\x7B\x16\x03\x01\x69\xAF" 12158 - "\x3D\x38\x66\x28\x0C\xBE\x5B\xC5" 12159 - "\x03\xB4\x2F\x51\x8A\x56\x17\x2B" 12160 - "\x88\x42\x6D\x40\x68\x8F\xD0\x11" 12161 - "\x19\xF9\x1F\x43\x79\x95\x31\xFA" 12162 - "\x28\x7A\x3D\xF7\x66\xEB\xEF\xAC" 12163 - "\x06\xB2\x01\xAD\xDB\x68\xDB\xEC" 12164 - "\x8D\x53\x6E\x72\x68\xA3\xC7\x63" 12165 - "\x43\x2B\x78\xE0\x04\x29\x8F\x72" 12166 - "\xB2\x2C\xE6\x84\x03\x30\x6D\xCD" 12167 - "\x26\x92\x37\xE1\x2F\xBB\x8B\x9D" 12168 - "\xE4\x4C\xF6\x93\xBC\xD9\xAD\x44" 12169 - "\x52\x65\xC7\xB0\x0E\x3F\x0E\x61" 12170 - "\x56\x5D\x1C\x6D\xA7\x05\x2E\xBC" 12171 - "\x58\x08\x15\xAB\x12\xAB\x17\x4A" 12172 - "\x5E\x1C\xF2\xCD\xB8\xA2\xAE\xFB" 12173 - "\x9B\x2E\x0E\x85\x34\x80\x0E\x3F" 12174 - "\x4C\xB8\xDB\xCE\x1C\x90\xA1\x61" 12175 - "\x6C\x69\x09\x35\x9E\xD4\xF4\xAD" 12176 - "\xBC\x06\x41\xE3\x01\xB4\x4E\x0A" 12177 - "\xE0\x1F\x91\xF8\x82\x96\x2D\x65" 12178 - "\xA3\xAA\x13\xCC\x50\xFF\x7B\x02", 12179 - .ilen = 496, 12180 - .result = "\x50\xB9\x22\xAE\x17\x80\x0C\x75" 12181 - "\xDE\x47\xD3\x3C\xA5\x0E\x9A\x03" 12182 - "\x6C\xF8\x61\xCA\x33\xBF\x28\x91" 12183 - "\x1D\x86\xEF\x58\xE4\x4D\xB6\x1F" 12184 - "\xAB\x14\x7D\x09\x72\xDB\x44\xD0" 12185 - "\x39\xA2\x0B\x97\x00\x69\xF5\x5E" 12186 - "\xC7\x30\xBC\x25\x8E\x1A\x83\xEC" 12187 - "\x55\xE1\x4A\xB3\x1C\xA8\x11\x7A" 12188 - "\x06\x6F\xD8\x41\xCD\x36\x9F\x08" 12189 - "\x94\xFD\x66\xF2\x5B\xC4\x2D\xB9" 12190 - "\x22\x8B\x17\x80\xE9\x52\xDE\x47" 12191 - "\xB0\x19\xA5\x0E\x77\x03\x6C\xD5" 12192 - "\x3E\xCA\x33\x9C\x05\x91\xFA\x63" 12193 - "\xEF\x58\xC1\x2A\xB6\x1F\x88\x14" 12194 - "\x7D\xE6\x4F\xDB\x44\xAD\x16\xA2" 12195 - "\x0B\x74\x00\x69\xD2\x3B\xC7\x30" 12196 - "\x99\x02\x8E\xF7\x60\xEC\x55\xBE" 12197 - "\x27\xB3\x1C\x85\x11\x7A\xE3\x4C" 12198 - "\xD8\x41\xAA\x13\x9F\x08\x71\xFD" 12199 - "\x66\xCF\x38\xC4\x2D\x96\x22\x8B" 12200 - "\xF4\x5D\xE9\x52\xBB\x24\xB0\x19" 12201 - "\x82\x0E\x77\xE0\x49\xD5\x3E\xA7" 12202 - "\x10\x9C\x05\x6E\xFA\x63\xCC\x35" 12203 - "\xC1\x2A\x93\x1F\x88\xF1\x5A\xE6" 12204 - "\x4F\xB8\x21\xAD\x16\x7F\x0B\x74" 12205 - "\xDD\x46\xD2\x3B\xA4\x0D\x99\x02" 12206 - "\x6B\xF7\x60\xC9\x32\xBE\x27\x90" 12207 - "\x1C\x85\xEE\x57\xE3\x4C\xB5\x1E" 12208 - "\xAA\x13\x7C\x08\x71\xDA\x43\xCF" 12209 - "\x38\xA1\x0A\x96\xFF\x68\xF4\x5D" 12210 - "\xC6\x2F\xBB\x24\x8D\x19\x82\xEB" 12211 - "\x54\xE0\x49\xB2\x1B\xA7\x10\x79" 12212 - "\x05\x6E\xD7\x40\xCC\x35\x9E\x07" 12213 - "\x93\xFC\x65\xF1\x5A\xC3\x2C\xB8" 12214 - "\x21\x8A\x16\x7F\xE8\x51\xDD\x46" 12215 - "\xAF\x18\xA4\x0D\x76\x02\x6B\xD4" 12216 - "\x3D\xC9\x32\x9B\x04\x90\xF9\x62" 12217 - "\xEE\x57\xC0\x29\xB5\x1E\x87\x13" 12218 - "\x7C\xE5\x4E\xDA\x43\xAC\x15\xA1" 12219 - "\x0A\x73\xFF\x68\xD1\x3A\xC6\x2F" 12220 - "\x98\x01\x8D\xF6\x5F\xEB\x54\xBD" 12221 - "\x26\xB2\x1B\x84\x10\x79\xE2\x4B" 12222 - "\xD7\x40\xA9\x12\x9E\x07\x70\xFC" 12223 - "\x65\xCE\x37\xC3\x2C\x95\x21\x8A" 12224 - "\xF3\x5C\xE8\x51\xBA\x23\xAF\x18" 12225 - "\x81\x0D\x76\xDF\x48\xD4\x3D\xA6" 12226 - "\x0F\x9B\x04\x6D\xF9\x62\xCB\x34" 12227 - "\xC0\x29\x92\x1E\x87\xF0\x59\xE5" 12228 - "\x4E\xB7\x20\xAC\x15\x7E\x0A\x73" 12229 - "\xDC\x45\xD1\x3A\xA3\x0C\x98\x01" 12230 - "\x6A\xF6\x5F\xC8\x31\xBD\x26\x8F" 12231 - "\x1B\x84\xED\x56\xE2\x4B\xB4\x1D" 12232 - "\xA9\x12\x7B\x07\x70\xD9\x42\xCE" 12233 - "\x37\xA0\x09\x95\xFE\x67\xF3\x5C" 12234 - "\xC5\x2E\xBA\x23\x8C\x18\x81\xEA" 12235 - "\x53\xDF\x48\xB1\x1A\xA6\x0F\x78" 12236 - "\x04\x6D\xD6\x3F\xCB\x34\x9D\x06" 12237 - "\x92\xFB\x64\xF0\x59\xC2\x2B\xB7" 12238 - "\x20\x89\x15\x7E\xE7\x50\xDC\x45" 12239 - "\xAE\x17\xA3\x0C\x75\x01\x6A\xD3" 12240 - "\x3C\xC8\x31\x9A\x03\x8F\xF8\x61" 12241 - "\xED\x56\xBF\x28\xB4\x1D\x86\x12", 12242 - .rlen = 496, 18359 + .len = 496, 12243 18360 .also_non_np = 1, 12244 18361 .np = 3, 12245 18362 .tap = { 496 - 20, 4, 16 }, ··· 13727 20288 }, 13728 20289 }; 13729 20290 13730 - static const struct cipher_testvec aes_lrw_enc_tv_template[] = { 20291 + static const struct cipher_testvec aes_lrw_tv_template[] = { 13731 20292 /* from http://grouper.ieee.org/groups/1619/email/pdf00017.pdf */ 13732 20293 { /* LRW-32-AES 1 */ 13733 20294 .key = "\x45\x62\xac\x25\xf8\x28\x17\x6d" ··· 13737 20298 .klen = 32, 13738 20299 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 13739 20300 "\x00\x00\x00\x00\x00\x00\x00\x01", 13740 - .input = "\x30\x31\x32\x33\x34\x35\x36\x37" 20301 + .ptext = "\x30\x31\x32\x33\x34\x35\x36\x37" 13741 20302 "\x38\x39\x41\x42\x43\x44\x45\x46", 13742 - .ilen = 16, 13743 - .result = "\xf1\xb2\x73\xcd\x65\xa3\xdf\x5f" 20303 + .ctext = "\xf1\xb2\x73\xcd\x65\xa3\xdf\x5f" 13744 20304 "\xe9\x5d\x48\x92\x54\x63\x4e\xb8", 13745 - .rlen = 16, 20305 + .len = 16, 13746 20306 }, { /* LRW-32-AES 2 */ 13747 20307 .key = "\x59\x70\x47\x14\xf5\x57\x47\x8c" 13748 20308 "\xd7\x79\xe8\x0f\x54\x88\x79\x44" ··· 13750 20312 .klen = 32, 13751 20313 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 13752 20314 "\x00\x00\x00\x00\x00\x00\x00\x02", 13753 - .input = "\x30\x31\x32\x33\x34\x35\x36\x37" 20315 + .ptext = "\x30\x31\x32\x33\x34\x35\x36\x37" 13754 20316 "\x38\x39\x41\x42\x43\x44\x45\x46", 13755 - .ilen = 16, 13756 - .result = "\x00\xc8\x2b\xae\x95\xbb\xcd\xe5" 20317 + .ctext = "\x00\xc8\x2b\xae\x95\xbb\xcd\xe5" 13757 20318 "\x27\x4f\x07\x69\xb2\x60\xe1\x36", 13758 - .rlen = 16, 20319 + .len = 16, 13759 20320 }, { /* LRW-32-AES 3 */ 13760 20321 .key = "\xd8\x2a\x91\x34\xb2\x6a\x56\x50" 13761 20322 "\x30\xfe\x69\xe2\x37\x7f\x98\x47" ··· 13763 20326 .klen = 32, 13764 20327 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 13765 20328 "\x00\x00\x00\x02\x00\x00\x00\x00", 13766 - .input = "\x30\x31\x32\x33\x34\x35\x36\x37" 20329 + .ptext = "\x30\x31\x32\x33\x34\x35\x36\x37" 13767 20330 "\x38\x39\x41\x42\x43\x44\x45\x46", 13768 - .ilen = 16, 13769 - .result = "\x76\x32\x21\x83\xed\x8f\xf1\x82" 20331 + .ctext = "\x76\x32\x21\x83\xed\x8f\xf1\x82" 13770 20332 "\xf9\x59\x62\x03\x69\x0e\x5e\x01", 13771 - .rlen = 16, 20333 + .len = 16, 13772 20334 }, { /* LRW-32-AES 4 */ 13773 20335 .key = "\x0f\x6a\xef\xf8\xd3\xd2\xbb\x15" 13774 20336 "\x25\x83\xf7\x3c\x1f\x01\x28\x74" ··· 13777 20341 .klen = 40, 13778 20342 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 13779 20343 "\x00\x00\x00\x00\x00\x00\x00\x01", 13780 - .input = "\x30\x31\x32\x33\x34\x35\x36\x37" 20344 + .ptext = "\x30\x31\x32\x33\x34\x35\x36\x37" 13781 20345 "\x38\x39\x41\x42\x43\x44\x45\x46", 13782 - .ilen = 16, 13783 - .result = "\x9c\x0f\x15\x2f\x55\xa2\xd8\xf0" 20346 + .ctext = "\x9c\x0f\x15\x2f\x55\xa2\xd8\xf0" 13784 20347 "\xd6\x7b\x8f\x9e\x28\x22\xbc\x41", 13785 - .rlen = 16, 20348 + .len = 16, 13786 20349 }, { /* LRW-32-AES 5 */ 13787 20350 .key = "\x8a\xd4\xee\x10\x2f\xbd\x81\xff" 13788 20351 "\xf8\x86\xce\xac\x93\xc5\xad\xc6" ··· 13791 20356 .klen = 40, 13792 20357 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 13793 20358 "\x00\x00\x00\x02\x00\x00\x00\x00", 13794 - .input = "\x30\x31\x32\x33\x34\x35\x36\x37" 20359 + .ptext = "\x30\x31\x32\x33\x34\x35\x36\x37" 13795 20360 "\x38\x39\x41\x42\x43\x44\x45\x46", 13796 - .ilen = 16, 13797 - .result = "\xd4\x27\x6a\x7f\x14\x91\x3d\x65" 20361 + .ctext = "\xd4\x27\x6a\x7f\x14\x91\x3d\x65" 13798 20362 "\xc8\x60\x48\x02\x87\xe3\x34\x06", 13799 - .rlen = 16, 20363 + .len = 16, 13800 20364 }, { /* LRW-32-AES 6 */ 13801 20365 .key = "\xf8\xd4\x76\xff\xd6\x46\xee\x6c" 13802 20366 "\x23\x84\xcb\x1c\x77\xd6\x19\x5d" ··· 13806 20372 .klen = 48, 13807 20373 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 13808 20374 "\x00\x00\x00\x00\x00\x00\x00\x01", 13809 - .input = "\x30\x31\x32\x33\x34\x35\x36\x37" 20375 + .ptext = "\x30\x31\x32\x33\x34\x35\x36\x37" 13810 20376 "\x38\x39\x41\x42\x43\x44\x45\x46", 13811 - .ilen = 16, 13812 - .result = "\xbd\x06\xb8\xe1\xdb\x98\x89\x9e" 20377 + .ctext = "\xbd\x06\xb8\xe1\xdb\x98\x89\x9e" 13813 20378 "\xc4\x98\xe4\x91\xcf\x1c\x70\x2b", 13814 - .rlen = 16, 20379 + .len = 16, 13815 20380 }, { /* LRW-32-AES 7 */ 13816 20381 .key = "\xfb\x76\x15\xb2\x3d\x80\x89\x1d" 13817 20382 "\xd4\x70\x98\x0b\xc7\x95\x84\xc8" ··· 13821 20388 .klen = 48, 13822 20389 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 13823 20390 "\x00\x00\x00\x02\x00\x00\x00\x00", 13824 - .input = "\x30\x31\x32\x33\x34\x35\x36\x37" 20391 + .ptext = "\x30\x31\x32\x33\x34\x35\x36\x37" 13825 20392 "\x38\x39\x41\x42\x43\x44\x45\x46", 13826 - .ilen = 16, 13827 - .result = "\x5b\x90\x8e\xc1\xab\xdd\x67\x5f" 20393 + .ctext = "\x5b\x90\x8e\xc1\xab\xdd\x67\x5f" 13828 20394 "\x3d\x69\x8a\x95\x53\xc8\x9c\xe5", 13829 - .rlen = 16, 20395 + .len = 16, 13830 20396 }, { 13831 20397 /* http://www.mail-archive.com/stds-p1619@listserv.ieee.org/msg00173.html */ 13832 20398 .key = "\xf8\xd4\x76\xff\xd6\x46\xee\x6c" ··· 13837 20405 .klen = 48, 13838 20406 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 13839 20407 "\x00\x00\x00\x00\x00\x00\x00\x01", 13840 - .input = "\x05\x11\xb7\x18\xab\xc6\x2d\xac" 20408 + .ptext = "\x05\x11\xb7\x18\xab\xc6\x2d\xac" 13841 20409 "\x70\x5d\xf6\x22\x94\xcd\xe5\x6c" 13842 20410 "\x17\x6b\xf6\x1c\xf0\xf3\x6e\xf8" 13843 20411 "\x50\x38\x1f\x71\x49\xb6\x57\xd6" ··· 13901 20469 "\xa4\xc7\xa8\xb4\xf6\x13\x03\xf6" 13902 20470 "\xe9\x2e\xc4\x29\x0f\x84\xdb\xc4" 13903 20471 "\x21\xc4\xc2\x75\x67\x89\x37\x0a", 13904 - .ilen = 512, 13905 - .result = "\x1a\x1d\xa9\x30\xad\xf9\x2f\x9b" 20472 + .ctext = "\x1a\x1d\xa9\x30\xad\xf9\x2f\x9b" 13906 20473 "\xb6\x1d\xae\xef\xf0\x2f\xf8\x5a" 13907 20474 "\x39\x3c\xbf\x2a\xb2\x45\xb2\x23" 13908 20475 "\x1b\x63\x3c\xcf\xaa\xbe\xcf\x4e" ··· 13965 20534 "\xb7\x4f\xf8\x92\x4c\xb7\x3c\x29" 13966 20535 "\xcd\x7e\x2b\x5d\x43\xea\x42\xe7" 13967 20536 "\x74\x3f\x7d\x58\x88\x75\xde\x3e", 13968 - .rlen = 512, 20537 + .len = 512, 13969 20538 .also_non_np = 1, 13970 20539 .np = 3, 13971 20540 .tap = { 512 - 20, 4, 16 }, 13972 20541 } 13973 20542 }; 13974 20543 13975 - static const struct cipher_testvec aes_lrw_dec_tv_template[] = { 13976 - /* from http://grouper.ieee.org/groups/1619/email/pdf00017.pdf */ 13977 - /* same as enc vectors with input and result reversed */ 13978 - { /* LRW-32-AES 1 */ 13979 - .key = "\x45\x62\xac\x25\xf8\x28\x17\x6d" 13980 - "\x4c\x26\x84\x14\xb5\x68\x01\x85" 13981 - "\x25\x8e\x2a\x05\xe7\x3e\x9d\x03" 13982 - "\xee\x5a\x83\x0c\xcc\x09\x4c\x87", 13983 - .klen = 32, 13984 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 13985 - "\x00\x00\x00\x00\x00\x00\x00\x01", 13986 - .input = "\xf1\xb2\x73\xcd\x65\xa3\xdf\x5f" 13987 - "\xe9\x5d\x48\x92\x54\x63\x4e\xb8", 13988 - .ilen = 16, 13989 - .result = "\x30\x31\x32\x33\x34\x35\x36\x37" 13990 - "\x38\x39\x41\x42\x43\x44\x45\x46", 13991 - .rlen = 16, 13992 - }, { /* LRW-32-AES 2 */ 13993 - .key = "\x59\x70\x47\x14\xf5\x57\x47\x8c" 13994 - "\xd7\x79\xe8\x0f\x54\x88\x79\x44" 13995 - "\x0d\x48\xf0\xb7\xb1\x5a\x53\xea" 13996 - "\x1c\xaa\x6b\x29\xc2\xca\xfb\xaf", 13997 - .klen = 32, 13998 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 13999 - "\x00\x00\x00\x00\x00\x00\x00\x02", 14000 - .input = "\x00\xc8\x2b\xae\x95\xbb\xcd\xe5" 14001 - "\x27\x4f\x07\x69\xb2\x60\xe1\x36", 14002 - .ilen = 16, 14003 - .result = "\x30\x31\x32\x33\x34\x35\x36\x37" 14004 - "\x38\x39\x41\x42\x43\x44\x45\x46", 14005 - .rlen = 16, 14006 - }, { /* LRW-32-AES 3 */ 14007 - .key = "\xd8\x2a\x91\x34\xb2\x6a\x56\x50" 14008 - "\x30\xfe\x69\xe2\x37\x7f\x98\x47" 14009 - "\xcd\xf9\x0b\x16\x0c\x64\x8f\xb6" 14010 - "\xb0\x0d\x0d\x1b\xae\x85\x87\x1f", 14011 - .klen = 32, 14012 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 14013 - "\x00\x00\x00\x02\x00\x00\x00\x00", 14014 - .input = "\x76\x32\x21\x83\xed\x8f\xf1\x82" 14015 - "\xf9\x59\x62\x03\x69\x0e\x5e\x01", 14016 - .ilen = 16, 14017 - .result = "\x30\x31\x32\x33\x34\x35\x36\x37" 14018 - "\x38\x39\x41\x42\x43\x44\x45\x46", 14019 - .rlen = 16, 14020 - }, { /* LRW-32-AES 4 */ 14021 - .key = "\x0f\x6a\xef\xf8\xd3\xd2\xbb\x15" 14022 - "\x25\x83\xf7\x3c\x1f\x01\x28\x74" 14023 - "\xca\xc6\xbc\x35\x4d\x4a\x65\x54" 14024 - "\x90\xae\x61\xcf\x7b\xae\xbd\xcc" 14025 - "\xad\xe4\x94\xc5\x4a\x29\xae\x70", 14026 - .klen = 40, 14027 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 14028 - "\x00\x00\x00\x00\x00\x00\x00\x01", 14029 - .input = "\x9c\x0f\x15\x2f\x55\xa2\xd8\xf0" 14030 - "\xd6\x7b\x8f\x9e\x28\x22\xbc\x41", 14031 - .ilen = 16, 14032 - .result = "\x30\x31\x32\x33\x34\x35\x36\x37" 14033 - "\x38\x39\x41\x42\x43\x44\x45\x46", 14034 - .rlen = 16, 14035 - }, { /* LRW-32-AES 5 */ 14036 - .key = "\x8a\xd4\xee\x10\x2f\xbd\x81\xff" 14037 - "\xf8\x86\xce\xac\x93\xc5\xad\xc6" 14038 - "\xa0\x19\x07\xc0\x9d\xf7\xbb\xdd" 14039 - "\x52\x13\xb2\xb7\xf0\xff\x11\xd8" 14040 - "\xd6\x08\xd0\xcd\x2e\xb1\x17\x6f", 14041 - .klen = 40, 14042 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 14043 - "\x00\x00\x00\x02\x00\x00\x00\x00", 14044 - .input = "\xd4\x27\x6a\x7f\x14\x91\x3d\x65" 14045 - "\xc8\x60\x48\x02\x87\xe3\x34\x06", 14046 - .ilen = 16, 14047 - .result = "\x30\x31\x32\x33\x34\x35\x36\x37" 14048 - "\x38\x39\x41\x42\x43\x44\x45\x46", 14049 - .rlen = 16, 14050 - }, { /* LRW-32-AES 6 */ 14051 - .key = "\xf8\xd4\x76\xff\xd6\x46\xee\x6c" 14052 - "\x23\x84\xcb\x1c\x77\xd6\x19\x5d" 14053 - "\xfe\xf1\xa9\xf3\x7b\xbc\x8d\x21" 14054 - "\xa7\x9c\x21\xf8\xcb\x90\x02\x89" 14055 - "\xa8\x45\x34\x8e\xc8\xc5\xb5\xf1" 14056 - "\x26\xf5\x0e\x76\xfe\xfd\x1b\x1e", 14057 - .klen = 48, 14058 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 14059 - "\x00\x00\x00\x00\x00\x00\x00\x01", 14060 - .input = "\xbd\x06\xb8\xe1\xdb\x98\x89\x9e" 14061 - "\xc4\x98\xe4\x91\xcf\x1c\x70\x2b", 14062 - .ilen = 16, 14063 - .result = "\x30\x31\x32\x33\x34\x35\x36\x37" 14064 - "\x38\x39\x41\x42\x43\x44\x45\x46", 14065 - .rlen = 16, 14066 - }, { /* LRW-32-AES 7 */ 14067 - .key = "\xfb\x76\x15\xb2\x3d\x80\x89\x1d" 14068 - "\xd4\x70\x98\x0b\xc7\x95\x84\xc8" 14069 - "\xb2\xfb\x64\xce\x60\x97\x87\x8d" 14070 - "\x17\xfc\xe4\x5a\x49\xe8\x30\xb7" 14071 - "\x6e\x78\x17\xe7\x2d\x5e\x12\xd4" 14072 - "\x60\x64\x04\x7a\xf1\x2f\x9e\x0c", 14073 - .klen = 48, 14074 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 14075 - "\x00\x00\x00\x02\x00\x00\x00\x00", 14076 - .input = "\x5b\x90\x8e\xc1\xab\xdd\x67\x5f" 14077 - "\x3d\x69\x8a\x95\x53\xc8\x9c\xe5", 14078 - .ilen = 16, 14079 - .result = "\x30\x31\x32\x33\x34\x35\x36\x37" 14080 - "\x38\x39\x41\x42\x43\x44\x45\x46", 14081 - .rlen = 16, 14082 - }, { 14083 - /* http://www.mail-archive.com/stds-p1619@listserv.ieee.org/msg00173.html */ 14084 - .key = "\xf8\xd4\x76\xff\xd6\x46\xee\x6c" 14085 - "\x23\x84\xcb\x1c\x77\xd6\x19\x5d" 14086 - "\xfe\xf1\xa9\xf3\x7b\xbc\x8d\x21" 14087 - "\xa7\x9c\x21\xf8\xcb\x90\x02\x89" 14088 - "\xa8\x45\x34\x8e\xc8\xc5\xb5\xf1" 14089 - "\x26\xf5\x0e\x76\xfe\xfd\x1b\x1e", 14090 - .klen = 48, 14091 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 14092 - "\x00\x00\x00\x00\x00\x00\x00\x01", 14093 - .input = "\x1a\x1d\xa9\x30\xad\xf9\x2f\x9b" 14094 - "\xb6\x1d\xae\xef\xf0\x2f\xf8\x5a" 14095 - "\x39\x3c\xbf\x2a\xb2\x45\xb2\x23" 14096 - "\x1b\x63\x3c\xcf\xaa\xbe\xcf\x4e" 14097 - "\xfa\xe8\x29\xc2\x20\x68\x2b\x3c" 14098 - "\x2e\x8b\xf7\x6e\x25\xbd\xe3\x3d" 14099 - "\x66\x27\xd6\xaf\xd6\x64\x3e\xe3" 14100 - "\xe8\x58\x46\x97\x39\x51\x07\xde" 14101 - "\xcb\x37\xbc\xa9\xc0\x5f\x75\xc3" 14102 - "\x0e\x84\x23\x1d\x16\xd4\x1c\x59" 14103 - "\x9c\x1a\x02\x55\xab\x3a\x97\x1d" 14104 - "\xdf\xdd\xc7\x06\x51\xd7\x70\xae" 14105 - "\x23\xc6\x8c\xf5\x1e\xa0\xe5\x82" 14106 - "\xb8\xb2\xbf\x04\xa0\x32\x8e\x68" 14107 - "\xeb\xaf\x6e\x2d\x94\x22\x2f\xce" 14108 - "\x4c\xb5\x59\xe2\xa2\x2f\xa0\x98" 14109 - "\x1a\x97\xc6\xd4\xb5\x00\x59\xf2" 14110 - "\x84\x14\x72\xb1\x9a\x6e\xa3\x7f" 14111 - "\xea\x20\xe7\xcb\x65\x77\x3a\xdf" 14112 - "\xc8\x97\x67\x15\xc2\x2a\x27\xcc" 14113 - "\x18\x55\xa1\x24\x0b\x24\x24\xaf" 14114 - "\x5b\xec\x68\xb8\xc8\xf5\xba\x63" 14115 - "\xff\xed\x89\xce\xd5\x3d\x88\xf3" 14116 - "\x25\xef\x05\x7c\x3a\xef\xeb\xd8" 14117 - "\x7a\x32\x0d\xd1\x1e\x58\x59\x99" 14118 - "\x90\x25\xb5\x26\xb0\xe3\x2b\x6c" 14119 - "\x4c\xa9\x8b\x84\x4f\x5e\x01\x50" 14120 - "\x41\x30\x58\xc5\x62\x74\x52\x1d" 14121 - "\x45\x24\x6a\x42\x64\x4f\x97\x1c" 14122 - "\xa8\x66\xb5\x6d\x79\xd4\x0d\x48" 14123 - "\xc5\x5f\xf3\x90\x32\xdd\xdd\xe1" 14124 - "\xe4\xa9\x9f\xfc\xc3\x52\x5a\x46" 14125 - "\xe4\x81\x84\x95\x36\x59\x7a\x6b" 14126 - "\xaa\xb3\x60\xad\xce\x9f\x9f\x28" 14127 - "\xe0\x01\x75\x22\xc4\x4e\xa9\x62" 14128 - "\x5c\x62\x0d\x00\xcb\x13\xe8\x43" 14129 - "\x72\xd4\x2d\x53\x46\xb5\xd1\x16" 14130 - "\x22\x18\xdf\x34\x33\xf5\xd6\x1c" 14131 - "\xb8\x79\x78\x97\x94\xff\x72\x13" 14132 - "\x4c\x27\xfc\xcb\xbf\x01\x53\xa6" 14133 - "\xb4\x50\x6e\xde\xdf\xb5\x43\xa4" 14134 - "\x59\xdf\x52\xf9\x7c\xe0\x11\x6f" 14135 - "\x2d\x14\x8e\x24\x61\x2c\xe1\x17" 14136 - "\xcc\xce\x51\x0c\x19\x8a\x82\x30" 14137 - "\x94\xd5\x3d\x6a\x53\x06\x5e\xbd" 14138 - "\xb7\xeb\xfa\xfd\x27\x51\xde\x85" 14139 - "\x1e\x86\x53\x11\x53\x94\x00\xee" 14140 - "\x2b\x8c\x08\x2a\xbf\xdd\xae\x11" 14141 - "\xcb\x1e\xa2\x07\x9a\x80\xcf\x62" 14142 - "\x9b\x09\xdc\x95\x3c\x96\x8e\xb1" 14143 - "\x09\xbd\xe4\xeb\xdb\xca\x70\x7a" 14144 - "\x9e\xfa\x31\x18\x45\x3c\x21\x33" 14145 - "\xb0\xb3\x2b\xea\xf3\x71\x2d\xe1" 14146 - "\x03\xad\x1b\x48\xd4\x67\x27\xf0" 14147 - "\x62\xe4\x3d\xfb\x9b\x08\x76\xe7" 14148 - "\xdd\x2b\x01\x39\x04\x5a\x58\x7a" 14149 - "\xf7\x11\x90\xec\xbd\x51\x5c\x32" 14150 - "\x6b\xd7\x35\x39\x02\x6b\xf2\xa6" 14151 - "\xd0\x0d\x07\xe1\x06\xc4\x5b\x7d" 14152 - "\xe4\x6a\xd7\xee\x15\x1f\x83\xb4" 14153 - "\xa3\xa7\x5e\xc3\x90\xb7\xef\xd3" 14154 - "\xb7\x4f\xf8\x92\x4c\xb7\x3c\x29" 14155 - "\xcd\x7e\x2b\x5d\x43\xea\x42\xe7" 14156 - "\x74\x3f\x7d\x58\x88\x75\xde\x3e", 14157 - .ilen = 512, 14158 - .result = "\x05\x11\xb7\x18\xab\xc6\x2d\xac" 14159 - "\x70\x5d\xf6\x22\x94\xcd\xe5\x6c" 14160 - "\x17\x6b\xf6\x1c\xf0\xf3\x6e\xf8" 14161 - "\x50\x38\x1f\x71\x49\xb6\x57\xd6" 14162 - "\x8f\xcb\x8d\x6b\xe3\xa6\x29\x90" 14163 - "\xfe\x2a\x62\x82\xae\x6d\x8b\xf6" 14164 - "\xad\x1e\x9e\x20\x5f\x38\xbe\x04" 14165 - "\xda\x10\x8e\xed\xa2\xa4\x87\xab" 14166 - "\xda\x6b\xb4\x0c\x75\xba\xd3\x7c" 14167 - "\xc9\xac\x42\x31\x95\x7c\xc9\x04" 14168 - "\xeb\xd5\x6e\x32\x69\x8a\xdb\xa6" 14169 - "\x15\xd7\x3f\x4f\x2f\x66\x69\x03" 14170 - "\x9c\x1f\x54\x0f\xde\x1f\xf3\x65" 14171 - "\x4c\x96\x12\xed\x7c\x92\x03\x01" 14172 - "\x6f\xbc\x35\x93\xac\xf1\x27\xf1" 14173 - "\xb4\x96\x82\x5a\x5f\xb0\xa0\x50" 14174 - "\x89\xa4\x8e\x66\x44\x85\xcc\xfd" 14175 - "\x33\x14\x70\xe3\x96\xb2\xc3\xd3" 14176 - "\xbb\x54\x5a\x1a\xf9\x74\xa2\xc5" 14177 - "\x2d\x64\x75\xdd\xb4\x54\xe6\x74" 14178 - "\x8c\xd3\x9d\x9e\x86\xab\x51\x53" 14179 - "\xb7\x93\x3e\x6f\xd0\x4e\x2c\x40" 14180 - "\xf6\xa8\x2e\x3e\x9d\xf4\x66\xa5" 14181 - "\x76\x12\x73\x44\x1a\x56\xd7\x72" 14182 - "\x88\xcd\x21\x8c\x4c\x0f\xfe\xda" 14183 - "\x95\xe0\x3a\xa6\xa5\x84\x46\xcd" 14184 - "\xd5\x3e\x9d\x3a\xe2\x67\xe6\x60" 14185 - "\x1a\xe2\x70\x85\x58\xc2\x1b\x09" 14186 - "\xe1\xd7\x2c\xca\xad\xa8\x8f\xf9" 14187 - "\xac\xb3\x0e\xdb\xca\x2e\xe2\xb8" 14188 - "\x51\x71\xd9\x3c\x6c\xf1\x56\xf8" 14189 - "\xea\x9c\xf1\xfb\x0c\xe6\xb7\x10" 14190 - "\x1c\xf8\xa9\x7c\xe8\x53\x35\xc1" 14191 - "\x90\x3e\x76\x4a\x74\xa4\x21\x2c" 14192 - "\xf6\x2c\x4e\x0f\x94\x3a\x88\x2e" 14193 - "\x41\x09\x6a\x33\x7d\xf6\xdd\x3f" 14194 - "\x8d\x23\x31\x74\x84\xeb\x88\x6e" 14195 - "\xcc\xb9\xbc\x22\x83\x19\x07\x22" 14196 - "\xa5\x2d\xdf\xa5\xf3\x80\x85\x78" 14197 - "\x84\x39\x6a\x6d\x6a\x99\x4f\xa5" 14198 - "\x15\xfe\x46\xb0\xe4\x6c\xa5\x41" 14199 - "\x3c\xce\x8f\x42\x60\x71\xa7\x75" 14200 - "\x08\x40\x65\x8a\x82\xbf\xf5\x43" 14201 - "\x71\x96\xa9\x4d\x44\x8a\x20\xbe" 14202 - "\xfa\x4d\xbb\xc0\x7d\x31\x96\x65" 14203 - "\xe7\x75\xe5\x3e\xfd\x92\x3b\xc9" 14204 - "\x55\xbb\x16\x7e\xf7\xc2\x8c\xa4" 14205 - "\x40\x1d\xe5\xef\x0e\xdf\xe4\x9a" 14206 - "\x62\x73\x65\xfd\x46\x63\x25\x3d" 14207 - "\x2b\xaf\xe5\x64\xfe\xa5\x5c\xcf" 14208 - "\x24\xf3\xb4\xac\x64\xba\xdf\x4b" 14209 - "\xc6\x96\x7d\x81\x2d\x8d\x97\xf7" 14210 - "\xc5\x68\x77\x84\x32\x2b\xcc\x85" 14211 - "\x74\x96\xf0\x12\x77\x61\xb9\xeb" 14212 - "\x71\xaa\x82\xcb\x1c\xdb\x89\xc8" 14213 - "\xc6\xb5\xe3\x5c\x7d\x39\x07\x24" 14214 - "\xda\x39\x87\x45\xc0\x2b\xbb\x01" 14215 - "\xac\xbc\x2a\x5c\x7f\xfc\xe8\xce" 14216 - "\x6d\x9c\x6f\xed\xd3\xc1\xa1\xd6" 14217 - "\xc5\x55\xa9\x66\x2f\xe1\xc8\x32" 14218 - "\xa6\x5d\xa4\x3a\x98\x73\xe8\x45" 14219 - "\xa4\xc7\xa8\xb4\xf6\x13\x03\xf6" 14220 - "\xe9\x2e\xc4\x29\x0f\x84\xdb\xc4" 14221 - "\x21\xc4\xc2\x75\x67\x89\x37\x0a", 14222 - .rlen = 512, 14223 - .also_non_np = 1, 14224 - .np = 3, 14225 - .tap = { 512 - 20, 4, 16 }, 14226 - } 14227 - }; 14228 - 14229 - static const struct cipher_testvec aes_xts_enc_tv_template[] = { 20544 + static const struct cipher_testvec aes_xts_tv_template[] = { 14230 20545 /* http://grouper.ieee.org/groups/1619/email/pdf00086.pdf */ 14231 20546 { /* XTS-AES 1 */ 14232 20547 .key = "\x00\x00\x00\x00\x00\x00\x00\x00" ··· 13983 20806 .fips_skip = 1, 13984 20807 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 13985 20808 "\x00\x00\x00\x00\x00\x00\x00\x00", 13986 - .input = "\x00\x00\x00\x00\x00\x00\x00\x00" 20809 + .ptext = "\x00\x00\x00\x00\x00\x00\x00\x00" 13987 20810 "\x00\x00\x00\x00\x00\x00\x00\x00" 13988 20811 "\x00\x00\x00\x00\x00\x00\x00\x00" 13989 20812 "\x00\x00\x00\x00\x00\x00\x00\x00", 13990 - .ilen = 32, 13991 - .result = "\x91\x7c\xf6\x9e\xbd\x68\xb2\xec" 20813 + .ctext = "\x91\x7c\xf6\x9e\xbd\x68\xb2\xec" 13992 20814 "\x9b\x9f\xe9\xa3\xea\xdd\xa6\x92" 13993 20815 "\xcd\x43\xd2\xf5\x95\x98\xed\x85" 13994 20816 "\x8c\x02\xc2\x65\x2f\xbf\x92\x2e", 13995 - .rlen = 32, 20817 + .len = 32, 13996 20818 }, { /* XTS-AES 2 */ 13997 20819 .key = "\x11\x11\x11\x11\x11\x11\x11\x11" 13998 20820 "\x11\x11\x11\x11\x11\x11\x11\x11" ··· 14000 20824 .klen = 32, 14001 20825 .iv = "\x33\x33\x33\x33\x33\x00\x00\x00" 14002 20826 "\x00\x00\x00\x00\x00\x00\x00\x00", 14003 - .input = "\x44\x44\x44\x44\x44\x44\x44\x44" 20827 + .ptext = "\x44\x44\x44\x44\x44\x44\x44\x44" 14004 20828 "\x44\x44\x44\x44\x44\x44\x44\x44" 14005 20829 "\x44\x44\x44\x44\x44\x44\x44\x44" 14006 20830 "\x44\x44\x44\x44\x44\x44\x44\x44", 14007 - .ilen = 32, 14008 - .result = "\xc4\x54\x18\x5e\x6a\x16\x93\x6e" 20831 + .ctext = "\xc4\x54\x18\x5e\x6a\x16\x93\x6e" 14009 20832 "\x39\x33\x40\x38\xac\xef\x83\x8b" 14010 20833 "\xfb\x18\x6f\xff\x74\x80\xad\xc4" 14011 20834 "\x28\x93\x82\xec\xd6\xd3\x94\xf0", 14012 - .rlen = 32, 20835 + .len = 32, 14013 20836 }, { /* XTS-AES 3 */ 14014 20837 .key = "\xff\xfe\xfd\xfc\xfb\xfa\xf9\xf8" 14015 20838 "\xf7\xf6\xf5\xf4\xf3\xf2\xf1\xf0" ··· 14017 20842 .klen = 32, 14018 20843 .iv = "\x33\x33\x33\x33\x33\x00\x00\x00" 14019 20844 "\x00\x00\x00\x00\x00\x00\x00\x00", 14020 - .input = "\x44\x44\x44\x44\x44\x44\x44\x44" 20845 + .ptext = "\x44\x44\x44\x44\x44\x44\x44\x44" 14021 20846 "\x44\x44\x44\x44\x44\x44\x44\x44" 14022 20847 "\x44\x44\x44\x44\x44\x44\x44\x44" 14023 20848 "\x44\x44\x44\x44\x44\x44\x44\x44", 14024 - .ilen = 32, 14025 - .result = "\xaf\x85\x33\x6b\x59\x7a\xfc\x1a" 20849 + .ctext = "\xaf\x85\x33\x6b\x59\x7a\xfc\x1a" 14026 20850 "\x90\x0b\x2e\xb2\x1e\xc9\x49\xd2" 14027 20851 "\x92\xdf\x4c\x04\x7e\x0b\x21\x53" 14028 20852 "\x21\x86\xa5\x97\x1a\x22\x7a\x89", 14029 - .rlen = 32, 20853 + .len = 32, 14030 20854 }, { /* XTS-AES 4 */ 14031 20855 .key = "\x27\x18\x28\x18\x28\x45\x90\x45" 14032 20856 "\x23\x53\x60\x28\x74\x71\x35\x26" ··· 14034 20860 .klen = 32, 14035 20861 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 14036 20862 "\x00\x00\x00\x00\x00\x00\x00\x00", 14037 - .input = "\x00\x01\x02\x03\x04\x05\x06\x07" 20863 + .ptext = "\x00\x01\x02\x03\x04\x05\x06\x07" 14038 20864 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 14039 20865 "\x10\x11\x12\x13\x14\x15\x16\x17" 14040 20866 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" ··· 14098 20924 "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 14099 20925 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 14100 20926 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 14101 - .ilen = 512, 14102 - .result = "\x27\xa7\x47\x9b\xef\xa1\xd4\x76" 20927 + .ctext = "\x27\xa7\x47\x9b\xef\xa1\xd4\x76" 14103 20928 "\x48\x9f\x30\x8c\xd4\xcf\xa6\xe2" 14104 20929 "\xa9\x6e\x4b\xbe\x32\x08\xff\x25" 14105 20930 "\x28\x7d\xd3\x81\x96\x16\xe8\x9c" ··· 14162 20989 "\xf2\x62\x73\x57\x79\xa4\x18\xf2" 14163 20990 "\x0a\x28\x2d\xf9\x20\x14\x7b\xea" 14164 20991 "\xbe\x42\x1e\xe5\x31\x9d\x05\x68", 14165 - .rlen = 512, 20992 + .len = 512, 14166 20993 }, { /* XTS-AES 10, XTS-AES-256, data unit 512 bytes */ 14167 20994 .key = "\x27\x18\x28\x18\x28\x45\x90\x45" 14168 20995 "\x23\x53\x60\x28\x74\x71\x35\x26" ··· 14175 21002 .klen = 64, 14176 21003 .iv = "\xff\x00\x00\x00\x00\x00\x00\x00" 14177 21004 "\x00\x00\x00\x00\x00\x00\x00\x00", 14178 - .input = "\x00\x01\x02\x03\x04\x05\x06\x07" 21005 + .ptext = "\x00\x01\x02\x03\x04\x05\x06\x07" 14179 21006 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 14180 21007 "\x10\x11\x12\x13\x14\x15\x16\x17" 14181 21008 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" ··· 14239 21066 "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 14240 21067 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 14241 21068 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 14242 - .ilen = 512, 14243 - .result = "\x1c\x3b\x3a\x10\x2f\x77\x03\x86" 21069 + .ctext = "\x1c\x3b\x3a\x10\x2f\x77\x03\x86" 14244 21070 "\xe4\x83\x6c\x99\xe3\x70\xcf\x9b" 14245 21071 "\xea\x00\x80\x3f\x5e\x48\x23\x57" 14246 21072 "\xa4\xae\x12\xd4\x14\xa3\xe6\x3b" ··· 14303 21131 "\x2f\xa7\x55\xc8\x24\xbb\x5e\x54" 14304 21132 "\xc4\xf3\x6f\xfd\xa9\xfc\xea\x70" 14305 21133 "\xb9\xc6\xe6\x93\xe1\x48\xc1\x51", 14306 - .rlen = 512, 21134 + .len = 512, 14307 21135 .also_non_np = 1, 14308 21136 .np = 3, 14309 21137 .tap = { 512 - 20, 4, 16 }, 14310 21138 } 14311 21139 }; 14312 21140 14313 - static const struct cipher_testvec aes_xts_dec_tv_template[] = { 14314 - /* http://grouper.ieee.org/groups/1619/email/pdf00086.pdf */ 14315 - { /* XTS-AES 1 */ 14316 - .key = "\x00\x00\x00\x00\x00\x00\x00\x00" 14317 - "\x00\x00\x00\x00\x00\x00\x00\x00" 14318 - "\x00\x00\x00\x00\x00\x00\x00\x00" 14319 - "\x00\x00\x00\x00\x00\x00\x00\x00", 14320 - .klen = 32, 14321 - .fips_skip = 1, 14322 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 14323 - "\x00\x00\x00\x00\x00\x00\x00\x00", 14324 - .input = "\x91\x7c\xf6\x9e\xbd\x68\xb2\xec" 14325 - "\x9b\x9f\xe9\xa3\xea\xdd\xa6\x92" 14326 - "\xcd\x43\xd2\xf5\x95\x98\xed\x85" 14327 - "\x8c\x02\xc2\x65\x2f\xbf\x92\x2e", 14328 - .ilen = 32, 14329 - .result = "\x00\x00\x00\x00\x00\x00\x00\x00" 14330 - "\x00\x00\x00\x00\x00\x00\x00\x00" 14331 - "\x00\x00\x00\x00\x00\x00\x00\x00" 14332 - "\x00\x00\x00\x00\x00\x00\x00\x00", 14333 - .rlen = 32, 14334 - }, { /* XTS-AES 2 */ 14335 - .key = "\x11\x11\x11\x11\x11\x11\x11\x11" 14336 - "\x11\x11\x11\x11\x11\x11\x11\x11" 14337 - "\x22\x22\x22\x22\x22\x22\x22\x22" 14338 - "\x22\x22\x22\x22\x22\x22\x22\x22", 14339 - .klen = 32, 14340 - .iv = "\x33\x33\x33\x33\x33\x00\x00\x00" 14341 - "\x00\x00\x00\x00\x00\x00\x00\x00", 14342 - .input = "\xc4\x54\x18\x5e\x6a\x16\x93\x6e" 14343 - "\x39\x33\x40\x38\xac\xef\x83\x8b" 14344 - "\xfb\x18\x6f\xff\x74\x80\xad\xc4" 14345 - "\x28\x93\x82\xec\xd6\xd3\x94\xf0", 14346 - .ilen = 32, 14347 - .result = "\x44\x44\x44\x44\x44\x44\x44\x44" 14348 - "\x44\x44\x44\x44\x44\x44\x44\x44" 14349 - "\x44\x44\x44\x44\x44\x44\x44\x44" 14350 - "\x44\x44\x44\x44\x44\x44\x44\x44", 14351 - .rlen = 32, 14352 - }, { /* XTS-AES 3 */ 14353 - .key = "\xff\xfe\xfd\xfc\xfb\xfa\xf9\xf8" 14354 - "\xf7\xf6\xf5\xf4\xf3\xf2\xf1\xf0" 14355 - "\x22\x22\x22\x22\x22\x22\x22\x22" 14356 - "\x22\x22\x22\x22\x22\x22\x22\x22", 14357 - .klen = 32, 14358 - .iv = "\x33\x33\x33\x33\x33\x00\x00\x00" 14359 - "\x00\x00\x00\x00\x00\x00\x00\x00", 14360 - .input = "\xaf\x85\x33\x6b\x59\x7a\xfc\x1a" 14361 - "\x90\x0b\x2e\xb2\x1e\xc9\x49\xd2" 14362 - "\x92\xdf\x4c\x04\x7e\x0b\x21\x53" 14363 - "\x21\x86\xa5\x97\x1a\x22\x7a\x89", 14364 - .ilen = 32, 14365 - .result = "\x44\x44\x44\x44\x44\x44\x44\x44" 14366 - "\x44\x44\x44\x44\x44\x44\x44\x44" 14367 - "\x44\x44\x44\x44\x44\x44\x44\x44" 14368 - "\x44\x44\x44\x44\x44\x44\x44\x44", 14369 - .rlen = 32, 14370 - }, { /* XTS-AES 4 */ 14371 - .key = "\x27\x18\x28\x18\x28\x45\x90\x45" 14372 - "\x23\x53\x60\x28\x74\x71\x35\x26" 14373 - "\x31\x41\x59\x26\x53\x58\x97\x93" 14374 - "\x23\x84\x62\x64\x33\x83\x27\x95", 14375 - .klen = 32, 14376 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 14377 - "\x00\x00\x00\x00\x00\x00\x00\x00", 14378 - .input = "\x27\xa7\x47\x9b\xef\xa1\xd4\x76" 14379 - "\x48\x9f\x30\x8c\xd4\xcf\xa6\xe2" 14380 - "\xa9\x6e\x4b\xbe\x32\x08\xff\x25" 14381 - "\x28\x7d\xd3\x81\x96\x16\xe8\x9c" 14382 - "\xc7\x8c\xf7\xf5\xe5\x43\x44\x5f" 14383 - "\x83\x33\xd8\xfa\x7f\x56\x00\x00" 14384 - "\x05\x27\x9f\xa5\xd8\xb5\xe4\xad" 14385 - "\x40\xe7\x36\xdd\xb4\xd3\x54\x12" 14386 - "\x32\x80\x63\xfd\x2a\xab\x53\xe5" 14387 - "\xea\x1e\x0a\x9f\x33\x25\x00\xa5" 14388 - "\xdf\x94\x87\xd0\x7a\x5c\x92\xcc" 14389 - "\x51\x2c\x88\x66\xc7\xe8\x60\xce" 14390 - "\x93\xfd\xf1\x66\xa2\x49\x12\xb4" 14391 - "\x22\x97\x61\x46\xae\x20\xce\x84" 14392 - "\x6b\xb7\xdc\x9b\xa9\x4a\x76\x7a" 14393 - "\xae\xf2\x0c\x0d\x61\xad\x02\x65" 14394 - "\x5e\xa9\x2d\xc4\xc4\xe4\x1a\x89" 14395 - "\x52\xc6\x51\xd3\x31\x74\xbe\x51" 14396 - "\xa1\x0c\x42\x11\x10\xe6\xd8\x15" 14397 - "\x88\xed\xe8\x21\x03\xa2\x52\xd8" 14398 - "\xa7\x50\xe8\x76\x8d\xef\xff\xed" 14399 - "\x91\x22\x81\x0a\xae\xb9\x9f\x91" 14400 - "\x72\xaf\x82\xb6\x04\xdc\x4b\x8e" 14401 - "\x51\xbc\xb0\x82\x35\xa6\xf4\x34" 14402 - "\x13\x32\xe4\xca\x60\x48\x2a\x4b" 14403 - "\xa1\xa0\x3b\x3e\x65\x00\x8f\xc5" 14404 - "\xda\x76\xb7\x0b\xf1\x69\x0d\xb4" 14405 - "\xea\xe2\x9c\x5f\x1b\xad\xd0\x3c" 14406 - "\x5c\xcf\x2a\x55\xd7\x05\xdd\xcd" 14407 - "\x86\xd4\x49\x51\x1c\xeb\x7e\xc3" 14408 - "\x0b\xf1\x2b\x1f\xa3\x5b\x91\x3f" 14409 - "\x9f\x74\x7a\x8a\xfd\x1b\x13\x0e" 14410 - "\x94\xbf\xf9\x4e\xff\xd0\x1a\x91" 14411 - "\x73\x5c\xa1\x72\x6a\xcd\x0b\x19" 14412 - "\x7c\x4e\x5b\x03\x39\x36\x97\xe1" 14413 - "\x26\x82\x6f\xb6\xbb\xde\x8e\xcc" 14414 - "\x1e\x08\x29\x85\x16\xe2\xc9\xed" 14415 - "\x03\xff\x3c\x1b\x78\x60\xf6\xde" 14416 - "\x76\xd4\xce\xcd\x94\xc8\x11\x98" 14417 - "\x55\xef\x52\x97\xca\x67\xe9\xf3" 14418 - "\xe7\xff\x72\xb1\xe9\x97\x85\xca" 14419 - "\x0a\x7e\x77\x20\xc5\xb3\x6d\xc6" 14420 - "\xd7\x2c\xac\x95\x74\xc8\xcb\xbc" 14421 - "\x2f\x80\x1e\x23\xe5\x6f\xd3\x44" 14422 - "\xb0\x7f\x22\x15\x4b\xeb\xa0\xf0" 14423 - "\x8c\xe8\x89\x1e\x64\x3e\xd9\x95" 14424 - "\xc9\x4d\x9a\x69\xc9\xf1\xb5\xf4" 14425 - "\x99\x02\x7a\x78\x57\x2a\xee\xbd" 14426 - "\x74\xd2\x0c\xc3\x98\x81\xc2\x13" 14427 - "\xee\x77\x0b\x10\x10\xe4\xbe\xa7" 14428 - "\x18\x84\x69\x77\xae\x11\x9f\x7a" 14429 - "\x02\x3a\xb5\x8c\xca\x0a\xd7\x52" 14430 - "\xaf\xe6\x56\xbb\x3c\x17\x25\x6a" 14431 - "\x9f\x6e\x9b\xf1\x9f\xdd\x5a\x38" 14432 - "\xfc\x82\xbb\xe8\x72\xc5\x53\x9e" 14433 - "\xdb\x60\x9e\xf4\xf7\x9c\x20\x3e" 14434 - "\xbb\x14\x0f\x2e\x58\x3c\xb2\xad" 14435 - "\x15\xb4\xaa\x5b\x65\x50\x16\xa8" 14436 - "\x44\x92\x77\xdb\xd4\x77\xef\x2c" 14437 - "\x8d\x6c\x01\x7d\xb7\x38\xb1\x8d" 14438 - "\xeb\x4a\x42\x7d\x19\x23\xce\x3f" 14439 - "\xf2\x62\x73\x57\x79\xa4\x18\xf2" 14440 - "\x0a\x28\x2d\xf9\x20\x14\x7b\xea" 14441 - "\xbe\x42\x1e\xe5\x31\x9d\x05\x68", 14442 - .ilen = 512, 14443 - .result = "\x00\x01\x02\x03\x04\x05\x06\x07" 14444 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 14445 - "\x10\x11\x12\x13\x14\x15\x16\x17" 14446 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" 14447 - "\x20\x21\x22\x23\x24\x25\x26\x27" 14448 - "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f" 14449 - "\x30\x31\x32\x33\x34\x35\x36\x37" 14450 - "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f" 14451 - "\x40\x41\x42\x43\x44\x45\x46\x47" 14452 - "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f" 14453 - "\x50\x51\x52\x53\x54\x55\x56\x57" 14454 - "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f" 14455 - "\x60\x61\x62\x63\x64\x65\x66\x67" 14456 - "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f" 14457 - "\x70\x71\x72\x73\x74\x75\x76\x77" 14458 - "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f" 14459 - "\x80\x81\x82\x83\x84\x85\x86\x87" 14460 - "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f" 14461 - "\x90\x91\x92\x93\x94\x95\x96\x97" 14462 - "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f" 14463 - "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7" 14464 - "\xa8\xa9\xaa\xab\xac\xad\xae\xaf" 14465 - "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7" 14466 - "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf" 14467 - "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7" 14468 - "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf" 14469 - "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7" 14470 - "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf" 14471 - "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7" 14472 - "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 14473 - "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 14474 - "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff" 14475 - "\x00\x01\x02\x03\x04\x05\x06\x07" 14476 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 14477 - "\x10\x11\x12\x13\x14\x15\x16\x17" 14478 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" 14479 - "\x20\x21\x22\x23\x24\x25\x26\x27" 14480 - "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f" 14481 - "\x30\x31\x32\x33\x34\x35\x36\x37" 14482 - "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f" 14483 - "\x40\x41\x42\x43\x44\x45\x46\x47" 14484 - "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f" 14485 - "\x50\x51\x52\x53\x54\x55\x56\x57" 14486 - "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f" 14487 - "\x60\x61\x62\x63\x64\x65\x66\x67" 14488 - "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f" 14489 - "\x70\x71\x72\x73\x74\x75\x76\x77" 14490 - "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f" 14491 - "\x80\x81\x82\x83\x84\x85\x86\x87" 14492 - "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f" 14493 - "\x90\x91\x92\x93\x94\x95\x96\x97" 14494 - "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f" 14495 - "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7" 14496 - "\xa8\xa9\xaa\xab\xac\xad\xae\xaf" 14497 - "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7" 14498 - "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf" 14499 - "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7" 14500 - "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf" 14501 - "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7" 14502 - "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf" 14503 - "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7" 14504 - "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 14505 - "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 14506 - "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 14507 - .rlen = 512, 14508 - }, { /* XTS-AES 10, XTS-AES-256, data unit 512 bytes */ 14509 - .key = "\x27\x18\x28\x18\x28\x45\x90\x45" 14510 - "\x23\x53\x60\x28\x74\x71\x35\x26" 14511 - "\x62\x49\x77\x57\x24\x70\x93\x69" 14512 - "\x99\x59\x57\x49\x66\x96\x76\x27" 14513 - "\x31\x41\x59\x26\x53\x58\x97\x93" 14514 - "\x23\x84\x62\x64\x33\x83\x27\x95" 14515 - "\x02\x88\x41\x97\x16\x93\x99\x37" 14516 - "\x51\x05\x82\x09\x74\x94\x45\x92", 14517 - .klen = 64, 14518 - .iv = "\xff\x00\x00\x00\x00\x00\x00\x00" 14519 - "\x00\x00\x00\x00\x00\x00\x00\x00", 14520 - .input = "\x1c\x3b\x3a\x10\x2f\x77\x03\x86" 14521 - "\xe4\x83\x6c\x99\xe3\x70\xcf\x9b" 14522 - "\xea\x00\x80\x3f\x5e\x48\x23\x57" 14523 - "\xa4\xae\x12\xd4\x14\xa3\xe6\x3b" 14524 - "\x5d\x31\xe2\x76\xf8\xfe\x4a\x8d" 14525 - "\x66\xb3\x17\xf9\xac\x68\x3f\x44" 14526 - "\x68\x0a\x86\xac\x35\xad\xfc\x33" 14527 - "\x45\xbe\xfe\xcb\x4b\xb1\x88\xfd" 14528 - "\x57\x76\x92\x6c\x49\xa3\x09\x5e" 14529 - "\xb1\x08\xfd\x10\x98\xba\xec\x70" 14530 - "\xaa\xa6\x69\x99\xa7\x2a\x82\xf2" 14531 - "\x7d\x84\x8b\x21\xd4\xa7\x41\xb0" 14532 - "\xc5\xcd\x4d\x5f\xff\x9d\xac\x89" 14533 - "\xae\xba\x12\x29\x61\xd0\x3a\x75" 14534 - "\x71\x23\xe9\x87\x0f\x8a\xcf\x10" 14535 - "\x00\x02\x08\x87\x89\x14\x29\xca" 14536 - "\x2a\x3e\x7a\x7d\x7d\xf7\xb1\x03" 14537 - "\x55\x16\x5c\x8b\x9a\x6d\x0a\x7d" 14538 - "\xe8\xb0\x62\xc4\x50\x0d\xc4\xcd" 14539 - "\x12\x0c\x0f\x74\x18\xda\xe3\xd0" 14540 - "\xb5\x78\x1c\x34\x80\x3f\xa7\x54" 14541 - "\x21\xc7\x90\xdf\xe1\xde\x18\x34" 14542 - "\xf2\x80\xd7\x66\x7b\x32\x7f\x6c" 14543 - "\x8c\xd7\x55\x7e\x12\xac\x3a\x0f" 14544 - "\x93\xec\x05\xc5\x2e\x04\x93\xef" 14545 - "\x31\xa1\x2d\x3d\x92\x60\xf7\x9a" 14546 - "\x28\x9d\x6a\x37\x9b\xc7\x0c\x50" 14547 - "\x84\x14\x73\xd1\xa8\xcc\x81\xec" 14548 - "\x58\x3e\x96\x45\xe0\x7b\x8d\x96" 14549 - "\x70\x65\x5b\xa5\xbb\xcf\xec\xc6" 14550 - "\xdc\x39\x66\x38\x0a\xd8\xfe\xcb" 14551 - "\x17\xb6\xba\x02\x46\x9a\x02\x0a" 14552 - "\x84\xe1\x8e\x8f\x84\x25\x20\x70" 14553 - "\xc1\x3e\x9f\x1f\x28\x9b\xe5\x4f" 14554 - "\xbc\x48\x14\x57\x77\x8f\x61\x60" 14555 - "\x15\xe1\x32\x7a\x02\xb1\x40\xf1" 14556 - "\x50\x5e\xb3\x09\x32\x6d\x68\x37" 14557 - "\x8f\x83\x74\x59\x5c\x84\x9d\x84" 14558 - "\xf4\xc3\x33\xec\x44\x23\x88\x51" 14559 - "\x43\xcb\x47\xbd\x71\xc5\xed\xae" 14560 - "\x9b\xe6\x9a\x2f\xfe\xce\xb1\xbe" 14561 - "\xc9\xde\x24\x4f\xbe\x15\x99\x2b" 14562 - "\x11\xb7\x7c\x04\x0f\x12\xbd\x8f" 14563 - "\x6a\x97\x5a\x44\xa0\xf9\x0c\x29" 14564 - "\xa9\xab\xc3\xd4\xd8\x93\x92\x72" 14565 - "\x84\xc5\x87\x54\xcc\xe2\x94\x52" 14566 - "\x9f\x86\x14\xdc\xd2\xab\xa9\x91" 14567 - "\x92\x5f\xed\xc4\xae\x74\xff\xac" 14568 - "\x6e\x33\x3b\x93\xeb\x4a\xff\x04" 14569 - "\x79\xda\x9a\x41\x0e\x44\x50\xe0" 14570 - "\xdd\x7a\xe4\xc6\xe2\x91\x09\x00" 14571 - "\x57\x5d\xa4\x01\xfc\x07\x05\x9f" 14572 - "\x64\x5e\x8b\x7e\x9b\xfd\xef\x33" 14573 - "\x94\x30\x54\xff\x84\x01\x14\x93" 14574 - "\xc2\x7b\x34\x29\xea\xed\xb4\xed" 14575 - "\x53\x76\x44\x1a\x77\xed\x43\x85" 14576 - "\x1a\xd7\x7f\x16\xf5\x41\xdf\xd2" 14577 - "\x69\xd5\x0d\x6a\x5f\x14\xfb\x0a" 14578 - "\xab\x1c\xbb\x4c\x15\x50\xbe\x97" 14579 - "\xf7\xab\x40\x66\x19\x3c\x4c\xaa" 14580 - "\x77\x3d\xad\x38\x01\x4b\xd2\x09" 14581 - "\x2f\xa7\x55\xc8\x24\xbb\x5e\x54" 14582 - "\xc4\xf3\x6f\xfd\xa9\xfc\xea\x70" 14583 - "\xb9\xc6\xe6\x93\xe1\x48\xc1\x51", 14584 - .ilen = 512, 14585 - .result = "\x00\x01\x02\x03\x04\x05\x06\x07" 14586 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 14587 - "\x10\x11\x12\x13\x14\x15\x16\x17" 14588 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" 14589 - "\x20\x21\x22\x23\x24\x25\x26\x27" 14590 - "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f" 14591 - "\x30\x31\x32\x33\x34\x35\x36\x37" 14592 - "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f" 14593 - "\x40\x41\x42\x43\x44\x45\x46\x47" 14594 - "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f" 14595 - "\x50\x51\x52\x53\x54\x55\x56\x57" 14596 - "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f" 14597 - "\x60\x61\x62\x63\x64\x65\x66\x67" 14598 - "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f" 14599 - "\x70\x71\x72\x73\x74\x75\x76\x77" 14600 - "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f" 14601 - "\x80\x81\x82\x83\x84\x85\x86\x87" 14602 - "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f" 14603 - "\x90\x91\x92\x93\x94\x95\x96\x97" 14604 - "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f" 14605 - "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7" 14606 - "\xa8\xa9\xaa\xab\xac\xad\xae\xaf" 14607 - "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7" 14608 - "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf" 14609 - "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7" 14610 - "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf" 14611 - "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7" 14612 - "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf" 14613 - "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7" 14614 - "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 14615 - "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 14616 - "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff" 14617 - "\x00\x01\x02\x03\x04\x05\x06\x07" 14618 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 14619 - "\x10\x11\x12\x13\x14\x15\x16\x17" 14620 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" 14621 - "\x20\x21\x22\x23\x24\x25\x26\x27" 14622 - "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f" 14623 - "\x30\x31\x32\x33\x34\x35\x36\x37" 14624 - "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f" 14625 - "\x40\x41\x42\x43\x44\x45\x46\x47" 14626 - "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f" 14627 - "\x50\x51\x52\x53\x54\x55\x56\x57" 14628 - "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f" 14629 - "\x60\x61\x62\x63\x64\x65\x66\x67" 14630 - "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f" 14631 - "\x70\x71\x72\x73\x74\x75\x76\x77" 14632 - "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f" 14633 - "\x80\x81\x82\x83\x84\x85\x86\x87" 14634 - "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f" 14635 - "\x90\x91\x92\x93\x94\x95\x96\x97" 14636 - "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f" 14637 - "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7" 14638 - "\xa8\xa9\xaa\xab\xac\xad\xae\xaf" 14639 - "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7" 14640 - "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf" 14641 - "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7" 14642 - "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf" 14643 - "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7" 14644 - "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf" 14645 - "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7" 14646 - "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 14647 - "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 14648 - "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 14649 - .rlen = 512, 14650 - .also_non_np = 1, 14651 - .np = 3, 14652 - .tap = { 512 - 20, 4, 16 }, 14653 - } 14654 - }; 14655 - 14656 - 14657 - static const struct cipher_testvec aes_ctr_enc_tv_template[] = { 21141 + static const struct cipher_testvec aes_ctr_tv_template[] = { 14658 21142 { /* From NIST Special Publication 800-38A, Appendix F.5 */ 14659 21143 .key = "\x2b\x7e\x15\x16\x28\xae\xd2\xa6" 14660 21144 "\xab\xf7\x15\x88\x09\xcf\x4f\x3c", 14661 21145 .klen = 16, 14662 21146 .iv = "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 14663 21147 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 14664 - .input = "\x6b\xc1\xbe\xe2\x2e\x40\x9f\x96" 21148 + .ptext = "\x6b\xc1\xbe\xe2\x2e\x40\x9f\x96" 14665 21149 "\xe9\x3d\x7e\x11\x73\x93\x17\x2a" 14666 21150 "\xae\x2d\x8a\x57\x1e\x03\xac\x9c" 14667 21151 "\x9e\xb7\x6f\xac\x45\xaf\x8e\x51" ··· 14325 21497 "\xe5\xfb\xc1\x19\x1a\x0a\x52\xef" 14326 21498 "\xf6\x9f\x24\x45\xdf\x4f\x9b\x17" 14327 21499 "\xad\x2b\x41\x7b\xe6\x6c\x37\x10", 14328 - .ilen = 64, 14329 - .result = "\x87\x4d\x61\x91\xb6\x20\xe3\x26" 21500 + .ctext = "\x87\x4d\x61\x91\xb6\x20\xe3\x26" 14330 21501 "\x1b\xef\x68\x64\x99\x0d\xb6\xce" 14331 21502 "\x98\x06\xf6\x6b\x79\x70\xfd\xff" 14332 21503 "\x86\x17\x18\x7b\xb9\xff\xfd\xff" ··· 14333 21506 "\x5b\x4f\x09\x02\x0d\xb0\x3e\xab" 14334 21507 "\x1e\x03\x1d\xda\x2f\xbe\x03\xd1" 14335 21508 "\x79\x21\x70\xa0\xf3\x00\x9c\xee", 14336 - .rlen = 64, 21509 + .len = 64, 14337 21510 }, { 14338 21511 .key = "\x8e\x73\xb0\xf7\xda\x0e\x64\x52" 14339 21512 "\xc8\x10\xf3\x2b\x80\x90\x79\xe5" ··· 14341 21514 .klen = 24, 14342 21515 .iv = "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 14343 21516 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 14344 - .input = "\x6b\xc1\xbe\xe2\x2e\x40\x9f\x96" 21517 + .ptext = "\x6b\xc1\xbe\xe2\x2e\x40\x9f\x96" 14345 21518 "\xe9\x3d\x7e\x11\x73\x93\x17\x2a" 14346 21519 "\xae\x2d\x8a\x57\x1e\x03\xac\x9c" 14347 21520 "\x9e\xb7\x6f\xac\x45\xaf\x8e\x51" ··· 14349 21522 "\xe5\xfb\xc1\x19\x1a\x0a\x52\xef" 14350 21523 "\xf6\x9f\x24\x45\xdf\x4f\x9b\x17" 14351 21524 "\xad\x2b\x41\x7b\xe6\x6c\x37\x10", 14352 - .ilen = 64, 14353 - .result = "\x1a\xbc\x93\x24\x17\x52\x1c\xa2" 21525 + .ctext = "\x1a\xbc\x93\x24\x17\x52\x1c\xa2" 14354 21526 "\x4f\x2b\x04\x59\xfe\x7e\x6e\x0b" 14355 21527 "\x09\x03\x39\xec\x0a\xa6\xfa\xef" 14356 21528 "\xd5\xcc\xc2\xc6\xf4\xce\x8e\x94" ··· 14357 21531 "\xd1\xbd\x1d\x66\x56\x20\xab\xf7" 14358 21532 "\x4f\x78\xa7\xf6\xd2\x98\x09\x58" 14359 21533 "\x5a\x97\xda\xec\x58\xc6\xb0\x50", 14360 - .rlen = 64, 21534 + .len = 64, 14361 21535 }, { 14362 21536 .key = "\x60\x3d\xeb\x10\x15\xca\x71\xbe" 14363 21537 "\x2b\x73\xae\xf0\x85\x7d\x77\x81" ··· 14366 21540 .klen = 32, 14367 21541 .iv = "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 14368 21542 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 14369 - .input = "\x6b\xc1\xbe\xe2\x2e\x40\x9f\x96" 21543 + .ptext = "\x6b\xc1\xbe\xe2\x2e\x40\x9f\x96" 14370 21544 "\xe9\x3d\x7e\x11\x73\x93\x17\x2a" 14371 21545 "\xae\x2d\x8a\x57\x1e\x03\xac\x9c" 14372 21546 "\x9e\xb7\x6f\xac\x45\xaf\x8e\x51" ··· 14374 21548 "\xe5\xfb\xc1\x19\x1a\x0a\x52\xef" 14375 21549 "\xf6\x9f\x24\x45\xdf\x4f\x9b\x17" 14376 21550 "\xad\x2b\x41\x7b\xe6\x6c\x37\x10", 14377 - .ilen = 64, 14378 - .result = "\x60\x1e\xc3\x13\x77\x57\x89\xa5" 21551 + .ctext = "\x60\x1e\xc3\x13\x77\x57\x89\xa5" 14379 21552 "\xb7\xa7\xf5\x04\xbb\xf3\xd2\x28" 14380 21553 "\xf4\x43\xe3\xca\x4d\x62\xb5\x9a" 14381 21554 "\xca\x84\xe9\x90\xca\xca\xf5\xc5" ··· 14382 21557 "\xe8\x70\x17\xba\x2d\x84\x98\x8d" 14383 21558 "\xdf\xc9\xc5\x8d\xb6\x7a\xad\xa6" 14384 21559 "\x13\xc2\xdd\x08\x45\x79\x41\xa6", 14385 - .rlen = 64, 21560 + .len = 64, 14386 21561 }, { /* Generated with Crypto++ */ 14387 21562 .key = "\xC9\x83\xA6\xC9\xEC\x0F\x32\x55" 14388 21563 "\x0F\x32\x55\x78\x9B\xBE\x78\x9B" ··· 14391 21566 .klen = 32, 14392 21567 .iv = "\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF" 14393 21568 "\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFD", 14394 - .input = "\x50\xB9\x22\xAE\x17\x80\x0C\x75" 21569 + .ptext = "\x50\xB9\x22\xAE\x17\x80\x0C\x75" 14395 21570 "\xDE\x47\xD3\x3C\xA5\x0E\x9A\x03" 14396 21571 "\x6C\xF8\x61\xCA\x33\xBF\x28\x91" 14397 21572 "\x1D\x86\xEF\x58\xE4\x4D\xB6\x1F" ··· 14453 21628 "\xAE\x17\xA3\x0C\x75\x01\x6A\xD3" 14454 21629 "\x3C\xC8\x31\x9A\x03\x8F\xF8\x61" 14455 21630 "\xED\x56\xBF\x28\xB4\x1D\x86\x12", 14456 - .ilen = 496, 14457 - .result = "\x04\xF3\xD3\x88\x17\xEF\xDC\xEF" 21631 + .ctext = "\x04\xF3\xD3\x88\x17\xEF\xDC\xEF" 14458 21632 "\x8B\x04\xF8\x3A\x66\x8D\x1A\x53" 14459 21633 "\x57\x1F\x4B\x23\xE4\xA0\xAF\xF9" 14460 21634 "\x69\x95\x35\x98\x8D\x4D\x8C\xC1" ··· 14515 21691 "\x10\x09\x9B\x46\x9B\xF2\x2C\x2B" 14516 21692 "\xFA\x3A\x05\x4C\xFA\xD1\xFF\xFE" 14517 21693 "\xF1\x4C\xE5\xB2\x91\x64\x0C\x51", 14518 - .rlen = 496, 21694 + .len = 496, 14519 21695 .also_non_np = 1, 14520 21696 .np = 3, 14521 21697 .tap = { 496 - 20, 4, 16 }, ··· 14527 21703 .klen = 32, 14528 21704 .iv = "\xE7\x82\x1D\xB8\x53\x11\xAC\x47" 14529 21705 "\xE2\x7D\x18\xD6\x71\x0C\xA7\x42", 14530 - .input = "\x50\xB9\x22\xAE\x17\x80\x0C\x75" 21706 + .ptext = "\x50\xB9\x22\xAE\x17\x80\x0C\x75" 14531 21707 "\xDE\x47\xD3\x3C\xA5\x0E\x9A\x03" 14532 21708 "\x6C\xF8\x61\xCA\x33\xBF\x28\x91" 14533 21709 "\x1D\x86\xEF\x58\xE4\x4D\xB6\x1F" ··· 14590 21766 "\x3C\xC8\x31\x9A\x03\x8F\xF8\x61" 14591 21767 "\xED\x56\xBF\x28\xB4\x1D\x86\x12" 14592 21768 "\x7B\xE4\x4D", 14593 - .ilen = 499, 14594 - .result = "\xDA\x4E\x3F\xBC\xE8\xB6\x3A\xA2" 21769 + .ctext = "\xDA\x4E\x3F\xBC\xE8\xB6\x3A\xA2" 14595 21770 "\xD5\x4D\x84\x4A\xA9\x0C\xE1\xA5" 14596 21771 "\xB8\x73\xBC\xF9\xBB\x59\x2F\x44" 14597 21772 "\x8B\xAB\x82\x6C\xB4\x32\x9A\xDE" ··· 14653 21830 "\xD0\xE9\x54\x99\x5D\xBA\x3B\x11" 14654 21831 "\xD8\xFE\xC9\x5B\x5C\x25\xE5\x76" 14655 21832 "\xFB\xF2\x3F", 14656 - .rlen = 499, 21833 + .len = 499, 14657 21834 .also_non_np = 1, 14658 21835 .np = 2, 14659 21836 .tap = { 499 - 16, 16 }, 14660 21837 }, 14661 21838 }; 14662 21839 14663 - static const struct cipher_testvec aes_ctr_dec_tv_template[] = { 14664 - { /* From NIST Special Publication 800-38A, Appendix F.5 */ 14665 - .key = "\x2b\x7e\x15\x16\x28\xae\xd2\xa6" 14666 - "\xab\xf7\x15\x88\x09\xcf\x4f\x3c", 14667 - .klen = 16, 14668 - .iv = "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 14669 - "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 14670 - .input = "\x87\x4d\x61\x91\xb6\x20\xe3\x26" 14671 - "\x1b\xef\x68\x64\x99\x0d\xb6\xce" 14672 - "\x98\x06\xf6\x6b\x79\x70\xfd\xff" 14673 - "\x86\x17\x18\x7b\xb9\xff\xfd\xff" 14674 - "\x5a\xe4\xdf\x3e\xdb\xd5\xd3\x5e" 14675 - "\x5b\x4f\x09\x02\x0d\xb0\x3e\xab" 14676 - "\x1e\x03\x1d\xda\x2f\xbe\x03\xd1" 14677 - "\x79\x21\x70\xa0\xf3\x00\x9c\xee", 14678 - .ilen = 64, 14679 - .result = "\x6b\xc1\xbe\xe2\x2e\x40\x9f\x96" 14680 - "\xe9\x3d\x7e\x11\x73\x93\x17\x2a" 14681 - "\xae\x2d\x8a\x57\x1e\x03\xac\x9c" 14682 - "\x9e\xb7\x6f\xac\x45\xaf\x8e\x51" 14683 - "\x30\xc8\x1c\x46\xa3\x5c\xe4\x11" 14684 - "\xe5\xfb\xc1\x19\x1a\x0a\x52\xef" 14685 - "\xf6\x9f\x24\x45\xdf\x4f\x9b\x17" 14686 - "\xad\x2b\x41\x7b\xe6\x6c\x37\x10", 14687 - .rlen = 64, 14688 - }, { 14689 - .key = "\x8e\x73\xb0\xf7\xda\x0e\x64\x52" 14690 - "\xc8\x10\xf3\x2b\x80\x90\x79\xe5" 14691 - "\x62\xf8\xea\xd2\x52\x2c\x6b\x7b", 14692 - .klen = 24, 14693 - .iv = "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 14694 - "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 14695 - .input = "\x1a\xbc\x93\x24\x17\x52\x1c\xa2" 14696 - "\x4f\x2b\x04\x59\xfe\x7e\x6e\x0b" 14697 - "\x09\x03\x39\xec\x0a\xa6\xfa\xef" 14698 - "\xd5\xcc\xc2\xc6\xf4\xce\x8e\x94" 14699 - "\x1e\x36\xb2\x6b\xd1\xeb\xc6\x70" 14700 - "\xd1\xbd\x1d\x66\x56\x20\xab\xf7" 14701 - "\x4f\x78\xa7\xf6\xd2\x98\x09\x58" 14702 - "\x5a\x97\xda\xec\x58\xc6\xb0\x50", 14703 - .ilen = 64, 14704 - .result = "\x6b\xc1\xbe\xe2\x2e\x40\x9f\x96" 14705 - "\xe9\x3d\x7e\x11\x73\x93\x17\x2a" 14706 - "\xae\x2d\x8a\x57\x1e\x03\xac\x9c" 14707 - "\x9e\xb7\x6f\xac\x45\xaf\x8e\x51" 14708 - "\x30\xc8\x1c\x46\xa3\x5c\xe4\x11" 14709 - "\xe5\xfb\xc1\x19\x1a\x0a\x52\xef" 14710 - "\xf6\x9f\x24\x45\xdf\x4f\x9b\x17" 14711 - "\xad\x2b\x41\x7b\xe6\x6c\x37\x10", 14712 - .rlen = 64, 14713 - }, { 14714 - .key = "\x60\x3d\xeb\x10\x15\xca\x71\xbe" 14715 - "\x2b\x73\xae\xf0\x85\x7d\x77\x81" 14716 - "\x1f\x35\x2c\x07\x3b\x61\x08\xd7" 14717 - "\x2d\x98\x10\xa3\x09\x14\xdf\xf4", 14718 - .klen = 32, 14719 - .iv = "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 14720 - "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 14721 - .input = "\x60\x1e\xc3\x13\x77\x57\x89\xa5" 14722 - "\xb7\xa7\xf5\x04\xbb\xf3\xd2\x28" 14723 - "\xf4\x43\xe3\xca\x4d\x62\xb5\x9a" 14724 - "\xca\x84\xe9\x90\xca\xca\xf5\xc5" 14725 - "\x2b\x09\x30\xda\xa2\x3d\xe9\x4c" 14726 - "\xe8\x70\x17\xba\x2d\x84\x98\x8d" 14727 - "\xdf\xc9\xc5\x8d\xb6\x7a\xad\xa6" 14728 - "\x13\xc2\xdd\x08\x45\x79\x41\xa6", 14729 - .ilen = 64, 14730 - .result = "\x6b\xc1\xbe\xe2\x2e\x40\x9f\x96" 14731 - "\xe9\x3d\x7e\x11\x73\x93\x17\x2a" 14732 - "\xae\x2d\x8a\x57\x1e\x03\xac\x9c" 14733 - "\x9e\xb7\x6f\xac\x45\xaf\x8e\x51" 14734 - "\x30\xc8\x1c\x46\xa3\x5c\xe4\x11" 14735 - "\xe5\xfb\xc1\x19\x1a\x0a\x52\xef" 14736 - "\xf6\x9f\x24\x45\xdf\x4f\x9b\x17" 14737 - "\xad\x2b\x41\x7b\xe6\x6c\x37\x10", 14738 - .rlen = 64, 14739 - }, { /* Generated with Crypto++ */ 14740 - .key = "\xC9\x83\xA6\xC9\xEC\x0F\x32\x55" 14741 - "\x0F\x32\x55\x78\x9B\xBE\x78\x9B" 14742 - "\xBE\xE1\x04\x27\xE1\x04\x27\x4A" 14743 - "\x6D\x90\x4A\x6D\x90\xB3\xD6\xF9", 14744 - .klen = 32, 14745 - .iv = "\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF" 14746 - "\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFD", 14747 - .input = "\x04\xF3\xD3\x88\x17\xEF\xDC\xEF" 14748 - "\x8B\x04\xF8\x3A\x66\x8D\x1A\x53" 14749 - "\x57\x1F\x4B\x23\xE4\xA0\xAF\xF9" 14750 - "\x69\x95\x35\x98\x8D\x4D\x8C\xC1" 14751 - "\xF0\xB2\x7F\x80\xBB\x54\x28\xA2" 14752 - "\x7A\x1B\x9F\x77\xEC\x0E\x6E\xDE" 14753 - "\xF0\xEC\xB8\xE4\x20\x62\xEE\xDB" 14754 - "\x5D\xF5\xDD\xE3\x54\xFC\xDD\xEB" 14755 - "\x6A\xEE\x65\xA1\x21\xD6\xD7\x81" 14756 - "\x47\x61\x12\x4D\xC2\x8C\xFA\x78" 14757 - "\x1F\x28\x02\x01\xC3\xFC\x1F\xEC" 14758 - "\x0F\x10\x4F\xB3\x12\x45\xC6\x3B" 14759 - "\x7E\x08\xF9\x5A\xD0\x5D\x73\x2D" 14760 - "\x58\xA4\xE5\xCB\x1C\xB4\xCE\x74" 14761 - "\x32\x41\x1F\x31\x9C\x08\xA2\x5D" 14762 - "\x67\xEB\x72\x1D\xF8\xE7\x70\x54" 14763 - "\x34\x4B\x31\x69\x84\x66\x96\x44" 14764 - "\x56\xCC\x1E\xD9\xE6\x13\x6A\xB9" 14765 - "\x2D\x0A\x05\x45\x2D\x90\xCC\xDF" 14766 - "\x16\x5C\x5F\x79\x34\x52\x54\xFE" 14767 - "\xFE\xCD\xAD\x04\x2E\xAD\x86\x06" 14768 - "\x1F\x37\xE8\x28\xBC\xD3\x8F\x5B" 14769 - "\x92\x66\x87\x3B\x8A\x0A\x1A\xCC" 14770 - "\x6E\xAB\x9F\x0B\xFA\x5C\xE6\xFD" 14771 - "\x3C\x98\x08\x12\xEC\xAA\x9E\x11" 14772 - "\xCA\xB2\x1F\xCE\x5E\x5B\xB2\x72" 14773 - "\x9C\xCC\x5D\xC5\xE0\x32\xC0\x56" 14774 - "\xD5\x45\x16\xD2\xAF\x13\x66\xF7" 14775 - "\x8C\x67\xAC\x79\xB2\xAF\x56\x27" 14776 - "\x3F\xCC\xFE\xCB\x1E\xC0\x75\xF1" 14777 - "\xA7\xC9\xC3\x1D\x8E\xDD\xF9\xD4" 14778 - "\x42\xC8\x21\x08\x16\xF7\x01\xD7" 14779 - "\xAC\x8E\x3F\x1D\x56\xC1\x06\xE4" 14780 - "\x9C\x62\xD6\xA5\x6A\x50\x44\xB3" 14781 - "\x35\x1C\x82\xB9\x10\xF9\x42\xA1" 14782 - "\xFC\x74\x9B\x44\x4F\x25\x02\xE3" 14783 - "\x08\xF5\xD4\x32\x39\x08\x11\xE8" 14784 - "\xD2\x6B\x50\x53\xD4\x08\xD1\x6B" 14785 - "\x3A\x4A\x68\x7B\x7C\xCD\x46\x5E" 14786 - "\x0D\x07\x19\xDB\x67\xD7\x98\x91" 14787 - "\xD7\x17\x10\x9B\x7B\x8A\x9B\x33" 14788 - "\xAE\xF3\x00\xA6\xD4\x15\xD9\xEA" 14789 - "\x85\x99\x22\xE8\x91\x38\x70\x83" 14790 - "\x93\x01\x24\x6C\xFA\x9A\xB9\x07" 14791 - "\xEA\x8D\x3B\xD9\x2A\x43\x59\x16" 14792 - "\x2F\x69\xEE\x84\x36\x44\x76\x98" 14793 - "\xF3\x04\x2A\x7C\x74\x3D\x29\x2B" 14794 - "\x0D\xAD\x8F\x44\x82\x9E\x57\x8D" 14795 - "\xAC\xED\x18\x1F\x50\xA4\xF5\x98" 14796 - "\x1F\xBD\x92\x91\x1B\x2D\xA6\xD6" 14797 - "\xD2\xE3\x02\xAA\x92\x3B\xC6\xB3" 14798 - "\x1B\x39\x72\xD5\x26\xCA\x04\xE0" 14799 - "\xFC\x58\x78\xBB\xB1\x3F\xA1\x9C" 14800 - "\x42\x24\x3E\x2E\x22\xBB\x4B\xBA" 14801 - "\xF4\x52\x0A\xE6\xAE\x47\xB4\x7D" 14802 - "\x1D\xA8\xBE\x81\x1A\x75\xDA\xAC" 14803 - "\xA6\x25\x1E\xEF\x3A\xC0\x6C\x63" 14804 - "\xEF\xDC\xC9\x79\x10\x26\xE8\x61" 14805 - "\x29\xFC\xA4\x05\xDF\x7D\x5C\x63" 14806 - "\x10\x09\x9B\x46\x9B\xF2\x2C\x2B" 14807 - "\xFA\x3A\x05\x4C\xFA\xD1\xFF\xFE" 14808 - "\xF1\x4C\xE5\xB2\x91\x64\x0C\x51", 14809 - .ilen = 496, 14810 - .result = "\x50\xB9\x22\xAE\x17\x80\x0C\x75" 14811 - "\xDE\x47\xD3\x3C\xA5\x0E\x9A\x03" 14812 - "\x6C\xF8\x61\xCA\x33\xBF\x28\x91" 14813 - "\x1D\x86\xEF\x58\xE4\x4D\xB6\x1F" 14814 - "\xAB\x14\x7D\x09\x72\xDB\x44\xD0" 14815 - "\x39\xA2\x0B\x97\x00\x69\xF5\x5E" 14816 - "\xC7\x30\xBC\x25\x8E\x1A\x83\xEC" 14817 - "\x55\xE1\x4A\xB3\x1C\xA8\x11\x7A" 14818 - "\x06\x6F\xD8\x41\xCD\x36\x9F\x08" 14819 - "\x94\xFD\x66\xF2\x5B\xC4\x2D\xB9" 14820 - "\x22\x8B\x17\x80\xE9\x52\xDE\x47" 14821 - "\xB0\x19\xA5\x0E\x77\x03\x6C\xD5" 14822 - "\x3E\xCA\x33\x9C\x05\x91\xFA\x63" 14823 - "\xEF\x58\xC1\x2A\xB6\x1F\x88\x14" 14824 - "\x7D\xE6\x4F\xDB\x44\xAD\x16\xA2" 14825 - "\x0B\x74\x00\x69\xD2\x3B\xC7\x30" 14826 - "\x99\x02\x8E\xF7\x60\xEC\x55\xBE" 14827 - "\x27\xB3\x1C\x85\x11\x7A\xE3\x4C" 14828 - "\xD8\x41\xAA\x13\x9F\x08\x71\xFD" 14829 - "\x66\xCF\x38\xC4\x2D\x96\x22\x8B" 14830 - "\xF4\x5D\xE9\x52\xBB\x24\xB0\x19" 14831 - "\x82\x0E\x77\xE0\x49\xD5\x3E\xA7" 14832 - "\x10\x9C\x05\x6E\xFA\x63\xCC\x35" 14833 - "\xC1\x2A\x93\x1F\x88\xF1\x5A\xE6" 14834 - "\x4F\xB8\x21\xAD\x16\x7F\x0B\x74" 14835 - "\xDD\x46\xD2\x3B\xA4\x0D\x99\x02" 14836 - "\x6B\xF7\x60\xC9\x32\xBE\x27\x90" 14837 - "\x1C\x85\xEE\x57\xE3\x4C\xB5\x1E" 14838 - "\xAA\x13\x7C\x08\x71\xDA\x43\xCF" 14839 - "\x38\xA1\x0A\x96\xFF\x68\xF4\x5D" 14840 - "\xC6\x2F\xBB\x24\x8D\x19\x82\xEB" 14841 - "\x54\xE0\x49\xB2\x1B\xA7\x10\x79" 14842 - "\x05\x6E\xD7\x40\xCC\x35\x9E\x07" 14843 - "\x93\xFC\x65\xF1\x5A\xC3\x2C\xB8" 14844 - "\x21\x8A\x16\x7F\xE8\x51\xDD\x46" 14845 - "\xAF\x18\xA4\x0D\x76\x02\x6B\xD4" 14846 - "\x3D\xC9\x32\x9B\x04\x90\xF9\x62" 14847 - "\xEE\x57\xC0\x29\xB5\x1E\x87\x13" 14848 - "\x7C\xE5\x4E\xDA\x43\xAC\x15\xA1" 14849 - "\x0A\x73\xFF\x68\xD1\x3A\xC6\x2F" 14850 - "\x98\x01\x8D\xF6\x5F\xEB\x54\xBD" 14851 - "\x26\xB2\x1B\x84\x10\x79\xE2\x4B" 14852 - "\xD7\x40\xA9\x12\x9E\x07\x70\xFC" 14853 - "\x65\xCE\x37\xC3\x2C\x95\x21\x8A" 14854 - "\xF3\x5C\xE8\x51\xBA\x23\xAF\x18" 14855 - "\x81\x0D\x76\xDF\x48\xD4\x3D\xA6" 14856 - "\x0F\x9B\x04\x6D\xF9\x62\xCB\x34" 14857 - "\xC0\x29\x92\x1E\x87\xF0\x59\xE5" 14858 - "\x4E\xB7\x20\xAC\x15\x7E\x0A\x73" 14859 - "\xDC\x45\xD1\x3A\xA3\x0C\x98\x01" 14860 - "\x6A\xF6\x5F\xC8\x31\xBD\x26\x8F" 14861 - "\x1B\x84\xED\x56\xE2\x4B\xB4\x1D" 14862 - "\xA9\x12\x7B\x07\x70\xD9\x42\xCE" 14863 - "\x37\xA0\x09\x95\xFE\x67\xF3\x5C" 14864 - "\xC5\x2E\xBA\x23\x8C\x18\x81\xEA" 14865 - "\x53\xDF\x48\xB1\x1A\xA6\x0F\x78" 14866 - "\x04\x6D\xD6\x3F\xCB\x34\x9D\x06" 14867 - "\x92\xFB\x64\xF0\x59\xC2\x2B\xB7" 14868 - "\x20\x89\x15\x7E\xE7\x50\xDC\x45" 14869 - "\xAE\x17\xA3\x0C\x75\x01\x6A\xD3" 14870 - "\x3C\xC8\x31\x9A\x03\x8F\xF8\x61" 14871 - "\xED\x56\xBF\x28\xB4\x1D\x86\x12", 14872 - .rlen = 496, 14873 - .also_non_np = 1, 14874 - .np = 3, 14875 - .tap = { 496 - 20, 4, 16 }, 14876 - }, { /* Generated with Crypto++ */ 14877 - .key = "\xC9\x83\xA6\xC9\xEC\x0F\x32\x55" 14878 - "\x0F\x32\x55\x78\x9B\xBE\x78\x9B" 14879 - "\xBE\xE1\x04\x27\xE1\x04\x27\x4A" 14880 - "\x6D\x90\x4A\x6D\x90\xB3\xD6\xF9", 14881 - .klen = 32, 14882 - .iv = "\xE7\x82\x1D\xB8\x53\x11\xAC\x47" 14883 - "\xE2\x7D\x18\xD6\x71\x0C\xA7\x42", 14884 - .input = "\xDA\x4E\x3F\xBC\xE8\xB6\x3A\xA2" 14885 - "\xD5\x4D\x84\x4A\xA9\x0C\xE1\xA5" 14886 - "\xB8\x73\xBC\xF9\xBB\x59\x2F\x44" 14887 - "\x8B\xAB\x82\x6C\xB4\x32\x9A\xDE" 14888 - "\x5A\x0B\xDB\x7A\x6B\xF2\x38\x9F" 14889 - "\x06\xF7\xF7\xFF\xFF\xC0\x8A\x2E" 14890 - "\x76\xEA\x06\x32\x23\xF3\x59\x2E" 14891 - "\x75\xDE\x71\x86\x3C\x98\x23\x44" 14892 - "\x5B\xF2\xFA\x6A\x00\xBB\xC1\xAD" 14893 - "\x58\xBD\x3E\x6F\x2E\xB4\x19\x04" 14894 - "\x70\x8B\x92\x55\x23\xE9\x6A\x3A" 14895 - "\x78\x7A\x1B\x10\x85\x52\x9C\x12" 14896 - "\xE4\x55\x81\x21\xCE\x53\xD0\x3B" 14897 - "\x63\x77\x2C\x74\xD1\xF5\x60\xF3" 14898 - "\xA1\xDE\x44\x3C\x8F\x4D\x2F\xDD" 14899 - "\x8A\xFE\x3C\x42\x8E\xD3\xF2\x8E" 14900 - "\xA8\x28\x69\x65\x31\xE1\x45\x83" 14901 - "\xE4\x49\xC4\x9C\xA7\x28\xAA\x21" 14902 - "\xCD\x5D\x0F\x15\xB7\x93\x07\x26" 14903 - "\xB0\x65\x6D\x91\x90\x23\x7A\xC6" 14904 - "\xDB\x68\xB0\xA1\x8E\xA4\x76\x4E" 14905 - "\xC6\x91\x83\x20\x92\x4D\x63\x7A" 14906 - "\x45\x18\x18\x74\x19\xAD\x71\x01" 14907 - "\x6B\x23\xAD\x9D\x4E\xE4\x6E\x46" 14908 - "\xC9\x73\x7A\xF9\x02\x95\xF4\x07" 14909 - "\x0E\x7A\xA6\xC5\xAE\xFA\x15\x2C" 14910 - "\x51\x71\xF1\xDC\x22\xB6\xAC\xD8" 14911 - "\x19\x24\x44\xBC\x0C\xFB\x3C\x2D" 14912 - "\xB1\x50\x47\x15\x0E\xDB\xB6\xD7" 14913 - "\xE8\x61\xE5\x95\x52\x1E\x3E\x49" 14914 - "\x70\xE9\x66\x04\x4C\xE1\xAF\xBD" 14915 - "\xDD\x15\x3B\x20\x59\x24\xFF\xB0" 14916 - "\x39\xAA\xE7\xBF\x23\xA3\x6E\xD5" 14917 - "\x15\xF0\x61\x4F\xAE\x89\x10\x58" 14918 - "\x5A\x33\x95\x52\x2A\xB5\x77\x9C" 14919 - "\xA5\x43\x80\x40\x27\x2D\xAE\xD9" 14920 - "\x3F\xE0\x80\x94\x78\x79\xCB\x7E" 14921 - "\xAD\x12\x44\x4C\xEC\x27\xB0\xEE" 14922 - "\x0B\x05\x2A\x82\x99\x58\xBB\x7A" 14923 - "\x8D\x6D\x9D\x8E\xE2\x8E\xE7\x93" 14924 - "\x2F\xB3\x09\x8D\x06\xD5\xEE\x70" 14925 - "\x16\xAE\x35\xC5\x52\x0F\x46\x1F" 14926 - "\x71\xF9\x5E\xF2\x67\xDC\x98\x2F" 14927 - "\xA3\x23\xAA\xD5\xD0\x49\xF4\xA6" 14928 - "\xF6\xB8\x32\xCD\xD6\x85\x73\x60" 14929 - "\x59\x20\xE7\x55\x0E\x91\xE2\x0C" 14930 - "\x3F\x1C\xEB\x3D\xDF\x52\x64\xF2" 14931 - "\x7D\x8B\x5D\x63\x16\xB9\xB2\x5D" 14932 - "\x5E\xAB\xB2\x97\xAB\x78\x44\xE7" 14933 - "\xC6\x72\x20\xC5\x90\x9B\xDC\x5D" 14934 - "\xB0\xEF\x44\xEF\x87\x31\x8D\xF4" 14935 - "\xFB\x81\x5D\xF7\x96\x96\xD4\x50" 14936 - "\x89\xA7\xF6\xB9\x67\x76\x40\x9E" 14937 - "\x9D\x40\xD5\x2C\x30\xB8\x01\x8F" 14938 - "\xE4\x7B\x71\x48\xA9\xA0\xA0\x1D" 14939 - "\x87\x52\xA4\x91\xA9\xD7\xA9\x51" 14940 - "\xD9\x59\xF7\xCC\x63\x22\xC1\x8D" 14941 - "\x84\x7B\xD8\x22\x32\x5C\x6F\x1D" 14942 - "\x6E\x9F\xFA\xDD\x49\x40\xDC\x37" 14943 - "\x14\x8C\xE1\x80\x1B\xDD\x36\x2A" 14944 - "\xD0\xE9\x54\x99\x5D\xBA\x3B\x11" 14945 - "\xD8\xFE\xC9\x5B\x5C\x25\xE5\x76" 14946 - "\xFB\xF2\x3F", 14947 - .ilen = 499, 14948 - .result = "\x50\xB9\x22\xAE\x17\x80\x0C\x75" 14949 - "\xDE\x47\xD3\x3C\xA5\x0E\x9A\x03" 14950 - "\x6C\xF8\x61\xCA\x33\xBF\x28\x91" 14951 - "\x1D\x86\xEF\x58\xE4\x4D\xB6\x1F" 14952 - "\xAB\x14\x7D\x09\x72\xDB\x44\xD0" 14953 - "\x39\xA2\x0B\x97\x00\x69\xF5\x5E" 14954 - "\xC7\x30\xBC\x25\x8E\x1A\x83\xEC" 14955 - "\x55\xE1\x4A\xB3\x1C\xA8\x11\x7A" 14956 - "\x06\x6F\xD8\x41\xCD\x36\x9F\x08" 14957 - "\x94\xFD\x66\xF2\x5B\xC4\x2D\xB9" 14958 - "\x22\x8B\x17\x80\xE9\x52\xDE\x47" 14959 - "\xB0\x19\xA5\x0E\x77\x03\x6C\xD5" 14960 - "\x3E\xCA\x33\x9C\x05\x91\xFA\x63" 14961 - "\xEF\x58\xC1\x2A\xB6\x1F\x88\x14" 14962 - "\x7D\xE6\x4F\xDB\x44\xAD\x16\xA2" 14963 - "\x0B\x74\x00\x69\xD2\x3B\xC7\x30" 14964 - "\x99\x02\x8E\xF7\x60\xEC\x55\xBE" 14965 - "\x27\xB3\x1C\x85\x11\x7A\xE3\x4C" 14966 - "\xD8\x41\xAA\x13\x9F\x08\x71\xFD" 14967 - "\x66\xCF\x38\xC4\x2D\x96\x22\x8B" 14968 - "\xF4\x5D\xE9\x52\xBB\x24\xB0\x19" 14969 - "\x82\x0E\x77\xE0\x49\xD5\x3E\xA7" 14970 - "\x10\x9C\x05\x6E\xFA\x63\xCC\x35" 14971 - "\xC1\x2A\x93\x1F\x88\xF1\x5A\xE6" 14972 - "\x4F\xB8\x21\xAD\x16\x7F\x0B\x74" 14973 - "\xDD\x46\xD2\x3B\xA4\x0D\x99\x02" 14974 - "\x6B\xF7\x60\xC9\x32\xBE\x27\x90" 14975 - "\x1C\x85\xEE\x57\xE3\x4C\xB5\x1E" 14976 - "\xAA\x13\x7C\x08\x71\xDA\x43\xCF" 14977 - "\x38\xA1\x0A\x96\xFF\x68\xF4\x5D" 14978 - "\xC6\x2F\xBB\x24\x8D\x19\x82\xEB" 14979 - "\x54\xE0\x49\xB2\x1B\xA7\x10\x79" 14980 - "\x05\x6E\xD7\x40\xCC\x35\x9E\x07" 14981 - "\x93\xFC\x65\xF1\x5A\xC3\x2C\xB8" 14982 - "\x21\x8A\x16\x7F\xE8\x51\xDD\x46" 14983 - "\xAF\x18\xA4\x0D\x76\x02\x6B\xD4" 14984 - "\x3D\xC9\x32\x9B\x04\x90\xF9\x62" 14985 - "\xEE\x57\xC0\x29\xB5\x1E\x87\x13" 14986 - "\x7C\xE5\x4E\xDA\x43\xAC\x15\xA1" 14987 - "\x0A\x73\xFF\x68\xD1\x3A\xC6\x2F" 14988 - "\x98\x01\x8D\xF6\x5F\xEB\x54\xBD" 14989 - "\x26\xB2\x1B\x84\x10\x79\xE2\x4B" 14990 - "\xD7\x40\xA9\x12\x9E\x07\x70\xFC" 14991 - "\x65\xCE\x37\xC3\x2C\x95\x21\x8A" 14992 - "\xF3\x5C\xE8\x51\xBA\x23\xAF\x18" 14993 - "\x81\x0D\x76\xDF\x48\xD4\x3D\xA6" 14994 - "\x0F\x9B\x04\x6D\xF9\x62\xCB\x34" 14995 - "\xC0\x29\x92\x1E\x87\xF0\x59\xE5" 14996 - "\x4E\xB7\x20\xAC\x15\x7E\x0A\x73" 14997 - "\xDC\x45\xD1\x3A\xA3\x0C\x98\x01" 14998 - "\x6A\xF6\x5F\xC8\x31\xBD\x26\x8F" 14999 - "\x1B\x84\xED\x56\xE2\x4B\xB4\x1D" 15000 - "\xA9\x12\x7B\x07\x70\xD9\x42\xCE" 15001 - "\x37\xA0\x09\x95\xFE\x67\xF3\x5C" 15002 - "\xC5\x2E\xBA\x23\x8C\x18\x81\xEA" 15003 - "\x53\xDF\x48\xB1\x1A\xA6\x0F\x78" 15004 - "\x04\x6D\xD6\x3F\xCB\x34\x9D\x06" 15005 - "\x92\xFB\x64\xF0\x59\xC2\x2B\xB7" 15006 - "\x20\x89\x15\x7E\xE7\x50\xDC\x45" 15007 - "\xAE\x17\xA3\x0C\x75\x01\x6A\xD3" 15008 - "\x3C\xC8\x31\x9A\x03\x8F\xF8\x61" 15009 - "\xED\x56\xBF\x28\xB4\x1D\x86\x12" 15010 - "\x7B\xE4\x4D", 15011 - .rlen = 499, 15012 - .also_non_np = 1, 15013 - .np = 2, 15014 - .tap = { 499 - 16, 16 }, 15015 - }, 15016 - }; 15017 - 15018 - static const struct cipher_testvec aes_ctr_rfc3686_enc_tv_template[] = { 21840 + static const struct cipher_testvec aes_ctr_rfc3686_tv_template[] = { 15019 21841 { /* From RFC 3686 */ 15020 21842 .key = "\xae\x68\x52\xf8\x12\x10\x67\xcc" 15021 21843 "\x4b\xf7\xa5\x76\x55\x77\xf3\x9e" 15022 21844 "\x00\x00\x00\x30", 15023 21845 .klen = 20, 15024 21846 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00", 15025 - .input = "Single block msg", 15026 - .ilen = 16, 15027 - .result = "\xe4\x09\x5d\x4f\xb7\xa7\xb3\x79" 21847 + .ptext = "Single block msg", 21848 + .ctext = "\xe4\x09\x5d\x4f\xb7\xa7\xb3\x79" 15028 21849 "\x2d\x61\x75\xa3\x26\x13\x11\xb8", 15029 - .rlen = 16, 21850 + .len = 16, 15030 21851 }, { 15031 21852 .key = "\x7e\x24\x06\x78\x17\xfa\xe0\xd7" 15032 21853 "\x43\xd6\xce\x1f\x32\x53\x91\x63" 15033 21854 "\x00\x6c\xb6\xdb", 15034 21855 .klen = 20, 15035 21856 .iv = "\xc0\x54\x3b\x59\xda\x48\xd9\x0b", 15036 - .input = "\x00\x01\x02\x03\x04\x05\x06\x07" 21857 + .ptext = "\x00\x01\x02\x03\x04\x05\x06\x07" 15037 21858 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 15038 21859 "\x10\x11\x12\x13\x14\x15\x16\x17" 15039 21860 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f", 15040 - .ilen = 32, 15041 - .result = "\x51\x04\xa1\x06\x16\x8a\x72\xd9" 21861 + .ctext = "\x51\x04\xa1\x06\x16\x8a\x72\xd9" 15042 21862 "\x79\x0d\x41\xee\x8e\xda\xd3\x88" 15043 21863 "\xeb\x2e\x1e\xfc\x46\xda\x57\xc8" 15044 21864 "\xfc\xe6\x30\xdf\x91\x41\xbe\x28", 15045 - .rlen = 32, 21865 + .len = 32, 15046 21866 }, { 15047 21867 .key = "\x16\xaf\x5b\x14\x5f\xc9\xf5\x79" 15048 21868 "\xc1\x75\xf9\x3e\x3b\xfb\x0e\xed" ··· 14693 22227 "\x00\x00\x00\x48", 14694 22228 .klen = 28, 14695 22229 .iv = "\x36\x73\x3c\x14\x7d\x6d\x93\xcb", 14696 - .input = "Single block msg", 14697 - .ilen = 16, 14698 - .result = "\x4b\x55\x38\x4f\xe2\x59\xc9\xc8" 22230 + .ptext = "Single block msg", 22231 + .ctext = "\x4b\x55\x38\x4f\xe2\x59\xc9\xc8" 14699 22232 "\x4e\x79\x35\xa0\x03\xcb\xe9\x28", 14700 - .rlen = 16, 22233 + .len = 16, 14701 22234 }, { 14702 22235 .key = "\x7c\x5c\xb2\x40\x1b\x3d\xc3\x3c" 14703 22236 "\x19\xe7\x34\x08\x19\xe0\xf6\x9c" ··· 14704 22239 "\x00\x96\xb0\x3b", 14705 22240 .klen = 28, 14706 22241 .iv = "\x02\x0c\x6e\xad\xc2\xcb\x50\x0d", 14707 - .input = "\x00\x01\x02\x03\x04\x05\x06\x07" 22242 + .ptext = "\x00\x01\x02\x03\x04\x05\x06\x07" 14708 22243 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 14709 22244 "\x10\x11\x12\x13\x14\x15\x16\x17" 14710 22245 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f", 14711 - .ilen = 32, 14712 - .result = "\x45\x32\x43\xfc\x60\x9b\x23\x32" 22246 + .ctext = "\x45\x32\x43\xfc\x60\x9b\x23\x32" 14713 22247 "\x7e\xdf\xaa\xfa\x71\x31\xcd\x9f" 14714 22248 "\x84\x90\x70\x1c\x5a\xd4\xa7\x9c" 14715 22249 "\xfc\x1f\xe0\xff\x42\xf4\xfb\x00", 14716 - .rlen = 32, 22250 + .len = 32, 14717 22251 }, { 14718 22252 .key = "\x77\x6b\xef\xf2\x85\x1d\xb0\x6f" 14719 22253 "\x4c\x8a\x05\x42\xc8\x69\x6f\x6c" ··· 14721 22257 "\x00\x00\x00\x60", 14722 22258 .klen = 36, 14723 22259 .iv = "\xdb\x56\x72\xc9\x7a\xa8\xf0\xb2", 14724 - .input = "Single block msg", 14725 - .ilen = 16, 14726 - .result = "\x14\x5a\xd0\x1d\xbf\x82\x4e\xc7" 22260 + .ptext = "Single block msg", 22261 + .ctext = "\x14\x5a\xd0\x1d\xbf\x82\x4e\xc7" 14727 22262 "\x56\x08\x63\xdc\x71\xe3\xe0\xc0", 14728 - .rlen = 16, 22263 + .len = 16, 14729 22264 }, { 14730 22265 .key = "\xf6\xd6\x6d\x6b\xd5\x2d\x59\xbb" 14731 22266 "\x07\x96\x36\x58\x79\xef\xf8\x86" ··· 14733 22270 "\x00\xfa\xac\x24", 14734 22271 .klen = 36, 14735 22272 .iv = "\xc1\x58\x5e\xf1\x5a\x43\xd8\x75", 14736 - .input = "\x00\x01\x02\x03\x04\x05\x06\x07" 22273 + .ptext = "\x00\x01\x02\x03\x04\x05\x06\x07" 14737 22274 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 14738 22275 "\x10\x11\x12\x13\x14\x15\x16\x17" 14739 22276 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f", 14740 - .ilen = 32, 14741 - .result = "\xf0\x5e\x23\x1b\x38\x94\x61\x2c" 22277 + .ctext = "\xf0\x5e\x23\x1b\x38\x94\x61\x2c" 14742 22278 "\x49\xee\x00\x0b\x80\x4e\xb2\xa9" 14743 22279 "\xb8\x30\x6b\x50\x8f\x83\x9d\x6a" 14744 22280 "\x55\x30\x83\x1d\x93\x44\xaf\x1c", 14745 - .rlen = 32, 22281 + .len = 32, 14746 22282 }, { 14747 22283 // generated using Crypto++ 14748 22284 .key = "\x00\x01\x02\x03\x04\x05\x06\x07" ··· 14751 22289 "\x00\x00\x00\x00", 14752 22290 .klen = 32 + 4, 14753 22291 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00", 14754 - .input = 22292 + .ptext = 14755 22293 "\x00\x01\x02\x03\x04\x05\x06\x07" 14756 22294 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 14757 22295 "\x10\x11\x12\x13\x14\x15\x16\x17" ··· 15265 22803 "\x10\x2f\x4e\x6d\x8c\xab\xca\xe9" 15266 22804 "\x08\x27\x46\x65\x84\xa3\xc2\xe1" 15267 22805 "\x00\x21\x42\x63", 15268 - .ilen = 4100, 15269 - .result = 22806 + .ctext = 15270 22807 "\xf0\x5c\x74\xad\x4e\xbc\x99\xe2" 15271 22808 "\xae\xff\x91\x3a\x44\xcf\x38\x32" 15272 22809 "\x1e\xad\xa7\xcd\xa1\x39\x95\xaa" ··· 15779 23318 "\x41\x01\x18\x5d\x5d\x07\x97\xa6" 15780 23319 "\x4b\xef\x31\x18\xea\xac\xb1\x84" 15781 23320 "\x21\xed\xda\x86", 15782 - .rlen = 4100, 23321 + .len = 4100, 15783 23322 .np = 2, 15784 23323 .tap = { 4064, 36 }, 15785 23324 }, 15786 23325 }; 15787 23326 15788 - static const struct cipher_testvec aes_ctr_rfc3686_dec_tv_template[] = { 15789 - { /* From RFC 3686 */ 15790 - .key = "\xae\x68\x52\xf8\x12\x10\x67\xcc" 15791 - "\x4b\xf7\xa5\x76\x55\x77\xf3\x9e" 15792 - "\x00\x00\x00\x30", 15793 - .klen = 20, 15794 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00", 15795 - .input = "\xe4\x09\x5d\x4f\xb7\xa7\xb3\x79" 15796 - "\x2d\x61\x75\xa3\x26\x13\x11\xb8", 15797 - .ilen = 16, 15798 - .result = "Single block msg", 15799 - .rlen = 16, 15800 - }, { 15801 - .key = "\x7e\x24\x06\x78\x17\xfa\xe0\xd7" 15802 - "\x43\xd6\xce\x1f\x32\x53\x91\x63" 15803 - "\x00\x6c\xb6\xdb", 15804 - .klen = 20, 15805 - .iv = "\xc0\x54\x3b\x59\xda\x48\xd9\x0b", 15806 - .input = "\x51\x04\xa1\x06\x16\x8a\x72\xd9" 15807 - "\x79\x0d\x41\xee\x8e\xda\xd3\x88" 15808 - "\xeb\x2e\x1e\xfc\x46\xda\x57\xc8" 15809 - "\xfc\xe6\x30\xdf\x91\x41\xbe\x28", 15810 - .ilen = 32, 15811 - .result = "\x00\x01\x02\x03\x04\x05\x06\x07" 15812 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 15813 - "\x10\x11\x12\x13\x14\x15\x16\x17" 15814 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f", 15815 - .rlen = 32, 15816 - }, { 15817 - .key = "\x16\xaf\x5b\x14\x5f\xc9\xf5\x79" 15818 - "\xc1\x75\xf9\x3e\x3b\xfb\x0e\xed" 15819 - "\x86\x3d\x06\xcc\xfd\xb7\x85\x15" 15820 - "\x00\x00\x00\x48", 15821 - .klen = 28, 15822 - .iv = "\x36\x73\x3c\x14\x7d\x6d\x93\xcb", 15823 - .input = "\x4b\x55\x38\x4f\xe2\x59\xc9\xc8" 15824 - "\x4e\x79\x35\xa0\x03\xcb\xe9\x28", 15825 - .ilen = 16, 15826 - .result = "Single block msg", 15827 - .rlen = 16, 15828 - }, { 15829 - .key = "\x7c\x5c\xb2\x40\x1b\x3d\xc3\x3c" 15830 - "\x19\xe7\x34\x08\x19\xe0\xf6\x9c" 15831 - "\x67\x8c\x3d\xb8\xe6\xf6\xa9\x1a" 15832 - "\x00\x96\xb0\x3b", 15833 - .klen = 28, 15834 - .iv = "\x02\x0c\x6e\xad\xc2\xcb\x50\x0d", 15835 - .input = "\x45\x32\x43\xfc\x60\x9b\x23\x32" 15836 - "\x7e\xdf\xaa\xfa\x71\x31\xcd\x9f" 15837 - "\x84\x90\x70\x1c\x5a\xd4\xa7\x9c" 15838 - "\xfc\x1f\xe0\xff\x42\xf4\xfb\x00", 15839 - .ilen = 32, 15840 - .result = "\x00\x01\x02\x03\x04\x05\x06\x07" 15841 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 15842 - "\x10\x11\x12\x13\x14\x15\x16\x17" 15843 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f", 15844 - .rlen = 32, 15845 - }, { 15846 - .key = "\x77\x6b\xef\xf2\x85\x1d\xb0\x6f" 15847 - "\x4c\x8a\x05\x42\xc8\x69\x6f\x6c" 15848 - "\x6a\x81\xaf\x1e\xec\x96\xb4\xd3" 15849 - "\x7f\xc1\xd6\x89\xe6\xc1\xc1\x04" 15850 - "\x00\x00\x00\x60", 15851 - .klen = 36, 15852 - .iv = "\xdb\x56\x72\xc9\x7a\xa8\xf0\xb2", 15853 - .input = "\x14\x5a\xd0\x1d\xbf\x82\x4e\xc7" 15854 - "\x56\x08\x63\xdc\x71\xe3\xe0\xc0", 15855 - .ilen = 16, 15856 - .result = "Single block msg", 15857 - .rlen = 16, 15858 - }, { 15859 - .key = "\xf6\xd6\x6d\x6b\xd5\x2d\x59\xbb" 15860 - "\x07\x96\x36\x58\x79\xef\xf8\x86" 15861 - "\xc6\x6d\xd5\x1a\x5b\x6a\x99\x74" 15862 - "\x4b\x50\x59\x0c\x87\xa2\x38\x84" 15863 - "\x00\xfa\xac\x24", 15864 - .klen = 36, 15865 - .iv = "\xc1\x58\x5e\xf1\x5a\x43\xd8\x75", 15866 - .input = "\xf0\x5e\x23\x1b\x38\x94\x61\x2c" 15867 - "\x49\xee\x00\x0b\x80\x4e\xb2\xa9" 15868 - "\xb8\x30\x6b\x50\x8f\x83\x9d\x6a" 15869 - "\x55\x30\x83\x1d\x93\x44\xaf\x1c", 15870 - .ilen = 32, 15871 - .result = "\x00\x01\x02\x03\x04\x05\x06\x07" 15872 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 15873 - "\x10\x11\x12\x13\x14\x15\x16\x17" 15874 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f", 15875 - .rlen = 32, 15876 - }, 15877 - }; 15878 - 15879 - static const struct cipher_testvec aes_ofb_enc_tv_template[] = { 23327 + static const struct cipher_testvec aes_ofb_tv_template[] = { 15880 23328 /* From NIST Special Publication 800-38A, Appendix F.5 */ 15881 23329 { 15882 23330 .key = "\x2b\x7e\x15\x16\x28\xae\xd2\xa6" ··· 15793 23423 .klen = 16, 15794 23424 .iv = "\x00\x01\x02\x03\x04\x05\x06\x07\x08" 15795 23425 "\x09\x0a\x0b\x0c\x0d\x0e\x0f", 15796 - .input = "\x6b\xc1\xbe\xe2\x2e\x40\x9f\x96" 23426 + .ptext = "\x6b\xc1\xbe\xe2\x2e\x40\x9f\x96" 15797 23427 "\xe9\x3d\x7e\x11\x73\x93\x17\x2a" 15798 23428 "\xae\x2d\x8a\x57\x1e\x03\xac\x9c" 15799 23429 "\x9e\xb7\x6f\xac\x45\xaf\x8e\x51" ··· 15801 23431 "\xe5\xfb\xc1\x19\x1a\x0a\x52\xef" 15802 23432 "\xf6\x9f\x24\x45\xdf\x4f\x9b\x17" 15803 23433 "\xad\x2b\x41\x7b\xe6\x6c\x37\x10", 15804 - .ilen = 64, 15805 - .result = "\x3b\x3f\xd9\x2e\xb7\x2d\xad\x20" 23434 + .ctext = "\x3b\x3f\xd9\x2e\xb7\x2d\xad\x20" 15806 23435 "\x33\x34\x49\xf8\xe8\x3c\xfb\x4a" 15807 23436 "\x77\x89\x50\x8d\x16\x91\x8f\x03\xf5" 15808 23437 "\x3c\x52\xda\xc5\x4e\xd8\x25" ··· 15809 23440 "\x44\xf7\xa8\x22\x60\xed\xcc" 15810 23441 "\x30\x4c\x65\x28\xf6\x59\xc7\x78" 15811 23442 "\x66\xa5\x10\xd9\xc1\xd6\xae\x5e", 15812 - .rlen = 64, 15813 - } 15814 - }; 15815 - 15816 - static const struct cipher_testvec aes_ofb_dec_tv_template[] = { 15817 - /* From NIST Special Publication 800-38A, Appendix F.5 */ 15818 - { 15819 - .key = "\x2b\x7e\x15\x16\x28\xae\xd2\xa6" 15820 - "\xab\xf7\x15\x88\x09\xcf\x4f\x3c", 15821 - .klen = 16, 15822 - .iv = "\x00\x01\x02\x03\x04\x05\x06\x07\x08" 15823 - "\x09\x0a\x0b\x0c\x0d\x0e\x0f", 15824 - .input = "\x3b\x3f\xd9\x2e\xb7\x2d\xad\x20" 15825 - "\x33\x34\x49\xf8\xe8\x3c\xfb\x4a" 15826 - "\x77\x89\x50\x8d\x16\x91\x8f\x03\xf5" 15827 - "\x3c\x52\xda\xc5\x4e\xd8\x25" 15828 - "\x97\x40\x05\x1e\x9c\x5f\xec\xf6\x43" 15829 - "\x44\xf7\xa8\x22\x60\xed\xcc" 15830 - "\x30\x4c\x65\x28\xf6\x59\xc7\x78" 15831 - "\x66\xa5\x10\xd9\xc1\xd6\xae\x5e", 15832 - .ilen = 64, 15833 - .result = "\x6b\xc1\xbe\xe2\x2e\x40\x9f\x96" 15834 - "\xe9\x3d\x7e\x11\x73\x93\x17\x2a" 15835 - "\xae\x2d\x8a\x57\x1e\x03\xac\x9c" 15836 - "\x9e\xb7\x6f\xac\x45\xaf\x8e\x51" 15837 - "\x30\xc8\x1c\x46\xa3\x5c\xe4\x11" 15838 - "\xe5\xfb\xc1\x19\x1a\x0a\x52\xef" 15839 - "\xf6\x9f\x24\x45\xdf\x4f\x9b\x17" 15840 - "\xad\x2b\x41\x7b\xe6\x6c\x37\x10", 15841 - .rlen = 64, 23443 + .len = 64, 15842 23444 } 15843 23445 }; 15844 23446 ··· 26023 33683 * semiblock of the ciphertext from the test vector. For decryption, iv is 26024 33684 * the first semiblock of the ciphertext. 26025 33685 */ 26026 - static const struct cipher_testvec aes_kw_enc_tv_template[] = { 33686 + static const struct cipher_testvec aes_kw_tv_template[] = { 26027 33687 { 26028 33688 .key = "\x75\x75\xda\x3a\x93\x60\x7c\xc2" 26029 33689 "\xbf\xd8\xce\xc7\xaa\xdf\xd9\xa6", 26030 33690 .klen = 16, 26031 - .input = "\x42\x13\x6d\x3c\x38\x4a\x3e\xea" 33691 + .ptext = "\x42\x13\x6d\x3c\x38\x4a\x3e\xea" 26032 33692 "\xc9\x5a\x06\x6f\xd2\x8f\xed\x3f", 26033 - .ilen = 16, 26034 - .result = "\xf6\x85\x94\x81\x6f\x64\xca\xa3" 33693 + .ctext = "\xf6\x85\x94\x81\x6f\x64\xca\xa3" 26035 33694 "\xf5\x6f\xab\xea\x25\x48\xf5\xfb", 26036 - .rlen = 16, 26037 - .iv_out = "\x03\x1f\x6b\xd7\xe6\x1e\x64\x3d", 33695 + .len = 16, 33696 + .iv = "\x03\x1f\x6b\xd7\xe6\x1e\x64\x3d", 33697 + .generates_iv = true, 26038 33698 }, { 26039 33699 .key = "\x80\xaa\x99\x73\x27\xa4\x80\x6b" 26040 33700 "\x6a\x7a\x41\xa5\x2b\x86\xc3\x71" 26041 33701 "\x03\x86\xf9\x32\x78\x6e\xf7\x96" 26042 33702 "\x76\xfa\xfb\x90\xb8\x26\x3c\x5f", 26043 33703 .klen = 32, 26044 - .input = "\x0a\x25\x6b\xa7\x5c\xfa\x03\xaa" 33704 + .ptext = "\x0a\x25\x6b\xa7\x5c\xfa\x03\xaa" 26045 33705 "\xa0\x2b\xa9\x42\x03\xf1\x5b\xaa", 26046 - .ilen = 16, 26047 - .result = "\xd3\x3d\x3d\x97\x7b\xf0\xa9\x15" 33706 + .ctext = "\xd3\x3d\x3d\x97\x7b\xf0\xa9\x15" 26048 33707 "\x59\xf9\x9c\x8a\xcd\x29\x3d\x43", 26049 - .rlen = 16, 26050 - .iv_out = "\x42\x3c\x96\x0d\x8a\x2a\xc4\xc1", 26051 - }, 26052 - }; 26053 - 26054 - static const struct cipher_testvec aes_kw_dec_tv_template[] = { 26055 - { 26056 - .key = "\x80\xaa\x99\x73\x27\xa4\x80\x6b" 26057 - "\x6a\x7a\x41\xa5\x2b\x86\xc3\x71" 26058 - "\x03\x86\xf9\x32\x78\x6e\xf7\x96" 26059 - "\x76\xfa\xfb\x90\xb8\x26\x3c\x5f", 26060 - .klen = 32, 26061 - .input = "\xd3\x3d\x3d\x97\x7b\xf0\xa9\x15" 26062 - "\x59\xf9\x9c\x8a\xcd\x29\x3d\x43", 26063 - .ilen = 16, 26064 - .result = "\x0a\x25\x6b\xa7\x5c\xfa\x03\xaa" 26065 - "\xa0\x2b\xa9\x42\x03\xf1\x5b\xaa", 26066 - .rlen = 16, 33708 + .len = 16, 26067 33709 .iv = "\x42\x3c\x96\x0d\x8a\x2a\xc4\xc1", 33710 + .generates_iv = true, 26068 33711 }, 26069 33712 }; 26070 33713 ··· 26974 34651 }; 26975 34652 26976 34653 /* Cast5 test vectors from RFC 2144 */ 26977 - static const struct cipher_testvec cast5_enc_tv_template[] = { 34654 + static const struct cipher_testvec cast5_tv_template[] = { 26978 34655 { 26979 34656 .key = "\x01\x23\x45\x67\x12\x34\x56\x78" 26980 34657 "\x23\x45\x67\x89\x34\x56\x78\x9a", 26981 34658 .klen = 16, 26982 - .input = "\x01\x23\x45\x67\x89\xab\xcd\xef", 26983 - .ilen = 8, 26984 - .result = "\x23\x8b\x4f\xe5\x84\x7e\x44\xb2", 26985 - .rlen = 8, 34659 + .ptext = "\x01\x23\x45\x67\x89\xab\xcd\xef", 34660 + .ctext = "\x23\x8b\x4f\xe5\x84\x7e\x44\xb2", 34661 + .len = 8, 26986 34662 }, { 26987 34663 .key = "\x01\x23\x45\x67\x12\x34\x56\x78" 26988 34664 "\x23\x45", 26989 34665 .klen = 10, 26990 - .input = "\x01\x23\x45\x67\x89\xab\xcd\xef", 26991 - .ilen = 8, 26992 - .result = "\xeb\x6a\x71\x1a\x2c\x02\x27\x1b", 26993 - .rlen = 8, 34666 + .ptext = "\x01\x23\x45\x67\x89\xab\xcd\xef", 34667 + .ctext = "\xeb\x6a\x71\x1a\x2c\x02\x27\x1b", 34668 + .len = 8, 26994 34669 }, { 26995 34670 .key = "\x01\x23\x45\x67\x12", 26996 34671 .klen = 5, 26997 - .input = "\x01\x23\x45\x67\x89\xab\xcd\xef", 26998 - .ilen = 8, 26999 - .result = "\x7a\xc8\x16\xd1\x6e\x9b\x30\x2e", 27000 - .rlen = 8, 34672 + .ptext = "\x01\x23\x45\x67\x89\xab\xcd\xef", 34673 + .ctext = "\x7a\xc8\x16\xd1\x6e\x9b\x30\x2e", 34674 + .len = 8, 27001 34675 }, { /* Generated from TF test vectors */ 27002 34676 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 27003 34677 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A", 27004 34678 .klen = 16, 27005 34679 .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F", 27006 - .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 34680 + .ptext = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 27007 34681 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 27008 34682 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 27009 34683 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" ··· 27062 34742 "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 27063 34743 "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 27064 34744 "\xDC\x50\xE7\x7E\x15\x89\x20\xB7", 27065 - .ilen = 496, 27066 - .result = "\x8D\xFC\x81\x9C\xCB\xAA\x5A\x1C" 34745 + .ctext = "\x8D\xFC\x81\x9C\xCB\xAA\x5A\x1C" 27067 34746 "\x7E\x95\xCF\x40\xAB\x4D\x6F\xEA" 27068 34747 "\xD3\xD9\xB0\x9A\xB7\xC7\xE0\x2E" 27069 34748 "\xD1\x39\x34\x92\x8F\xFA\x14\xF1" ··· 27124 34805 "\x5D\x0B\x3F\x03\x8F\x30\xF9\xAE" 27125 34806 "\x4F\xFE\x24\x9C\x9A\x02\xE5\x57" 27126 34807 "\xF5\xBC\x25\xD6\x02\x56\x57\x1C", 27127 - .rlen = 496, 34808 + .len = 496, 27128 34809 .also_non_np = 1, 27129 34810 .np = 3, 27130 34811 .tap = { 496 - 20, 4, 16 }, 27131 34812 }, 27132 34813 }; 27133 34814 27134 - static const struct cipher_testvec cast5_dec_tv_template[] = { 27135 - { 27136 - .key = "\x01\x23\x45\x67\x12\x34\x56\x78" 27137 - "\x23\x45\x67\x89\x34\x56\x78\x9a", 27138 - .klen = 16, 27139 - .input = "\x23\x8b\x4f\xe5\x84\x7e\x44\xb2", 27140 - .ilen = 8, 27141 - .result = "\x01\x23\x45\x67\x89\xab\xcd\xef", 27142 - .rlen = 8, 27143 - }, { 27144 - .key = "\x01\x23\x45\x67\x12\x34\x56\x78" 27145 - "\x23\x45", 27146 - .klen = 10, 27147 - .input = "\xeb\x6a\x71\x1a\x2c\x02\x27\x1b", 27148 - .ilen = 8, 27149 - .result = "\x01\x23\x45\x67\x89\xab\xcd\xef", 27150 - .rlen = 8, 27151 - }, { 27152 - .key = "\x01\x23\x45\x67\x12", 27153 - .klen = 5, 27154 - .input = "\x7a\xc8\x16\xd1\x6e\x9b\x30\x2e", 27155 - .ilen = 8, 27156 - .result = "\x01\x23\x45\x67\x89\xab\xcd\xef", 27157 - .rlen = 8, 27158 - }, { /* Generated from TF test vectors */ 27159 - .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 27160 - "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A", 27161 - .klen = 16, 27162 - .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F", 27163 - .input = "\x8D\xFC\x81\x9C\xCB\xAA\x5A\x1C" 27164 - "\x7E\x95\xCF\x40\xAB\x4D\x6F\xEA" 27165 - "\xD3\xD9\xB0\x9A\xB7\xC7\xE0\x2E" 27166 - "\xD1\x39\x34\x92\x8F\xFA\x14\xF1" 27167 - "\xD5\xD2\x7B\x59\x1F\x35\x28\xC2" 27168 - "\x20\xD9\x42\x06\xC9\x0B\x10\x04" 27169 - "\xF8\x79\xCD\x32\x86\x75\x4C\xB6" 27170 - "\x7B\x1C\x52\xB1\x91\x64\x22\x4B" 27171 - "\x13\xC7\xAE\x98\x0E\xB5\xCF\x6F" 27172 - "\x3F\xF4\x43\x96\x73\x0D\xA2\x05" 27173 - "\xDB\xFD\x28\x90\x2C\x56\xB9\x37" 27174 - "\x5B\x69\x0C\xAD\x84\x67\xFF\x15" 27175 - "\x4A\xD4\xA7\xD3\xDD\x99\x47\x3A" 27176 - "\xED\x34\x35\x78\x6B\x91\xC9\x32" 27177 - "\xE1\xBF\xBC\xB4\x04\x85\x6A\x39" 27178 - "\xC0\xBA\x51\xD0\x0F\x4E\xD1\xE2" 27179 - "\x1C\xFD\x0E\x05\x07\xF4\x10\xED" 27180 - "\xA2\x17\xFF\xF5\x64\xC6\x1A\x22" 27181 - "\xAD\x78\xE7\xD7\x11\xE9\x99\xB9" 27182 - "\xAA\xEC\x6F\xF8\x3B\xBF\xCE\x77" 27183 - "\x93\xE8\xAD\x1D\x50\x6C\xAE\xBC" 27184 - "\xBA\x5C\x80\xD1\x91\x65\x51\x1B" 27185 - "\xE8\x0A\xCD\x99\x96\x71\x3D\xB6" 27186 - "\x78\x75\x37\x55\xC1\xF5\x90\x40" 27187 - "\x34\xF4\x7E\xC8\xCC\x3A\x5F\x6E" 27188 - "\x36\xA1\xA1\xC2\x3A\x72\x42\x8E" 27189 - "\x0E\x37\x88\xE8\xCE\x83\xCB\xAD" 27190 - "\xE0\x69\x77\x50\xC7\x0C\x99\xCA" 27191 - "\x19\x5B\x30\x25\x9A\xEF\x9B\x0C" 27192 - "\xEF\x8F\x74\x4C\xCF\x49\x4E\xB9" 27193 - "\xC5\xAE\x9E\x2E\x78\x9A\xB9\x48" 27194 - "\xD5\x81\xE4\x37\x1D\xBF\x27\xD9" 27195 - "\xC5\xD6\x65\x43\x45\x8C\xBB\xB6" 27196 - "\x55\xF4\x06\xBB\x49\x53\x8B\x1B" 27197 - "\x07\xA9\x96\x69\x5B\xCB\x0F\xBC" 27198 - "\x93\x85\x90\x0F\x0A\x68\x40\x2A" 27199 - "\x95\xED\x2D\x88\xBF\x71\xD0\xBB" 27200 - "\xEC\xB0\x77\x6C\x79\xFC\x3C\x05" 27201 - "\x49\x3F\xB8\x24\xEF\x8E\x09\xA2" 27202 - "\x1D\xEF\x92\x02\x96\xD4\x7F\xC8" 27203 - "\x03\xB2\xCA\xDB\x17\x5C\x52\xCF" 27204 - "\xDD\x70\x37\x63\xAA\xA5\x83\x20" 27205 - "\x52\x02\xF6\xB9\xE7\x6E\x0A\xB6" 27206 - "\x79\x03\xA0\xDA\xA3\x79\x21\xBD" 27207 - "\xE3\x37\x3A\xC0\xF7\x2C\x32\xBE" 27208 - "\x8B\xE8\xA6\x00\xC7\x32\xD5\x06" 27209 - "\xBB\xE3\xAB\x06\x21\x82\xB8\x32" 27210 - "\x31\x34\x2A\xA7\x1F\x64\x99\xBF" 27211 - "\xFA\xDA\x3D\x75\xF7\x48\xD5\x48" 27212 - "\x4B\x52\x7E\xF6\x7C\xAB\x67\x59" 27213 - "\xC5\xDC\xA8\xC6\x63\x85\x4A\xDF" 27214 - "\xF0\x40\x5F\xCF\xE3\x58\x52\x67" 27215 - "\x7A\x24\x32\xC5\xEC\x9E\xA9\x6F" 27216 - "\x58\x56\xDD\x94\x1F\x71\x8D\xF4" 27217 - "\x6E\xFF\x2C\xA7\xA5\xD8\xBA\xAF" 27218 - "\x1D\x8B\xA2\x46\xB5\xC4\x9F\x57" 27219 - "\x8D\xD8\xB3\x3C\x02\x0D\xBB\x84" 27220 - "\xC7\xBD\xB4\x9A\x6E\xBB\xB1\x37" 27221 - "\x95\x79\xC4\xA7\xEA\x1D\xDC\x33" 27222 - "\x5D\x0B\x3F\x03\x8F\x30\xF9\xAE" 27223 - "\x4F\xFE\x24\x9C\x9A\x02\xE5\x57" 27224 - "\xF5\xBC\x25\xD6\x02\x56\x57\x1C", 27225 - .ilen = 496, 27226 - .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 27227 - "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 27228 - "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 27229 - "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" 27230 - "\x1E\x92\x29\xC0\x34\xCB\x62\xF9" 27231 - "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48" 27232 - "\xDF\x76\x0D\x81\x18\xAF\x23\xBA" 27233 - "\x51\xE8\x5C\xF3\x8A\x21\x95\x2C" 27234 - "\xC3\x37\xCE\x65\xFC\x70\x07\x9E" 27235 - "\x12\xA9\x40\xD7\x4B\xE2\x79\x10" 27236 - "\x84\x1B\xB2\x26\xBD\x54\xEB\x5F" 27237 - "\xF6\x8D\x01\x98\x2F\xC6\x3A\xD1" 27238 - "\x68\xFF\x73\x0A\xA1\x15\xAC\x43" 27239 - "\xDA\x4E\xE5\x7C\x13\x87\x1E\xB5" 27240 - "\x29\xC0\x57\xEE\x62\xF9\x90\x04" 27241 - "\x9B\x32\xC9\x3D\xD4\x6B\x02\x76" 27242 - "\x0D\xA4\x18\xAF\x46\xDD\x51\xE8" 27243 - "\x7F\x16\x8A\x21\xB8\x2C\xC3\x5A" 27244 - "\xF1\x65\xFC\x93\x07\x9E\x35\xCC" 27245 - "\x40\xD7\x6E\x05\x79\x10\xA7\x1B" 27246 - "\xB2\x49\xE0\x54\xEB\x82\x19\x8D" 27247 - "\x24\xBB\x2F\xC6\x5D\xF4\x68\xFF" 27248 - "\x96\x0A\xA1\x38\xCF\x43\xDA\x71" 27249 - "\x08\x7C\x13\xAA\x1E\xB5\x4C\xE3" 27250 - "\x57\xEE\x85\x1C\x90\x27\xBE\x32" 27251 - "\xC9\x60\xF7\x6B\x02\x99\x0D\xA4" 27252 - "\x3B\xD2\x46\xDD\x74\x0B\x7F\x16" 27253 - "\xAD\x21\xB8\x4F\xE6\x5A\xF1\x88" 27254 - "\x1F\x93\x2A\xC1\x35\xCC\x63\xFA" 27255 - "\x6E\x05\x9C\x10\xA7\x3E\xD5\x49" 27256 - "\xE0\x77\x0E\x82\x19\xB0\x24\xBB" 27257 - "\x52\xE9\x5D\xF4\x8B\x22\x96\x2D" 27258 - "\xC4\x38\xCF\x66\xFD\x71\x08\x9F" 27259 - "\x13\xAA\x41\xD8\x4C\xE3\x7A\x11" 27260 - "\x85\x1C\xB3\x27\xBE\x55\xEC\x60" 27261 - "\xF7\x8E\x02\x99\x30\xC7\x3B\xD2" 27262 - "\x69\x00\x74\x0B\xA2\x16\xAD\x44" 27263 - "\xDB\x4F\xE6\x7D\x14\x88\x1F\xB6" 27264 - "\x2A\xC1\x58\xEF\x63\xFA\x91\x05" 27265 - "\x9C\x33\xCA\x3E\xD5\x6C\x03\x77" 27266 - "\x0E\xA5\x19\xB0\x47\xDE\x52\xE9" 27267 - "\x80\x17\x8B\x22\xB9\x2D\xC4\x5B" 27268 - "\xF2\x66\xFD\x94\x08\x9F\x36\xCD" 27269 - "\x41\xD8\x6F\x06\x7A\x11\xA8\x1C" 27270 - "\xB3\x4A\xE1\x55\xEC\x83\x1A\x8E" 27271 - "\x25\xBC\x30\xC7\x5E\xF5\x69\x00" 27272 - "\x97\x0B\xA2\x39\xD0\x44\xDB\x72" 27273 - "\x09\x7D\x14\xAB\x1F\xB6\x4D\xE4" 27274 - "\x58\xEF\x86\x1D\x91\x28\xBF\x33" 27275 - "\xCA\x61\xF8\x6C\x03\x9A\x0E\xA5" 27276 - "\x3C\xD3\x47\xDE\x75\x0C\x80\x17" 27277 - "\xAE\x22\xB9\x50\xE7\x5B\xF2\x89" 27278 - "\x20\x94\x2B\xC2\x36\xCD\x64\xFB" 27279 - "\x6F\x06\x9D\x11\xA8\x3F\xD6\x4A" 27280 - "\xE1\x78\x0F\x83\x1A\xB1\x25\xBC" 27281 - "\x53\xEA\x5E\xF5\x8C\x00\x97\x2E" 27282 - "\xC5\x39\xD0\x67\xFE\x72\x09\xA0" 27283 - "\x14\xAB\x42\xD9\x4D\xE4\x7B\x12" 27284 - "\x86\x1D\xB4\x28\xBF\x56\xED\x61" 27285 - "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 27286 - "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 27287 - "\xDC\x50\xE7\x7E\x15\x89\x20\xB7", 27288 - .rlen = 496, 27289 - .also_non_np = 1, 27290 - .np = 3, 27291 - .tap = { 496 - 20, 4, 16 }, 27292 - }, 27293 - }; 27294 - 27295 - static const struct cipher_testvec cast5_cbc_enc_tv_template[] = { 34815 + static const struct cipher_testvec cast5_cbc_tv_template[] = { 27296 34816 { /* Generated from TF test vectors */ 27297 34817 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 27298 34818 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A", 27299 34819 .klen = 16, 27300 34820 .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F", 27301 - .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 34821 + .ptext = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 27302 34822 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 27303 34823 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 27304 34824 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" ··· 27199 35041 "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 27200 35042 "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 27201 35043 "\xDC\x50\xE7\x7E\x15\x89\x20\xB7", 27202 - .ilen = 496, 27203 - .result = "\x05\x28\xCE\x61\x90\x80\xE1\x78" 35044 + .ctext = "\x05\x28\xCE\x61\x90\x80\xE1\x78" 27204 35045 "\xB9\x2A\x97\x7C\xB0\x83\xD8\x1A" 27205 35046 "\xDE\x58\x7F\xD7\xFD\x72\xB8\xFB" 27206 35047 "\xDA\xF0\x6E\x77\x14\x47\x82\xBA" ··· 27261 35104 "\x8C\xF5\x3F\x19\xF4\x80\x45\xA7" 27262 35105 "\x15\x5F\xDB\xE9\xB1\x83\xD2\xE6" 27263 35106 "\x1D\x18\x66\x44\x5B\x8F\x14\xEB", 27264 - .rlen = 496, 35107 + .len = 496, 27265 35108 .also_non_np = 1, 27266 35109 .np = 3, 27267 35110 .tap = { 496 - 20, 4, 16 }, 27268 35111 }, 27269 35112 }; 27270 35113 27271 - static const struct cipher_testvec cast5_cbc_dec_tv_template[] = { 35114 + static const struct cipher_testvec cast5_ctr_tv_template[] = { 27272 35115 { /* Generated from TF test vectors */ 27273 35116 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 27274 35117 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A", 27275 35118 .klen = 16, 27276 35119 .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F", 27277 - .input = "\x05\x28\xCE\x61\x90\x80\xE1\x78" 27278 - "\xB9\x2A\x97\x7C\xB0\x83\xD8\x1A" 27279 - "\xDE\x58\x7F\xD7\xFD\x72\xB8\xFB" 27280 - "\xDA\xF0\x6E\x77\x14\x47\x82\xBA" 27281 - "\x29\x0E\x25\x6E\xB4\x39\xD9\x7F" 27282 - "\x05\xA7\xA7\x3A\xC1\x5D\x9E\x39" 27283 - "\xA7\xFB\x0D\x05\x00\xF3\x58\x67" 27284 - "\x60\xEC\x73\x77\x46\x85\x9B\x6A" 27285 - "\x08\x3E\xBE\x59\xFB\xE4\x96\x34" 27286 - "\xB4\x05\x49\x1A\x97\x43\xAD\xA0" 27287 - "\xA9\x1E\x6E\x74\xF1\x94\xEC\xA8" 27288 - "\xB5\x8A\x20\xEA\x89\x6B\x19\xAA" 27289 - "\xA7\xF1\x33\x67\x90\x23\x0D\xEE" 27290 - "\x81\xD5\x78\x4F\xD3\x63\xEA\x46" 27291 - "\xB5\xB2\x6E\xBB\xCA\x76\x06\x10" 27292 - "\x96\x2A\x0A\xBA\xF9\x41\x5A\x1D" 27293 - "\x36\x7C\x56\x14\x54\x83\xFA\xA1" 27294 - "\x27\xDD\xBA\x8A\x90\x29\xD6\xA6" 27295 - "\xFA\x48\x3E\x1E\x23\x6E\x98\xA8" 27296 - "\xA7\xD9\x67\x92\x5C\x13\xB4\x71" 27297 - "\xA8\xAA\x89\x4A\xA4\xB3\x49\x7C" 27298 - "\x7D\x7F\xCE\x6F\x29\x2E\x7E\x37" 27299 - "\xC8\x52\x60\xD9\xE7\xCA\x60\x98" 27300 - "\xED\xCD\xE8\x60\x83\xAD\x34\x4D" 27301 - "\x96\x4A\x99\x2B\xB7\x14\x75\x66" 27302 - "\x6C\x2C\x1A\xBA\x4B\xBB\x49\x56" 27303 - "\xE1\x86\xA2\x0E\xD0\xF0\x07\xD3" 27304 - "\x18\x38\x09\x9C\x0E\x8B\x86\x07" 27305 - "\x90\x12\x37\x49\x27\x98\x69\x18" 27306 - "\xB0\xCC\xFB\xD3\xBD\x04\xA0\x85" 27307 - "\x4B\x22\x97\x07\xB6\x97\xE9\x95" 27308 - "\x0F\x88\x36\xA9\x44\x00\xC6\xE9" 27309 - "\x27\x53\x5C\x5B\x1F\xD3\xE2\xEE" 27310 - "\xD0\xCD\x63\x30\xA9\xC0\xDD\x49" 27311 - "\xFE\x16\xA4\x07\x0D\xE2\x5D\x97" 27312 - "\xDE\x89\xBA\x2E\xF3\xA9\x5E\xBE" 27313 - "\x03\x55\x0E\x02\x41\x4A\x45\x06" 27314 - "\xBE\xEA\x32\xF2\xDC\x91\x5C\x20" 27315 - "\x94\x02\x30\xD2\xFC\x29\xFA\x8E" 27316 - "\x34\xA0\x31\xB8\x34\xBA\xAE\x54" 27317 - "\xB5\x88\x1F\xDC\x43\xDC\x22\x9F" 27318 - "\xDC\xCE\xD3\xFA\xA4\xA8\xBC\x8A" 27319 - "\xC7\x5A\x43\x21\xA5\xB1\xDB\xC3" 27320 - "\x84\x3B\xB4\x9B\xB5\xA7\xF1\x0A" 27321 - "\xB6\x37\x21\x19\x55\xC2\xBD\x99" 27322 - "\x49\x24\xBB\x7C\xB3\x8E\xEF\xD2" 27323 - "\x3A\xCF\xA0\x31\x28\x0E\x25\xA2" 27324 - "\x11\xB4\x18\x17\x1A\x65\x92\x56" 27325 - "\xE8\xE0\x52\x9C\x61\x18\x2A\xB1" 27326 - "\x1A\x01\x22\x45\x17\x62\x52\x6C" 27327 - "\x91\x44\xCF\x98\xC7\xC0\x79\x26" 27328 - "\x32\x66\x6F\x23\x7F\x94\x36\x88" 27329 - "\x3C\xC9\xD0\xB7\x45\x30\x31\x86" 27330 - "\x3D\xC6\xA3\x98\x62\x84\x1A\x8B" 27331 - "\x16\x88\xC7\xA3\xE9\x4F\xE0\x86" 27332 - "\xA4\x93\xA8\x34\x5A\xCA\xDF\xCA" 27333 - "\x46\x38\xD2\xF4\xE0\x2D\x1E\xC9" 27334 - "\x7C\xEF\x53\xB7\x60\x72\x41\xBF" 27335 - "\x29\x00\x87\x02\xAF\x44\x4C\xB7" 27336 - "\x8C\xF5\x3F\x19\xF4\x80\x45\xA7" 27337 - "\x15\x5F\xDB\xE9\xB1\x83\xD2\xE6" 27338 - "\x1D\x18\x66\x44\x5B\x8F\x14\xEB", 27339 - .ilen = 496, 27340 - .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 27341 - "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 27342 - "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 27343 - "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" 27344 - "\x1E\x92\x29\xC0\x34\xCB\x62\xF9" 27345 - "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48" 27346 - "\xDF\x76\x0D\x81\x18\xAF\x23\xBA" 27347 - "\x51\xE8\x5C\xF3\x8A\x21\x95\x2C" 27348 - "\xC3\x37\xCE\x65\xFC\x70\x07\x9E" 27349 - "\x12\xA9\x40\xD7\x4B\xE2\x79\x10" 27350 - "\x84\x1B\xB2\x26\xBD\x54\xEB\x5F" 27351 - "\xF6\x8D\x01\x98\x2F\xC6\x3A\xD1" 27352 - "\x68\xFF\x73\x0A\xA1\x15\xAC\x43" 27353 - "\xDA\x4E\xE5\x7C\x13\x87\x1E\xB5" 27354 - "\x29\xC0\x57\xEE\x62\xF9\x90\x04" 27355 - "\x9B\x32\xC9\x3D\xD4\x6B\x02\x76" 27356 - "\x0D\xA4\x18\xAF\x46\xDD\x51\xE8" 27357 - "\x7F\x16\x8A\x21\xB8\x2C\xC3\x5A" 27358 - "\xF1\x65\xFC\x93\x07\x9E\x35\xCC" 27359 - "\x40\xD7\x6E\x05\x79\x10\xA7\x1B" 27360 - "\xB2\x49\xE0\x54\xEB\x82\x19\x8D" 27361 - "\x24\xBB\x2F\xC6\x5D\xF4\x68\xFF" 27362 - "\x96\x0A\xA1\x38\xCF\x43\xDA\x71" 27363 - "\x08\x7C\x13\xAA\x1E\xB5\x4C\xE3" 27364 - "\x57\xEE\x85\x1C\x90\x27\xBE\x32" 27365 - "\xC9\x60\xF7\x6B\x02\x99\x0D\xA4" 27366 - "\x3B\xD2\x46\xDD\x74\x0B\x7F\x16" 27367 - "\xAD\x21\xB8\x4F\xE6\x5A\xF1\x88" 27368 - "\x1F\x93\x2A\xC1\x35\xCC\x63\xFA" 27369 - "\x6E\x05\x9C\x10\xA7\x3E\xD5\x49" 27370 - "\xE0\x77\x0E\x82\x19\xB0\x24\xBB" 27371 - "\x52\xE9\x5D\xF4\x8B\x22\x96\x2D" 27372 - "\xC4\x38\xCF\x66\xFD\x71\x08\x9F" 27373 - "\x13\xAA\x41\xD8\x4C\xE3\x7A\x11" 27374 - "\x85\x1C\xB3\x27\xBE\x55\xEC\x60" 27375 - "\xF7\x8E\x02\x99\x30\xC7\x3B\xD2" 27376 - "\x69\x00\x74\x0B\xA2\x16\xAD\x44" 27377 - "\xDB\x4F\xE6\x7D\x14\x88\x1F\xB6" 27378 - "\x2A\xC1\x58\xEF\x63\xFA\x91\x05" 27379 - "\x9C\x33\xCA\x3E\xD5\x6C\x03\x77" 27380 - "\x0E\xA5\x19\xB0\x47\xDE\x52\xE9" 27381 - "\x80\x17\x8B\x22\xB9\x2D\xC4\x5B" 27382 - "\xF2\x66\xFD\x94\x08\x9F\x36\xCD" 27383 - "\x41\xD8\x6F\x06\x7A\x11\xA8\x1C" 27384 - "\xB3\x4A\xE1\x55\xEC\x83\x1A\x8E" 27385 - "\x25\xBC\x30\xC7\x5E\xF5\x69\x00" 27386 - "\x97\x0B\xA2\x39\xD0\x44\xDB\x72" 27387 - "\x09\x7D\x14\xAB\x1F\xB6\x4D\xE4" 27388 - "\x58\xEF\x86\x1D\x91\x28\xBF\x33" 27389 - "\xCA\x61\xF8\x6C\x03\x9A\x0E\xA5" 27390 - "\x3C\xD3\x47\xDE\x75\x0C\x80\x17" 27391 - "\xAE\x22\xB9\x50\xE7\x5B\xF2\x89" 27392 - "\x20\x94\x2B\xC2\x36\xCD\x64\xFB" 27393 - "\x6F\x06\x9D\x11\xA8\x3F\xD6\x4A" 27394 - "\xE1\x78\x0F\x83\x1A\xB1\x25\xBC" 27395 - "\x53\xEA\x5E\xF5\x8C\x00\x97\x2E" 27396 - "\xC5\x39\xD0\x67\xFE\x72\x09\xA0" 27397 - "\x14\xAB\x42\xD9\x4D\xE4\x7B\x12" 27398 - "\x86\x1D\xB4\x28\xBF\x56\xED\x61" 27399 - "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 27400 - "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 27401 - "\xDC\x50\xE7\x7E\x15\x89\x20\xB7", 27402 - .rlen = 496, 27403 - .also_non_np = 1, 27404 - .np = 3, 27405 - .tap = { 496 - 20, 4, 16 }, 27406 - }, 27407 - }; 27408 - 27409 - static const struct cipher_testvec cast5_ctr_enc_tv_template[] = { 27410 - { /* Generated from TF test vectors */ 27411 - .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 27412 - "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A", 27413 - .klen = 16, 27414 - .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F", 27415 - .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 35120 + .ptext = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 27416 35121 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 27417 35122 "\x3A", 27418 - .ilen = 17, 27419 - .result = "\xFF\xC4\x2E\x82\x3D\xF8\xA8\x39" 35123 + .ctext = "\xFF\xC4\x2E\x82\x3D\xF8\xA8\x39" 27420 35124 "\x7C\x52\xC4\xD3\xBB\x62\xC6\xA8" 27421 35125 "\x0C", 27422 - .rlen = 17, 35126 + .len = 17, 27423 35127 }, { /* Generated from TF test vectors */ 27424 35128 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 27425 35129 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A", 27426 35130 .klen = 16, 27427 35131 .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F", 27428 - .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 35132 + .ptext = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 27429 35133 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 27430 35134 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 27431 35135 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" ··· 27348 35330 "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 27349 35331 "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 27350 35332 "\xDC\x50\xE7\x7E\x15\x89\x20\xB7", 27351 - .ilen = 496, 27352 - .result = "\xFF\xC4\x2E\x82\x3D\xF8\xA8\x39" 35333 + .ctext = "\xFF\xC4\x2E\x82\x3D\xF8\xA8\x39" 27353 35334 "\x7C\x52\xC4\xD3\xBB\x62\xC6\xA8" 27354 35335 "\x0C\x63\xA5\x55\xE3\xF8\x1C\x7F" 27355 35336 "\xDC\x59\xF9\xA0\x52\xAD\x83\xDF" ··· 27410 35393 "\x91\x01\xD7\x21\x23\x28\x1E\xCC" 27411 35394 "\x8C\x98\xDB\xDE\xFC\x72\x94\xAA" 27412 35395 "\xC0\x0D\x96\xAA\x23\xF8\xFE\x13", 27413 - .rlen = 496, 27414 - .also_non_np = 1, 27415 - .np = 3, 27416 - .tap = { 496 - 20, 4, 16 }, 27417 - }, 27418 - }; 27419 - 27420 - static const struct cipher_testvec cast5_ctr_dec_tv_template[] = { 27421 - { /* Generated from TF test vectors */ 27422 - .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 27423 - "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A", 27424 - .klen = 16, 27425 - .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F", 27426 - .input = "\xFF\xC4\x2E\x82\x3D\xF8\xA8\x39" 27427 - "\x7C\x52\xC4\xD3\xBB\x62\xC6\xA8" 27428 - "\x0C", 27429 - .ilen = 17, 27430 - .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 27431 - "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 27432 - "\x3A", 27433 - .rlen = 17, 27434 - }, { /* Generated from TF test vectors */ 27435 - .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 27436 - "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A", 27437 - .klen = 16, 27438 - .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F", 27439 - .input = "\xFF\xC4\x2E\x82\x3D\xF8\xA8\x39" 27440 - "\x7C\x52\xC4\xD3\xBB\x62\xC6\xA8" 27441 - "\x0C\x63\xA5\x55\xE3\xF8\x1C\x7F" 27442 - "\xDC\x59\xF9\xA0\x52\xAD\x83\xDF" 27443 - "\xD5\x3B\x53\x4A\xAA\x1F\x49\x44" 27444 - "\xE8\x20\xCC\xF8\x97\xE6\xE0\x3C" 27445 - "\x5A\xD2\x83\xEC\xEE\x25\x3F\xCF" 27446 - "\x0D\xC2\x79\x80\x99\x6E\xFF\x7B" 27447 - "\x64\xB0\x7B\x86\x29\x1D\x9F\x17" 27448 - "\x10\xA5\xA5\xEB\x16\x55\x9E\xE3" 27449 - "\x88\x18\x52\x56\x48\x58\xD1\x6B" 27450 - "\xE8\x74\x6E\x48\xB0\x2E\x69\x63" 27451 - "\x32\xAA\xAC\x26\x55\x45\x94\xDE" 27452 - "\x30\x26\x26\xE6\x08\x82\x2F\x5F" 27453 - "\xA7\x15\x94\x07\x75\x2D\xC6\x3A" 27454 - "\x1B\xA0\x39\xFB\xBA\xB9\x06\x56" 27455 - "\xF6\x9F\xF1\x2F\x9B\xF3\x89\x8B" 27456 - "\x08\xC8\x9D\x5E\x6B\x95\x09\xC7" 27457 - "\x98\xB7\x62\xA4\x1D\x25\xFA\xC5" 27458 - "\x62\xC8\x5D\x6B\xB4\x85\x88\x7F" 27459 - "\x3B\x29\xF9\xB4\x32\x62\x69\xBF" 27460 - "\x32\xB8\xEB\xFD\x0E\x26\xAA\xA3" 27461 - "\x44\x67\x90\x20\xAC\x41\xDF\x43" 27462 - "\xC6\xC7\x19\x9F\x2C\x28\x74\xEB" 27463 - "\x3E\x7F\x7A\x80\x5B\xE4\x08\x60" 27464 - "\xC7\xC9\x71\x34\x44\xCE\x05\xFD" 27465 - "\xA8\x91\xA8\x44\x5E\xD3\x89\x2C" 27466 - "\xAE\x59\x0F\x07\x88\x79\x53\x26" 27467 - "\xAF\xAC\xCB\x1D\x6F\x08\x25\x62" 27468 - "\xD0\x82\x65\x66\xE4\x2A\x29\x1C" 27469 - "\x9C\x64\x5F\x49\x9D\xF8\x62\xF9" 27470 - "\xED\xC4\x13\x52\x75\xDC\xE4\xF9" 27471 - "\x68\x0F\x8A\xCD\xA6\x8D\x75\xAA" 27472 - "\x49\xA1\x86\x86\x37\x5C\x6B\x3D" 27473 - "\x56\xE5\x6F\xBE\x27\xC0\x10\xF8" 27474 - "\x3C\x4D\x17\x35\x14\xDC\x1C\xA0" 27475 - "\x6E\xAE\xD1\x10\xDD\x83\x06\xC2" 27476 - "\x23\xD3\xC7\x27\x15\x04\x2C\x27" 27477 - "\xDD\x1F\x2E\x97\x09\x9C\x33\x7D" 27478 - "\xAC\x50\x1B\x2E\xC9\x52\x0C\x14" 27479 - "\x4B\x78\xC4\xDE\x07\x6A\x12\x02" 27480 - "\x6E\xD7\x4B\x91\xB9\x88\x4D\x02" 27481 - "\xC3\xB5\x04\xBC\xE0\x67\xCA\x18" 27482 - "\x22\xA1\xAE\x9A\x21\xEF\xB2\x06" 27483 - "\x35\xCD\xEC\x37\x70\x2D\xFC\x1E" 27484 - "\xA8\x31\xE7\xFC\xE5\x8E\x88\x66" 27485 - "\x16\xB5\xC8\x45\x21\x37\xBD\x24" 27486 - "\xA9\xD5\x36\x12\x9F\x6E\x67\x80" 27487 - "\x87\x54\xD5\xAF\x97\xE1\x15\xA7" 27488 - "\x11\xF0\x63\x7B\xE1\x44\x14\x1C" 27489 - "\x06\x32\x05\x8C\x6C\xDB\x9B\x36" 27490 - "\x6A\x6B\xAD\x3A\x27\x55\x20\x4C" 27491 - "\x76\x36\x43\xE8\x16\x60\xB5\xF3" 27492 - "\xDF\x5A\xC6\xA5\x69\x78\x59\x51" 27493 - "\x54\x68\x65\x06\x84\xDE\x3D\xAE" 27494 - "\x38\x91\xBD\xCC\xA2\x8A\xEC\xE6" 27495 - "\x9E\x83\xAE\x1E\x8E\x34\x5D\xDE" 27496 - "\x91\xCE\x8F\xED\x40\xF7\xC8\x8B" 27497 - "\x9A\x13\x4C\xAD\x89\x97\x9E\xD1" 27498 - "\x91\x01\xD7\x21\x23\x28\x1E\xCC" 27499 - "\x8C\x98\xDB\xDE\xFC\x72\x94\xAA" 27500 - "\xC0\x0D\x96\xAA\x23\xF8\xFE\x13", 27501 - .ilen = 496, 27502 - .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 27503 - "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 27504 - "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 27505 - "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" 27506 - "\x1E\x92\x29\xC0\x34\xCB\x62\xF9" 27507 - "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48" 27508 - "\xDF\x76\x0D\x81\x18\xAF\x23\xBA" 27509 - "\x51\xE8\x5C\xF3\x8A\x21\x95\x2C" 27510 - "\xC3\x37\xCE\x65\xFC\x70\x07\x9E" 27511 - "\x12\xA9\x40\xD7\x4B\xE2\x79\x10" 27512 - "\x84\x1B\xB2\x26\xBD\x54\xEB\x5F" 27513 - "\xF6\x8D\x01\x98\x2F\xC6\x3A\xD1" 27514 - "\x68\xFF\x73\x0A\xA1\x15\xAC\x43" 27515 - "\xDA\x4E\xE5\x7C\x13\x87\x1E\xB5" 27516 - "\x29\xC0\x57\xEE\x62\xF9\x90\x04" 27517 - "\x9B\x32\xC9\x3D\xD4\x6B\x02\x76" 27518 - "\x0D\xA4\x18\xAF\x46\xDD\x51\xE8" 27519 - "\x7F\x16\x8A\x21\xB8\x2C\xC3\x5A" 27520 - "\xF1\x65\xFC\x93\x07\x9E\x35\xCC" 27521 - "\x40\xD7\x6E\x05\x79\x10\xA7\x1B" 27522 - "\xB2\x49\xE0\x54\xEB\x82\x19\x8D" 27523 - "\x24\xBB\x2F\xC6\x5D\xF4\x68\xFF" 27524 - "\x96\x0A\xA1\x38\xCF\x43\xDA\x71" 27525 - "\x08\x7C\x13\xAA\x1E\xB5\x4C\xE3" 27526 - "\x57\xEE\x85\x1C\x90\x27\xBE\x32" 27527 - "\xC9\x60\xF7\x6B\x02\x99\x0D\xA4" 27528 - "\x3B\xD2\x46\xDD\x74\x0B\x7F\x16" 27529 - "\xAD\x21\xB8\x4F\xE6\x5A\xF1\x88" 27530 - "\x1F\x93\x2A\xC1\x35\xCC\x63\xFA" 27531 - "\x6E\x05\x9C\x10\xA7\x3E\xD5\x49" 27532 - "\xE0\x77\x0E\x82\x19\xB0\x24\xBB" 27533 - "\x52\xE9\x5D\xF4\x8B\x22\x96\x2D" 27534 - "\xC4\x38\xCF\x66\xFD\x71\x08\x9F" 27535 - "\x13\xAA\x41\xD8\x4C\xE3\x7A\x11" 27536 - "\x85\x1C\xB3\x27\xBE\x55\xEC\x60" 27537 - "\xF7\x8E\x02\x99\x30\xC7\x3B\xD2" 27538 - "\x69\x00\x74\x0B\xA2\x16\xAD\x44" 27539 - "\xDB\x4F\xE6\x7D\x14\x88\x1F\xB6" 27540 - "\x2A\xC1\x58\xEF\x63\xFA\x91\x05" 27541 - "\x9C\x33\xCA\x3E\xD5\x6C\x03\x77" 27542 - "\x0E\xA5\x19\xB0\x47\xDE\x52\xE9" 27543 - "\x80\x17\x8B\x22\xB9\x2D\xC4\x5B" 27544 - "\xF2\x66\xFD\x94\x08\x9F\x36\xCD" 27545 - "\x41\xD8\x6F\x06\x7A\x11\xA8\x1C" 27546 - "\xB3\x4A\xE1\x55\xEC\x83\x1A\x8E" 27547 - "\x25\xBC\x30\xC7\x5E\xF5\x69\x00" 27548 - "\x97\x0B\xA2\x39\xD0\x44\xDB\x72" 27549 - "\x09\x7D\x14\xAB\x1F\xB6\x4D\xE4" 27550 - "\x58\xEF\x86\x1D\x91\x28\xBF\x33" 27551 - "\xCA\x61\xF8\x6C\x03\x9A\x0E\xA5" 27552 - "\x3C\xD3\x47\xDE\x75\x0C\x80\x17" 27553 - "\xAE\x22\xB9\x50\xE7\x5B\xF2\x89" 27554 - "\x20\x94\x2B\xC2\x36\xCD\x64\xFB" 27555 - "\x6F\x06\x9D\x11\xA8\x3F\xD6\x4A" 27556 - "\xE1\x78\x0F\x83\x1A\xB1\x25\xBC" 27557 - "\x53\xEA\x5E\xF5\x8C\x00\x97\x2E" 27558 - "\xC5\x39\xD0\x67\xFE\x72\x09\xA0" 27559 - "\x14\xAB\x42\xD9\x4D\xE4\x7B\x12" 27560 - "\x86\x1D\xB4\x28\xBF\x56\xED\x61" 27561 - "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 27562 - "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 27563 - "\xDC\x50\xE7\x7E\x15\x89\x20\xB7", 27564 - .rlen = 496, 35396 + .len = 496, 27565 35397 .also_non_np = 1, 27566 35398 .np = 3, 27567 35399 .tap = { 496 - 20, 4, 16 }, ··· 27420 35554 /* 27421 35555 * ARC4 test vectors from OpenSSL 27422 35556 */ 27423 - static const struct cipher_testvec arc4_enc_tv_template[] = { 35557 + static const struct cipher_testvec arc4_tv_template[] = { 27424 35558 { 27425 35559 .key = "\x01\x23\x45\x67\x89\xab\xcd\xef", 27426 35560 .klen = 8, 27427 - .input = "\x01\x23\x45\x67\x89\xab\xcd\xef", 27428 - .ilen = 8, 27429 - .result = "\x75\xb7\x87\x80\x99\xe0\xc5\x96", 27430 - .rlen = 8, 35561 + .ptext = "\x01\x23\x45\x67\x89\xab\xcd\xef", 35562 + .ctext = "\x75\xb7\x87\x80\x99\xe0\xc5\x96", 35563 + .len = 8, 27431 35564 }, { 27432 35565 .key = "\x01\x23\x45\x67\x89\xab\xcd\xef", 27433 35566 .klen = 8, 27434 - .input = "\x00\x00\x00\x00\x00\x00\x00\x00", 27435 - .ilen = 8, 27436 - .result = "\x74\x94\xc2\xe7\x10\x4b\x08\x79", 27437 - .rlen = 8, 35567 + .ptext = "\x00\x00\x00\x00\x00\x00\x00\x00", 35568 + .ctext = "\x74\x94\xc2\xe7\x10\x4b\x08\x79", 35569 + .len = 8, 27438 35570 }, { 27439 35571 .key = "\x00\x00\x00\x00\x00\x00\x00\x00", 27440 35572 .klen = 8, 27441 - .input = "\x00\x00\x00\x00\x00\x00\x00\x00", 27442 - .ilen = 8, 27443 - .result = "\xde\x18\x89\x41\xa3\x37\x5d\x3a", 27444 - .rlen = 8, 35573 + .ptext = "\x00\x00\x00\x00\x00\x00\x00\x00", 35574 + .ctext = "\xde\x18\x89\x41\xa3\x37\x5d\x3a", 35575 + .len = 8, 27445 35576 }, { 27446 35577 .key = "\xef\x01\x23\x45", 27447 35578 .klen = 4, 27448 - .input = "\x00\x00\x00\x00\x00\x00\x00\x00" 35579 + .ptext = "\x00\x00\x00\x00\x00\x00\x00\x00" 27449 35580 "\x00\x00\x00\x00\x00\x00\x00\x00" 27450 35581 "\x00\x00\x00\x00", 27451 - .ilen = 20, 27452 - .result = "\xd6\xa1\x41\xa7\xec\x3c\x38\xdf" 35582 + .ctext = "\xd6\xa1\x41\xa7\xec\x3c\x38\xdf" 27453 35583 "\xbd\x61\x5a\x11\x62\xe1\xc7\xba" 27454 35584 "\x36\xb6\x78\x58", 27455 - .rlen = 20, 35585 + .len = 20, 27456 35586 }, { 27457 35587 .key = "\x01\x23\x45\x67\x89\xab\xcd\xef", 27458 35588 .klen = 8, 27459 - .input = "\x12\x34\x56\x78\x9A\xBC\xDE\xF0" 35589 + .ptext = "\x12\x34\x56\x78\x9A\xBC\xDE\xF0" 27460 35590 "\x12\x34\x56\x78\x9A\xBC\xDE\xF0" 27461 35591 "\x12\x34\x56\x78\x9A\xBC\xDE\xF0" 27462 35592 "\x12\x34\x56\x78", 27463 - .ilen = 28, 27464 - .result = "\x66\xa0\x94\x9f\x8a\xf7\xd6\x89" 35593 + .ctext = "\x66\xa0\x94\x9f\x8a\xf7\xd6\x89" 27465 35594 "\x1f\x7f\x83\x2b\xa8\x33\xc0\x0c" 27466 35595 "\x89\x2e\xbe\x30\x14\x3c\xe2\x87" 27467 35596 "\x40\x01\x1e\xcf", 27468 - .rlen = 28, 35597 + .len = 28, 27469 35598 }, { 27470 35599 .key = "\xef\x01\x23\x45", 27471 35600 .klen = 4, 27472 - .input = "\x00\x00\x00\x00\x00\x00\x00\x00" 35601 + .ptext = "\x00\x00\x00\x00\x00\x00\x00\x00" 27473 35602 "\x00\x00", 27474 - .ilen = 10, 27475 - .result = "\xd6\xa1\x41\xa7\xec\x3c\x38\xdf" 35603 + .ctext = "\xd6\xa1\x41\xa7\xec\x3c\x38\xdf" 27476 35604 "\xbd\x61", 27477 - .rlen = 10, 35605 + .len = 10, 27478 35606 }, { 27479 35607 .key = "\x01\x23\x45\x67\x89\xAB\xCD\xEF" 27480 35608 "\x00\x00\x00\x00\x00\x00\x00\x00", 27481 35609 .klen = 16, 27482 - .input = "\x01\x23\x45\x67\x89\xAB\xCD\xEF", 27483 - .ilen = 8, 27484 - .result = "\x69\x72\x36\x59\x1B\x52\x42\xB1", 27485 - .rlen = 8, 27486 - }, 27487 - }; 27488 - 27489 - static const struct cipher_testvec arc4_dec_tv_template[] = { 27490 - { 27491 - .key = "\x01\x23\x45\x67\x89\xab\xcd\xef", 27492 - .klen = 8, 27493 - .input = "\x75\xb7\x87\x80\x99\xe0\xc5\x96", 27494 - .ilen = 8, 27495 - .result = "\x01\x23\x45\x67\x89\xab\xcd\xef", 27496 - .rlen = 8, 27497 - }, { 27498 - .key = "\x01\x23\x45\x67\x89\xab\xcd\xef", 27499 - .klen = 8, 27500 - .input = "\x74\x94\xc2\xe7\x10\x4b\x08\x79", 27501 - .ilen = 8, 27502 - .result = "\x00\x00\x00\x00\x00\x00\x00\x00", 27503 - .rlen = 8, 27504 - }, { 27505 - .key = "\x00\x00\x00\x00\x00\x00\x00\x00", 27506 - .klen = 8, 27507 - .input = "\xde\x18\x89\x41\xa3\x37\x5d\x3a", 27508 - .ilen = 8, 27509 - .result = "\x00\x00\x00\x00\x00\x00\x00\x00", 27510 - .rlen = 8, 27511 - }, { 27512 - .key = "\xef\x01\x23\x45", 27513 - .klen = 4, 27514 - .input = "\xd6\xa1\x41\xa7\xec\x3c\x38\xdf" 27515 - "\xbd\x61\x5a\x11\x62\xe1\xc7\xba" 27516 - "\x36\xb6\x78\x58", 27517 - .ilen = 20, 27518 - .result = "\x00\x00\x00\x00\x00\x00\x00\x00" 27519 - "\x00\x00\x00\x00\x00\x00\x00\x00" 27520 - "\x00\x00\x00\x00", 27521 - .rlen = 20, 27522 - }, { 27523 - .key = "\x01\x23\x45\x67\x89\xab\xcd\xef", 27524 - .klen = 8, 27525 - .input = "\x66\xa0\x94\x9f\x8a\xf7\xd6\x89" 27526 - "\x1f\x7f\x83\x2b\xa8\x33\xc0\x0c" 27527 - "\x89\x2e\xbe\x30\x14\x3c\xe2\x87" 27528 - "\x40\x01\x1e\xcf", 27529 - .ilen = 28, 27530 - .result = "\x12\x34\x56\x78\x9A\xBC\xDE\xF0" 27531 - "\x12\x34\x56\x78\x9A\xBC\xDE\xF0" 27532 - "\x12\x34\x56\x78\x9A\xBC\xDE\xF0" 27533 - "\x12\x34\x56\x78", 27534 - .rlen = 28, 27535 - }, { 27536 - .key = "\xef\x01\x23\x45", 27537 - .klen = 4, 27538 - .input = "\xd6\xa1\x41\xa7\xec\x3c\x38\xdf" 27539 - "\xbd\x61", 27540 - .ilen = 10, 27541 - .result = "\x00\x00\x00\x00\x00\x00\x00\x00" 27542 - "\x00\x00", 27543 - .rlen = 10, 27544 - }, { 27545 - .key = "\x01\x23\x45\x67\x89\xAB\xCD\xEF" 27546 - "\x00\x00\x00\x00\x00\x00\x00\x00", 27547 - .klen = 16, 27548 - .input = "\x69\x72\x36\x59\x1B\x52\x42\xB1", 27549 - .ilen = 8, 27550 - .result = "\x01\x23\x45\x67\x89\xAB\xCD\xEF", 27551 - .rlen = 8, 35610 + .ptext = "\x01\x23\x45\x67\x89\xAB\xCD\xEF", 35611 + .ctext = "\x69\x72\x36\x59\x1B\x52\x42\xB1", 35612 + .len = 8, 27552 35613 }, 27553 35614 }; 27554 35615 27555 35616 /* 27556 35617 * TEA test vectors 27557 35618 */ 27558 - static const struct cipher_testvec tea_enc_tv_template[] = { 35619 + static const struct cipher_testvec tea_tv_template[] = { 27559 35620 { 27560 35621 .key = zeroed_string, 27561 35622 .klen = 16, 27562 - .input = zeroed_string, 27563 - .ilen = 8, 27564 - .result = "\x0a\x3a\xea\x41\x40\xa9\xba\x94", 27565 - .rlen = 8, 35623 + .ptext = zeroed_string, 35624 + .ctext = "\x0a\x3a\xea\x41\x40\xa9\xba\x94", 35625 + .len = 8, 27566 35626 }, { 27567 35627 .key = "\x2b\x02\x05\x68\x06\x14\x49\x76" 27568 35628 "\x77\x5d\x0e\x26\x6c\x28\x78\x43", 27569 35629 .klen = 16, 27570 - .input = "\x74\x65\x73\x74\x20\x6d\x65\x2e", 27571 - .ilen = 8, 27572 - .result = "\x77\x5d\x2a\x6a\xf6\xce\x92\x09", 27573 - .rlen = 8, 35630 + .ptext = "\x74\x65\x73\x74\x20\x6d\x65\x2e", 35631 + .ctext = "\x77\x5d\x2a\x6a\xf6\xce\x92\x09", 35632 + .len = 8, 27574 35633 }, { 27575 35634 .key = "\x09\x65\x43\x11\x66\x44\x39\x25" 27576 35635 "\x51\x3a\x16\x10\x0a\x08\x12\x6e", 27577 35636 .klen = 16, 27578 - .input = "\x6c\x6f\x6e\x67\x65\x72\x5f\x74" 35637 + .ptext = "\x6c\x6f\x6e\x67\x65\x72\x5f\x74" 27579 35638 "\x65\x73\x74\x5f\x76\x65\x63\x74", 27580 - .ilen = 16, 27581 - .result = "\xbe\x7a\xbb\x81\x95\x2d\x1f\x1e" 35639 + .ctext = "\xbe\x7a\xbb\x81\x95\x2d\x1f\x1e" 27582 35640 "\xdd\x89\xa1\x25\x04\x21\xdf\x95", 27583 - .rlen = 16, 35641 + .len = 16, 27584 35642 }, { 27585 35643 .key = "\x4d\x76\x32\x17\x05\x3f\x75\x2c" 27586 35644 "\x5d\x04\x16\x36\x15\x72\x63\x2f", 27587 35645 .klen = 16, 27588 - .input = "\x54\x65\x61\x20\x69\x73\x20\x67" 35646 + .ptext = "\x54\x65\x61\x20\x69\x73\x20\x67" 27589 35647 "\x6f\x6f\x64\x20\x66\x6f\x72\x20" 27590 35648 "\x79\x6f\x75\x21\x21\x21\x20\x72" 27591 35649 "\x65\x61\x6c\x6c\x79\x21\x21\x21", 27592 - .ilen = 32, 27593 - .result = "\xe0\x4d\x5d\x3c\xb7\x8c\x36\x47" 35650 + .ctext = "\xe0\x4d\x5d\x3c\xb7\x8c\x36\x47" 27594 35651 "\x94\x18\x95\x91\xa9\xfc\x49\xf8" 27595 35652 "\x44\xd1\x2d\xc2\x99\xb8\x08\x2a" 27596 35653 "\x07\x89\x73\xc2\x45\x92\xc6\x90", 27597 - .rlen = 32, 27598 - } 27599 - }; 27600 - 27601 - static const struct cipher_testvec tea_dec_tv_template[] = { 27602 - { 27603 - .key = zeroed_string, 27604 - .klen = 16, 27605 - .input = "\x0a\x3a\xea\x41\x40\xa9\xba\x94", 27606 - .ilen = 8, 27607 - .result = zeroed_string, 27608 - .rlen = 8, 27609 - }, { 27610 - .key = "\x2b\x02\x05\x68\x06\x14\x49\x76" 27611 - "\x77\x5d\x0e\x26\x6c\x28\x78\x43", 27612 - .klen = 16, 27613 - .input = "\x77\x5d\x2a\x6a\xf6\xce\x92\x09", 27614 - .ilen = 8, 27615 - .result = "\x74\x65\x73\x74\x20\x6d\x65\x2e", 27616 - .rlen = 8, 27617 - }, { 27618 - .key = "\x09\x65\x43\x11\x66\x44\x39\x25" 27619 - "\x51\x3a\x16\x10\x0a\x08\x12\x6e", 27620 - .klen = 16, 27621 - .input = "\xbe\x7a\xbb\x81\x95\x2d\x1f\x1e" 27622 - "\xdd\x89\xa1\x25\x04\x21\xdf\x95", 27623 - .ilen = 16, 27624 - .result = "\x6c\x6f\x6e\x67\x65\x72\x5f\x74" 27625 - "\x65\x73\x74\x5f\x76\x65\x63\x74", 27626 - .rlen = 16, 27627 - }, { 27628 - .key = "\x4d\x76\x32\x17\x05\x3f\x75\x2c" 27629 - "\x5d\x04\x16\x36\x15\x72\x63\x2f", 27630 - .klen = 16, 27631 - .input = "\xe0\x4d\x5d\x3c\xb7\x8c\x36\x47" 27632 - "\x94\x18\x95\x91\xa9\xfc\x49\xf8" 27633 - "\x44\xd1\x2d\xc2\x99\xb8\x08\x2a" 27634 - "\x07\x89\x73\xc2\x45\x92\xc6\x90", 27635 - .ilen = 32, 27636 - .result = "\x54\x65\x61\x20\x69\x73\x20\x67" 27637 - "\x6f\x6f\x64\x20\x66\x6f\x72\x20" 27638 - "\x79\x6f\x75\x21\x21\x21\x20\x72" 27639 - "\x65\x61\x6c\x6c\x79\x21\x21\x21", 27640 - .rlen = 32, 35654 + .len = 32, 27641 35655 } 27642 35656 }; 27643 35657 27644 35658 /* 27645 35659 * XTEA test vectors 27646 35660 */ 27647 - static const struct cipher_testvec xtea_enc_tv_template[] = { 35661 + static const struct cipher_testvec xtea_tv_template[] = { 27648 35662 { 27649 35663 .key = zeroed_string, 27650 35664 .klen = 16, 27651 - .input = zeroed_string, 27652 - .ilen = 8, 27653 - .result = "\xd8\xd4\xe9\xde\xd9\x1e\x13\xf7", 27654 - .rlen = 8, 35665 + .ptext = zeroed_string, 35666 + .ctext = "\xd8\xd4\xe9\xde\xd9\x1e\x13\xf7", 35667 + .len = 8, 27655 35668 }, { 27656 35669 .key = "\x2b\x02\x05\x68\x06\x14\x49\x76" 27657 35670 "\x77\x5d\x0e\x26\x6c\x28\x78\x43", 27658 35671 .klen = 16, 27659 - .input = "\x74\x65\x73\x74\x20\x6d\x65\x2e", 27660 - .ilen = 8, 27661 - .result = "\x94\xeb\xc8\x96\x84\x6a\x49\xa8", 27662 - .rlen = 8, 35672 + .ptext = "\x74\x65\x73\x74\x20\x6d\x65\x2e", 35673 + .ctext = "\x94\xeb\xc8\x96\x84\x6a\x49\xa8", 35674 + .len = 8, 27663 35675 }, { 27664 35676 .key = "\x09\x65\x43\x11\x66\x44\x39\x25" 27665 35677 "\x51\x3a\x16\x10\x0a\x08\x12\x6e", 27666 35678 .klen = 16, 27667 - .input = "\x6c\x6f\x6e\x67\x65\x72\x5f\x74" 35679 + .ptext = "\x6c\x6f\x6e\x67\x65\x72\x5f\x74" 27668 35680 "\x65\x73\x74\x5f\x76\x65\x63\x74", 27669 - .ilen = 16, 27670 - .result = "\x3e\xce\xae\x22\x60\x56\xa8\x9d" 35681 + .ctext = "\x3e\xce\xae\x22\x60\x56\xa8\x9d" 27671 35682 "\x77\x4d\xd4\xb4\x87\x24\xe3\x9a", 27672 - .rlen = 16, 35683 + .len = 16, 27673 35684 }, { 27674 35685 .key = "\x4d\x76\x32\x17\x05\x3f\x75\x2c" 27675 35686 "\x5d\x04\x16\x36\x15\x72\x63\x2f", 27676 35687 .klen = 16, 27677 - .input = "\x54\x65\x61\x20\x69\x73\x20\x67" 35688 + .ptext = "\x54\x65\x61\x20\x69\x73\x20\x67" 27678 35689 "\x6f\x6f\x64\x20\x66\x6f\x72\x20" 27679 35690 "\x79\x6f\x75\x21\x21\x21\x20\x72" 27680 35691 "\x65\x61\x6c\x6c\x79\x21\x21\x21", 27681 - .ilen = 32, 27682 - .result = "\x99\x81\x9f\x5d\x6f\x4b\x31\x3a" 35692 + .ctext = "\x99\x81\x9f\x5d\x6f\x4b\x31\x3a" 27683 35693 "\x86\xff\x6f\xd0\xe3\x87\x70\x07" 27684 35694 "\x4d\xb8\xcf\xf3\x99\x50\xb3\xd4" 27685 35695 "\x73\xa2\xfa\xc9\x16\x59\x5d\x81", 27686 - .rlen = 32, 27687 - } 27688 - }; 27689 - 27690 - static const struct cipher_testvec xtea_dec_tv_template[] = { 27691 - { 27692 - .key = zeroed_string, 27693 - .klen = 16, 27694 - .input = "\xd8\xd4\xe9\xde\xd9\x1e\x13\xf7", 27695 - .ilen = 8, 27696 - .result = zeroed_string, 27697 - .rlen = 8, 27698 - }, { 27699 - .key = "\x2b\x02\x05\x68\x06\x14\x49\x76" 27700 - "\x77\x5d\x0e\x26\x6c\x28\x78\x43", 27701 - .klen = 16, 27702 - .input = "\x94\xeb\xc8\x96\x84\x6a\x49\xa8", 27703 - .ilen = 8, 27704 - .result = "\x74\x65\x73\x74\x20\x6d\x65\x2e", 27705 - .rlen = 8, 27706 - }, { 27707 - .key = "\x09\x65\x43\x11\x66\x44\x39\x25" 27708 - "\x51\x3a\x16\x10\x0a\x08\x12\x6e", 27709 - .klen = 16, 27710 - .input = "\x3e\xce\xae\x22\x60\x56\xa8\x9d" 27711 - "\x77\x4d\xd4\xb4\x87\x24\xe3\x9a", 27712 - .ilen = 16, 27713 - .result = "\x6c\x6f\x6e\x67\x65\x72\x5f\x74" 27714 - "\x65\x73\x74\x5f\x76\x65\x63\x74", 27715 - .rlen = 16, 27716 - }, { 27717 - .key = "\x4d\x76\x32\x17\x05\x3f\x75\x2c" 27718 - "\x5d\x04\x16\x36\x15\x72\x63\x2f", 27719 - .klen = 16, 27720 - .input = "\x99\x81\x9f\x5d\x6f\x4b\x31\x3a" 27721 - "\x86\xff\x6f\xd0\xe3\x87\x70\x07" 27722 - "\x4d\xb8\xcf\xf3\x99\x50\xb3\xd4" 27723 - "\x73\xa2\xfa\xc9\x16\x59\x5d\x81", 27724 - .ilen = 32, 27725 - .result = "\x54\x65\x61\x20\x69\x73\x20\x67" 27726 - "\x6f\x6f\x64\x20\x66\x6f\x72\x20" 27727 - "\x79\x6f\x75\x21\x21\x21\x20\x72" 27728 - "\x65\x61\x6c\x6c\x79\x21\x21\x21", 27729 - .rlen = 32, 35696 + .len = 32, 27730 35697 } 27731 35698 }; 27732 35699 27733 35700 /* 27734 35701 * KHAZAD test vectors. 27735 35702 */ 27736 - static const struct cipher_testvec khazad_enc_tv_template[] = { 35703 + static const struct cipher_testvec khazad_tv_template[] = { 27737 35704 { 27738 35705 .key = "\x80\x00\x00\x00\x00\x00\x00\x00" 27739 35706 "\x00\x00\x00\x00\x00\x00\x00\x00", 27740 35707 .klen = 16, 27741 - .input = "\x00\x00\x00\x00\x00\x00\x00\x00", 27742 - .ilen = 8, 27743 - .result = "\x49\xa4\xce\x32\xac\x19\x0e\x3f", 27744 - .rlen = 8, 35708 + .ptext = "\x00\x00\x00\x00\x00\x00\x00\x00", 35709 + .ctext = "\x49\xa4\xce\x32\xac\x19\x0e\x3f", 35710 + .len = 8, 27745 35711 }, { 27746 35712 .key = "\x38\x38\x38\x38\x38\x38\x38\x38" 27747 35713 "\x38\x38\x38\x38\x38\x38\x38\x38", 27748 35714 .klen = 16, 27749 - .input = "\x38\x38\x38\x38\x38\x38\x38\x38", 27750 - .ilen = 8, 27751 - .result = "\x7e\x82\x12\xa1\xd9\x5b\xe4\xf9", 27752 - .rlen = 8, 35715 + .ptext = "\x38\x38\x38\x38\x38\x38\x38\x38", 35716 + .ctext = "\x7e\x82\x12\xa1\xd9\x5b\xe4\xf9", 35717 + .len = 8, 27753 35718 }, { 27754 35719 .key = "\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2" 27755 35720 "\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2", 27756 35721 .klen = 16, 27757 - .input = "\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2", 27758 - .ilen = 8, 27759 - .result = "\xaa\xbe\xc1\x95\xc5\x94\x1a\x9c", 27760 - .rlen = 8, 35722 + .ptext = "\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2", 35723 + .ctext = "\xaa\xbe\xc1\x95\xc5\x94\x1a\x9c", 35724 + .len = 8, 27761 35725 }, { 27762 35726 .key = "\x2f\x2f\x2f\x2f\x2f\x2f\x2f\x2f" 27763 35727 "\x2f\x2f\x2f\x2f\x2f\x2f\x2f\x2f", 27764 35728 .klen = 16, 27765 - .input = "\x2f\x2f\x2f\x2f\x2f\x2f\x2f\x2f", 27766 - .ilen = 8, 27767 - .result = "\x04\x74\xf5\x70\x50\x16\xd3\xb8", 27768 - .rlen = 8, 35729 + .ptext = "\x2f\x2f\x2f\x2f\x2f\x2f\x2f\x2f", 35730 + .ctext = "\x04\x74\xf5\x70\x50\x16\xd3\xb8", 35731 + .len = 8, 27769 35732 }, { 27770 35733 .key = "\x2f\x2f\x2f\x2f\x2f\x2f\x2f\x2f" 27771 35734 "\x2f\x2f\x2f\x2f\x2f\x2f\x2f\x2f", 27772 35735 .klen = 16, 27773 - .input = "\x2f\x2f\x2f\x2f\x2f\x2f\x2f\x2f" 35736 + .ptext = "\x2f\x2f\x2f\x2f\x2f\x2f\x2f\x2f" 27774 35737 "\x2f\x2f\x2f\x2f\x2f\x2f\x2f\x2f", 27775 - .ilen = 16, 27776 - .result = "\x04\x74\xf5\x70\x50\x16\xd3\xb8" 35738 + .ctext = "\x04\x74\xf5\x70\x50\x16\xd3\xb8" 27777 35739 "\x04\x74\xf5\x70\x50\x16\xd3\xb8", 27778 - .rlen = 16, 27779 - }, 27780 - }; 27781 - 27782 - static const struct cipher_testvec khazad_dec_tv_template[] = { 27783 - { 27784 - .key = "\x80\x00\x00\x00\x00\x00\x00\x00" 27785 - "\x00\x00\x00\x00\x00\x00\x00\x00", 27786 - .klen = 16, 27787 - .input = "\x49\xa4\xce\x32\xac\x19\x0e\x3f", 27788 - .ilen = 8, 27789 - .result = "\x00\x00\x00\x00\x00\x00\x00\x00", 27790 - .rlen = 8, 27791 - }, { 27792 - .key = "\x38\x38\x38\x38\x38\x38\x38\x38" 27793 - "\x38\x38\x38\x38\x38\x38\x38\x38", 27794 - .klen = 16, 27795 - .input = "\x7e\x82\x12\xa1\xd9\x5b\xe4\xf9", 27796 - .ilen = 8, 27797 - .result = "\x38\x38\x38\x38\x38\x38\x38\x38", 27798 - .rlen = 8, 27799 - }, { 27800 - .key = "\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2" 27801 - "\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2", 27802 - .klen = 16, 27803 - .input = "\xaa\xbe\xc1\x95\xc5\x94\x1a\x9c", 27804 - .ilen = 8, 27805 - .result = "\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2", 27806 - .rlen = 8, 27807 - }, { 27808 - .key = "\x2f\x2f\x2f\x2f\x2f\x2f\x2f\x2f" 27809 - "\x2f\x2f\x2f\x2f\x2f\x2f\x2f\x2f", 27810 - .klen = 16, 27811 - .input = "\x04\x74\xf5\x70\x50\x16\xd3\xb8", 27812 - .ilen = 8, 27813 - .result = "\x2f\x2f\x2f\x2f\x2f\x2f\x2f\x2f", 27814 - .rlen = 8, 27815 - }, { 27816 - .key = "\x2f\x2f\x2f\x2f\x2f\x2f\x2f\x2f" 27817 - "\x2f\x2f\x2f\x2f\x2f\x2f\x2f\x2f", 27818 - .klen = 16, 27819 - .input = "\x04\x74\xf5\x70\x50\x16\xd3\xb8" 27820 - "\x04\x74\xf5\x70\x50\x16\xd3\xb8", 27821 - .ilen = 16, 27822 - .result = "\x2f\x2f\x2f\x2f\x2f\x2f\x2f\x2f" 27823 - "\x2f\x2f\x2f\x2f\x2f\x2f\x2f\x2f", 27824 - .rlen = 16, 35740 + .len = 16, 27825 35741 }, 27826 35742 }; 27827 35743 ··· 27611 35963 * Anubis test vectors. 27612 35964 */ 27613 35965 27614 - static const struct cipher_testvec anubis_enc_tv_template[] = { 35966 + static const struct cipher_testvec anubis_tv_template[] = { 27615 35967 { 27616 35968 .key = "\xfe\xfe\xfe\xfe\xfe\xfe\xfe\xfe" 27617 35969 "\xfe\xfe\xfe\xfe\xfe\xfe\xfe\xfe", 27618 35970 .klen = 16, 27619 - .input = "\xfe\xfe\xfe\xfe\xfe\xfe\xfe\xfe" 35971 + .ptext = "\xfe\xfe\xfe\xfe\xfe\xfe\xfe\xfe" 27620 35972 "\xfe\xfe\xfe\xfe\xfe\xfe\xfe\xfe", 27621 - .ilen = 16, 27622 - .result = "\x6d\xc5\xda\xa2\x26\x7d\x62\x6f" 35973 + .ctext = "\x6d\xc5\xda\xa2\x26\x7d\x62\x6f" 27623 35974 "\x08\xb7\x52\x8e\x6e\x6e\x86\x90", 27624 - .rlen = 16, 35975 + .len = 16, 27625 35976 }, { 27626 35977 27627 35978 .key = "\x03\x03\x03\x03\x03\x03\x03\x03" 27628 35979 "\x03\x03\x03\x03\x03\x03\x03\x03" 27629 35980 "\x03\x03\x03\x03", 27630 35981 .klen = 20, 27631 - .input = "\x03\x03\x03\x03\x03\x03\x03\x03" 35982 + .ptext = "\x03\x03\x03\x03\x03\x03\x03\x03" 27632 35983 "\x03\x03\x03\x03\x03\x03\x03\x03", 27633 - .ilen = 16, 27634 - .result = "\xdb\xf1\x42\xf4\xd1\x8a\xc7\x49" 35984 + .ctext = "\xdb\xf1\x42\xf4\xd1\x8a\xc7\x49" 27635 35985 "\x87\x41\x6f\x82\x0a\x98\x64\xae", 27636 - .rlen = 16, 35986 + .len = 16, 27637 35987 }, { 27638 35988 .key = "\x24\x24\x24\x24\x24\x24\x24\x24" 27639 35989 "\x24\x24\x24\x24\x24\x24\x24\x24" 27640 35990 "\x24\x24\x24\x24\x24\x24\x24\x24" 27641 35991 "\x24\x24\x24\x24", 27642 35992 .klen = 28, 27643 - .input = "\x24\x24\x24\x24\x24\x24\x24\x24" 35993 + .ptext = "\x24\x24\x24\x24\x24\x24\x24\x24" 27644 35994 "\x24\x24\x24\x24\x24\x24\x24\x24", 27645 - .ilen = 16, 27646 - .result = "\xfd\x1b\x4a\xe3\xbf\xf0\xad\x3d" 35995 + .ctext = "\xfd\x1b\x4a\xe3\xbf\xf0\xad\x3d" 27647 35996 "\x06\xd3\x61\x27\xfd\x13\x9e\xde", 27648 - .rlen = 16, 35997 + .len = 16, 27649 35998 }, { 27650 35999 .key = "\x25\x25\x25\x25\x25\x25\x25\x25" 27651 36000 "\x25\x25\x25\x25\x25\x25\x25\x25" 27652 36001 "\x25\x25\x25\x25\x25\x25\x25\x25" 27653 36002 "\x25\x25\x25\x25\x25\x25\x25\x25", 27654 36003 .klen = 32, 27655 - .input = "\x25\x25\x25\x25\x25\x25\x25\x25" 36004 + .ptext = "\x25\x25\x25\x25\x25\x25\x25\x25" 27656 36005 "\x25\x25\x25\x25\x25\x25\x25\x25", 27657 - .ilen = 16, 27658 - .result = "\x1a\x91\xfb\x2b\xb7\x78\x6b\xc4" 36006 + .ctext = "\x1a\x91\xfb\x2b\xb7\x78\x6b\xc4" 27659 36007 "\x17\xd9\xff\x40\x3b\x0e\xe5\xfe", 27660 - .rlen = 16, 36008 + .len = 16, 27661 36009 }, { 27662 36010 .key = "\x35\x35\x35\x35\x35\x35\x35\x35" 27663 36011 "\x35\x35\x35\x35\x35\x35\x35\x35" ··· 27661 36017 "\x35\x35\x35\x35\x35\x35\x35\x35" 27662 36018 "\x35\x35\x35\x35\x35\x35\x35\x35", 27663 36019 .klen = 40, 27664 - .input = "\x35\x35\x35\x35\x35\x35\x35\x35" 36020 + .ptext = "\x35\x35\x35\x35\x35\x35\x35\x35" 27665 36021 "\x35\x35\x35\x35\x35\x35\x35\x35", 27666 - .ilen = 16, 27667 - .result = "\xa5\x2c\x85\x6f\x9c\xba\xa0\x97" 36022 + .ctext = "\xa5\x2c\x85\x6f\x9c\xba\xa0\x97" 27668 36023 "\x9e\xc6\x84\x0f\x17\x21\x07\xee", 27669 - .rlen = 16, 36024 + .len = 16, 27670 36025 }, 27671 36026 }; 27672 36027 27673 - static const struct cipher_testvec anubis_dec_tv_template[] = { 36028 + static const struct cipher_testvec anubis_cbc_tv_template[] = { 27674 36029 { 27675 36030 .key = "\xfe\xfe\xfe\xfe\xfe\xfe\xfe\xfe" 27676 36031 "\xfe\xfe\xfe\xfe\xfe\xfe\xfe\xfe", 27677 36032 .klen = 16, 27678 - .input = "\x6d\xc5\xda\xa2\x26\x7d\x62\x6f" 27679 - "\x08\xb7\x52\x8e\x6e\x6e\x86\x90", 27680 - .ilen = 16, 27681 - .result = "\xfe\xfe\xfe\xfe\xfe\xfe\xfe\xfe" 27682 - "\xfe\xfe\xfe\xfe\xfe\xfe\xfe\xfe", 27683 - .rlen = 16, 27684 - }, { 27685 - 27686 - .key = "\x03\x03\x03\x03\x03\x03\x03\x03" 27687 - "\x03\x03\x03\x03\x03\x03\x03\x03" 27688 - "\x03\x03\x03\x03", 27689 - .klen = 20, 27690 - .input = "\xdb\xf1\x42\xf4\xd1\x8a\xc7\x49" 27691 - "\x87\x41\x6f\x82\x0a\x98\x64\xae", 27692 - .ilen = 16, 27693 - .result = "\x03\x03\x03\x03\x03\x03\x03\x03" 27694 - "\x03\x03\x03\x03\x03\x03\x03\x03", 27695 - .rlen = 16, 27696 - }, { 27697 - .key = "\x24\x24\x24\x24\x24\x24\x24\x24" 27698 - "\x24\x24\x24\x24\x24\x24\x24\x24" 27699 - "\x24\x24\x24\x24\x24\x24\x24\x24" 27700 - "\x24\x24\x24\x24", 27701 - .klen = 28, 27702 - .input = "\xfd\x1b\x4a\xe3\xbf\xf0\xad\x3d" 27703 - "\x06\xd3\x61\x27\xfd\x13\x9e\xde", 27704 - .ilen = 16, 27705 - .result = "\x24\x24\x24\x24\x24\x24\x24\x24" 27706 - "\x24\x24\x24\x24\x24\x24\x24\x24", 27707 - .rlen = 16, 27708 - }, { 27709 - .key = "\x25\x25\x25\x25\x25\x25\x25\x25" 27710 - "\x25\x25\x25\x25\x25\x25\x25\x25" 27711 - "\x25\x25\x25\x25\x25\x25\x25\x25" 27712 - "\x25\x25\x25\x25\x25\x25\x25\x25", 27713 - .klen = 32, 27714 - .input = "\x1a\x91\xfb\x2b\xb7\x78\x6b\xc4" 27715 - "\x17\xd9\xff\x40\x3b\x0e\xe5\xfe", 27716 - .ilen = 16, 27717 - .result = "\x25\x25\x25\x25\x25\x25\x25\x25" 27718 - "\x25\x25\x25\x25\x25\x25\x25\x25", 27719 - .rlen = 16, 27720 - }, { 27721 - .key = "\x35\x35\x35\x35\x35\x35\x35\x35" 27722 - "\x35\x35\x35\x35\x35\x35\x35\x35" 27723 - "\x35\x35\x35\x35\x35\x35\x35\x35" 27724 - "\x35\x35\x35\x35\x35\x35\x35\x35" 27725 - "\x35\x35\x35\x35\x35\x35\x35\x35", 27726 - .input = "\xa5\x2c\x85\x6f\x9c\xba\xa0\x97" 27727 - "\x9e\xc6\x84\x0f\x17\x21\x07\xee", 27728 - .klen = 40, 27729 - .ilen = 16, 27730 - .result = "\x35\x35\x35\x35\x35\x35\x35\x35" 27731 - "\x35\x35\x35\x35\x35\x35\x35\x35", 27732 - .rlen = 16, 27733 - }, 27734 - }; 27735 - 27736 - static const struct cipher_testvec anubis_cbc_enc_tv_template[] = { 27737 - { 27738 - .key = "\xfe\xfe\xfe\xfe\xfe\xfe\xfe\xfe" 27739 - "\xfe\xfe\xfe\xfe\xfe\xfe\xfe\xfe", 27740 - .klen = 16, 27741 - .input = "\xfe\xfe\xfe\xfe\xfe\xfe\xfe\xfe" 36033 + .ptext = "\xfe\xfe\xfe\xfe\xfe\xfe\xfe\xfe" 27742 36034 "\xfe\xfe\xfe\xfe\xfe\xfe\xfe\xfe" 27743 36035 "\xfe\xfe\xfe\xfe\xfe\xfe\xfe\xfe" 27744 36036 "\xfe\xfe\xfe\xfe\xfe\xfe\xfe\xfe", 27745 - .ilen = 32, 27746 - .result = "\x6d\xc5\xda\xa2\x26\x7d\x62\x6f" 36037 + .ctext = "\x6d\xc5\xda\xa2\x26\x7d\x62\x6f" 27747 36038 "\x08\xb7\x52\x8e\x6e\x6e\x86\x90" 27748 36039 "\x86\xd8\xb5\x6f\x98\x5e\x8a\x66" 27749 36040 "\x4f\x1f\x78\xa1\xbb\x37\xf1\xbe", 27750 - .rlen = 32, 36041 + .len = 32, 27751 36042 }, { 27752 36043 .key = "\x35\x35\x35\x35\x35\x35\x35\x35" 27753 36044 "\x35\x35\x35\x35\x35\x35\x35\x35" ··· 27690 36111 "\x35\x35\x35\x35\x35\x35\x35\x35" 27691 36112 "\x35\x35\x35\x35\x35\x35\x35\x35", 27692 36113 .klen = 40, 27693 - .input = "\x35\x35\x35\x35\x35\x35\x35\x35" 36114 + .ptext = "\x35\x35\x35\x35\x35\x35\x35\x35" 27694 36115 "\x35\x35\x35\x35\x35\x35\x35\x35" 27695 36116 "\x35\x35\x35\x35\x35\x35\x35\x35" 27696 36117 "\x35\x35\x35\x35\x35\x35\x35\x35", 27697 - .ilen = 32, 27698 - .result = "\xa5\x2c\x85\x6f\x9c\xba\xa0\x97" 36118 + .ctext = "\xa5\x2c\x85\x6f\x9c\xba\xa0\x97" 27699 36119 "\x9e\xc6\x84\x0f\x17\x21\x07\xee" 27700 36120 "\xa2\xbc\x06\x98\xc6\x4b\xda\x75" 27701 36121 "\x2e\xaa\xbe\x58\xce\x01\x5b\xc7", 27702 - .rlen = 32, 27703 - }, 27704 - }; 27705 - 27706 - static const struct cipher_testvec anubis_cbc_dec_tv_template[] = { 27707 - { 27708 - .key = "\xfe\xfe\xfe\xfe\xfe\xfe\xfe\xfe" 27709 - "\xfe\xfe\xfe\xfe\xfe\xfe\xfe\xfe", 27710 - .klen = 16, 27711 - .input = "\x6d\xc5\xda\xa2\x26\x7d\x62\x6f" 27712 - "\x08\xb7\x52\x8e\x6e\x6e\x86\x90" 27713 - "\x86\xd8\xb5\x6f\x98\x5e\x8a\x66" 27714 - "\x4f\x1f\x78\xa1\xbb\x37\xf1\xbe", 27715 - .ilen = 32, 27716 - .result = "\xfe\xfe\xfe\xfe\xfe\xfe\xfe\xfe" 27717 - "\xfe\xfe\xfe\xfe\xfe\xfe\xfe\xfe" 27718 - "\xfe\xfe\xfe\xfe\xfe\xfe\xfe\xfe" 27719 - "\xfe\xfe\xfe\xfe\xfe\xfe\xfe\xfe", 27720 - .rlen = 32, 27721 - }, { 27722 - .key = "\x35\x35\x35\x35\x35\x35\x35\x35" 27723 - "\x35\x35\x35\x35\x35\x35\x35\x35" 27724 - "\x35\x35\x35\x35\x35\x35\x35\x35" 27725 - "\x35\x35\x35\x35\x35\x35\x35\x35" 27726 - "\x35\x35\x35\x35\x35\x35\x35\x35", 27727 - .klen = 40, 27728 - .input = "\xa5\x2c\x85\x6f\x9c\xba\xa0\x97" 27729 - "\x9e\xc6\x84\x0f\x17\x21\x07\xee" 27730 - "\xa2\xbc\x06\x98\xc6\x4b\xda\x75" 27731 - "\x2e\xaa\xbe\x58\xce\x01\x5b\xc7", 27732 - .ilen = 32, 27733 - .result = "\x35\x35\x35\x35\x35\x35\x35\x35" 27734 - "\x35\x35\x35\x35\x35\x35\x35\x35" 27735 - "\x35\x35\x35\x35\x35\x35\x35\x35" 27736 - "\x35\x35\x35\x35\x35\x35\x35\x35", 27737 - .rlen = 32, 36122 + .len = 32, 27738 36123 }, 27739 36124 }; 27740 36125 27741 36126 /* 27742 36127 * XETA test vectors 27743 36128 */ 27744 - static const struct cipher_testvec xeta_enc_tv_template[] = { 36129 + static const struct cipher_testvec xeta_tv_template[] = { 27745 36130 { 27746 36131 .key = zeroed_string, 27747 36132 .klen = 16, 27748 - .input = zeroed_string, 27749 - .ilen = 8, 27750 - .result = "\xaa\x22\x96\xe5\x6c\x61\xf3\x45", 27751 - .rlen = 8, 36133 + .ptext = zeroed_string, 36134 + .ctext = "\xaa\x22\x96\xe5\x6c\x61\xf3\x45", 36135 + .len = 8, 27752 36136 }, { 27753 36137 .key = "\x2b\x02\x05\x68\x06\x14\x49\x76" 27754 36138 "\x77\x5d\x0e\x26\x6c\x28\x78\x43", 27755 36139 .klen = 16, 27756 - .input = "\x74\x65\x73\x74\x20\x6d\x65\x2e", 27757 - .ilen = 8, 27758 - .result = "\x82\x3e\xeb\x35\xdc\xdd\xd9\xc3", 27759 - .rlen = 8, 36140 + .ptext = "\x74\x65\x73\x74\x20\x6d\x65\x2e", 36141 + .ctext = "\x82\x3e\xeb\x35\xdc\xdd\xd9\xc3", 36142 + .len = 8, 27760 36143 }, { 27761 36144 .key = "\x09\x65\x43\x11\x66\x44\x39\x25" 27762 36145 "\x51\x3a\x16\x10\x0a\x08\x12\x6e", 27763 36146 .klen = 16, 27764 - .input = "\x6c\x6f\x6e\x67\x65\x72\x5f\x74" 36147 + .ptext = "\x6c\x6f\x6e\x67\x65\x72\x5f\x74" 27765 36148 "\x65\x73\x74\x5f\x76\x65\x63\x74", 27766 - .ilen = 16, 27767 - .result = "\xe2\x04\xdb\xf2\x89\x85\x9e\xea" 36149 + .ctext = "\xe2\x04\xdb\xf2\x89\x85\x9e\xea" 27768 36150 "\x61\x35\xaa\xed\xb5\xcb\x71\x2c", 27769 - .rlen = 16, 36151 + .len = 16, 27770 36152 }, { 27771 36153 .key = "\x4d\x76\x32\x17\x05\x3f\x75\x2c" 27772 36154 "\x5d\x04\x16\x36\x15\x72\x63\x2f", 27773 36155 .klen = 16, 27774 - .input = "\x54\x65\x61\x20\x69\x73\x20\x67" 36156 + .ptext = "\x54\x65\x61\x20\x69\x73\x20\x67" 27775 36157 "\x6f\x6f\x64\x20\x66\x6f\x72\x20" 27776 36158 "\x79\x6f\x75\x21\x21\x21\x20\x72" 27777 36159 "\x65\x61\x6c\x6c\x79\x21\x21\x21", 27778 - .ilen = 32, 27779 - .result = "\x0b\x03\xcd\x8a\xbe\x95\xfd\xb1" 36160 + .ctext = "\x0b\x03\xcd\x8a\xbe\x95\xfd\xb1" 27780 36161 "\xc1\x44\x91\x0b\xa5\xc9\x1b\xb4" 27781 36162 "\xa9\xda\x1e\x9e\xb1\x3e\x2a\x8f" 27782 36163 "\xea\xa5\x6a\x85\xd1\xf4\xa8\xa5", 27783 - .rlen = 32, 27784 - } 27785 - }; 27786 - 27787 - static const struct cipher_testvec xeta_dec_tv_template[] = { 27788 - { 27789 - .key = zeroed_string, 27790 - .klen = 16, 27791 - .input = "\xaa\x22\x96\xe5\x6c\x61\xf3\x45", 27792 - .ilen = 8, 27793 - .result = zeroed_string, 27794 - .rlen = 8, 27795 - }, { 27796 - .key = "\x2b\x02\x05\x68\x06\x14\x49\x76" 27797 - "\x77\x5d\x0e\x26\x6c\x28\x78\x43", 27798 - .klen = 16, 27799 - .input = "\x82\x3e\xeb\x35\xdc\xdd\xd9\xc3", 27800 - .ilen = 8, 27801 - .result = "\x74\x65\x73\x74\x20\x6d\x65\x2e", 27802 - .rlen = 8, 27803 - }, { 27804 - .key = "\x09\x65\x43\x11\x66\x44\x39\x25" 27805 - "\x51\x3a\x16\x10\x0a\x08\x12\x6e", 27806 - .klen = 16, 27807 - .input = "\xe2\x04\xdb\xf2\x89\x85\x9e\xea" 27808 - "\x61\x35\xaa\xed\xb5\xcb\x71\x2c", 27809 - .ilen = 16, 27810 - .result = "\x6c\x6f\x6e\x67\x65\x72\x5f\x74" 27811 - "\x65\x73\x74\x5f\x76\x65\x63\x74", 27812 - .rlen = 16, 27813 - }, { 27814 - .key = "\x4d\x76\x32\x17\x05\x3f\x75\x2c" 27815 - "\x5d\x04\x16\x36\x15\x72\x63\x2f", 27816 - .klen = 16, 27817 - .input = "\x0b\x03\xcd\x8a\xbe\x95\xfd\xb1" 27818 - "\xc1\x44\x91\x0b\xa5\xc9\x1b\xb4" 27819 - "\xa9\xda\x1e\x9e\xb1\x3e\x2a\x8f" 27820 - "\xea\xa5\x6a\x85\xd1\xf4\xa8\xa5", 27821 - .ilen = 32, 27822 - .result = "\x54\x65\x61\x20\x69\x73\x20\x67" 27823 - "\x6f\x6f\x64\x20\x66\x6f\x72\x20" 27824 - "\x79\x6f\x75\x21\x21\x21\x20\x72" 27825 - "\x65\x61\x6c\x6c\x79\x21\x21\x21", 27826 - .rlen = 32, 36164 + .len = 32, 27827 36165 } 27828 36166 }; 27829 36167 27830 36168 /* 27831 36169 * FCrypt test vectors 27832 36170 */ 27833 - static const struct cipher_testvec fcrypt_pcbc_enc_tv_template[] = { 36171 + static const struct cipher_testvec fcrypt_pcbc_tv_template[] = { 27834 36172 { /* http://www.openafs.org/pipermail/openafs-devel/2000-December/005320.html */ 27835 36173 .key = "\x00\x00\x00\x00\x00\x00\x00\x00", 27836 36174 .klen = 8, 27837 36175 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00", 27838 - .input = "\x00\x00\x00\x00\x00\x00\x00\x00", 27839 - .ilen = 8, 27840 - .result = "\x0E\x09\x00\xC7\x3E\xF7\xED\x41", 27841 - .rlen = 8, 36176 + .ptext = "\x00\x00\x00\x00\x00\x00\x00\x00", 36177 + .ctext = "\x0E\x09\x00\xC7\x3E\xF7\xED\x41", 36178 + .len = 8, 27842 36179 }, { 27843 36180 .key = "\x11\x44\x77\xAA\xDD\x00\x33\x66", 27844 36181 .klen = 8, 27845 36182 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00", 27846 - .input = "\x12\x34\x56\x78\x9A\xBC\xDE\xF0", 27847 - .ilen = 8, 27848 - .result = "\xD8\xED\x78\x74\x77\xEC\x06\x80", 27849 - .rlen = 8, 36183 + .ptext = "\x12\x34\x56\x78\x9A\xBC\xDE\xF0", 36184 + .ctext = "\xD8\xED\x78\x74\x77\xEC\x06\x80", 36185 + .len = 8, 27850 36186 }, { /* From Arla */ 27851 36187 .key = "\xf0\xe1\xd2\xc3\xb4\xa5\x96\x87", 27852 36188 .klen = 8, 27853 36189 .iv = "\xfe\xdc\xba\x98\x76\x54\x32\x10", 27854 - .input = "The quick brown fox jumps over the lazy dogs.\0\0", 27855 - .ilen = 48, 27856 - .result = "\x00\xf0\x0e\x11\x75\xe6\x23\x82" 36190 + .ptext = "The quick brown fox jumps over the lazy dogs.\0\0", 36191 + .ctext = "\x00\xf0\x0e\x11\x75\xe6\x23\x82" 27857 36192 "\xee\xac\x98\x62\x44\x51\xe4\x84" 27858 36193 "\xc3\x59\xd8\xaa\x64\x60\xae\xf7" 27859 36194 "\xd2\xd9\x13\x79\x72\xa3\x45\x03" 27860 36195 "\x23\xb5\x62\xd7\x0c\xf5\x27\xd1" 27861 36196 "\xf8\x91\x3c\xac\x44\x22\x92\xef", 27862 - .rlen = 48, 36197 + .len = 48, 27863 36198 }, { 27864 36199 .key = "\xfe\xdc\xba\x98\x76\x54\x32\x10", 27865 36200 .klen = 8, 27866 36201 .iv = "\xf0\xe1\xd2\xc3\xb4\xa5\x96\x87", 27867 - .input = "The quick brown fox jumps over the lazy dogs.\0\0", 27868 - .ilen = 48, 27869 - .result = "\xca\x90\xf5\x9d\xcb\xd4\xd2\x3c" 36202 + .ptext = "The quick brown fox jumps over the lazy dogs.\0\0", 36203 + .ctext = "\xca\x90\xf5\x9d\xcb\xd4\xd2\x3c" 27870 36204 "\x01\x88\x7f\x3e\x31\x6e\x62\x9d" 27871 36205 "\xd8\xe0\x57\xa3\x06\x3a\x42\x58" 27872 36206 "\x2a\x28\xfe\x72\x52\x2f\xdd\xe0" 27873 36207 "\x19\x89\x09\x1c\x2a\x8e\x8c\x94" 27874 36208 "\xfc\xc7\x68\xe4\x88\xaa\xde\x0f", 27875 - .rlen = 48, 36209 + .len = 48, 27876 36210 }, { /* split-page version */ 27877 36211 .key = "\xfe\xdc\xba\x98\x76\x54\x32\x10", 27878 36212 .klen = 8, 27879 36213 .iv = "\xf0\xe1\xd2\xc3\xb4\xa5\x96\x87", 27880 - .input = "The quick brown fox jumps over the lazy dogs.\0\0", 27881 - .ilen = 48, 27882 - .result = "\xca\x90\xf5\x9d\xcb\xd4\xd2\x3c" 36214 + .ptext = "The quick brown fox jumps over the lazy dogs.\0\0", 36215 + .ctext = "\xca\x90\xf5\x9d\xcb\xd4\xd2\x3c" 27883 36216 "\x01\x88\x7f\x3e\x31\x6e\x62\x9d" 27884 36217 "\xd8\xe0\x57\xa3\x06\x3a\x42\x58" 27885 36218 "\x2a\x28\xfe\x72\x52\x2f\xdd\xe0" 27886 36219 "\x19\x89\x09\x1c\x2a\x8e\x8c\x94" 27887 36220 "\xfc\xc7\x68\xe4\x88\xaa\xde\x0f", 27888 - .rlen = 48, 27889 - .np = 2, 27890 - .tap = { 20, 28 }, 27891 - } 27892 - }; 27893 - 27894 - static const struct cipher_testvec fcrypt_pcbc_dec_tv_template[] = { 27895 - { /* http://www.openafs.org/pipermail/openafs-devel/2000-December/005320.html */ 27896 - .key = "\x00\x00\x00\x00\x00\x00\x00\x00", 27897 - .klen = 8, 27898 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00", 27899 - .input = "\x0E\x09\x00\xC7\x3E\xF7\xED\x41", 27900 - .ilen = 8, 27901 - .result = "\x00\x00\x00\x00\x00\x00\x00\x00", 27902 - .rlen = 8, 27903 - }, { 27904 - .key = "\x11\x44\x77\xAA\xDD\x00\x33\x66", 27905 - .klen = 8, 27906 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00", 27907 - .input = "\xD8\xED\x78\x74\x77\xEC\x06\x80", 27908 - .ilen = 8, 27909 - .result = "\x12\x34\x56\x78\x9A\xBC\xDE\xF0", 27910 - .rlen = 8, 27911 - }, { /* From Arla */ 27912 - .key = "\xf0\xe1\xd2\xc3\xb4\xa5\x96\x87", 27913 - .klen = 8, 27914 - .iv = "\xfe\xdc\xba\x98\x76\x54\x32\x10", 27915 - .input = "\x00\xf0\x0e\x11\x75\xe6\x23\x82" 27916 - "\xee\xac\x98\x62\x44\x51\xe4\x84" 27917 - "\xc3\x59\xd8\xaa\x64\x60\xae\xf7" 27918 - "\xd2\xd9\x13\x79\x72\xa3\x45\x03" 27919 - "\x23\xb5\x62\xd7\x0c\xf5\x27\xd1" 27920 - "\xf8\x91\x3c\xac\x44\x22\x92\xef", 27921 - .ilen = 48, 27922 - .result = "The quick brown fox jumps over the lazy dogs.\0\0", 27923 - .rlen = 48, 27924 - }, { 27925 - .key = "\xfe\xdc\xba\x98\x76\x54\x32\x10", 27926 - .klen = 8, 27927 - .iv = "\xf0\xe1\xd2\xc3\xb4\xa5\x96\x87", 27928 - .input = "\xca\x90\xf5\x9d\xcb\xd4\xd2\x3c" 27929 - "\x01\x88\x7f\x3e\x31\x6e\x62\x9d" 27930 - "\xd8\xe0\x57\xa3\x06\x3a\x42\x58" 27931 - "\x2a\x28\xfe\x72\x52\x2f\xdd\xe0" 27932 - "\x19\x89\x09\x1c\x2a\x8e\x8c\x94" 27933 - "\xfc\xc7\x68\xe4\x88\xaa\xde\x0f", 27934 - .ilen = 48, 27935 - .result = "The quick brown fox jumps over the lazy dogs.\0\0", 27936 - .rlen = 48, 27937 - }, { /* split-page version */ 27938 - .key = "\xfe\xdc\xba\x98\x76\x54\x32\x10", 27939 - .klen = 8, 27940 - .iv = "\xf0\xe1\xd2\xc3\xb4\xa5\x96\x87", 27941 - .input = "\xca\x90\xf5\x9d\xcb\xd4\xd2\x3c" 27942 - "\x01\x88\x7f\x3e\x31\x6e\x62\x9d" 27943 - "\xd8\xe0\x57\xa3\x06\x3a\x42\x58" 27944 - "\x2a\x28\xfe\x72\x52\x2f\xdd\xe0" 27945 - "\x19\x89\x09\x1c\x2a\x8e\x8c\x94" 27946 - "\xfc\xc7\x68\xe4\x88\xaa\xde\x0f", 27947 - .ilen = 48, 27948 - .result = "The quick brown fox jumps over the lazy dogs.\0\0", 27949 - .rlen = 48, 36221 + .len = 48, 27950 36222 .np = 2, 27951 36223 .tap = { 20, 28 }, 27952 36224 } ··· 27806 36376 /* 27807 36377 * CAMELLIA test vectors. 27808 36378 */ 27809 - static const struct cipher_testvec camellia_enc_tv_template[] = { 36379 + static const struct cipher_testvec camellia_tv_template[] = { 27810 36380 { 27811 36381 .key = "\x01\x23\x45\x67\x89\xab\xcd\xef" 27812 36382 "\xfe\xdc\xba\x98\x76\x54\x32\x10", 27813 36383 .klen = 16, 27814 - .input = "\x01\x23\x45\x67\x89\xab\xcd\xef" 36384 + .ptext = "\x01\x23\x45\x67\x89\xab\xcd\xef" 27815 36385 "\xfe\xdc\xba\x98\x76\x54\x32\x10", 27816 - .ilen = 16, 27817 - .result = "\x67\x67\x31\x38\x54\x96\x69\x73" 36386 + .ctext = "\x67\x67\x31\x38\x54\x96\x69\x73" 27818 36387 "\x08\x57\x06\x56\x48\xea\xbe\x43", 27819 - .rlen = 16, 36388 + .len = 16, 27820 36389 }, { 27821 36390 .key = "\x01\x23\x45\x67\x89\xab\xcd\xef" 27822 36391 "\xfe\xdc\xba\x98\x76\x54\x32\x10" 27823 36392 "\x00\x11\x22\x33\x44\x55\x66\x77", 27824 36393 .klen = 24, 27825 - .input = "\x01\x23\x45\x67\x89\xab\xcd\xef" 36394 + .ptext = "\x01\x23\x45\x67\x89\xab\xcd\xef" 27826 36395 "\xfe\xdc\xba\x98\x76\x54\x32\x10", 27827 - .ilen = 16, 27828 - .result = "\xb4\x99\x34\x01\xb3\xe9\x96\xf8" 36396 + .ctext = "\xb4\x99\x34\x01\xb3\xe9\x96\xf8" 27829 36397 "\x4e\xe5\xce\xe7\xd7\x9b\x09\xb9", 27830 - .rlen = 16, 36398 + .len = 16, 27831 36399 }, { 27832 36400 .key = "\x01\x23\x45\x67\x89\xab\xcd\xef" 27833 36401 "\xfe\xdc\xba\x98\x76\x54\x32\x10" 27834 36402 "\x00\x11\x22\x33\x44\x55\x66\x77" 27835 36403 "\x88\x99\xaa\xbb\xcc\xdd\xee\xff", 27836 36404 .klen = 32, 27837 - .input = "\x01\x23\x45\x67\x89\xab\xcd\xef" 36405 + .ptext = "\x01\x23\x45\x67\x89\xab\xcd\xef" 27838 36406 "\xfe\xdc\xba\x98\x76\x54\x32\x10", 27839 - .ilen = 16, 27840 - .result = "\x9a\xcc\x23\x7d\xff\x16\xd7\x6c" 36407 + .ctext = "\x9a\xcc\x23\x7d\xff\x16\xd7\x6c" 27841 36408 "\x20\xef\x7c\x91\x9e\x3a\x75\x09", 27842 - .rlen = 16, 36409 + .len = 16, 27843 36410 }, { /* Generated with Crypto++ */ 27844 36411 .key = "\x3F\x85\x62\x3F\x1C\xF9\xD6\x1C" 27845 36412 "\xF9\xD6\xB3\x90\x6D\x4A\x90\x6D" 27846 36413 "\x4A\x27\x04\xE1\x27\x04\xE1\xBE" 27847 36414 "\x9B\x78\xBE\x9B\x78\x55\x32\x0F", 27848 36415 .klen = 32, 27849 - .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 36416 + .ptext = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 27850 36417 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 27851 36418 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 27852 36419 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" ··· 27969 36542 "\xB1\x25\xBC\x53\xEA\x5E\xF5\x8C" 27970 36543 "\x00\x97\x2E\xC5\x39\xD0\x67\xFE" 27971 36544 "\x72\x09\xA0\x14\xAB\x42\xD9\x4D", 27972 - .ilen = 1008, 27973 - .result = "\xED\xCD\xDB\xB8\x68\xCE\xBD\xEA" 36545 + .ctext = "\xED\xCD\xDB\xB8\x68\xCE\xBD\xEA" 27974 36546 "\x9D\x9D\xCD\x9F\x4F\xFC\x4D\xB7" 27975 36547 "\xA5\xFF\x6F\x43\x0F\xBA\x32\x04" 27976 36548 "\xB3\xC2\xB9\x03\xAA\x91\x56\x29" ··· 28095 36669 "\xAE\xEF\x3E\x82\x12\x0B\x74\x72" 28096 36670 "\xF8\xB2\xAA\x7A\xD6\xFF\xFA\x55" 28097 36671 "\x33\x1A\xBB\xD3\xA2\x7E\x97\x66", 28098 - .rlen = 1008, 36672 + .len = 1008, 28099 36673 .also_non_np = 1, 28100 36674 .np = 3, 28101 36675 .tap = { 1008 - 20, 4, 16 }, 28102 36676 }, 28103 36677 }; 28104 36678 28105 - static const struct cipher_testvec camellia_dec_tv_template[] = { 28106 - { 28107 - .key = "\x01\x23\x45\x67\x89\xab\xcd\xef" 28108 - "\xfe\xdc\xba\x98\x76\x54\x32\x10", 28109 - .klen = 16, 28110 - .input = "\x67\x67\x31\x38\x54\x96\x69\x73" 28111 - "\x08\x57\x06\x56\x48\xea\xbe\x43", 28112 - .ilen = 16, 28113 - .result = "\x01\x23\x45\x67\x89\xab\xcd\xef" 28114 - "\xfe\xdc\xba\x98\x76\x54\x32\x10", 28115 - .rlen = 16, 28116 - }, { 28117 - .key = "\x01\x23\x45\x67\x89\xab\xcd\xef" 28118 - "\xfe\xdc\xba\x98\x76\x54\x32\x10" 28119 - "\x00\x11\x22\x33\x44\x55\x66\x77", 28120 - .klen = 24, 28121 - .input = "\xb4\x99\x34\x01\xb3\xe9\x96\xf8" 28122 - "\x4e\xe5\xce\xe7\xd7\x9b\x09\xb9", 28123 - .ilen = 16, 28124 - .result = "\x01\x23\x45\x67\x89\xab\xcd\xef" 28125 - "\xfe\xdc\xba\x98\x76\x54\x32\x10", 28126 - .rlen = 16, 28127 - }, { 28128 - .key = "\x01\x23\x45\x67\x89\xab\xcd\xef" 28129 - "\xfe\xdc\xba\x98\x76\x54\x32\x10" 28130 - "\x00\x11\x22\x33\x44\x55\x66\x77" 28131 - "\x88\x99\xaa\xbb\xcc\xdd\xee\xff", 28132 - .klen = 32, 28133 - .input = "\x9a\xcc\x23\x7d\xff\x16\xd7\x6c" 28134 - "\x20\xef\x7c\x91\x9e\x3a\x75\x09", 28135 - .ilen = 16, 28136 - .result = "\x01\x23\x45\x67\x89\xab\xcd\xef" 28137 - "\xfe\xdc\xba\x98\x76\x54\x32\x10", 28138 - .rlen = 16, 28139 - }, { /* Generated with Crypto++ */ 28140 - .key = "\x3F\x85\x62\x3F\x1C\xF9\xD6\x1C" 28141 - "\xF9\xD6\xB3\x90\x6D\x4A\x90\x6D" 28142 - "\x4A\x27\x04\xE1\x27\x04\xE1\xBE" 28143 - "\x9B\x78\xBE\x9B\x78\x55\x32\x0F", 28144 - .klen = 32, 28145 - .input = "\xED\xCD\xDB\xB8\x68\xCE\xBD\xEA" 28146 - "\x9D\x9D\xCD\x9F\x4F\xFC\x4D\xB7" 28147 - "\xA5\xFF\x6F\x43\x0F\xBA\x32\x04" 28148 - "\xB3\xC2\xB9\x03\xAA\x91\x56\x29" 28149 - "\x0D\xD0\xFD\xC4\x65\xA5\x69\xB9" 28150 - "\xF1\xF6\xB1\xA5\xB2\x75\x4F\x8A" 28151 - "\x8D\x7D\x1B\x9B\xC7\x68\x72\xF8" 28152 - "\x01\x9B\x17\x0A\x29\xE7\x61\x28" 28153 - "\x7F\xA7\x50\xCA\x20\x2C\x96\x3B" 28154 - "\x6E\x5C\x5D\x3F\xB5\x7F\xF3\x2B" 28155 - "\x04\xEF\x9D\xD4\xCE\x41\x28\x8E" 28156 - "\x83\x54\xAE\x7C\x82\x46\x10\xC9" 28157 - "\xC4\x8A\x1E\x1F\x4C\xA9\xFC\xEC" 28158 - "\x3C\x8C\x30\xFC\x59\xD2\x54\xC4" 28159 - "\x6F\x50\xC6\xCA\x8C\x14\x5B\x9C" 28160 - "\x18\x56\x5B\xF8\x33\x0E\x4A\xDB" 28161 - "\xEC\xB5\x6E\x5B\x31\xC4\x0E\x98" 28162 - "\x9F\x32\xBA\xA2\x18\xCF\x55\x43" 28163 - "\xFE\x80\x8F\x60\xCF\x05\x30\x9B" 28164 - "\x70\x50\x1E\x9C\x08\x87\xE6\x20" 28165 - "\xD2\xF3\x27\xF8\x2A\x8D\x12\xB2" 28166 - "\xBC\x5F\xFE\x52\x52\xF6\x7F\xB6" 28167 - "\xB8\x30\x86\x3B\x0F\x94\x1E\x79" 28168 - "\x13\x94\x35\xA2\xB1\x35\x5B\x05" 28169 - "\x2A\x98\x6B\x96\x4C\xB1\x20\xBE" 28170 - "\xB6\x14\xC2\x06\xBF\xFD\x5F\x2A" 28171 - "\xF5\x33\xC8\x19\x45\x14\x44\x5D" 28172 - "\xFE\x94\x7B\xBB\x63\x13\x57\xC3" 28173 - "\x2A\x8F\x6C\x11\x2A\x07\xA7\x6A" 28174 - "\xBF\x20\xD3\x99\xC6\x00\x0B\xBF" 28175 - "\x83\x46\x25\x3A\xB0\xF6\xC5\xC8" 28176 - "\x00\xCA\xE5\x28\x4A\x7C\x95\x9C" 28177 - "\x7B\x43\xAB\xF9\xE4\xF8\x74\xAB" 28178 - "\xA7\xB8\x9C\x0F\x53\x7B\xB6\x74" 28179 - "\x60\x64\x0D\x1C\x80\xD1\x20\x9E" 28180 - "\xDC\x14\x27\x9B\xFC\xBD\x5C\x96" 28181 - "\xD2\x51\xDC\x96\xEE\xE5\xEA\x2B" 28182 - "\x02\x7C\xAA\x3C\xDC\x9D\x7B\x01" 28183 - "\x20\xC3\xE1\x0B\xDD\xAB\xF3\x1E" 28184 - "\x19\xA8\x84\x29\x5F\xCC\xC3\x5B" 28185 - "\xE4\x33\x59\xDC\x12\xEB\x2B\x4D" 28186 - "\x5B\x55\x23\xB7\x40\x31\xDE\xEE" 28187 - "\x18\xC9\x3C\x4D\xBC\xED\xE0\x42" 28188 - "\xAD\xDE\xA0\xA3\xC3\xFE\x44\xD3" 28189 - "\xE1\x9A\xDA\xAB\x32\xFC\x1A\xBF" 28190 - "\x63\xA9\xF0\x6A\x08\x46\xBD\x48" 28191 - "\x83\x06\xAB\x82\x99\x01\x16\x1A" 28192 - "\x03\x36\xC5\x59\x6B\xB8\x8C\x9F" 28193 - "\xC6\x51\x3D\xE5\x7F\xBF\xAB\xBC" 28194 - "\xC9\xA1\x88\x34\x5F\xA9\x7C\x3B" 28195 - "\x9F\x1B\x98\x2B\x4F\xFB\x9B\xF0" 28196 - "\xCD\xB6\x45\xB2\x29\x2E\x34\x23" 28197 - "\xA9\x97\xC0\x22\x8C\x42\x9B\x5F" 28198 - "\x40\xC8\xD7\x3D\x82\x9A\x6F\xAA" 28199 - "\x74\x83\x29\x05\xE8\xC4\x4D\x01" 28200 - "\xB5\xE5\x84\x3F\x7F\xD3\xE0\x99" 28201 - "\xDA\xE7\x6F\x30\xFD\xAA\x92\x30" 28202 - "\xA5\x46\x8B\xA2\xE6\x58\x62\x7C" 28203 - "\x2C\x35\x1B\x38\x85\x7D\xE8\xF3" 28204 - "\x87\x4F\xDA\xD8\x5F\xFC\xB6\x44" 28205 - "\xD0\xE3\x9B\x8B\xBF\xD6\xB8\xC4" 28206 - "\x73\xAE\x1D\x8B\x5B\x74\x8B\xCB" 28207 - "\xA4\xAD\xCF\x5D\xD4\x58\xC9\xCD" 28208 - "\xF7\x90\x68\xCF\xC9\x11\x52\x3E" 28209 - "\xE8\xA1\xA3\x78\x8B\xD0\xAC\x0A" 28210 - "\xD4\xC9\xA3\xA5\x55\x30\xC8\x3E" 28211 - "\xED\x28\x39\xE9\x63\xED\x41\x70" 28212 - "\x51\xE3\xC4\xA0\xFC\xD5\x43\xCB" 28213 - "\x4D\x65\xC8\xFD\x3A\x91\x8F\x60" 28214 - "\x8A\xA6\x6D\x9D\x3E\x01\x23\x4B" 28215 - "\x50\x47\xC9\xDC\x9B\xDE\x37\xC5" 28216 - "\xBF\x67\xB1\x6B\x78\x38\xD5\x7E" 28217 - "\xB6\xFF\x67\x83\x3B\x6E\xBE\x23" 28218 - "\x45\xFA\x1D\x69\x44\xFD\xC6\xB9" 28219 - "\xD0\x4A\x92\xD1\xBE\xF6\x4A\xB7" 28220 - "\xCA\xA8\xA2\x9E\x13\x87\x57\x92" 28221 - "\x64\x7C\x85\x0B\xB3\x29\x37\xD8" 28222 - "\xE6\xAA\xAF\xC4\x03\x67\xA3\xBF" 28223 - "\x2E\x45\x83\xB6\xD8\x54\x00\x89" 28224 - "\xF6\xBC\x3A\x7A\x88\x58\x51\xED" 28225 - "\xF4\x4E\x01\xA5\xC3\x2E\xD9\x42" 28226 - "\xBD\x6E\x0D\x0B\x21\xB0\x1A\xCC" 28227 - "\xA4\xD3\x3F\xDC\x9B\x81\xD8\xF1" 28228 - "\xEA\x7A\x6A\xB7\x07\xC9\x6D\x91" 28229 - "\x6D\x3A\xF5\x5F\xA6\xFF\x87\x1E" 28230 - "\x3F\xDD\xC0\x72\xEA\xAC\x08\x15" 28231 - "\x21\xE6\xC6\xB6\x0D\xD8\x51\x86" 28232 - "\x2A\x03\x73\xF7\x29\xD4\xC4\xE4" 28233 - "\x7F\x95\x10\xF7\xAB\x3F\x92\x23" 28234 - "\xD3\xCE\x9C\x2E\x46\x3B\x63\x43" 28235 - "\xBB\xC2\x82\x7A\x83\xD5\x55\xE2" 28236 - "\xE7\x9B\x2F\x92\xAF\xFD\x81\x56" 28237 - "\x79\xFD\x3E\xF9\x46\xE0\x25\xD4" 28238 - "\x38\xDE\xBC\x2C\xC4\x7A\x2A\x8F" 28239 - "\x94\x4F\xD0\xAD\x9B\x37\x18\xD4" 28240 - "\x0E\x4D\x0F\x02\x3A\xDC\x5A\xA2" 28241 - "\x39\x25\x55\x20\x5A\xA6\x02\x9F" 28242 - "\xE6\x77\x21\x77\xE5\x4B\x7B\x0B" 28243 - "\x30\xF8\x5F\x33\x0F\x49\xCD\xFF" 28244 - "\xF2\xE4\x35\xF9\xF0\x63\xC3\x7E" 28245 - "\xF1\xA6\x73\xB4\xDF\xE7\xBB\x78" 28246 - "\xFF\x21\xA9\xF3\xF3\xCF\x5D\xBA" 28247 - "\xED\x87\x98\xAC\xFE\x48\x97\x6D" 28248 - "\xA6\x7F\x69\x31\xB1\xC4\xFF\x14" 28249 - "\xC6\x76\xD4\x10\xDD\xF6\x49\x2C" 28250 - "\x9C\xC8\x6D\x76\xC0\x8F\x5F\x55" 28251 - "\x2F\x3C\x8A\x30\xAA\xC3\x16\x55" 28252 - "\xC6\xFC\x8D\x8B\xB9\xE5\x80\x6C" 28253 - "\xC8\x7E\xBD\x65\x58\x36\xD5\xBC" 28254 - "\xF0\x33\x52\x29\x70\xF9\x5C\xE9" 28255 - "\xAC\x1F\xB5\x73\x56\x66\x54\xAF" 28256 - "\x1B\x8F\x7D\xED\xAB\x03\xCE\xE3" 28257 - "\xAE\x47\xB6\x69\x86\xE9\x01\x31" 28258 - "\x83\x18\x3D\xF4\x74\x7B\xF9\x42" 28259 - "\x4C\xFD\x75\x4A\x6D\xF0\x03\xA6" 28260 - "\x2B\x20\x63\xDA\x49\x65\x5E\x8B" 28261 - "\xC0\x19\xE3\x8D\xD9\xF3\xB0\x34" 28262 - "\xD3\x52\xFC\x68\x00\x43\x1B\x37" 28263 - "\x31\x93\x51\x1C\x63\x97\x70\xB0" 28264 - "\x99\x78\x83\x13\xFD\xCF\x53\x81" 28265 - "\x36\x46\xB5\x42\x52\x2F\x32\xEB" 28266 - "\x4A\x3D\xF1\x8F\x1C\x54\x2E\xFC" 28267 - "\x41\x75\x5A\x8C\x8E\x6F\xE7\x1A" 28268 - "\xAE\xEF\x3E\x82\x12\x0B\x74\x72" 28269 - "\xF8\xB2\xAA\x7A\xD6\xFF\xFA\x55" 28270 - "\x33\x1A\xBB\xD3\xA2\x7E\x97\x66", 28271 - .ilen = 1008, 28272 - .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 28273 - "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 28274 - "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 28275 - "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" 28276 - "\x1E\x92\x29\xC0\x34\xCB\x62\xF9" 28277 - "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48" 28278 - "\xDF\x76\x0D\x81\x18\xAF\x23\xBA" 28279 - "\x51\xE8\x5C\xF3\x8A\x21\x95\x2C" 28280 - "\xC3\x37\xCE\x65\xFC\x70\x07\x9E" 28281 - "\x12\xA9\x40\xD7\x4B\xE2\x79\x10" 28282 - "\x84\x1B\xB2\x26\xBD\x54\xEB\x5F" 28283 - "\xF6\x8D\x01\x98\x2F\xC6\x3A\xD1" 28284 - "\x68\xFF\x73\x0A\xA1\x15\xAC\x43" 28285 - "\xDA\x4E\xE5\x7C\x13\x87\x1E\xB5" 28286 - "\x29\xC0\x57\xEE\x62\xF9\x90\x04" 28287 - "\x9B\x32\xC9\x3D\xD4\x6B\x02\x76" 28288 - "\x0D\xA4\x18\xAF\x46\xDD\x51\xE8" 28289 - "\x7F\x16\x8A\x21\xB8\x2C\xC3\x5A" 28290 - "\xF1\x65\xFC\x93\x07\x9E\x35\xCC" 28291 - "\x40\xD7\x6E\x05\x79\x10\xA7\x1B" 28292 - "\xB2\x49\xE0\x54\xEB\x82\x19\x8D" 28293 - "\x24\xBB\x2F\xC6\x5D\xF4\x68\xFF" 28294 - "\x96\x0A\xA1\x38\xCF\x43\xDA\x71" 28295 - "\x08\x7C\x13\xAA\x1E\xB5\x4C\xE3" 28296 - "\x57\xEE\x85\x1C\x90\x27\xBE\x32" 28297 - "\xC9\x60\xF7\x6B\x02\x99\x0D\xA4" 28298 - "\x3B\xD2\x46\xDD\x74\x0B\x7F\x16" 28299 - "\xAD\x21\xB8\x4F\xE6\x5A\xF1\x88" 28300 - "\x1F\x93\x2A\xC1\x35\xCC\x63\xFA" 28301 - "\x6E\x05\x9C\x10\xA7\x3E\xD5\x49" 28302 - "\xE0\x77\x0E\x82\x19\xB0\x24\xBB" 28303 - "\x52\xE9\x5D\xF4\x8B\x22\x96\x2D" 28304 - "\xC4\x38\xCF\x66\xFD\x71\x08\x9F" 28305 - "\x13\xAA\x41\xD8\x4C\xE3\x7A\x11" 28306 - "\x85\x1C\xB3\x27\xBE\x55\xEC\x60" 28307 - "\xF7\x8E\x02\x99\x30\xC7\x3B\xD2" 28308 - "\x69\x00\x74\x0B\xA2\x16\xAD\x44" 28309 - "\xDB\x4F\xE6\x7D\x14\x88\x1F\xB6" 28310 - "\x2A\xC1\x58\xEF\x63\xFA\x91\x05" 28311 - "\x9C\x33\xCA\x3E\xD5\x6C\x03\x77" 28312 - "\x0E\xA5\x19\xB0\x47\xDE\x52\xE9" 28313 - "\x80\x17\x8B\x22\xB9\x2D\xC4\x5B" 28314 - "\xF2\x66\xFD\x94\x08\x9F\x36\xCD" 28315 - "\x41\xD8\x6F\x06\x7A\x11\xA8\x1C" 28316 - "\xB3\x4A\xE1\x55\xEC\x83\x1A\x8E" 28317 - "\x25\xBC\x30\xC7\x5E\xF5\x69\x00" 28318 - "\x97\x0B\xA2\x39\xD0\x44\xDB\x72" 28319 - "\x09\x7D\x14\xAB\x1F\xB6\x4D\xE4" 28320 - "\x58\xEF\x86\x1D\x91\x28\xBF\x33" 28321 - "\xCA\x61\xF8\x6C\x03\x9A\x0E\xA5" 28322 - "\x3C\xD3\x47\xDE\x75\x0C\x80\x17" 28323 - "\xAE\x22\xB9\x50\xE7\x5B\xF2\x89" 28324 - "\x20\x94\x2B\xC2\x36\xCD\x64\xFB" 28325 - "\x6F\x06\x9D\x11\xA8\x3F\xD6\x4A" 28326 - "\xE1\x78\x0F\x83\x1A\xB1\x25\xBC" 28327 - "\x53\xEA\x5E\xF5\x8C\x00\x97\x2E" 28328 - "\xC5\x39\xD0\x67\xFE\x72\x09\xA0" 28329 - "\x14\xAB\x42\xD9\x4D\xE4\x7B\x12" 28330 - "\x86\x1D\xB4\x28\xBF\x56\xED\x61" 28331 - "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 28332 - "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 28333 - "\xDC\x50\xE7\x7E\x15\x89\x20\xB7" 28334 - "\x2B\xC2\x59\xF0\x64\xFB\x92\x06" 28335 - "\x9D\x34\xCB\x3F\xD6\x6D\x04\x78" 28336 - "\x0F\xA6\x1A\xB1\x48\xDF\x53\xEA" 28337 - "\x81\x18\x8C\x23\xBA\x2E\xC5\x5C" 28338 - "\xF3\x67\xFE\x95\x09\xA0\x37\xCE" 28339 - "\x42\xD9\x70\x07\x7B\x12\xA9\x1D" 28340 - "\xB4\x4B\xE2\x56\xED\x84\x1B\x8F" 28341 - "\x26\xBD\x31\xC8\x5F\xF6\x6A\x01" 28342 - "\x98\x0C\xA3\x3A\xD1\x45\xDC\x73" 28343 - "\x0A\x7E\x15\xAC\x20\xB7\x4E\xE5" 28344 - "\x59\xF0\x87\x1E\x92\x29\xC0\x34" 28345 - "\xCB\x62\xF9\x6D\x04\x9B\x0F\xA6" 28346 - "\x3D\xD4\x48\xDF\x76\x0D\x81\x18" 28347 - "\xAF\x23\xBA\x51\xE8\x5C\xF3\x8A" 28348 - "\x21\x95\x2C\xC3\x37\xCE\x65\xFC" 28349 - "\x70\x07\x9E\x12\xA9\x40\xD7\x4B" 28350 - "\xE2\x79\x10\x84\x1B\xB2\x26\xBD" 28351 - "\x54\xEB\x5F\xF6\x8D\x01\x98\x2F" 28352 - "\xC6\x3A\xD1\x68\xFF\x73\x0A\xA1" 28353 - "\x15\xAC\x43\xDA\x4E\xE5\x7C\x13" 28354 - "\x87\x1E\xB5\x29\xC0\x57\xEE\x62" 28355 - "\xF9\x90\x04\x9B\x32\xC9\x3D\xD4" 28356 - "\x6B\x02\x76\x0D\xA4\x18\xAF\x46" 28357 - "\xDD\x51\xE8\x7F\x16\x8A\x21\xB8" 28358 - "\x2C\xC3\x5A\xF1\x65\xFC\x93\x07" 28359 - "\x9E\x35\xCC\x40\xD7\x6E\x05\x79" 28360 - "\x10\xA7\x1B\xB2\x49\xE0\x54\xEB" 28361 - "\x82\x19\x8D\x24\xBB\x2F\xC6\x5D" 28362 - "\xF4\x68\xFF\x96\x0A\xA1\x38\xCF" 28363 - "\x43\xDA\x71\x08\x7C\x13\xAA\x1E" 28364 - "\xB5\x4C\xE3\x57\xEE\x85\x1C\x90" 28365 - "\x27\xBE\x32\xC9\x60\xF7\x6B\x02" 28366 - "\x99\x0D\xA4\x3B\xD2\x46\xDD\x74" 28367 - "\x0B\x7F\x16\xAD\x21\xB8\x4F\xE6" 28368 - "\x5A\xF1\x88\x1F\x93\x2A\xC1\x35" 28369 - "\xCC\x63\xFA\x6E\x05\x9C\x10\xA7" 28370 - "\x3E\xD5\x49\xE0\x77\x0E\x82\x19" 28371 - "\xB0\x24\xBB\x52\xE9\x5D\xF4\x8B" 28372 - "\x22\x96\x2D\xC4\x38\xCF\x66\xFD" 28373 - "\x71\x08\x9F\x13\xAA\x41\xD8\x4C" 28374 - "\xE3\x7A\x11\x85\x1C\xB3\x27\xBE" 28375 - "\x55\xEC\x60\xF7\x8E\x02\x99\x30" 28376 - "\xC7\x3B\xD2\x69\x00\x74\x0B\xA2" 28377 - "\x16\xAD\x44\xDB\x4F\xE6\x7D\x14" 28378 - "\x88\x1F\xB6\x2A\xC1\x58\xEF\x63" 28379 - "\xFA\x91\x05\x9C\x33\xCA\x3E\xD5" 28380 - "\x6C\x03\x77\x0E\xA5\x19\xB0\x47" 28381 - "\xDE\x52\xE9\x80\x17\x8B\x22\xB9" 28382 - "\x2D\xC4\x5B\xF2\x66\xFD\x94\x08" 28383 - "\x9F\x36\xCD\x41\xD8\x6F\x06\x7A" 28384 - "\x11\xA8\x1C\xB3\x4A\xE1\x55\xEC" 28385 - "\x83\x1A\x8E\x25\xBC\x30\xC7\x5E" 28386 - "\xF5\x69\x00\x97\x0B\xA2\x39\xD0" 28387 - "\x44\xDB\x72\x09\x7D\x14\xAB\x1F" 28388 - "\xB6\x4D\xE4\x58\xEF\x86\x1D\x91" 28389 - "\x28\xBF\x33\xCA\x61\xF8\x6C\x03" 28390 - "\x9A\x0E\xA5\x3C\xD3\x47\xDE\x75" 28391 - "\x0C\x80\x17\xAE\x22\xB9\x50\xE7" 28392 - "\x5B\xF2\x89\x20\x94\x2B\xC2\x36" 28393 - "\xCD\x64\xFB\x6F\x06\x9D\x11\xA8" 28394 - "\x3F\xD6\x4A\xE1\x78\x0F\x83\x1A" 28395 - "\xB1\x25\xBC\x53\xEA\x5E\xF5\x8C" 28396 - "\x00\x97\x2E\xC5\x39\xD0\x67\xFE" 28397 - "\x72\x09\xA0\x14\xAB\x42\xD9\x4D", 28398 - .rlen = 1008, 28399 - .also_non_np = 1, 28400 - .np = 3, 28401 - .tap = { 1008 - 20, 4, 16 }, 28402 - }, 28403 - }; 28404 - 28405 - static const struct cipher_testvec camellia_cbc_enc_tv_template[] = { 36679 + static const struct cipher_testvec camellia_cbc_tv_template[] = { 28406 36680 { 28407 36681 .key = "\x06\xa9\x21\x40\x36\xb8\xa1\x5b" 28408 36682 "\x51\x2e\x03\xd5\x34\x12\x00\x06", 28409 36683 .klen = 16, 28410 36684 .iv = "\x3d\xaf\xba\x42\x9d\x9e\xb4\x30" 28411 36685 "\xb4\x22\xda\x80\x2c\x9f\xac\x41", 28412 - .input = "Single block msg", 28413 - .ilen = 16, 28414 - .result = "\xea\x32\x12\x76\x3b\x50\x10\xe7" 36686 + .ptext = "Single block msg", 36687 + .ctext = "\xea\x32\x12\x76\x3b\x50\x10\xe7" 28415 36688 "\x18\xf6\xfd\x5d\xf6\x8f\x13\x51", 28416 - .rlen = 16, 36689 + .len = 16, 28417 36690 }, { 28418 36691 .key = "\xc2\x86\x69\x6d\x88\x7c\x9a\xa0" 28419 36692 "\x61\x1b\xbb\x3e\x20\x25\xa4\x5a", 28420 36693 .klen = 16, 28421 36694 .iv = "\x56\x2e\x17\x99\x6d\x09\x3d\x28" 28422 36695 "\xdd\xb3\xba\x69\x5a\x2e\x6f\x58", 28423 - .input = "\x00\x01\x02\x03\x04\x05\x06\x07" 36696 + .ptext = "\x00\x01\x02\x03\x04\x05\x06\x07" 28424 36697 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 28425 36698 "\x10\x11\x12\x13\x14\x15\x16\x17" 28426 36699 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f", 28427 - .ilen = 32, 28428 - .result = "\xa5\xdf\x6e\x50\xda\x70\x6c\x01" 36700 + .ctext = "\xa5\xdf\x6e\x50\xda\x70\x6c\x01" 28429 36701 "\x4a\xab\xf3\xf2\xd6\xfc\x6c\xfd" 28430 36702 "\x19\xb4\x3e\x57\x1c\x02\x5e\xa0" 28431 36703 "\x15\x78\xe0\x5e\xf2\xcb\x87\x16", 28432 - .rlen = 32, 36704 + .len = 32, 28433 36705 }, { /* Generated with Crypto++ */ 28434 36706 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 28435 36707 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" ··· 28136 37012 .klen = 32, 28137 37013 .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F" 28138 37014 "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64", 28139 - .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 37015 + .ptext = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 28140 37016 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 28141 37017 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 28142 37018 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" ··· 28262 37138 "\xB1\x25\xBC\x53\xEA\x5E\xF5\x8C" 28263 37139 "\x00\x97\x2E\xC5\x39\xD0\x67\xFE" 28264 37140 "\x72\x09\xA0\x14\xAB\x42\xD9\x4D", 28265 - .ilen = 1008, 28266 - .result = "\xCD\x3E\x2A\x3B\x3E\x94\xC5\x77" 37141 + .ctext = "\xCD\x3E\x2A\x3B\x3E\x94\xC5\x77" 28267 37142 "\xBA\xBB\x5B\xB1\xDE\x7B\xA4\x40" 28268 37143 "\x88\x39\xE3\xFD\x94\x4B\x25\x58" 28269 37144 "\xE1\x4B\xC4\x18\x7A\xFD\x17\x2B" ··· 28388 37265 "\x43\x94\x23\x7E\xEE\xF0\xA5\x79" 28389 37266 "\x55\x01\xD4\x58\xB2\xF2\x85\x49" 28390 37267 "\x70\xC5\xB9\x0B\x3B\x7A\x6E\x6C", 28391 - .rlen = 1008, 37268 + .len = 1008, 28392 37269 .also_non_np = 1, 28393 37270 .np = 3, 28394 37271 .tap = { 1008 - 20, 4, 16 }, 28395 37272 }, 28396 37273 }; 28397 37274 28398 - static const struct cipher_testvec camellia_cbc_dec_tv_template[] = { 28399 - { 28400 - .key = "\x06\xa9\x21\x40\x36\xb8\xa1\x5b" 28401 - "\x51\x2e\x03\xd5\x34\x12\x00\x06", 28402 - .klen = 16, 28403 - .iv = "\x3d\xaf\xba\x42\x9d\x9e\xb4\x30" 28404 - "\xb4\x22\xda\x80\x2c\x9f\xac\x41", 28405 - .input = "\xea\x32\x12\x76\x3b\x50\x10\xe7" 28406 - "\x18\xf6\xfd\x5d\xf6\x8f\x13\x51", 28407 - .ilen = 16, 28408 - .result = "Single block msg", 28409 - .rlen = 16, 28410 - }, { 28411 - .key = "\xc2\x86\x69\x6d\x88\x7c\x9a\xa0" 28412 - "\x61\x1b\xbb\x3e\x20\x25\xa4\x5a", 28413 - .klen = 16, 28414 - .iv = "\x56\x2e\x17\x99\x6d\x09\x3d\x28" 28415 - "\xdd\xb3\xba\x69\x5a\x2e\x6f\x58", 28416 - .input = "\xa5\xdf\x6e\x50\xda\x70\x6c\x01" 28417 - "\x4a\xab\xf3\xf2\xd6\xfc\x6c\xfd" 28418 - "\x19\xb4\x3e\x57\x1c\x02\x5e\xa0" 28419 - "\x15\x78\xe0\x5e\xf2\xcb\x87\x16", 28420 - .ilen = 32, 28421 - .result = "\x00\x01\x02\x03\x04\x05\x06\x07" 28422 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 28423 - "\x10\x11\x12\x13\x14\x15\x16\x17" 28424 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f", 28425 - .rlen = 32, 28426 - }, { /* Generated with Crypto++ */ 28427 - .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 28428 - "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" 28429 - "\x27\x04\xE1\x27\x04\xE1\xBE\x9B" 28430 - "\x78\xBE\x9B\x78\x55\x32\x0F\x55", 28431 - .klen = 32, 28432 - .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F" 28433 - "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64", 28434 - .input = "\xCD\x3E\x2A\x3B\x3E\x94\xC5\x77" 28435 - "\xBA\xBB\x5B\xB1\xDE\x7B\xA4\x40" 28436 - "\x88\x39\xE3\xFD\x94\x4B\x25\x58" 28437 - "\xE1\x4B\xC4\x18\x7A\xFD\x17\x2B" 28438 - "\xB9\xF9\xC2\x27\x6A\xB6\x31\x27" 28439 - "\xA6\xAD\xEF\xE5\x5D\xE4\x02\x01" 28440 - "\x56\x2E\x10\xC2\x2C\xFF\xC6\x83" 28441 - "\xB5\xDC\x4F\x63\xAD\x0E\x63\x5E" 28442 - "\x56\xC8\x18\x3D\x79\x86\x97\xEF" 28443 - "\x57\x0E\x63\xA1\xC1\x41\x48\xB8" 28444 - "\x98\xB7\x51\x6D\x18\xF6\x19\x82" 28445 - "\x37\x49\x88\xA4\xEF\x91\x21\x47" 28446 - "\x03\x28\xEA\x42\xF4\xFB\x7A\x58" 28447 - "\x28\x90\x77\x46\xD8\xD2\x35\x16" 28448 - "\x44\xA9\x9E\x49\x52\x2A\xE4\x16" 28449 - "\x5D\xF7\x65\xEB\x0F\xC9\x29\xE6" 28450 - "\xCF\x76\x91\x89\x8A\x94\x39\xFA" 28451 - "\x6B\x5F\x63\x53\x74\x43\x91\xF5" 28452 - "\x3F\xBC\x88\x53\xB2\x1A\x02\x3F" 28453 - "\x9D\x32\x84\xEB\x56\x28\xD6\x06" 28454 - "\xD5\xB2\x20\xA9\xFC\xC3\x76\x62" 28455 - "\x32\xCC\x86\xC8\x36\x67\x5E\x7E" 28456 - "\xA4\xAA\x15\x63\x6B\xA9\x86\xAF" 28457 - "\x1A\x52\x82\x36\x5F\xF4\x3F\x7A" 28458 - "\x9B\x78\x62\x3B\x02\x28\x60\xB3" 28459 - "\xBA\x82\xB1\xDD\xC9\x60\x8F\x47" 28460 - "\xF1\x6B\xFE\xE5\x39\x34\xA0\x28" 28461 - "\xA4\xB3\xC9\x7E\xED\x28\x8D\x70" 28462 - "\xB2\x1D\xFD\xC6\x00\xCF\x1A\x94" 28463 - "\x28\xF8\xC1\x34\xB7\x58\xA5\x6C" 28464 - "\x1A\x9D\xE4\xE4\xF6\xB9\xB4\xB0" 28465 - "\x5D\x51\x54\x9A\x53\xA0\xF9\x32" 28466 - "\xBD\x31\x54\x14\x7B\x33\xEE\x17" 28467 - "\xD3\xC7\x1F\x48\xBF\x0B\x22\xA2" 28468 - "\x7D\x0C\xDF\xD0\x2E\x98\xFA\xD2" 28469 - "\xFA\xCF\x24\x1D\x99\x9B\xD0\x7E" 28470 - "\xF4\x4F\x88\xFF\x45\x99\x4A\xF4" 28471 - "\xF2\x0A\x5B\x3B\x21\xAB\x92\xAE" 28472 - "\x40\x78\x91\x95\xC4\x2F\xA3\xE8" 28473 - "\x18\xC7\x07\xA6\xC8\xC0\x66\x33" 28474 - "\x35\xC0\xB4\xA0\xF8\xEE\x1E\xF3" 28475 - "\x40\xF5\x40\x54\xF1\x84\x8C\xEA" 28476 - "\x27\x38\x1F\xF8\x77\xC7\xDF\xD8" 28477 - "\x1D\xE2\xD9\x59\x40\x4F\x59\xD4" 28478 - "\xF8\x17\x99\x8D\x58\x2D\x72\x44" 28479 - "\x9D\x1D\x91\x64\xD6\x3F\x0A\x82" 28480 - "\xC7\x57\x3D\xEF\xD3\x41\xFA\xA7" 28481 - "\x68\xA3\xB8\xA5\x93\x74\x2E\x85" 28482 - "\x4C\x9D\x69\x59\xCE\x15\xAE\xBF" 28483 - "\x9C\x8F\x14\x64\x5D\x7F\xCF\x0B" 28484 - "\xCE\x43\x5D\x28\xC0\x2F\xFB\x18" 28485 - "\x79\x9A\xFC\x43\x16\x7C\x6B\x7B" 28486 - "\x38\xB8\x48\x36\x66\x4E\x20\x43" 28487 - "\xBA\x76\x13\x9A\xC3\xF2\xEB\x52" 28488 - "\xD7\xDC\xB2\x67\x63\x14\x25\xCD" 28489 - "\xB1\x13\x4B\xDE\x8C\x59\x21\x84" 28490 - "\x81\x8D\x97\x23\x45\x33\x7C\xF3" 28491 - "\xC5\xBC\x79\x95\xAA\x84\x68\x31" 28492 - "\x2D\x1A\x68\xFE\xEC\x92\x94\xDA" 28493 - "\x94\x2A\x6F\xD6\xFE\xE5\x76\x97" 28494 - "\xF4\x6E\xEE\xCB\x2B\x95\x4E\x36" 28495 - "\x5F\x74\x8C\x86\x5B\x71\xD0\x20" 28496 - "\x78\x1A\x7F\x18\x8C\xD9\xCD\xF5" 28497 - "\x21\x41\x56\x72\x13\xE1\x86\x07" 28498 - "\x07\x26\xF3\x4F\x7B\xEA\xB5\x18" 28499 - "\xFE\x94\x2D\x9F\xE0\x72\x18\x65" 28500 - "\xB2\xA5\x63\x48\xB4\x13\x22\xF7" 28501 - "\x25\xF1\x80\xA8\x7F\x54\x86\x7B" 28502 - "\x39\xAE\x95\x0C\x09\x32\x22\x2D" 28503 - "\x4D\x73\x39\x0C\x09\x2C\x7C\x10" 28504 - "\xD0\x4B\x53\xF6\x90\xC5\x99\x2F" 28505 - "\x15\xE1\x7F\xC6\xC5\x7A\x52\x14" 28506 - "\x65\xEE\x93\x54\xD0\x66\x15\x3C" 28507 - "\x4C\x68\xFD\x64\x0F\xF9\x10\x39" 28508 - "\x46\x7A\xDD\x97\x20\xEE\xC7\xD2" 28509 - "\x98\x4A\xB6\xE6\xF5\xA8\x1F\x4F" 28510 - "\xDB\xAB\x6D\xD5\x9B\x34\x16\x97" 28511 - "\x2F\x64\xE5\x37\xEF\x0E\xA1\xE9" 28512 - "\xBE\x31\x31\x96\x8B\x40\x18\x75" 28513 - "\x11\x75\x14\x32\xA5\x2D\x1B\x6B" 28514 - "\xDB\x59\xEB\xFA\x3D\x8E\x7C\xC4" 28515 - "\xDE\x68\xC8\x9F\xC9\x99\xE3\xC6" 28516 - "\x71\xB0\x12\x57\x89\x0D\xC0\x2B" 28517 - "\x9F\x12\x6A\x04\x67\xF1\x95\x31" 28518 - "\x59\xFD\x84\x95\x2C\x9C\x5B\xEC" 28519 - "\x09\xB0\x43\x96\x4A\x64\x80\x40" 28520 - "\xB9\x72\x19\xDD\x70\x42\xFA\xB1" 28521 - "\x4A\x2C\x0C\x0A\x60\x6E\xE3\x7C" 28522 - "\x37\x5A\xBE\xA4\x62\xCF\x29\xAB" 28523 - "\x7F\x4D\xA6\xB3\xE2\xB6\x64\xC6" 28524 - "\x33\x0B\xF3\xD5\x01\x38\x74\xA4" 28525 - "\x67\x1E\x75\x68\xC3\xAD\x76\xE9" 28526 - "\xE9\xBC\xF0\xEB\xD8\xFD\x31\x8A" 28527 - "\x5F\xC9\x18\x94\x4B\x86\x66\xFC" 28528 - "\xBD\x0B\x3D\xB3\x9F\xFA\x1F\xD9" 28529 - "\x78\xC4\xE3\x24\x1C\x67\xA2\xF8" 28530 - "\x43\xBC\x76\x75\xBF\x6C\x05\xB3" 28531 - "\x32\xE8\x7C\x80\xDB\xC7\xB6\x61" 28532 - "\x1A\x3E\x2B\xA7\x25\xED\x8F\xA0" 28533 - "\x00\x4B\xF8\x90\xCA\xD8\xFB\x12" 28534 - "\xAC\x1F\x18\xE9\xD2\x5E\xA2\x8E" 28535 - "\xE4\x84\x6B\x9D\xEB\x1E\x6B\xA3" 28536 - "\x7B\xDC\xCE\x15\x97\x27\xB2\x65" 28537 - "\xBC\x0E\x47\xAB\x55\x13\x53\xAB" 28538 - "\x0E\x34\x55\x02\x5F\x27\xC5\x89" 28539 - "\xDF\xC5\x70\xC4\xDD\x76\x82\xEE" 28540 - "\x68\xA6\x09\xB0\xE5\x5E\xF1\x0C" 28541 - "\xE3\xF3\x09\x9B\xFE\x65\x4B\xB8" 28542 - "\x30\xEC\xD5\x7C\x6A\xEC\x1D\xD2" 28543 - "\x93\xB7\xA1\x1A\x02\xD4\xC0\xD6" 28544 - "\x8D\x4D\x83\x9A\xED\x29\x4E\x14" 28545 - "\x86\xD5\x3C\x1A\xD5\xB9\x0A\x6A" 28546 - "\x72\x22\xD5\x92\x38\xF1\xA1\x86" 28547 - "\xB2\x41\x51\xCA\x4E\xAB\x8F\xD3" 28548 - "\x80\x56\xC3\xD7\x65\xE1\xB3\x86" 28549 - "\xCB\xCE\x98\xA1\xD4\x59\x1C\x06" 28550 - "\x01\xED\xF8\x29\x91\x19\x5C\x9A" 28551 - "\xEE\x28\x1B\x48\xD7\x32\xEF\x9F" 28552 - "\x6C\x2B\x66\x4E\x78\xD5\x8B\x72" 28553 - "\x80\xE7\x29\xDC\x23\x55\x98\x54" 28554 - "\xB1\xFF\x3E\x95\x56\xA8\x78\x78" 28555 - "\xEF\xC4\xA5\x11\x2D\x2B\xD8\x93" 28556 - "\x30\x6E\x7E\x51\xBB\x42\x5F\x03" 28557 - "\x43\x94\x23\x7E\xEE\xF0\xA5\x79" 28558 - "\x55\x01\xD4\x58\xB2\xF2\x85\x49" 28559 - "\x70\xC5\xB9\x0B\x3B\x7A\x6E\x6C", 28560 - .ilen = 1008, 28561 - .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 28562 - "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 28563 - "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 28564 - "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" 28565 - "\x1E\x92\x29\xC0\x34\xCB\x62\xF9" 28566 - "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48" 28567 - "\xDF\x76\x0D\x81\x18\xAF\x23\xBA" 28568 - "\x51\xE8\x5C\xF3\x8A\x21\x95\x2C" 28569 - "\xC3\x37\xCE\x65\xFC\x70\x07\x9E" 28570 - "\x12\xA9\x40\xD7\x4B\xE2\x79\x10" 28571 - "\x84\x1B\xB2\x26\xBD\x54\xEB\x5F" 28572 - "\xF6\x8D\x01\x98\x2F\xC6\x3A\xD1" 28573 - "\x68\xFF\x73\x0A\xA1\x15\xAC\x43" 28574 - "\xDA\x4E\xE5\x7C\x13\x87\x1E\xB5" 28575 - "\x29\xC0\x57\xEE\x62\xF9\x90\x04" 28576 - "\x9B\x32\xC9\x3D\xD4\x6B\x02\x76" 28577 - "\x0D\xA4\x18\xAF\x46\xDD\x51\xE8" 28578 - "\x7F\x16\x8A\x21\xB8\x2C\xC3\x5A" 28579 - "\xF1\x65\xFC\x93\x07\x9E\x35\xCC" 28580 - "\x40\xD7\x6E\x05\x79\x10\xA7\x1B" 28581 - "\xB2\x49\xE0\x54\xEB\x82\x19\x8D" 28582 - "\x24\xBB\x2F\xC6\x5D\xF4\x68\xFF" 28583 - "\x96\x0A\xA1\x38\xCF\x43\xDA\x71" 28584 - "\x08\x7C\x13\xAA\x1E\xB5\x4C\xE3" 28585 - "\x57\xEE\x85\x1C\x90\x27\xBE\x32" 28586 - "\xC9\x60\xF7\x6B\x02\x99\x0D\xA4" 28587 - "\x3B\xD2\x46\xDD\x74\x0B\x7F\x16" 28588 - "\xAD\x21\xB8\x4F\xE6\x5A\xF1\x88" 28589 - "\x1F\x93\x2A\xC1\x35\xCC\x63\xFA" 28590 - "\x6E\x05\x9C\x10\xA7\x3E\xD5\x49" 28591 - "\xE0\x77\x0E\x82\x19\xB0\x24\xBB" 28592 - "\x52\xE9\x5D\xF4\x8B\x22\x96\x2D" 28593 - "\xC4\x38\xCF\x66\xFD\x71\x08\x9F" 28594 - "\x13\xAA\x41\xD8\x4C\xE3\x7A\x11" 28595 - "\x85\x1C\xB3\x27\xBE\x55\xEC\x60" 28596 - "\xF7\x8E\x02\x99\x30\xC7\x3B\xD2" 28597 - "\x69\x00\x74\x0B\xA2\x16\xAD\x44" 28598 - "\xDB\x4F\xE6\x7D\x14\x88\x1F\xB6" 28599 - "\x2A\xC1\x58\xEF\x63\xFA\x91\x05" 28600 - "\x9C\x33\xCA\x3E\xD5\x6C\x03\x77" 28601 - "\x0E\xA5\x19\xB0\x47\xDE\x52\xE9" 28602 - "\x80\x17\x8B\x22\xB9\x2D\xC4\x5B" 28603 - "\xF2\x66\xFD\x94\x08\x9F\x36\xCD" 28604 - "\x41\xD8\x6F\x06\x7A\x11\xA8\x1C" 28605 - "\xB3\x4A\xE1\x55\xEC\x83\x1A\x8E" 28606 - "\x25\xBC\x30\xC7\x5E\xF5\x69\x00" 28607 - "\x97\x0B\xA2\x39\xD0\x44\xDB\x72" 28608 - "\x09\x7D\x14\xAB\x1F\xB6\x4D\xE4" 28609 - "\x58\xEF\x86\x1D\x91\x28\xBF\x33" 28610 - "\xCA\x61\xF8\x6C\x03\x9A\x0E\xA5" 28611 - "\x3C\xD3\x47\xDE\x75\x0C\x80\x17" 28612 - "\xAE\x22\xB9\x50\xE7\x5B\xF2\x89" 28613 - "\x20\x94\x2B\xC2\x36\xCD\x64\xFB" 28614 - "\x6F\x06\x9D\x11\xA8\x3F\xD6\x4A" 28615 - "\xE1\x78\x0F\x83\x1A\xB1\x25\xBC" 28616 - "\x53\xEA\x5E\xF5\x8C\x00\x97\x2E" 28617 - "\xC5\x39\xD0\x67\xFE\x72\x09\xA0" 28618 - "\x14\xAB\x42\xD9\x4D\xE4\x7B\x12" 28619 - "\x86\x1D\xB4\x28\xBF\x56\xED\x61" 28620 - "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 28621 - "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 28622 - "\xDC\x50\xE7\x7E\x15\x89\x20\xB7" 28623 - "\x2B\xC2\x59\xF0\x64\xFB\x92\x06" 28624 - "\x9D\x34\xCB\x3F\xD6\x6D\x04\x78" 28625 - "\x0F\xA6\x1A\xB1\x48\xDF\x53\xEA" 28626 - "\x81\x18\x8C\x23\xBA\x2E\xC5\x5C" 28627 - "\xF3\x67\xFE\x95\x09\xA0\x37\xCE" 28628 - "\x42\xD9\x70\x07\x7B\x12\xA9\x1D" 28629 - "\xB4\x4B\xE2\x56\xED\x84\x1B\x8F" 28630 - "\x26\xBD\x31\xC8\x5F\xF6\x6A\x01" 28631 - "\x98\x0C\xA3\x3A\xD1\x45\xDC\x73" 28632 - "\x0A\x7E\x15\xAC\x20\xB7\x4E\xE5" 28633 - "\x59\xF0\x87\x1E\x92\x29\xC0\x34" 28634 - "\xCB\x62\xF9\x6D\x04\x9B\x0F\xA6" 28635 - "\x3D\xD4\x48\xDF\x76\x0D\x81\x18" 28636 - "\xAF\x23\xBA\x51\xE8\x5C\xF3\x8A" 28637 - "\x21\x95\x2C\xC3\x37\xCE\x65\xFC" 28638 - "\x70\x07\x9E\x12\xA9\x40\xD7\x4B" 28639 - "\xE2\x79\x10\x84\x1B\xB2\x26\xBD" 28640 - "\x54\xEB\x5F\xF6\x8D\x01\x98\x2F" 28641 - "\xC6\x3A\xD1\x68\xFF\x73\x0A\xA1" 28642 - "\x15\xAC\x43\xDA\x4E\xE5\x7C\x13" 28643 - "\x87\x1E\xB5\x29\xC0\x57\xEE\x62" 28644 - "\xF9\x90\x04\x9B\x32\xC9\x3D\xD4" 28645 - "\x6B\x02\x76\x0D\xA4\x18\xAF\x46" 28646 - "\xDD\x51\xE8\x7F\x16\x8A\x21\xB8" 28647 - "\x2C\xC3\x5A\xF1\x65\xFC\x93\x07" 28648 - "\x9E\x35\xCC\x40\xD7\x6E\x05\x79" 28649 - "\x10\xA7\x1B\xB2\x49\xE0\x54\xEB" 28650 - "\x82\x19\x8D\x24\xBB\x2F\xC6\x5D" 28651 - "\xF4\x68\xFF\x96\x0A\xA1\x38\xCF" 28652 - "\x43\xDA\x71\x08\x7C\x13\xAA\x1E" 28653 - "\xB5\x4C\xE3\x57\xEE\x85\x1C\x90" 28654 - "\x27\xBE\x32\xC9\x60\xF7\x6B\x02" 28655 - "\x99\x0D\xA4\x3B\xD2\x46\xDD\x74" 28656 - "\x0B\x7F\x16\xAD\x21\xB8\x4F\xE6" 28657 - "\x5A\xF1\x88\x1F\x93\x2A\xC1\x35" 28658 - "\xCC\x63\xFA\x6E\x05\x9C\x10\xA7" 28659 - "\x3E\xD5\x49\xE0\x77\x0E\x82\x19" 28660 - "\xB0\x24\xBB\x52\xE9\x5D\xF4\x8B" 28661 - "\x22\x96\x2D\xC4\x38\xCF\x66\xFD" 28662 - "\x71\x08\x9F\x13\xAA\x41\xD8\x4C" 28663 - "\xE3\x7A\x11\x85\x1C\xB3\x27\xBE" 28664 - "\x55\xEC\x60\xF7\x8E\x02\x99\x30" 28665 - "\xC7\x3B\xD2\x69\x00\x74\x0B\xA2" 28666 - "\x16\xAD\x44\xDB\x4F\xE6\x7D\x14" 28667 - "\x88\x1F\xB6\x2A\xC1\x58\xEF\x63" 28668 - "\xFA\x91\x05\x9C\x33\xCA\x3E\xD5" 28669 - "\x6C\x03\x77\x0E\xA5\x19\xB0\x47" 28670 - "\xDE\x52\xE9\x80\x17\x8B\x22\xB9" 28671 - "\x2D\xC4\x5B\xF2\x66\xFD\x94\x08" 28672 - "\x9F\x36\xCD\x41\xD8\x6F\x06\x7A" 28673 - "\x11\xA8\x1C\xB3\x4A\xE1\x55\xEC" 28674 - "\x83\x1A\x8E\x25\xBC\x30\xC7\x5E" 28675 - "\xF5\x69\x00\x97\x0B\xA2\x39\xD0" 28676 - "\x44\xDB\x72\x09\x7D\x14\xAB\x1F" 28677 - "\xB6\x4D\xE4\x58\xEF\x86\x1D\x91" 28678 - "\x28\xBF\x33\xCA\x61\xF8\x6C\x03" 28679 - "\x9A\x0E\xA5\x3C\xD3\x47\xDE\x75" 28680 - "\x0C\x80\x17\xAE\x22\xB9\x50\xE7" 28681 - "\x5B\xF2\x89\x20\x94\x2B\xC2\x36" 28682 - "\xCD\x64\xFB\x6F\x06\x9D\x11\xA8" 28683 - "\x3F\xD6\x4A\xE1\x78\x0F\x83\x1A" 28684 - "\xB1\x25\xBC\x53\xEA\x5E\xF5\x8C" 28685 - "\x00\x97\x2E\xC5\x39\xD0\x67\xFE" 28686 - "\x72\x09\xA0\x14\xAB\x42\xD9\x4D", 28687 - .rlen = 1008, 28688 - .also_non_np = 1, 28689 - .np = 3, 28690 - .tap = { 1008 - 20, 4, 16 }, 28691 - }, 28692 - }; 28693 - 28694 - static const struct cipher_testvec camellia_ctr_enc_tv_template[] = { 37275 + static const struct cipher_testvec camellia_ctr_tv_template[] = { 28695 37276 { /* Generated with Crypto++ */ 28696 37277 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 28697 37278 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" ··· 28404 37577 .klen = 32, 28405 37578 .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F" 28406 37579 "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64", 28407 - .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 37580 + .ptext = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 28408 37581 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 28409 37582 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 28410 37583 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" ··· 28466 37639 "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 28467 37640 "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 28468 37641 "\xDC\x50\xE7\x7E\x15\x89\x20\xB7", 28469 - .ilen = 496, 28470 - .result = "\xF3\x06\x3A\x84\xCD\xBA\x8E\x11" 37642 + .ctext = "\xF3\x06\x3A\x84\xCD\xBA\x8E\x11" 28471 37643 "\xB7\x74\x6F\x5C\x97\xFB\x36\xFE" 28472 37644 "\xDE\x71\x58\xD4\x15\xD1\xC1\xA4" 28473 37645 "\xC9\x28\x74\xA6\x6B\xC7\x95\xA6" ··· 28528 37702 "\x7E\x42\xEC\xB6\x6F\x4D\x6B\x48" 28529 37703 "\xE6\xA6\x50\x80\x78\x9E\xF1\xB0" 28530 37704 "\x4D\xB2\x0D\x3D\xFC\x40\x25\x4D", 28531 - .rlen = 496, 37705 + .len = 496, 28532 37706 }, { /* Generated with Crypto++ */ 28533 37707 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 28534 37708 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" ··· 28537 37711 .klen = 32, 28538 37712 .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F" 28539 37713 "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64", 28540 - .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 37714 + .ptext = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 28541 37715 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 28542 37716 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 28543 37717 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" ··· 28664 37838 "\x00\x97\x2E\xC5\x39\xD0\x67\xFE" 28665 37839 "\x72\x09\xA0\x14\xAB\x42\xD9\x4D" 28666 37840 "\xE4\x7B\x12", 28667 - .ilen = 1011, 28668 - .result = "\xF3\x06\x3A\x84\xCD\xBA\x8E\x11" 37841 + .ctext = "\xF3\x06\x3A\x84\xCD\xBA\x8E\x11" 28669 37842 "\xB7\x74\x6F\x5C\x97\xFB\x36\xFE" 28670 37843 "\xDE\x71\x58\xD4\x15\xD1\xC1\xA4" 28671 37844 "\xC9\x28\x74\xA6\x6B\xC7\x95\xA6" ··· 28791 37966 "\x45\xE3\x35\x0D\x69\x91\x54\x1C" 28792 37967 "\xE7\x2C\x49\x08\x8B\x72\xFA\x5C" 28793 37968 "\xF1\x6B\xD9", 28794 - .rlen = 1011, 37969 + .len = 1011, 28795 37970 .also_non_np = 1, 28796 37971 .np = 2, 28797 37972 .tap = { 1011 - 16, 16 }, ··· 28803 37978 .klen = 32, 28804 37979 .iv = "\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF" 28805 37980 "\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFD", 28806 - .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 37981 + .ptext = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 28807 37982 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 28808 37983 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 28809 37984 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" ··· 28929 38104 "\xB1\x25\xBC\x53\xEA\x5E\xF5\x8C" 28930 38105 "\x00\x97\x2E\xC5\x39\xD0\x67\xFE" 28931 38106 "\x72\x09\xA0\x14\xAB\x42\xD9\x4D", 28932 - .ilen = 1008, 28933 - .result = "\x85\x79\x6C\x8B\x2B\x6D\x14\xF9" 38107 + .ctext = "\x85\x79\x6C\x8B\x2B\x6D\x14\xF9" 28934 38108 "\xA6\x83\xB6\x80\x5B\x3A\xF3\x7E" 28935 38109 "\x30\x29\xEB\x1F\xDC\x19\x5F\xEB" 28936 38110 "\xF7\xC4\x27\x04\x51\x87\xD7\x6F" ··· 29055 38231 "\xC5\x9B\x03\x70\x29\x2A\x49\x09" 29056 38232 "\x67\xA1\xEA\xD6\x3A\x5B\xBF\x71" 29057 38233 "\x1D\x48\x64\x6C\xFB\xC0\x9E\x36", 29058 - .rlen = 1008, 38234 + .len = 1008, 29059 38235 }, 29060 38236 }; 29061 38237 29062 - static const struct cipher_testvec camellia_ctr_dec_tv_template[] = { 29063 - { /* Generated with Crypto++ */ 29064 - .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 29065 - "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" 29066 - "\x27\x04\xE1\x27\x04\xE1\xBE\x9B" 29067 - "\x78\xBE\x9B\x78\x55\x32\x0F\x55", 29068 - .klen = 32, 29069 - .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F" 29070 - "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64", 29071 - .input = "\xF3\x06\x3A\x84\xCD\xBA\x8E\x11" 29072 - "\xB7\x74\x6F\x5C\x97\xFB\x36\xFE" 29073 - "\xDE\x71\x58\xD4\x15\xD1\xC1\xA4" 29074 - "\xC9\x28\x74\xA6\x6B\xC7\x95\xA6" 29075 - "\x6C\x77\xF7\x2F\xDF\xC7\xBB\x85" 29076 - "\x60\xFC\xE8\x94\xE8\xB5\x09\x2C" 29077 - "\x1E\x43\xEF\x6C\xE9\x98\xC5\xA0" 29078 - "\x7B\x13\xE5\x7F\xF8\x49\x9A\x8C" 29079 - "\xE6\x7B\x08\xC3\x32\x66\x55\x4E" 29080 - "\xA5\x44\x1D\x2C\x18\xC7\x29\x1F" 29081 - "\x61\x28\x4A\xE3\xCD\xE5\x47\xB2" 29082 - "\x82\x2F\x66\x83\x91\x51\xAE\xD7" 29083 - "\x1C\x91\x3C\x57\xE3\x1D\x5A\xC9" 29084 - "\xFD\xC5\x58\x58\xEF\xCC\x33\xC9" 29085 - "\x0F\xEA\x26\x32\xD1\x15\x19\x2D" 29086 - "\x25\xB4\x7F\xB0\xDF\xFB\x88\x60" 29087 - "\x4E\x4D\x06\x7D\xCC\x1F\xED\x3B" 29088 - "\x68\x84\xD5\xB3\x1B\xE7\xB9\xA1" 29089 - "\x68\x8B\x2C\x1A\x44\xDA\x63\xD3" 29090 - "\x29\xE9\x59\x32\x1F\x30\x1C\x43" 29091 - "\xEA\x3A\xA3\x6B\x54\x3C\xAA\x11" 29092 - "\xAD\x38\x20\xC9\xB9\x8A\x64\x66" 29093 - "\x5A\x07\x49\xDF\xA1\x9C\xF9\x76" 29094 - "\x36\x65\xB6\x81\x8F\x76\x09\xE5" 29095 - "\xEB\xD1\x29\xA4\xE4\xF4\x4C\xCD" 29096 - "\xAF\xFC\xB9\x16\xD9\xC3\x73\x6A" 29097 - "\x33\x12\xF8\x7E\xBC\xCC\x7D\x80" 29098 - "\xBF\x3C\x25\x06\x13\x84\xFA\x35" 29099 - "\xF7\x40\xFA\xA1\x44\x13\x70\xD8" 29100 - "\x01\xF9\x85\x15\x63\xEC\x7D\xB9" 29101 - "\x02\xD8\xBA\x41\x6C\x92\x68\x66" 29102 - "\x95\xDD\xD6\x42\xE7\xBB\xE1\xFD" 29103 - "\x28\x3E\x94\xB6\xBD\xA7\xBF\x47" 29104 - "\x58\x8D\xFF\x19\x30\x75\x0D\x48" 29105 - "\x94\xE9\xA6\xCD\xB3\x8E\x1E\xCD" 29106 - "\x59\xBC\x1A\xAC\x3C\x4F\xA9\xEB" 29107 - "\xF4\xA7\xE4\x75\x4A\x18\x40\xC9" 29108 - "\x1E\xEC\x06\x9C\x28\x4B\xF7\x2B" 29109 - "\xE2\xEF\xD6\x42\x2E\xBB\xFC\x0A" 29110 - "\x79\xA2\x99\x28\x93\x1B\x00\x57" 29111 - "\x35\x1E\x1A\x93\x90\xA4\x68\x95" 29112 - "\x5E\x57\x40\xD5\xA9\xAA\x19\x48" 29113 - "\xEC\xFF\x76\x77\xDC\x78\x89\x76" 29114 - "\xE5\x3B\x00\xEC\x58\x4D\xD1\xE3" 29115 - "\xC8\x6C\x2C\x45\x5E\x5F\xD9\x4E" 29116 - "\x71\xA5\x36\x6D\x03\xF1\xC7\xD5" 29117 - "\xF3\x63\xC0\xD8\xCB\x2B\xF1\xA8" 29118 - "\xB9\x2B\xE6\x0B\xB9\x65\x78\xA0" 29119 - "\xC4\x46\xE6\x9B\x8B\x43\x2D\xAB" 29120 - "\x70\xA6\xE0\x59\x1E\xAC\x9D\xE0" 29121 - "\x76\x44\x45\xF3\x24\x11\x57\x98" 29122 - "\x9A\x86\xB4\x12\x80\x28\x86\x20" 29123 - "\x23\x9D\x2D\xE9\x38\x32\xB1\xE1" 29124 - "\xCF\x0A\x23\x73\x7D\xC5\x80\x3D" 29125 - "\x9F\x6D\xA0\xD0\xEE\x93\x8A\x79" 29126 - "\x3A\xDD\x1D\xBB\x9E\x26\x5D\x01" 29127 - "\x44\xD0\xD4\x4E\xC3\xF1\xE4\x38" 29128 - "\x09\x62\x0A\x1A\x4E\xD2\x63\x0F" 29129 - "\x6E\x3E\xD2\xA4\x3A\xF4\xF3\xFF" 29130 - "\x7E\x42\xEC\xB6\x6F\x4D\x6B\x48" 29131 - "\xE6\xA6\x50\x80\x78\x9E\xF1\xB0" 29132 - "\x4D\xB2\x0D\x3D\xFC\x40\x25\x4D", 29133 - .ilen = 496, 29134 - .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 29135 - "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 29136 - "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 29137 - "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" 29138 - "\x1E\x92\x29\xC0\x34\xCB\x62\xF9" 29139 - "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48" 29140 - "\xDF\x76\x0D\x81\x18\xAF\x23\xBA" 29141 - "\x51\xE8\x5C\xF3\x8A\x21\x95\x2C" 29142 - "\xC3\x37\xCE\x65\xFC\x70\x07\x9E" 29143 - "\x12\xA9\x40\xD7\x4B\xE2\x79\x10" 29144 - "\x84\x1B\xB2\x26\xBD\x54\xEB\x5F" 29145 - "\xF6\x8D\x01\x98\x2F\xC6\x3A\xD1" 29146 - "\x68\xFF\x73\x0A\xA1\x15\xAC\x43" 29147 - "\xDA\x4E\xE5\x7C\x13\x87\x1E\xB5" 29148 - "\x29\xC0\x57\xEE\x62\xF9\x90\x04" 29149 - "\x9B\x32\xC9\x3D\xD4\x6B\x02\x76" 29150 - "\x0D\xA4\x18\xAF\x46\xDD\x51\xE8" 29151 - "\x7F\x16\x8A\x21\xB8\x2C\xC3\x5A" 29152 - "\xF1\x65\xFC\x93\x07\x9E\x35\xCC" 29153 - "\x40\xD7\x6E\x05\x79\x10\xA7\x1B" 29154 - "\xB2\x49\xE0\x54\xEB\x82\x19\x8D" 29155 - "\x24\xBB\x2F\xC6\x5D\xF4\x68\xFF" 29156 - "\x96\x0A\xA1\x38\xCF\x43\xDA\x71" 29157 - "\x08\x7C\x13\xAA\x1E\xB5\x4C\xE3" 29158 - "\x57\xEE\x85\x1C\x90\x27\xBE\x32" 29159 - "\xC9\x60\xF7\x6B\x02\x99\x0D\xA4" 29160 - "\x3B\xD2\x46\xDD\x74\x0B\x7F\x16" 29161 - "\xAD\x21\xB8\x4F\xE6\x5A\xF1\x88" 29162 - "\x1F\x93\x2A\xC1\x35\xCC\x63\xFA" 29163 - "\x6E\x05\x9C\x10\xA7\x3E\xD5\x49" 29164 - "\xE0\x77\x0E\x82\x19\xB0\x24\xBB" 29165 - "\x52\xE9\x5D\xF4\x8B\x22\x96\x2D" 29166 - "\xC4\x38\xCF\x66\xFD\x71\x08\x9F" 29167 - "\x13\xAA\x41\xD8\x4C\xE3\x7A\x11" 29168 - "\x85\x1C\xB3\x27\xBE\x55\xEC\x60" 29169 - "\xF7\x8E\x02\x99\x30\xC7\x3B\xD2" 29170 - "\x69\x00\x74\x0B\xA2\x16\xAD\x44" 29171 - "\xDB\x4F\xE6\x7D\x14\x88\x1F\xB6" 29172 - "\x2A\xC1\x58\xEF\x63\xFA\x91\x05" 29173 - "\x9C\x33\xCA\x3E\xD5\x6C\x03\x77" 29174 - "\x0E\xA5\x19\xB0\x47\xDE\x52\xE9" 29175 - "\x80\x17\x8B\x22\xB9\x2D\xC4\x5B" 29176 - "\xF2\x66\xFD\x94\x08\x9F\x36\xCD" 29177 - "\x41\xD8\x6F\x06\x7A\x11\xA8\x1C" 29178 - "\xB3\x4A\xE1\x55\xEC\x83\x1A\x8E" 29179 - "\x25\xBC\x30\xC7\x5E\xF5\x69\x00" 29180 - "\x97\x0B\xA2\x39\xD0\x44\xDB\x72" 29181 - "\x09\x7D\x14\xAB\x1F\xB6\x4D\xE4" 29182 - "\x58\xEF\x86\x1D\x91\x28\xBF\x33" 29183 - "\xCA\x61\xF8\x6C\x03\x9A\x0E\xA5" 29184 - "\x3C\xD3\x47\xDE\x75\x0C\x80\x17" 29185 - "\xAE\x22\xB9\x50\xE7\x5B\xF2\x89" 29186 - "\x20\x94\x2B\xC2\x36\xCD\x64\xFB" 29187 - "\x6F\x06\x9D\x11\xA8\x3F\xD6\x4A" 29188 - "\xE1\x78\x0F\x83\x1A\xB1\x25\xBC" 29189 - "\x53\xEA\x5E\xF5\x8C\x00\x97\x2E" 29190 - "\xC5\x39\xD0\x67\xFE\x72\x09\xA0" 29191 - "\x14\xAB\x42\xD9\x4D\xE4\x7B\x12" 29192 - "\x86\x1D\xB4\x28\xBF\x56\xED\x61" 29193 - "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 29194 - "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 29195 - "\xDC\x50\xE7\x7E\x15\x89\x20\xB7", 29196 - .rlen = 496, 29197 - }, { /* Generated with Crypto++ */ 29198 - .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 29199 - "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" 29200 - "\x27\x04\xE1\x27\x04\xE1\xBE\x9B" 29201 - "\x78\xBE\x9B\x78\x55\x32\x0F\x55", 29202 - .klen = 32, 29203 - .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F" 29204 - "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64", 29205 - .input = "\xF3\x06\x3A\x84\xCD\xBA\x8E\x11" 29206 - "\xB7\x74\x6F\x5C\x97\xFB\x36\xFE" 29207 - "\xDE\x71\x58\xD4\x15\xD1\xC1\xA4" 29208 - "\xC9\x28\x74\xA6\x6B\xC7\x95\xA6" 29209 - "\x6C\x77\xF7\x2F\xDF\xC7\xBB\x85" 29210 - "\x60\xFC\xE8\x94\xE8\xB5\x09\x2C" 29211 - "\x1E\x43\xEF\x6C\xE9\x98\xC5\xA0" 29212 - "\x7B\x13\xE5\x7F\xF8\x49\x9A\x8C" 29213 - "\xE6\x7B\x08\xC3\x32\x66\x55\x4E" 29214 - "\xA5\x44\x1D\x2C\x18\xC7\x29\x1F" 29215 - "\x61\x28\x4A\xE3\xCD\xE5\x47\xB2" 29216 - "\x82\x2F\x66\x83\x91\x51\xAE\xD7" 29217 - "\x1C\x91\x3C\x57\xE3\x1D\x5A\xC9" 29218 - "\xFD\xC5\x58\x58\xEF\xCC\x33\xC9" 29219 - "\x0F\xEA\x26\x32\xD1\x15\x19\x2D" 29220 - "\x25\xB4\x7F\xB0\xDF\xFB\x88\x60" 29221 - "\x4E\x4D\x06\x7D\xCC\x1F\xED\x3B" 29222 - "\x68\x84\xD5\xB3\x1B\xE7\xB9\xA1" 29223 - "\x68\x8B\x2C\x1A\x44\xDA\x63\xD3" 29224 - "\x29\xE9\x59\x32\x1F\x30\x1C\x43" 29225 - "\xEA\x3A\xA3\x6B\x54\x3C\xAA\x11" 29226 - "\xAD\x38\x20\xC9\xB9\x8A\x64\x66" 29227 - "\x5A\x07\x49\xDF\xA1\x9C\xF9\x76" 29228 - "\x36\x65\xB6\x81\x8F\x76\x09\xE5" 29229 - "\xEB\xD1\x29\xA4\xE4\xF4\x4C\xCD" 29230 - "\xAF\xFC\xB9\x16\xD9\xC3\x73\x6A" 29231 - "\x33\x12\xF8\x7E\xBC\xCC\x7D\x80" 29232 - "\xBF\x3C\x25\x06\x13\x84\xFA\x35" 29233 - "\xF7\x40\xFA\xA1\x44\x13\x70\xD8" 29234 - "\x01\xF9\x85\x15\x63\xEC\x7D\xB9" 29235 - "\x02\xD8\xBA\x41\x6C\x92\x68\x66" 29236 - "\x95\xDD\xD6\x42\xE7\xBB\xE1\xFD" 29237 - "\x28\x3E\x94\xB6\xBD\xA7\xBF\x47" 29238 - "\x58\x8D\xFF\x19\x30\x75\x0D\x48" 29239 - "\x94\xE9\xA6\xCD\xB3\x8E\x1E\xCD" 29240 - "\x59\xBC\x1A\xAC\x3C\x4F\xA9\xEB" 29241 - "\xF4\xA7\xE4\x75\x4A\x18\x40\xC9" 29242 - "\x1E\xEC\x06\x9C\x28\x4B\xF7\x2B" 29243 - "\xE2\xEF\xD6\x42\x2E\xBB\xFC\x0A" 29244 - "\x79\xA2\x99\x28\x93\x1B\x00\x57" 29245 - "\x35\x1E\x1A\x93\x90\xA4\x68\x95" 29246 - "\x5E\x57\x40\xD5\xA9\xAA\x19\x48" 29247 - "\xEC\xFF\x76\x77\xDC\x78\x89\x76" 29248 - "\xE5\x3B\x00\xEC\x58\x4D\xD1\xE3" 29249 - "\xC8\x6C\x2C\x45\x5E\x5F\xD9\x4E" 29250 - "\x71\xA5\x36\x6D\x03\xF1\xC7\xD5" 29251 - "\xF3\x63\xC0\xD8\xCB\x2B\xF1\xA8" 29252 - "\xB9\x2B\xE6\x0B\xB9\x65\x78\xA0" 29253 - "\xC4\x46\xE6\x9B\x8B\x43\x2D\xAB" 29254 - "\x70\xA6\xE0\x59\x1E\xAC\x9D\xE0" 29255 - "\x76\x44\x45\xF3\x24\x11\x57\x98" 29256 - "\x9A\x86\xB4\x12\x80\x28\x86\x20" 29257 - "\x23\x9D\x2D\xE9\x38\x32\xB1\xE1" 29258 - "\xCF\x0A\x23\x73\x7D\xC5\x80\x3D" 29259 - "\x9F\x6D\xA0\xD0\xEE\x93\x8A\x79" 29260 - "\x3A\xDD\x1D\xBB\x9E\x26\x5D\x01" 29261 - "\x44\xD0\xD4\x4E\xC3\xF1\xE4\x38" 29262 - "\x09\x62\x0A\x1A\x4E\xD2\x63\x0F" 29263 - "\x6E\x3E\xD2\xA4\x3A\xF4\xF3\xFF" 29264 - "\x7E\x42\xEC\xB6\x6F\x4D\x6B\x48" 29265 - "\xE6\xA6\x50\x80\x78\x9E\xF1\xB0" 29266 - "\x4D\xB2\x0D\x3D\xFC\x40\x25\x4D" 29267 - "\x93\x11\x1C\xE9\xD2\x9F\x6E\x90" 29268 - "\xE5\x41\x4A\xE2\x3C\x45\x29\x35" 29269 - "\xEC\xD6\x47\x50\xCB\x7B\xA2\x32" 29270 - "\xF7\x8B\x62\xF1\xE3\x9A\xFE\xC7" 29271 - "\x1D\x8C\x02\x72\x68\x09\xE9\xB6" 29272 - "\x4A\x80\xE6\xB1\x56\xDF\x90\xD4" 29273 - "\x93\x74\xA4\xCE\x20\x23\xBF\x48" 29274 - "\xA5\xDE\x1B\xFA\x40\x69\x31\x98" 29275 - "\x62\x6E\xA5\xC7\xBF\x0C\x62\xE5" 29276 - "\x6D\xE1\x93\xF1\x83\x10\x1C\xCA" 29277 - "\xF6\x5C\x19\xF8\x90\x78\xCB\xE4" 29278 - "\x0B\x3A\xB5\xF8\x43\x86\xD3\x3F" 29279 - "\xBA\x83\x34\x3C\x42\xCC\x7D\x28" 29280 - "\x29\x63\x4F\xD8\x02\x17\xC5\x07" 29281 - "\x2C\xA4\xAC\x79\xCB\xC3\xA9\x09" 29282 - "\x81\x45\x18\xED\xE4\xCB\x42\x3B" 29283 - "\x87\x2D\x23\xDC\xC5\xBA\x45\xBD" 29284 - "\x92\xE5\x02\x97\x96\xCE\xAD\xEC" 29285 - "\xBA\xD8\x76\xF8\xCA\xC1\x31\xEC" 29286 - "\x1E\x4F\x3F\x83\xF8\x33\xE8\x6E" 29287 - "\xCC\xF8\x5F\xDD\x65\x50\x99\x69" 29288 - "\xAF\x48\xCE\xA5\xBA\xB6\x14\x9F" 29289 - "\x05\x93\xB2\xE6\x59\xC8\x28\xFE" 29290 - "\x8F\x37\xF9\x64\xB9\xA5\x56\x8F" 29291 - "\xF1\x1B\x90\xEF\xAE\xEB\xFC\x09" 29292 - "\x11\x7A\xF2\x19\x0A\x0A\x9A\x3C" 29293 - "\xE2\x5E\x29\xFA\x31\x9B\xC1\x74" 29294 - "\x1E\x10\x3E\x07\xA9\x31\x6D\xF8" 29295 - "\x81\xF5\xD5\x8A\x04\x23\x51\xAC" 29296 - "\xA2\xE2\x63\xFD\x27\x1F\x79\x5B" 29297 - "\x1F\xE8\xDA\x11\x49\x4D\x1C\xBA" 29298 - "\x54\xCC\x0F\xBA\x92\x69\xE5\xCB" 29299 - "\x41\x1A\x67\xA6\x40\x82\x70\x8C" 29300 - "\x19\x79\x08\xA4\x51\x20\x7D\xC9" 29301 - "\x12\x27\xAE\x20\x0D\x2C\xA1\x6D" 29302 - "\xF4\x55\xD4\xE7\xE6\xD4\x28\x08" 29303 - "\x00\x70\x12\x56\x56\x50\xAD\x14" 29304 - "\x5C\x3E\xA2\xD1\x36\x3F\x36\x48" 29305 - "\xED\xB1\x57\x3E\x5D\x15\xF6\x1E" 29306 - "\x53\xE9\xA4\x3E\xED\x7D\xCF\x7D" 29307 - "\x29\xAF\xF3\x1E\x51\xA8\x9F\x85" 29308 - "\x8B\xF0\xBB\xCE\xCC\x39\xC3\x64" 29309 - "\x4B\xF2\xAD\x70\x19\xD4\x44\x8F" 29310 - "\x91\x76\xE8\x15\x66\x34\x9F\xF6" 29311 - "\x0F\x15\xA4\xA8\x24\xF8\x58\xB1" 29312 - "\x38\x46\x47\xC7\x9B\xCA\xE9\x42" 29313 - "\x44\xAA\xE6\xB5\x9C\x91\xA4\xD3" 29314 - "\x16\xA0\xED\x42\xBE\xB5\x06\x19" 29315 - "\xBE\x67\xE8\xBC\x22\x32\xA4\x1E" 29316 - "\x93\xEB\xBE\xE9\xE1\x93\xE5\x31" 29317 - "\x3A\xA2\x75\xDF\xE3\x6B\xE7\xCC" 29318 - "\xB4\x70\x20\xE0\x6D\x82\x7C\xC8" 29319 - "\x94\x5C\x5E\x37\x18\xAD\xED\x8B" 29320 - "\x44\x86\xCA\x5E\x07\xB7\x70\x8D" 29321 - "\x40\x48\x19\x73\x7C\x78\x64\x0B" 29322 - "\xDB\x01\xCA\xAE\x63\x19\xE9\xD1" 29323 - "\x6B\x2C\x84\x10\x45\x42\x2E\xC3" 29324 - "\xDF\x7F\xAA\xE8\x87\x1B\x63\x46" 29325 - "\x74\x28\x9D\x05\x30\x20\x62\x41" 29326 - "\xC0\x9F\x2C\x36\x2B\x78\xD7\x26" 29327 - "\xDF\x58\x51\xED\xFA\xDC\x87\x79" 29328 - "\xBF\x8C\xBF\xC4\x0F\xE5\x05\xDA" 29329 - "\x45\xE3\x35\x0D\x69\x91\x54\x1C" 29330 - "\xE7\x2C\x49\x08\x8B\x72\xFA\x5C" 29331 - "\xF1\x6B\xD9", 29332 - .ilen = 1011, 29333 - .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 29334 - "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 29335 - "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 29336 - "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" 29337 - "\x1E\x92\x29\xC0\x34\xCB\x62\xF9" 29338 - "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48" 29339 - "\xDF\x76\x0D\x81\x18\xAF\x23\xBA" 29340 - "\x51\xE8\x5C\xF3\x8A\x21\x95\x2C" 29341 - "\xC3\x37\xCE\x65\xFC\x70\x07\x9E" 29342 - "\x12\xA9\x40\xD7\x4B\xE2\x79\x10" 29343 - "\x84\x1B\xB2\x26\xBD\x54\xEB\x5F" 29344 - "\xF6\x8D\x01\x98\x2F\xC6\x3A\xD1" 29345 - "\x68\xFF\x73\x0A\xA1\x15\xAC\x43" 29346 - "\xDA\x4E\xE5\x7C\x13\x87\x1E\xB5" 29347 - "\x29\xC0\x57\xEE\x62\xF9\x90\x04" 29348 - "\x9B\x32\xC9\x3D\xD4\x6B\x02\x76" 29349 - "\x0D\xA4\x18\xAF\x46\xDD\x51\xE8" 29350 - "\x7F\x16\x8A\x21\xB8\x2C\xC3\x5A" 29351 - "\xF1\x65\xFC\x93\x07\x9E\x35\xCC" 29352 - "\x40\xD7\x6E\x05\x79\x10\xA7\x1B" 29353 - "\xB2\x49\xE0\x54\xEB\x82\x19\x8D" 29354 - "\x24\xBB\x2F\xC6\x5D\xF4\x68\xFF" 29355 - "\x96\x0A\xA1\x38\xCF\x43\xDA\x71" 29356 - "\x08\x7C\x13\xAA\x1E\xB5\x4C\xE3" 29357 - "\x57\xEE\x85\x1C\x90\x27\xBE\x32" 29358 - "\xC9\x60\xF7\x6B\x02\x99\x0D\xA4" 29359 - "\x3B\xD2\x46\xDD\x74\x0B\x7F\x16" 29360 - "\xAD\x21\xB8\x4F\xE6\x5A\xF1\x88" 29361 - "\x1F\x93\x2A\xC1\x35\xCC\x63\xFA" 29362 - "\x6E\x05\x9C\x10\xA7\x3E\xD5\x49" 29363 - "\xE0\x77\x0E\x82\x19\xB0\x24\xBB" 29364 - "\x52\xE9\x5D\xF4\x8B\x22\x96\x2D" 29365 - "\xC4\x38\xCF\x66\xFD\x71\x08\x9F" 29366 - "\x13\xAA\x41\xD8\x4C\xE3\x7A\x11" 29367 - "\x85\x1C\xB3\x27\xBE\x55\xEC\x60" 29368 - "\xF7\x8E\x02\x99\x30\xC7\x3B\xD2" 29369 - "\x69\x00\x74\x0B\xA2\x16\xAD\x44" 29370 - "\xDB\x4F\xE6\x7D\x14\x88\x1F\xB6" 29371 - "\x2A\xC1\x58\xEF\x63\xFA\x91\x05" 29372 - "\x9C\x33\xCA\x3E\xD5\x6C\x03\x77" 29373 - "\x0E\xA5\x19\xB0\x47\xDE\x52\xE9" 29374 - "\x80\x17\x8B\x22\xB9\x2D\xC4\x5B" 29375 - "\xF2\x66\xFD\x94\x08\x9F\x36\xCD" 29376 - "\x41\xD8\x6F\x06\x7A\x11\xA8\x1C" 29377 - "\xB3\x4A\xE1\x55\xEC\x83\x1A\x8E" 29378 - "\x25\xBC\x30\xC7\x5E\xF5\x69\x00" 29379 - "\x97\x0B\xA2\x39\xD0\x44\xDB\x72" 29380 - "\x09\x7D\x14\xAB\x1F\xB6\x4D\xE4" 29381 - "\x58\xEF\x86\x1D\x91\x28\xBF\x33" 29382 - "\xCA\x61\xF8\x6C\x03\x9A\x0E\xA5" 29383 - "\x3C\xD3\x47\xDE\x75\x0C\x80\x17" 29384 - "\xAE\x22\xB9\x50\xE7\x5B\xF2\x89" 29385 - "\x20\x94\x2B\xC2\x36\xCD\x64\xFB" 29386 - "\x6F\x06\x9D\x11\xA8\x3F\xD6\x4A" 29387 - "\xE1\x78\x0F\x83\x1A\xB1\x25\xBC" 29388 - "\x53\xEA\x5E\xF5\x8C\x00\x97\x2E" 29389 - "\xC5\x39\xD0\x67\xFE\x72\x09\xA0" 29390 - "\x14\xAB\x42\xD9\x4D\xE4\x7B\x12" 29391 - "\x86\x1D\xB4\x28\xBF\x56\xED\x61" 29392 - "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 29393 - "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 29394 - "\xDC\x50\xE7\x7E\x15\x89\x20\xB7" 29395 - "\x2B\xC2\x59\xF0\x64\xFB\x92\x06" 29396 - "\x9D\x34\xCB\x3F\xD6\x6D\x04\x78" 29397 - "\x0F\xA6\x1A\xB1\x48\xDF\x53\xEA" 29398 - "\x81\x18\x8C\x23\xBA\x2E\xC5\x5C" 29399 - "\xF3\x67\xFE\x95\x09\xA0\x37\xCE" 29400 - "\x42\xD9\x70\x07\x7B\x12\xA9\x1D" 29401 - "\xB4\x4B\xE2\x56\xED\x84\x1B\x8F" 29402 - "\x26\xBD\x31\xC8\x5F\xF6\x6A\x01" 29403 - "\x98\x0C\xA3\x3A\xD1\x45\xDC\x73" 29404 - "\x0A\x7E\x15\xAC\x20\xB7\x4E\xE5" 29405 - "\x59\xF0\x87\x1E\x92\x29\xC0\x34" 29406 - "\xCB\x62\xF9\x6D\x04\x9B\x0F\xA6" 29407 - "\x3D\xD4\x48\xDF\x76\x0D\x81\x18" 29408 - "\xAF\x23\xBA\x51\xE8\x5C\xF3\x8A" 29409 - "\x21\x95\x2C\xC3\x37\xCE\x65\xFC" 29410 - "\x70\x07\x9E\x12\xA9\x40\xD7\x4B" 29411 - "\xE2\x79\x10\x84\x1B\xB2\x26\xBD" 29412 - "\x54\xEB\x5F\xF6\x8D\x01\x98\x2F" 29413 - "\xC6\x3A\xD1\x68\xFF\x73\x0A\xA1" 29414 - "\x15\xAC\x43\xDA\x4E\xE5\x7C\x13" 29415 - "\x87\x1E\xB5\x29\xC0\x57\xEE\x62" 29416 - "\xF9\x90\x04\x9B\x32\xC9\x3D\xD4" 29417 - "\x6B\x02\x76\x0D\xA4\x18\xAF\x46" 29418 - "\xDD\x51\xE8\x7F\x16\x8A\x21\xB8" 29419 - "\x2C\xC3\x5A\xF1\x65\xFC\x93\x07" 29420 - "\x9E\x35\xCC\x40\xD7\x6E\x05\x79" 29421 - "\x10\xA7\x1B\xB2\x49\xE0\x54\xEB" 29422 - "\x82\x19\x8D\x24\xBB\x2F\xC6\x5D" 29423 - "\xF4\x68\xFF\x96\x0A\xA1\x38\xCF" 29424 - "\x43\xDA\x71\x08\x7C\x13\xAA\x1E" 29425 - "\xB5\x4C\xE3\x57\xEE\x85\x1C\x90" 29426 - "\x27\xBE\x32\xC9\x60\xF7\x6B\x02" 29427 - "\x99\x0D\xA4\x3B\xD2\x46\xDD\x74" 29428 - "\x0B\x7F\x16\xAD\x21\xB8\x4F\xE6" 29429 - "\x5A\xF1\x88\x1F\x93\x2A\xC1\x35" 29430 - "\xCC\x63\xFA\x6E\x05\x9C\x10\xA7" 29431 - "\x3E\xD5\x49\xE0\x77\x0E\x82\x19" 29432 - "\xB0\x24\xBB\x52\xE9\x5D\xF4\x8B" 29433 - "\x22\x96\x2D\xC4\x38\xCF\x66\xFD" 29434 - "\x71\x08\x9F\x13\xAA\x41\xD8\x4C" 29435 - "\xE3\x7A\x11\x85\x1C\xB3\x27\xBE" 29436 - "\x55\xEC\x60\xF7\x8E\x02\x99\x30" 29437 - "\xC7\x3B\xD2\x69\x00\x74\x0B\xA2" 29438 - "\x16\xAD\x44\xDB\x4F\xE6\x7D\x14" 29439 - "\x88\x1F\xB6\x2A\xC1\x58\xEF\x63" 29440 - "\xFA\x91\x05\x9C\x33\xCA\x3E\xD5" 29441 - "\x6C\x03\x77\x0E\xA5\x19\xB0\x47" 29442 - "\xDE\x52\xE9\x80\x17\x8B\x22\xB9" 29443 - "\x2D\xC4\x5B\xF2\x66\xFD\x94\x08" 29444 - "\x9F\x36\xCD\x41\xD8\x6F\x06\x7A" 29445 - "\x11\xA8\x1C\xB3\x4A\xE1\x55\xEC" 29446 - "\x83\x1A\x8E\x25\xBC\x30\xC7\x5E" 29447 - "\xF5\x69\x00\x97\x0B\xA2\x39\xD0" 29448 - "\x44\xDB\x72\x09\x7D\x14\xAB\x1F" 29449 - "\xB6\x4D\xE4\x58\xEF\x86\x1D\x91" 29450 - "\x28\xBF\x33\xCA\x61\xF8\x6C\x03" 29451 - "\x9A\x0E\xA5\x3C\xD3\x47\xDE\x75" 29452 - "\x0C\x80\x17\xAE\x22\xB9\x50\xE7" 29453 - "\x5B\xF2\x89\x20\x94\x2B\xC2\x36" 29454 - "\xCD\x64\xFB\x6F\x06\x9D\x11\xA8" 29455 - "\x3F\xD6\x4A\xE1\x78\x0F\x83\x1A" 29456 - "\xB1\x25\xBC\x53\xEA\x5E\xF5\x8C" 29457 - "\x00\x97\x2E\xC5\x39\xD0\x67\xFE" 29458 - "\x72\x09\xA0\x14\xAB\x42\xD9\x4D" 29459 - "\xE4\x7B\x12", 29460 - .rlen = 1011, 29461 - .also_non_np = 1, 29462 - .np = 2, 29463 - .tap = { 1011 - 16, 16 }, 29464 - }, { /* Generated with Crypto++ */ 29465 - .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9" 29466 - "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A" 29467 - "\x27\x04\xE1\x27\x04\xE1\xBE\x9B" 29468 - "\x78\xBE\x9B\x78\x55\x32\x0F\x55", 29469 - .klen = 32, 29470 - .iv = "\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF" 29471 - "\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFD", 29472 - .input = "\x85\x79\x6C\x8B\x2B\x6D\x14\xF9" 29473 - "\xA6\x83\xB6\x80\x5B\x3A\xF3\x7E" 29474 - "\x30\x29\xEB\x1F\xDC\x19\x5F\xEB" 29475 - "\xF7\xC4\x27\x04\x51\x87\xD7\x6F" 29476 - "\xB8\x4E\x07\xFB\xAC\x3B\x08\xB4" 29477 - "\x4D\xCB\xE8\xE1\x71\x7D\x4F\x48" 29478 - "\xCD\x81\x64\xA5\xC4\x07\x1A\x9A" 29479 - "\x4B\x62\x90\x0E\xC8\xB3\x2B\x6B" 29480 - "\x8F\x9C\x6E\x72\x4B\xBA\xEF\x07" 29481 - "\x2C\x56\x07\x5E\x37\x30\x60\xA9" 29482 - "\xE3\xEF\xD6\x69\xE1\xA1\x77\x64" 29483 - "\x93\x75\x7A\xB7\x7A\x3B\xE9\x43" 29484 - "\x23\x35\x95\x91\x80\x8A\xC7\xCF" 29485 - "\xC3\xD5\xBF\xE7\xFE\x4C\x06\x6B" 29486 - "\x05\x19\x48\xE2\x62\xBA\x4F\xF2" 29487 - "\xFB\xEE\xE4\xCB\x79\x9D\xA3\x10" 29488 - "\x1D\x29\x8C\x1D\x7A\x88\x5A\xDD" 29489 - "\x4E\xB6\x18\xAA\xCD\xE6\x33\x96" 29490 - "\xD9\x0F\x90\x5A\x78\x76\x4D\x77" 29491 - "\x3C\x20\x89\x3B\xA3\xF9\x07\xFD" 29492 - "\xE4\xE8\x20\x2D\x15\x0A\x63\x49" 29493 - "\xF5\x4F\x89\xD8\xDE\xA1\x28\x78" 29494 - "\x28\x07\x09\x1B\x03\x94\x1D\x4B" 29495 - "\x82\x28\x1E\x1D\x95\xBA\xAC\x85" 29496 - "\x71\x6E\x3C\x18\x4B\x77\x74\x79" 29497 - "\xBF\x67\x0A\x53\x3C\x94\xD9\x60" 29498 - "\xE9\x6D\x40\x34\xA0\x2A\x53\x5D" 29499 - "\x27\xD5\x47\xF9\xC3\x4B\x27\x29" 29500 - "\xE4\x76\x9C\x3F\xA7\x1C\x87\xFC" 29501 - "\x6E\x0F\xCF\x9B\x60\xF0\xF0\x8B" 29502 - "\x70\x1C\x84\x81\x72\x4D\xB4\x98" 29503 - "\x23\x62\xE7\x6A\x2B\xFC\xA5\xB2" 29504 - "\xFF\xF5\x71\x07\xCD\x90\x23\x13" 29505 - "\x19\xD7\x79\x36\x6C\x9D\x55\x8B" 29506 - "\x93\x78\x86\x05\x69\x46\xD0\xC5" 29507 - "\x39\x09\xEB\x79\xEF\xFA\x9F\xAE" 29508 - "\xF3\xD5\x44\xC3\xFD\x86\xD2\x7C" 29509 - "\x83\x4B\xD8\x75\x9C\x18\x04\x7B" 29510 - "\x73\xAD\x72\xA4\xF6\xAB\xCF\x4B" 29511 - "\xCC\x01\x45\x90\xA6\x43\x05\x0C" 29512 - "\x6C\x4F\x62\x77\x57\x97\x9F\xEE" 29513 - "\x75\xA7\x3C\x38\xD1\x0F\x3D\x0E" 29514 - "\x2C\x43\x98\xFB\x13\x65\x73\xE4" 29515 - "\x3C\x1E\xD6\x90\x08\xF7\xE0\x99" 29516 - "\x3B\xF1\x9D\x6C\x48\xA9\x0E\x32" 29517 - "\x17\xC2\xCC\x20\xA1\x19\x26\xAA" 29518 - "\xE0\x75\x2F\xFB\x54\x66\x0A\xDF" 29519 - "\xB5\xF2\x1F\xC1\x34\x3C\x30\x56" 29520 - "\xE8\xDC\xF7\x92\x6B\xBF\x17\x24" 29521 - "\xEC\x94\xB5\x3B\xD6\xCE\xA2\x54" 29522 - "\x10\x7F\x50\xDE\x69\x77\xD5\x37" 29523 - "\xFE\x9C\x10\x83\xC5\xEB\xC9\x53" 29524 - "\xB7\xF3\xC4\x20\xAF\x0A\x7E\x57" 29525 - "\x3A\xE6\x75\xFE\x89\x00\x6E\x48" 29526 - "\xFB\x99\x17\x2C\xF6\x64\x40\x95" 29527 - "\x5E\xDC\x7A\xA6\x70\xC7\xF4\xDD" 29528 - "\x52\x05\x24\x34\xF9\x0E\xC8\x64" 29529 - "\x6D\xE2\xD8\x80\x53\x31\x4C\xFE" 29530 - "\xB4\x3A\x5F\x19\xCF\x42\x1B\x22" 29531 - "\x0B\x2D\x7B\xF1\xC5\x43\xF7\x5E" 29532 - "\x12\xA8\x01\x64\x16\x0B\x26\x5A" 29533 - "\x0C\x95\x0F\x40\xC5\x5A\x06\x7C" 29534 - "\xCF\xF5\xD5\xB7\x7A\x34\x23\xB6" 29535 - "\xAA\x9E\xA8\x98\xA2\xF8\x3D\xD3" 29536 - "\x3F\x23\x69\x63\x56\x96\x45\xD6" 29537 - "\x74\x23\x1D\x5C\x63\xCC\xD8\x78" 29538 - "\x16\xE2\x9C\xD2\x80\x02\xF2\x28" 29539 - "\x69\x2F\xC4\xA8\x15\x15\x24\x3B" 29540 - "\xCB\xF0\x14\xE4\x62\xC8\xF3\xD1" 29541 - "\x03\x58\x1B\x33\x77\x74\x1F\xB4" 29542 - "\x07\x86\xF2\x21\xB7\x41\xAE\xBF" 29543 - "\x25\xC2\xFF\x51\xEF\xEA\xCE\xC4" 29544 - "\x5F\xD9\xB8\x18\x6A\xF0\x0F\x0D" 29545 - "\xF8\x04\xBB\x6D\x62\x33\x87\x26" 29546 - "\x4F\x2F\x14\x6E\xDC\xDB\x66\x09" 29547 - "\x2A\xEF\x7D\x84\x10\xAC\x82\x5E" 29548 - "\xD2\xE4\xAD\x74\x7A\x6D\xCC\x3A" 29549 - "\x7B\x62\xD8\xD6\x07\x2D\xF7\xDF" 29550 - "\x9B\xB3\x82\xCF\x9C\x1D\x76\x5C" 29551 - "\xAC\x7B\xD4\x9B\x45\xA1\x64\x11" 29552 - "\x66\xF1\xA7\x0B\xF9\xDD\x00\xDD" 29553 - "\xA4\x45\x3D\x3E\x03\xC9\x2E\xCB" 29554 - "\xC3\x14\x84\x72\xFD\x41\xDC\xBD" 29555 - "\x75\xBE\xA8\xE5\x16\x48\x64\x39" 29556 - "\xCA\xF3\xE6\xDC\x25\x24\xF1\x6D" 29557 - "\xB2\x8D\xC5\x38\x54\xD3\x5D\x6D" 29558 - "\x0B\x29\x10\x15\x0E\x13\x3B\xAC" 29559 - "\x7E\xCC\x9E\x3E\x18\x48\xA6\x02" 29560 - "\xEF\x03\xB2\x2E\xE3\xD2\x70\x21" 29561 - "\xB4\x19\x26\xBE\x3A\x3D\x05\xE0" 29562 - "\xF8\x09\xAF\xE4\x31\x26\x92\x2F" 29563 - "\x8F\x55\xAC\xED\x0B\xB2\xA5\x34" 29564 - "\xBE\x50\xB1\x02\x22\x96\xE3\x40" 29565 - "\x7B\x70\x50\x6E\x3B\xD5\xE5\xA0" 29566 - "\x8E\xA2\xAD\x14\x60\x5C\x7A\x2B" 29567 - "\x3D\x1B\x7F\xC1\xC0\x2C\x56\x36" 29568 - "\xD2\x0A\x32\x06\x97\x34\xB9\xF4" 29569 - "\x6F\x9F\x7E\x80\xD0\x9D\xF7\x6A" 29570 - "\x21\xC1\xA2\x6A\xB1\x96\x5B\x4D" 29571 - "\x7A\x15\x6C\xC4\x4E\xB8\xE0\x9E" 29572 - "\x6C\x50\xF3\x9C\xC9\xB5\x23\xB7" 29573 - "\xF1\xD4\x29\x4A\x23\xC4\xAD\x1E" 29574 - "\x2C\x07\xD2\x43\x5F\x57\x93\xCA" 29575 - "\x85\xF9\x9F\xAD\x4C\xF1\xE4\xB1" 29576 - "\x1A\x8E\x28\xA4\xB6\x52\x77\x7E" 29577 - "\x68\xC6\x47\xB9\x76\xCC\x65\x5F" 29578 - "\x0B\xF9\x67\x93\xD8\x0E\x9A\x37" 29579 - "\x5F\x41\xED\x64\x6C\xAD\x5F\xED" 29580 - "\x3F\x8D\xFB\x8E\x1E\xA0\xE4\x1F" 29581 - "\xC2\xC7\xED\x18\x43\xE1\x20\x86" 29582 - "\x5D\xBC\x30\x70\x22\xA1\xDC\x53" 29583 - "\x10\x3A\x8D\x47\x82\xCD\x7F\x59" 29584 - "\x03\x2D\x6D\xF5\xE7\x79\xD4\x07" 29585 - "\x68\x2A\xA5\x42\x19\x4D\xAF\xF5" 29586 - "\xED\x47\x83\xBC\x5F\x62\x84\xDA" 29587 - "\xDA\x41\xFF\xB0\x1D\x64\xA3\xC8" 29588 - "\xBD\x4E\xE0\xB8\x7F\xEE\x55\x0A" 29589 - "\x4E\x61\xB2\x51\xF6\x9C\x95\xF6" 29590 - "\x92\xBB\xF6\xC5\xF0\x09\x86\xDE" 29591 - "\x37\x9E\x29\xF9\x2A\x18\x73\x0D" 29592 - "\xDC\x7E\x6B\x7B\x1B\x43\x8C\xEA" 29593 - "\x13\xC8\x1A\x47\x0A\x2D\x6D\x56" 29594 - "\xCD\xD2\xE7\x53\x1A\xAB\x1C\x3C" 29595 - "\xC5\x9B\x03\x70\x29\x2A\x49\x09" 29596 - "\x67\xA1\xEA\xD6\x3A\x5B\xBF\x71" 29597 - "\x1D\x48\x64\x6C\xFB\xC0\x9E\x36", 29598 - .ilen = 1008, 29599 - .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31" 29600 - "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3" 29601 - "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15" 29602 - "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87" 29603 - "\x1E\x92\x29\xC0\x34\xCB\x62\xF9" 29604 - "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48" 29605 - "\xDF\x76\x0D\x81\x18\xAF\x23\xBA" 29606 - "\x51\xE8\x5C\xF3\x8A\x21\x95\x2C" 29607 - "\xC3\x37\xCE\x65\xFC\x70\x07\x9E" 29608 - "\x12\xA9\x40\xD7\x4B\xE2\x79\x10" 29609 - "\x84\x1B\xB2\x26\xBD\x54\xEB\x5F" 29610 - "\xF6\x8D\x01\x98\x2F\xC6\x3A\xD1" 29611 - "\x68\xFF\x73\x0A\xA1\x15\xAC\x43" 29612 - "\xDA\x4E\xE5\x7C\x13\x87\x1E\xB5" 29613 - "\x29\xC0\x57\xEE\x62\xF9\x90\x04" 29614 - "\x9B\x32\xC9\x3D\xD4\x6B\x02\x76" 29615 - "\x0D\xA4\x18\xAF\x46\xDD\x51\xE8" 29616 - "\x7F\x16\x8A\x21\xB8\x2C\xC3\x5A" 29617 - "\xF1\x65\xFC\x93\x07\x9E\x35\xCC" 29618 - "\x40\xD7\x6E\x05\x79\x10\xA7\x1B" 29619 - "\xB2\x49\xE0\x54\xEB\x82\x19\x8D" 29620 - "\x24\xBB\x2F\xC6\x5D\xF4\x68\xFF" 29621 - "\x96\x0A\xA1\x38\xCF\x43\xDA\x71" 29622 - "\x08\x7C\x13\xAA\x1E\xB5\x4C\xE3" 29623 - "\x57\xEE\x85\x1C\x90\x27\xBE\x32" 29624 - "\xC9\x60\xF7\x6B\x02\x99\x0D\xA4" 29625 - "\x3B\xD2\x46\xDD\x74\x0B\x7F\x16" 29626 - "\xAD\x21\xB8\x4F\xE6\x5A\xF1\x88" 29627 - "\x1F\x93\x2A\xC1\x35\xCC\x63\xFA" 29628 - "\x6E\x05\x9C\x10\xA7\x3E\xD5\x49" 29629 - "\xE0\x77\x0E\x82\x19\xB0\x24\xBB" 29630 - "\x52\xE9\x5D\xF4\x8B\x22\x96\x2D" 29631 - "\xC4\x38\xCF\x66\xFD\x71\x08\x9F" 29632 - "\x13\xAA\x41\xD8\x4C\xE3\x7A\x11" 29633 - "\x85\x1C\xB3\x27\xBE\x55\xEC\x60" 29634 - "\xF7\x8E\x02\x99\x30\xC7\x3B\xD2" 29635 - "\x69\x00\x74\x0B\xA2\x16\xAD\x44" 29636 - "\xDB\x4F\xE6\x7D\x14\x88\x1F\xB6" 29637 - "\x2A\xC1\x58\xEF\x63\xFA\x91\x05" 29638 - "\x9C\x33\xCA\x3E\xD5\x6C\x03\x77" 29639 - "\x0E\xA5\x19\xB0\x47\xDE\x52\xE9" 29640 - "\x80\x17\x8B\x22\xB9\x2D\xC4\x5B" 29641 - "\xF2\x66\xFD\x94\x08\x9F\x36\xCD" 29642 - "\x41\xD8\x6F\x06\x7A\x11\xA8\x1C" 29643 - "\xB3\x4A\xE1\x55\xEC\x83\x1A\x8E" 29644 - "\x25\xBC\x30\xC7\x5E\xF5\x69\x00" 29645 - "\x97\x0B\xA2\x39\xD0\x44\xDB\x72" 29646 - "\x09\x7D\x14\xAB\x1F\xB6\x4D\xE4" 29647 - "\x58\xEF\x86\x1D\x91\x28\xBF\x33" 29648 - "\xCA\x61\xF8\x6C\x03\x9A\x0E\xA5" 29649 - "\x3C\xD3\x47\xDE\x75\x0C\x80\x17" 29650 - "\xAE\x22\xB9\x50\xE7\x5B\xF2\x89" 29651 - "\x20\x94\x2B\xC2\x36\xCD\x64\xFB" 29652 - "\x6F\x06\x9D\x11\xA8\x3F\xD6\x4A" 29653 - "\xE1\x78\x0F\x83\x1A\xB1\x25\xBC" 29654 - "\x53\xEA\x5E\xF5\x8C\x00\x97\x2E" 29655 - "\xC5\x39\xD0\x67\xFE\x72\x09\xA0" 29656 - "\x14\xAB\x42\xD9\x4D\xE4\x7B\x12" 29657 - "\x86\x1D\xB4\x28\xBF\x56\xED\x61" 29658 - "\xF8\x8F\x03\x9A\x31\xC8\x3C\xD3" 29659 - "\x6A\x01\x75\x0C\xA3\x17\xAE\x45" 29660 - "\xDC\x50\xE7\x7E\x15\x89\x20\xB7" 29661 - "\x2B\xC2\x59\xF0\x64\xFB\x92\x06" 29662 - "\x9D\x34\xCB\x3F\xD6\x6D\x04\x78" 29663 - "\x0F\xA6\x1A\xB1\x48\xDF\x53\xEA" 29664 - "\x81\x18\x8C\x23\xBA\x2E\xC5\x5C" 29665 - "\xF3\x67\xFE\x95\x09\xA0\x37\xCE" 29666 - "\x42\xD9\x70\x07\x7B\x12\xA9\x1D" 29667 - "\xB4\x4B\xE2\x56\xED\x84\x1B\x8F" 29668 - "\x26\xBD\x31\xC8\x5F\xF6\x6A\x01" 29669 - "\x98\x0C\xA3\x3A\xD1\x45\xDC\x73" 29670 - "\x0A\x7E\x15\xAC\x20\xB7\x4E\xE5" 29671 - "\x59\xF0\x87\x1E\x92\x29\xC0\x34" 29672 - "\xCB\x62\xF9\x6D\x04\x9B\x0F\xA6" 29673 - "\x3D\xD4\x48\xDF\x76\x0D\x81\x18" 29674 - "\xAF\x23\xBA\x51\xE8\x5C\xF3\x8A" 29675 - "\x21\x95\x2C\xC3\x37\xCE\x65\xFC" 29676 - "\x70\x07\x9E\x12\xA9\x40\xD7\x4B" 29677 - "\xE2\x79\x10\x84\x1B\xB2\x26\xBD" 29678 - "\x54\xEB\x5F\xF6\x8D\x01\x98\x2F" 29679 - "\xC6\x3A\xD1\x68\xFF\x73\x0A\xA1" 29680 - "\x15\xAC\x43\xDA\x4E\xE5\x7C\x13" 29681 - "\x87\x1E\xB5\x29\xC0\x57\xEE\x62" 29682 - "\xF9\x90\x04\x9B\x32\xC9\x3D\xD4" 29683 - "\x6B\x02\x76\x0D\xA4\x18\xAF\x46" 29684 - "\xDD\x51\xE8\x7F\x16\x8A\x21\xB8" 29685 - "\x2C\xC3\x5A\xF1\x65\xFC\x93\x07" 29686 - "\x9E\x35\xCC\x40\xD7\x6E\x05\x79" 29687 - "\x10\xA7\x1B\xB2\x49\xE0\x54\xEB" 29688 - "\x82\x19\x8D\x24\xBB\x2F\xC6\x5D" 29689 - "\xF4\x68\xFF\x96\x0A\xA1\x38\xCF" 29690 - "\x43\xDA\x71\x08\x7C\x13\xAA\x1E" 29691 - "\xB5\x4C\xE3\x57\xEE\x85\x1C\x90" 29692 - "\x27\xBE\x32\xC9\x60\xF7\x6B\x02" 29693 - "\x99\x0D\xA4\x3B\xD2\x46\xDD\x74" 29694 - "\x0B\x7F\x16\xAD\x21\xB8\x4F\xE6" 29695 - "\x5A\xF1\x88\x1F\x93\x2A\xC1\x35" 29696 - "\xCC\x63\xFA\x6E\x05\x9C\x10\xA7" 29697 - "\x3E\xD5\x49\xE0\x77\x0E\x82\x19" 29698 - "\xB0\x24\xBB\x52\xE9\x5D\xF4\x8B" 29699 - "\x22\x96\x2D\xC4\x38\xCF\x66\xFD" 29700 - "\x71\x08\x9F\x13\xAA\x41\xD8\x4C" 29701 - "\xE3\x7A\x11\x85\x1C\xB3\x27\xBE" 29702 - "\x55\xEC\x60\xF7\x8E\x02\x99\x30" 29703 - "\xC7\x3B\xD2\x69\x00\x74\x0B\xA2" 29704 - "\x16\xAD\x44\xDB\x4F\xE6\x7D\x14" 29705 - "\x88\x1F\xB6\x2A\xC1\x58\xEF\x63" 29706 - "\xFA\x91\x05\x9C\x33\xCA\x3E\xD5" 29707 - "\x6C\x03\x77\x0E\xA5\x19\xB0\x47" 29708 - "\xDE\x52\xE9\x80\x17\x8B\x22\xB9" 29709 - "\x2D\xC4\x5B\xF2\x66\xFD\x94\x08" 29710 - "\x9F\x36\xCD\x41\xD8\x6F\x06\x7A" 29711 - "\x11\xA8\x1C\xB3\x4A\xE1\x55\xEC" 29712 - "\x83\x1A\x8E\x25\xBC\x30\xC7\x5E" 29713 - "\xF5\x69\x00\x97\x0B\xA2\x39\xD0" 29714 - "\x44\xDB\x72\x09\x7D\x14\xAB\x1F" 29715 - "\xB6\x4D\xE4\x58\xEF\x86\x1D\x91" 29716 - "\x28\xBF\x33\xCA\x61\xF8\x6C\x03" 29717 - "\x9A\x0E\xA5\x3C\xD3\x47\xDE\x75" 29718 - "\x0C\x80\x17\xAE\x22\xB9\x50\xE7" 29719 - "\x5B\xF2\x89\x20\x94\x2B\xC2\x36" 29720 - "\xCD\x64\xFB\x6F\x06\x9D\x11\xA8" 29721 - "\x3F\xD6\x4A\xE1\x78\x0F\x83\x1A" 29722 - "\xB1\x25\xBC\x53\xEA\x5E\xF5\x8C" 29723 - "\x00\x97\x2E\xC5\x39\xD0\x67\xFE" 29724 - "\x72\x09\xA0\x14\xAB\x42\xD9\x4D", 29725 - .rlen = 1008, 29726 - }, 29727 - }; 29728 - 29729 - static const struct cipher_testvec camellia_lrw_enc_tv_template[] = { 38238 + static const struct cipher_testvec camellia_lrw_tv_template[] = { 29730 38239 /* Generated from AES-LRW test vectors */ 29731 38240 { 29732 38241 .key = "\x45\x62\xac\x25\xf8\x28\x17\x6d" ··· 29069 38912 .klen = 32, 29070 38913 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 29071 38914 "\x00\x00\x00\x00\x00\x00\x00\x01", 29072 - .input = "\x30\x31\x32\x33\x34\x35\x36\x37" 38915 + .ptext = "\x30\x31\x32\x33\x34\x35\x36\x37" 29073 38916 "\x38\x39\x41\x42\x43\x44\x45\x46", 29074 - .ilen = 16, 29075 - .result = "\x92\x68\x19\xd7\xb7\x5b\x0a\x31" 38917 + .ctext = "\x92\x68\x19\xd7\xb7\x5b\x0a\x31" 29076 38918 "\x97\xcc\x72\xbe\x99\x17\xeb\x3e", 29077 - .rlen = 16, 38919 + .len = 16, 29078 38920 }, { 29079 38921 .key = "\x59\x70\x47\x14\xf5\x57\x47\x8c" 29080 38922 "\xd7\x79\xe8\x0f\x54\x88\x79\x44" ··· 29082 38926 .klen = 32, 29083 38927 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 29084 38928 "\x00\x00\x00\x00\x00\x00\x00\x02", 29085 - .input = "\x30\x31\x32\x33\x34\x35\x36\x37" 38929 + .ptext = "\x30\x31\x32\x33\x34\x35\x36\x37" 29086 38930 "\x38\x39\x41\x42\x43\x44\x45\x46", 29087 - .ilen = 16, 29088 - .result = "\x73\x09\xb7\x50\xb6\x77\x30\x50" 38931 + .ctext = "\x73\x09\xb7\x50\xb6\x77\x30\x50" 29089 38932 "\x5c\x8a\x9c\x26\x77\x9d\xfc\x4a", 29090 - .rlen = 16, 38933 + .len = 16, 29091 38934 }, { 29092 38935 .key = "\xd8\x2a\x91\x34\xb2\x6a\x56\x50" 29093 38936 "\x30\xfe\x69\xe2\x37\x7f\x98\x47" ··· 29095 38940 .klen = 32, 29096 38941 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 29097 38942 "\x00\x00\x00\x02\x00\x00\x00\x00", 29098 - .input = "\x30\x31\x32\x33\x34\x35\x36\x37" 38943 + .ptext = "\x30\x31\x32\x33\x34\x35\x36\x37" 29099 38944 "\x38\x39\x41\x42\x43\x44\x45\x46", 29100 - .ilen = 16, 29101 - .result = "\x90\xae\x83\xe0\x22\xb9\x60\x91" 38945 + .ctext = "\x90\xae\x83\xe0\x22\xb9\x60\x91" 29102 38946 "\xfa\xa9\xb7\x98\xe3\xed\x87\x01", 29103 - .rlen = 16, 38947 + .len = 16, 29104 38948 }, { 29105 38949 .key = "\x0f\x6a\xef\xf8\xd3\xd2\xbb\x15" 29106 38950 "\x25\x83\xf7\x3c\x1f\x01\x28\x74" ··· 29109 38955 .klen = 40, 29110 38956 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 29111 38957 "\x00\x00\x00\x00\x00\x00\x00\x01", 29112 - .input = "\x30\x31\x32\x33\x34\x35\x36\x37" 38958 + .ptext = "\x30\x31\x32\x33\x34\x35\x36\x37" 29113 38959 "\x38\x39\x41\x42\x43\x44\x45\x46", 29114 - .ilen = 16, 29115 - .result = "\x99\xe9\x6e\xd4\xc9\x21\xa5\xf0" 38960 + .ctext = "\x99\xe9\x6e\xd4\xc9\x21\xa5\xf0" 29116 38961 "\xd8\x83\xef\xd9\x07\x16\x5f\x35", 29117 - .rlen = 16, 38962 + .len = 16, 29118 38963 }, { 29119 38964 .key = "\x8a\xd4\xee\x10\x2f\xbd\x81\xff" 29120 38965 "\xf8\x86\xce\xac\x93\xc5\xad\xc6" ··· 29123 38970 .klen = 40, 29124 38971 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 29125 38972 "\x00\x00\x00\x02\x00\x00\x00\x00", 29126 - .input = "\x30\x31\x32\x33\x34\x35\x36\x37" 38973 + .ptext = "\x30\x31\x32\x33\x34\x35\x36\x37" 29127 38974 "\x38\x39\x41\x42\x43\x44\x45\x46", 29128 - .ilen = 16, 29129 - .result = "\x42\x88\xf4\xcb\x21\x11\x6d\x8e" 38975 + .ctext = "\x42\x88\xf4\xcb\x21\x11\x6d\x8e" 29130 38976 "\xde\x1a\xf2\x29\xf1\x4a\xe0\x15", 29131 - .rlen = 16, 38977 + .len = 16, 29132 38978 }, { 29133 38979 .key = "\xf8\xd4\x76\xff\xd6\x46\xee\x6c" 29134 38980 "\x23\x84\xcb\x1c\x77\xd6\x19\x5d" ··· 29138 38986 .klen = 48, 29139 38987 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 29140 38988 "\x00\x00\x00\x00\x00\x00\x00\x01", 29141 - .input = "\x30\x31\x32\x33\x34\x35\x36\x37" 38989 + .ptext = "\x30\x31\x32\x33\x34\x35\x36\x37" 29142 38990 "\x38\x39\x41\x42\x43\x44\x45\x46", 29143 - .ilen = 16, 29144 - .result = "\x40\xaa\x34\x86\x4a\x8f\x78\xb9" 38991 + .ctext = "\x40\xaa\x34\x86\x4a\x8f\x78\xb9" 29145 38992 "\xdb\xdb\x0f\x3d\x48\x70\xbe\x8d", 29146 - .rlen = 16, 38993 + .len = 16, 29147 38994 }, { 29148 38995 .key = "\xfb\x76\x15\xb2\x3d\x80\x89\x1d" 29149 38996 "\xd4\x70\x98\x0b\xc7\x95\x84\xc8" ··· 29153 39002 .klen = 48, 29154 39003 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 29155 39004 "\x00\x00\x00\x02\x00\x00\x00\x00", 29156 - .input = "\x30\x31\x32\x33\x34\x35\x36\x37" 39005 + .ptext = "\x30\x31\x32\x33\x34\x35\x36\x37" 29157 39006 "\x38\x39\x41\x42\x43\x44\x45\x46", 29158 - .ilen = 16, 29159 - .result = "\x04\xab\x28\x37\x31\x7a\x26\xab" 39007 + .ctext = "\x04\xab\x28\x37\x31\x7a\x26\xab" 29160 39008 "\xa1\x70\x1b\x9c\xe7\xdd\x83\xff", 29161 - .rlen = 16, 39009 + .len = 16, 29162 39010 }, { 29163 39011 .key = "\xf8\xd4\x76\xff\xd6\x46\xee\x6c" 29164 39012 "\x23\x84\xcb\x1c\x77\xd6\x19\x5d" ··· 29168 39018 .klen = 48, 29169 39019 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 29170 39020 "\x00\x00\x00\x00\x00\x00\x00\x01", 29171 - .input = "\x05\x11\xb7\x18\xab\xc6\x2d\xac" 39021 + .ptext = "\x05\x11\xb7\x18\xab\xc6\x2d\xac" 29172 39022 "\x70\x5d\xf6\x22\x94\xcd\xe5\x6c" 29173 39023 "\x17\x6b\xf6\x1c\xf0\xf3\x6e\xf8" 29174 39024 "\x50\x38\x1f\x71\x49\xb6\x57\xd6" ··· 29232 39082 "\xa4\xc7\xa8\xb4\xf6\x13\x03\xf6" 29233 39083 "\xe9\x2e\xc4\x29\x0f\x84\xdb\xc4" 29234 39084 "\x21\xc4\xc2\x75\x67\x89\x37\x0a", 29235 - .ilen = 512, 29236 - .result = "\x90\x69\x8e\xf2\x14\x86\x59\xf9" 39085 + .ctext = "\x90\x69\x8e\xf2\x14\x86\x59\xf9" 29237 39086 "\xec\xe7\xfa\x3f\x48\x9d\x7f\x96" 29238 39087 "\x67\x76\xac\x2c\xd2\x63\x18\x93" 29239 39088 "\x13\xf8\xf1\xf6\x71\x77\xb3\xee" ··· 29296 39147 "\x93\x6c\x01\xf7\xcc\x4e\x20\xd1" 29297 39148 "\xb2\x1a\xd8\x4c\xbd\x1d\x10\xe9" 29298 39149 "\x5a\xa8\x92\x7f\xba\xe6\x0c\x95", 29299 - .rlen = 512, 39150 + .len = 512, 29300 39151 .also_non_np = 1, 29301 39152 .np = 3, 29302 39153 .tap = { 512 - 20, 4, 16 }, 29303 39154 }, 29304 39155 }; 29305 39156 29306 - static const struct cipher_testvec camellia_lrw_dec_tv_template[] = { 29307 - /* Generated from AES-LRW test vectors */ 29308 - /* same as enc vectors with input and result reversed */ 29309 - { 29310 - .key = "\x45\x62\xac\x25\xf8\x28\x17\x6d" 29311 - "\x4c\x26\x84\x14\xb5\x68\x01\x85" 29312 - "\x25\x8e\x2a\x05\xe7\x3e\x9d\x03" 29313 - "\xee\x5a\x83\x0c\xcc\x09\x4c\x87", 29314 - .klen = 32, 29315 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 29316 - "\x00\x00\x00\x00\x00\x00\x00\x01", 29317 - .input = "\x92\x68\x19\xd7\xb7\x5b\x0a\x31" 29318 - "\x97\xcc\x72\xbe\x99\x17\xeb\x3e", 29319 - .ilen = 16, 29320 - .result = "\x30\x31\x32\x33\x34\x35\x36\x37" 29321 - "\x38\x39\x41\x42\x43\x44\x45\x46", 29322 - .rlen = 16, 29323 - }, { 29324 - .key = "\x59\x70\x47\x14\xf5\x57\x47\x8c" 29325 - "\xd7\x79\xe8\x0f\x54\x88\x79\x44" 29326 - "\x0d\x48\xf0\xb7\xb1\x5a\x53\xea" 29327 - "\x1c\xaa\x6b\x29\xc2\xca\xfb\xaf", 29328 - .klen = 32, 29329 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 29330 - "\x00\x00\x00\x00\x00\x00\x00\x02", 29331 - .input = "\x73\x09\xb7\x50\xb6\x77\x30\x50" 29332 - "\x5c\x8a\x9c\x26\x77\x9d\xfc\x4a", 29333 - .ilen = 16, 29334 - .result = "\x30\x31\x32\x33\x34\x35\x36\x37" 29335 - "\x38\x39\x41\x42\x43\x44\x45\x46", 29336 - .rlen = 16, 29337 - }, { 29338 - .key = "\xd8\x2a\x91\x34\xb2\x6a\x56\x50" 29339 - "\x30\xfe\x69\xe2\x37\x7f\x98\x47" 29340 - "\xcd\xf9\x0b\x16\x0c\x64\x8f\xb6" 29341 - "\xb0\x0d\x0d\x1b\xae\x85\x87\x1f", 29342 - .klen = 32, 29343 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 29344 - "\x00\x00\x00\x02\x00\x00\x00\x00", 29345 - .input = "\x90\xae\x83\xe0\x22\xb9\x60\x91" 29346 - "\xfa\xa9\xb7\x98\xe3\xed\x87\x01", 29347 - .ilen = 16, 29348 - .result = "\x30\x31\x32\x33\x34\x35\x36\x37" 29349 - "\x38\x39\x41\x42\x43\x44\x45\x46", 29350 - .rlen = 16, 29351 - }, { 29352 - .key = "\x0f\x6a\xef\xf8\xd3\xd2\xbb\x15" 29353 - "\x25\x83\xf7\x3c\x1f\x01\x28\x74" 29354 - "\xca\xc6\xbc\x35\x4d\x4a\x65\x54" 29355 - "\x90\xae\x61\xcf\x7b\xae\xbd\xcc" 29356 - "\xad\xe4\x94\xc5\x4a\x29\xae\x70", 29357 - .klen = 40, 29358 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 29359 - "\x00\x00\x00\x00\x00\x00\x00\x01", 29360 - .input = "\x99\xe9\x6e\xd4\xc9\x21\xa5\xf0" 29361 - "\xd8\x83\xef\xd9\x07\x16\x5f\x35", 29362 - .ilen = 16, 29363 - .result = "\x30\x31\x32\x33\x34\x35\x36\x37" 29364 - "\x38\x39\x41\x42\x43\x44\x45\x46", 29365 - .rlen = 16, 29366 - }, { 29367 - .key = "\x8a\xd4\xee\x10\x2f\xbd\x81\xff" 29368 - "\xf8\x86\xce\xac\x93\xc5\xad\xc6" 29369 - "\xa0\x19\x07\xc0\x9d\xf7\xbb\xdd" 29370 - "\x52\x13\xb2\xb7\xf0\xff\x11\xd8" 29371 - "\xd6\x08\xd0\xcd\x2e\xb1\x17\x6f", 29372 - .klen = 40, 29373 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 29374 - "\x00\x00\x00\x02\x00\x00\x00\x00", 29375 - .input = "\x42\x88\xf4\xcb\x21\x11\x6d\x8e" 29376 - "\xde\x1a\xf2\x29\xf1\x4a\xe0\x15", 29377 - .ilen = 16, 29378 - .result = "\x30\x31\x32\x33\x34\x35\x36\x37" 29379 - "\x38\x39\x41\x42\x43\x44\x45\x46", 29380 - .rlen = 16, 29381 - }, { 29382 - .key = "\xf8\xd4\x76\xff\xd6\x46\xee\x6c" 29383 - "\x23\x84\xcb\x1c\x77\xd6\x19\x5d" 29384 - "\xfe\xf1\xa9\xf3\x7b\xbc\x8d\x21" 29385 - "\xa7\x9c\x21\xf8\xcb\x90\x02\x89" 29386 - "\xa8\x45\x34\x8e\xc8\xc5\xb5\xf1" 29387 - "\x26\xf5\x0e\x76\xfe\xfd\x1b\x1e", 29388 - .klen = 48, 29389 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 29390 - "\x00\x00\x00\x00\x00\x00\x00\x01", 29391 - .input = "\x40\xaa\x34\x86\x4a\x8f\x78\xb9" 29392 - "\xdb\xdb\x0f\x3d\x48\x70\xbe\x8d", 29393 - .ilen = 16, 29394 - .result = "\x30\x31\x32\x33\x34\x35\x36\x37" 29395 - "\x38\x39\x41\x42\x43\x44\x45\x46", 29396 - .rlen = 16, 29397 - }, { 29398 - .key = "\xfb\x76\x15\xb2\x3d\x80\x89\x1d" 29399 - "\xd4\x70\x98\x0b\xc7\x95\x84\xc8" 29400 - "\xb2\xfb\x64\xce\x60\x97\x87\x8d" 29401 - "\x17\xfc\xe4\x5a\x49\xe8\x30\xb7" 29402 - "\x6e\x78\x17\xe7\x2d\x5e\x12\xd4" 29403 - "\x60\x64\x04\x7a\xf1\x2f\x9e\x0c", 29404 - .klen = 48, 29405 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 29406 - "\x00\x00\x00\x02\x00\x00\x00\x00", 29407 - .input = "\x04\xab\x28\x37\x31\x7a\x26\xab" 29408 - "\xa1\x70\x1b\x9c\xe7\xdd\x83\xff", 29409 - .ilen = 16, 29410 - .result = "\x30\x31\x32\x33\x34\x35\x36\x37" 29411 - "\x38\x39\x41\x42\x43\x44\x45\x46", 29412 - .rlen = 16, 29413 - }, { 29414 - .key = "\xf8\xd4\x76\xff\xd6\x46\xee\x6c" 29415 - "\x23\x84\xcb\x1c\x77\xd6\x19\x5d" 29416 - "\xfe\xf1\xa9\xf3\x7b\xbc\x8d\x21" 29417 - "\xa7\x9c\x21\xf8\xcb\x90\x02\x89" 29418 - "\xa8\x45\x34\x8e\xc8\xc5\xb5\xf1" 29419 - "\x26\xf5\x0e\x76\xfe\xfd\x1b\x1e", 29420 - .klen = 48, 29421 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 29422 - "\x00\x00\x00\x00\x00\x00\x00\x01", 29423 - .input = "\x90\x69\x8e\xf2\x14\x86\x59\xf9" 29424 - "\xec\xe7\xfa\x3f\x48\x9d\x7f\x96" 29425 - "\x67\x76\xac\x2c\xd2\x63\x18\x93" 29426 - "\x13\xf8\xf1\xf6\x71\x77\xb3\xee" 29427 - "\x93\xb2\xcc\xf3\x26\xc1\x16\x4f" 29428 - "\xd4\xe8\x43\xc1\x68\xa3\x3e\x06" 29429 - "\x38\x51\xff\xa8\xb9\xa4\xeb\xb1" 29430 - "\x62\xdd\x78\x81\xea\x1d\xef\x04" 29431 - "\x1d\x07\xc1\x67\xc8\xd6\x77\xa1" 29432 - "\x84\x95\xf4\x9a\xd9\xbc\x2d\xe2" 29433 - "\xf6\x80\xfc\x91\x2a\xbc\x42\xa0" 29434 - "\x40\x41\x69\xaa\x71\xc0\x37\xec" 29435 - "\x39\xf3\xf2\xec\x82\xc3\x88\x79" 29436 - "\xbc\xc3\xaa\xb7\xcf\x6a\x72\x80" 29437 - "\x4c\xf4\x84\x8f\x13\x9e\x94\x5c" 29438 - "\xe5\xb2\x91\xbb\x92\x51\x4d\xf1" 29439 - "\xd6\x0d\x71\x6b\x7a\xc2\x2f\x12" 29440 - "\x6f\x75\xc7\x80\x99\x50\x84\xcf" 29441 - "\xa8\xeb\xd6\xe1\x1c\x59\x81\x7e" 29442 - "\xb9\xb3\xde\x7a\x93\x14\x12\xa2" 29443 - "\xf7\x43\xb3\x9d\x1a\x87\x65\x91" 29444 - "\x42\x08\x40\x82\x06\x1c\x2d\x55" 29445 - "\x6e\x48\xd5\x74\x07\x6e\x9d\x80" 29446 - "\xeb\xb4\x97\xa1\x36\xdf\xfa\x74" 29447 - "\x79\x7f\x5a\x75\xe7\x71\xc8\x8c" 29448 - "\x7e\xf8\x3a\x77\xcd\x32\x05\xf9" 29449 - "\x3d\xd4\xe9\xa2\xbb\xc4\x8b\x83" 29450 - "\x42\x5c\x82\xfa\xe9\x4b\x96\x3b" 29451 - "\x7f\x89\x8b\xf9\xf1\x87\xda\xf0" 29452 - "\x87\xef\x13\x5d\xf0\xe2\xc5\xc1" 29453 - "\xed\x14\xa9\x57\x19\x63\x40\x04" 29454 - "\x24\xeb\x6e\x19\xd1\x3d\x70\x78" 29455 - "\xeb\xda\x55\x70\x2c\x4f\x41\x5b" 29456 - "\x56\x9f\x1a\xd3\xac\xf1\xc0\xc3" 29457 - "\x21\xec\xd7\xd2\x55\x32\x7c\x2e" 29458 - "\x3c\x48\x8e\xb4\x85\x35\x47\xfe" 29459 - "\xe2\x88\x79\x98\x6a\xc9\x8d\xff" 29460 - "\xe9\x89\x6e\xb8\xe2\x97\x00\xbd" 29461 - "\xa4\x8f\xba\xd0\x8c\xcb\x79\x99" 29462 - "\xb3\xb2\xb2\x7a\xc3\xb7\xef\x75" 29463 - "\x23\x52\x76\xc3\x50\x6e\x66\xf8" 29464 - "\xa2\xe2\xce\xba\x40\x21\x3f\xc9" 29465 - "\x0a\x32\x7f\xf7\x08\x8c\x66\xcf" 29466 - "\xd3\xdf\x57\x59\x83\xb8\xe1\x85" 29467 - "\xd6\x8f\xfb\x48\x1f\x3a\xc4\x2f" 29468 - "\xb4\x2d\x58\xab\xd8\x7f\x5e\x3a" 29469 - "\xbc\x62\x3e\xe2\x6a\x52\x0d\x76" 29470 - "\x2f\x1c\x1a\x30\xed\x95\x2a\x44" 29471 - "\x35\xa5\x83\x04\x84\x01\x99\x56" 29472 - "\xb7\xe3\x10\x96\xfa\xdc\x19\xdd" 29473 - "\xe2\x7f\xcb\xa0\x49\x1b\xff\x4c" 29474 - "\x73\xf6\xbb\x94\x00\xe8\xa9\x3d" 29475 - "\xe2\x20\xe9\x3f\xfa\x07\x5d\x77" 29476 - "\x06\xd5\x4f\x4d\x02\xb8\x40\x1b" 29477 - "\x30\xed\x1a\x50\x19\xef\xc4\x2c" 29478 - "\x02\xd9\xc5\xd3\x11\x33\x37\xe5" 29479 - "\x2b\xa3\x95\xa6\xee\xd8\x74\x1d" 29480 - "\x68\xa0\xeb\xbf\xdd\x5e\x99\x96" 29481 - "\x91\xc3\x94\x24\xa5\x12\xa2\x37" 29482 - "\xb3\xac\xcf\x2a\xfd\x55\x34\xfe" 29483 - "\x79\x92\x3e\xe6\x1b\x49\x57\x5d" 29484 - "\x93\x6c\x01\xf7\xcc\x4e\x20\xd1" 29485 - "\xb2\x1a\xd8\x4c\xbd\x1d\x10\xe9" 29486 - "\x5a\xa8\x92\x7f\xba\xe6\x0c\x95", 29487 - .ilen = 512, 29488 - .result = "\x05\x11\xb7\x18\xab\xc6\x2d\xac" 29489 - "\x70\x5d\xf6\x22\x94\xcd\xe5\x6c" 29490 - "\x17\x6b\xf6\x1c\xf0\xf3\x6e\xf8" 29491 - "\x50\x38\x1f\x71\x49\xb6\x57\xd6" 29492 - "\x8f\xcb\x8d\x6b\xe3\xa6\x29\x90" 29493 - "\xfe\x2a\x62\x82\xae\x6d\x8b\xf6" 29494 - "\xad\x1e\x9e\x20\x5f\x38\xbe\x04" 29495 - "\xda\x10\x8e\xed\xa2\xa4\x87\xab" 29496 - "\xda\x6b\xb4\x0c\x75\xba\xd3\x7c" 29497 - "\xc9\xac\x42\x31\x95\x7c\xc9\x04" 29498 - "\xeb\xd5\x6e\x32\x69\x8a\xdb\xa6" 29499 - "\x15\xd7\x3f\x4f\x2f\x66\x69\x03" 29500 - "\x9c\x1f\x54\x0f\xde\x1f\xf3\x65" 29501 - "\x4c\x96\x12\xed\x7c\x92\x03\x01" 29502 - "\x6f\xbc\x35\x93\xac\xf1\x27\xf1" 29503 - "\xb4\x96\x82\x5a\x5f\xb0\xa0\x50" 29504 - "\x89\xa4\x8e\x66\x44\x85\xcc\xfd" 29505 - "\x33\x14\x70\xe3\x96\xb2\xc3\xd3" 29506 - "\xbb\x54\x5a\x1a\xf9\x74\xa2\xc5" 29507 - "\x2d\x64\x75\xdd\xb4\x54\xe6\x74" 29508 - "\x8c\xd3\x9d\x9e\x86\xab\x51\x53" 29509 - "\xb7\x93\x3e\x6f\xd0\x4e\x2c\x40" 29510 - "\xf6\xa8\x2e\x3e\x9d\xf4\x66\xa5" 29511 - "\x76\x12\x73\x44\x1a\x56\xd7\x72" 29512 - "\x88\xcd\x21\x8c\x4c\x0f\xfe\xda" 29513 - "\x95\xe0\x3a\xa6\xa5\x84\x46\xcd" 29514 - "\xd5\x3e\x9d\x3a\xe2\x67\xe6\x60" 29515 - "\x1a\xe2\x70\x85\x58\xc2\x1b\x09" 29516 - "\xe1\xd7\x2c\xca\xad\xa8\x8f\xf9" 29517 - "\xac\xb3\x0e\xdb\xca\x2e\xe2\xb8" 29518 - "\x51\x71\xd9\x3c\x6c\xf1\x56\xf8" 29519 - "\xea\x9c\xf1\xfb\x0c\xe6\xb7\x10" 29520 - "\x1c\xf8\xa9\x7c\xe8\x53\x35\xc1" 29521 - "\x90\x3e\x76\x4a\x74\xa4\x21\x2c" 29522 - "\xf6\x2c\x4e\x0f\x94\x3a\x88\x2e" 29523 - "\x41\x09\x6a\x33\x7d\xf6\xdd\x3f" 29524 - "\x8d\x23\x31\x74\x84\xeb\x88\x6e" 29525 - "\xcc\xb9\xbc\x22\x83\x19\x07\x22" 29526 - "\xa5\x2d\xdf\xa5\xf3\x80\x85\x78" 29527 - "\x84\x39\x6a\x6d\x6a\x99\x4f\xa5" 29528 - "\x15\xfe\x46\xb0\xe4\x6c\xa5\x41" 29529 - "\x3c\xce\x8f\x42\x60\x71\xa7\x75" 29530 - "\x08\x40\x65\x8a\x82\xbf\xf5\x43" 29531 - "\x71\x96\xa9\x4d\x44\x8a\x20\xbe" 29532 - "\xfa\x4d\xbb\xc0\x7d\x31\x96\x65" 29533 - "\xe7\x75\xe5\x3e\xfd\x92\x3b\xc9" 29534 - "\x55\xbb\x16\x7e\xf7\xc2\x8c\xa4" 29535 - "\x40\x1d\xe5\xef\x0e\xdf\xe4\x9a" 29536 - "\x62\x73\x65\xfd\x46\x63\x25\x3d" 29537 - "\x2b\xaf\xe5\x64\xfe\xa5\x5c\xcf" 29538 - "\x24\xf3\xb4\xac\x64\xba\xdf\x4b" 29539 - "\xc6\x96\x7d\x81\x2d\x8d\x97\xf7" 29540 - "\xc5\x68\x77\x84\x32\x2b\xcc\x85" 29541 - "\x74\x96\xf0\x12\x77\x61\xb9\xeb" 29542 - "\x71\xaa\x82\xcb\x1c\xdb\x89\xc8" 29543 - "\xc6\xb5\xe3\x5c\x7d\x39\x07\x24" 29544 - "\xda\x39\x87\x45\xc0\x2b\xbb\x01" 29545 - "\xac\xbc\x2a\x5c\x7f\xfc\xe8\xce" 29546 - "\x6d\x9c\x6f\xed\xd3\xc1\xa1\xd6" 29547 - "\xc5\x55\xa9\x66\x2f\xe1\xc8\x32" 29548 - "\xa6\x5d\xa4\x3a\x98\x73\xe8\x45" 29549 - "\xa4\xc7\xa8\xb4\xf6\x13\x03\xf6" 29550 - "\xe9\x2e\xc4\x29\x0f\x84\xdb\xc4" 29551 - "\x21\xc4\xc2\x75\x67\x89\x37\x0a", 29552 - .rlen = 512, 29553 - .also_non_np = 1, 29554 - .np = 3, 29555 - .tap = { 512 - 20, 4, 16 }, 29556 - }, 29557 - }; 29558 - 29559 - static const struct cipher_testvec camellia_xts_enc_tv_template[] = { 39157 + static const struct cipher_testvec camellia_xts_tv_template[] = { 29560 39158 /* Generated from AES-XTS test vectors */ 29561 39159 { 29562 39160 .key = "\x00\x00\x00\x00\x00\x00\x00\x00" ··· 29313 39417 .klen = 32, 29314 39418 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 29315 39419 "\x00\x00\x00\x00\x00\x00\x00\x00", 29316 - .input = "\x00\x00\x00\x00\x00\x00\x00\x00" 39420 + .ptext = "\x00\x00\x00\x00\x00\x00\x00\x00" 29317 39421 "\x00\x00\x00\x00\x00\x00\x00\x00" 29318 39422 "\x00\x00\x00\x00\x00\x00\x00\x00" 29319 39423 "\x00\x00\x00\x00\x00\x00\x00\x00", 29320 - .ilen = 32, 29321 - .result = "\x06\xcb\xa5\xf1\x04\x63\xb2\x41" 39424 + .ctext = "\x06\xcb\xa5\xf1\x04\x63\xb2\x41" 29322 39425 "\xdc\xca\xfa\x09\xba\x74\xb9\x05" 29323 39426 "\x78\xba\xa4\xf8\x67\x4d\x7e\xad" 29324 39427 "\x20\x18\xf5\x0c\x41\x16\x2a\x61", 29325 - .rlen = 32, 39428 + .len = 32, 29326 39429 }, { 29327 39430 .key = "\x11\x11\x11\x11\x11\x11\x11\x11" 29328 39431 "\x11\x11\x11\x11\x11\x11\x11\x11" ··· 29330 39435 .klen = 32, 29331 39436 .iv = "\x33\x33\x33\x33\x33\x00\x00\x00" 29332 39437 "\x00\x00\x00\x00\x00\x00\x00\x00", 29333 - .input = "\x44\x44\x44\x44\x44\x44\x44\x44" 39438 + .ptext = "\x44\x44\x44\x44\x44\x44\x44\x44" 29334 39439 "\x44\x44\x44\x44\x44\x44\x44\x44" 29335 39440 "\x44\x44\x44\x44\x44\x44\x44\x44" 29336 39441 "\x44\x44\x44\x44\x44\x44\x44\x44", 29337 - .ilen = 32, 29338 - .result = "\xc2\xb9\xdc\x44\x1d\xdf\xf2\x86" 39442 + .ctext = "\xc2\xb9\xdc\x44\x1d\xdf\xf2\x86" 29339 39443 "\x8d\x35\x42\x0a\xa5\x5e\x3d\x4f" 29340 39444 "\xb5\x37\x06\xff\xbd\xd4\x91\x70" 29341 39445 "\x80\x1f\xb2\x39\x10\x89\x44\xf5", 29342 - .rlen = 32, 39446 + .len = 32, 29343 39447 }, { 29344 39448 .key = "\xff\xfe\xfd\xfc\xfb\xfa\xf9\xf8" 29345 39449 "\xf7\xf6\xf5\xf4\xf3\xf2\xf1\xf0" ··· 29347 39453 .klen = 32, 29348 39454 .iv = "\x33\x33\x33\x33\x33\x00\x00\x00" 29349 39455 "\x00\x00\x00\x00\x00\x00\x00\x00", 29350 - .input = "\x44\x44\x44\x44\x44\x44\x44\x44" 39456 + .ptext = "\x44\x44\x44\x44\x44\x44\x44\x44" 29351 39457 "\x44\x44\x44\x44\x44\x44\x44\x44" 29352 39458 "\x44\x44\x44\x44\x44\x44\x44\x44" 29353 39459 "\x44\x44\x44\x44\x44\x44\x44\x44", 29354 - .ilen = 32, 29355 - .result = "\x52\x1f\x9d\xf5\x5a\x58\x5a\x7e" 39460 + .ctext = "\x52\x1f\x9d\xf5\x5a\x58\x5a\x7e" 29356 39461 "\x9f\xd0\x8e\x02\x9c\x9a\x6a\xa7" 29357 39462 "\xb4\x3b\xce\xe7\x17\xaa\x89\x6a" 29358 39463 "\x35\x3c\x6b\xb5\x61\x1c\x79\x38", 29359 - .rlen = 32, 39464 + .len = 32, 29360 39465 }, { 29361 39466 .key = "\x27\x18\x28\x18\x28\x45\x90\x45" 29362 39467 "\x23\x53\x60\x28\x74\x71\x35\x26" ··· 29364 39471 .klen = 32, 29365 39472 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 29366 39473 "\x00\x00\x00\x00\x00\x00\x00\x00", 29367 - .input = "\x00\x01\x02\x03\x04\x05\x06\x07" 39474 + .ptext = "\x00\x01\x02\x03\x04\x05\x06\x07" 29368 39475 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 29369 39476 "\x10\x11\x12\x13\x14\x15\x16\x17" 29370 39477 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" ··· 29428 39535 "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 29429 39536 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 29430 39537 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 29431 - .ilen = 512, 29432 - .result = "\xc7\xf9\x0a\xaa\xcb\xb5\x8f\x33" 39538 + .ctext = "\xc7\xf9\x0a\xaa\xcb\xb5\x8f\x33" 29433 39539 "\x60\xc3\xe9\x47\x90\xb7\x50\x57" 29434 39540 "\xa3\xad\x81\x2f\xf5\x22\x96\x02" 29435 39541 "\xaa\x7f\xea\xac\x29\x78\xca\x2a" ··· 29492 39600 "\xcc\x06\xdb\xe7\x82\x29\x63\xd1" 29493 39601 "\x52\x84\x4f\xee\x27\xe8\x02\xd4" 29494 39602 "\x34\x3c\x69\xc2\xbd\x20\xe6\x7a", 29495 - .rlen = 512, 39603 + .len = 512, 29496 39604 }, { 29497 39605 .key = "\x27\x18\x28\x18\x28\x45\x90\x45" 29498 39606 "\x23\x53\x60\x28\x74\x71\x35\x26" ··· 29505 39613 .klen = 64, 29506 39614 .iv = "\xff\x00\x00\x00\x00\x00\x00\x00" 29507 39615 "\x00\x00\x00\x00\x00\x00\x00\x00", 29508 - .input = "\x00\x01\x02\x03\x04\x05\x06\x07" 39616 + .ptext = "\x00\x01\x02\x03\x04\x05\x06\x07" 29509 39617 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 29510 39618 "\x10\x11\x12\x13\x14\x15\x16\x17" 29511 39619 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" ··· 29569 39677 "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 29570 39678 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 29571 39679 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 29572 - .ilen = 512, 29573 - .result = "\x49\xcd\xb8\xbf\x2f\x73\x37\x28" 39680 + .ctext = "\x49\xcd\xb8\xbf\x2f\x73\x37\x28" 29574 39681 "\x9a\x7f\x6e\x57\x55\xb8\x07\x88" 29575 39682 "\x4a\x0d\x8b\x55\x60\xed\xb6\x7b" 29576 39683 "\xf1\x74\xac\x96\x05\x7b\x32\xca" ··· 29633 39742 "\xb1\x02\x0a\x5c\x79\x19\x3b\x75" 29634 39743 "\xb7\x16\xd8\x12\x5c\xcd\x7d\x4e" 29635 39744 "\xd5\xc6\x99\xcc\x4e\x6c\x94\x95", 29636 - .rlen = 512, 29637 - .also_non_np = 1, 29638 - .np = 3, 29639 - .tap = { 512 - 20, 4, 16 }, 29640 - }, 29641 - }; 29642 - 29643 - static const struct cipher_testvec camellia_xts_dec_tv_template[] = { 29644 - /* Generated from AES-XTS test vectors */ 29645 - /* same as enc vectors with input and result reversed */ 29646 - { 29647 - .key = "\x00\x00\x00\x00\x00\x00\x00\x00" 29648 - "\x00\x00\x00\x00\x00\x00\x00\x00" 29649 - "\x00\x00\x00\x00\x00\x00\x00\x00" 29650 - "\x00\x00\x00\x00\x00\x00\x00\x00", 29651 - .klen = 32, 29652 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 29653 - "\x00\x00\x00\x00\x00\x00\x00\x00", 29654 - .input = "\x06\xcb\xa5\xf1\x04\x63\xb2\x41" 29655 - "\xdc\xca\xfa\x09\xba\x74\xb9\x05" 29656 - "\x78\xba\xa4\xf8\x67\x4d\x7e\xad" 29657 - "\x20\x18\xf5\x0c\x41\x16\x2a\x61", 29658 - .ilen = 32, 29659 - .result = "\x00\x00\x00\x00\x00\x00\x00\x00" 29660 - "\x00\x00\x00\x00\x00\x00\x00\x00" 29661 - "\x00\x00\x00\x00\x00\x00\x00\x00" 29662 - "\x00\x00\x00\x00\x00\x00\x00\x00", 29663 - .rlen = 32, 29664 - }, { 29665 - .key = "\x11\x11\x11\x11\x11\x11\x11\x11" 29666 - "\x11\x11\x11\x11\x11\x11\x11\x11" 29667 - "\x22\x22\x22\x22\x22\x22\x22\x22" 29668 - "\x22\x22\x22\x22\x22\x22\x22\x22", 29669 - .klen = 32, 29670 - .iv = "\x33\x33\x33\x33\x33\x00\x00\x00" 29671 - "\x00\x00\x00\x00\x00\x00\x00\x00", 29672 - .input = "\xc2\xb9\xdc\x44\x1d\xdf\xf2\x86" 29673 - "\x8d\x35\x42\x0a\xa5\x5e\x3d\x4f" 29674 - "\xb5\x37\x06\xff\xbd\xd4\x91\x70" 29675 - "\x80\x1f\xb2\x39\x10\x89\x44\xf5", 29676 - .ilen = 32, 29677 - .result = "\x44\x44\x44\x44\x44\x44\x44\x44" 29678 - "\x44\x44\x44\x44\x44\x44\x44\x44" 29679 - "\x44\x44\x44\x44\x44\x44\x44\x44" 29680 - "\x44\x44\x44\x44\x44\x44\x44\x44", 29681 - .rlen = 32, 29682 - }, { 29683 - .key = "\xff\xfe\xfd\xfc\xfb\xfa\xf9\xf8" 29684 - "\xf7\xf6\xf5\xf4\xf3\xf2\xf1\xf0" 29685 - "\x22\x22\x22\x22\x22\x22\x22\x22" 29686 - "\x22\x22\x22\x22\x22\x22\x22\x22", 29687 - .klen = 32, 29688 - .iv = "\x33\x33\x33\x33\x33\x00\x00\x00" 29689 - "\x00\x00\x00\x00\x00\x00\x00\x00", 29690 - .input = "\x52\x1f\x9d\xf5\x5a\x58\x5a\x7e" 29691 - "\x9f\xd0\x8e\x02\x9c\x9a\x6a\xa7" 29692 - "\xb4\x3b\xce\xe7\x17\xaa\x89\x6a" 29693 - "\x35\x3c\x6b\xb5\x61\x1c\x79\x38", 29694 - .ilen = 32, 29695 - .result = "\x44\x44\x44\x44\x44\x44\x44\x44" 29696 - "\x44\x44\x44\x44\x44\x44\x44\x44" 29697 - "\x44\x44\x44\x44\x44\x44\x44\x44" 29698 - "\x44\x44\x44\x44\x44\x44\x44\x44", 29699 - .rlen = 32, 29700 - }, { 29701 - .key = "\x27\x18\x28\x18\x28\x45\x90\x45" 29702 - "\x23\x53\x60\x28\x74\x71\x35\x26" 29703 - "\x31\x41\x59\x26\x53\x58\x97\x93" 29704 - "\x23\x84\x62\x64\x33\x83\x27\x95", 29705 - .klen = 32, 29706 - .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 29707 - "\x00\x00\x00\x00\x00\x00\x00\x00", 29708 - .input = "\xc7\xf9\x0a\xaa\xcb\xb5\x8f\x33" 29709 - "\x60\xc3\xe9\x47\x90\xb7\x50\x57" 29710 - "\xa3\xad\x81\x2f\xf5\x22\x96\x02" 29711 - "\xaa\x7f\xea\xac\x29\x78\xca\x2a" 29712 - "\x7c\xcd\x31\x1a\x3c\x40\x0a\x73" 29713 - "\x09\x66\xad\x72\x0e\x4d\x5d\x77" 29714 - "\xbc\xb8\x76\x80\x37\x59\xa9\x01" 29715 - "\x9e\xfb\xdb\x6c\x93\xef\xb6\x8d" 29716 - "\x1e\xc1\x94\xa8\xd4\xb5\xb0\x01" 29717 - "\xd5\x01\x97\x28\xcd\x7a\x1f\xe8" 29718 - "\x08\xda\x76\x00\x65\xcf\x7b\x31" 29719 - "\xc6\xfa\xf2\x3b\x00\xa7\x6a\x9e" 29720 - "\x6c\x43\x80\x87\xe0\xbb\x4e\xe5" 29721 - "\xdc\x8a\xdf\xc3\x1d\x1b\x41\x04" 29722 - "\xfb\x54\xdd\x29\x27\xc2\x65\x17" 29723 - "\x36\x88\xb0\x85\x8d\x73\x7e\x4b" 29724 - "\x1d\x16\x8a\x52\xbc\xa6\xbc\xa4" 29725 - "\x8c\xd1\x04\x16\xbf\x8c\x01\x0f" 29726 - "\x7e\x6b\x59\x15\x29\xd1\x9b\xd3" 29727 - "\x6c\xee\xac\xdc\x45\x58\xca\x5b" 29728 - "\x70\x0e\x6a\x12\x86\x82\x79\x9f" 29729 - "\x16\xd4\x9d\x67\xcd\x70\x65\x26" 29730 - "\x21\x72\x1e\xa1\x94\x8a\x83\x0c" 29731 - "\x92\x42\x58\x5e\xa2\xc5\x31\xf3" 29732 - "\x7b\xd1\x31\xd4\x15\x80\x31\x61" 29733 - "\x5c\x53\x10\xdd\xea\xc8\x83\x5c" 29734 - "\x7d\xa7\x05\x66\xcc\x1e\xbb\x05" 29735 - "\x47\xae\xb4\x0f\x84\xd8\xf6\xb5" 29736 - "\xa1\xc6\x52\x00\x52\xe8\xdc\xd9" 29737 - "\x16\x31\xb2\x47\x91\x67\xaa\x28" 29738 - "\x2c\x29\x85\xa3\xf7\xf2\x24\x93" 29739 - "\x23\x80\x1f\xa8\x1b\x82\x8d\xdc" 29740 - "\x9f\x0b\xcd\xb4\x3c\x20\xbc\xec" 29741 - "\x4f\xc7\xee\xf8\xfd\xd9\xfb\x7e" 29742 - "\x3f\x0d\x23\xfa\x3f\xa7\xcc\x66" 29743 - "\x1c\xfe\xa6\x86\xf6\xf7\x85\xc7" 29744 - "\x43\xc1\xd4\xfc\xe4\x79\xc9\x1d" 29745 - "\xf8\x89\xcd\x20\x27\x84\x5d\x5c" 29746 - "\x8e\x4f\x1f\xeb\x08\x21\x4f\xa3" 29747 - "\xe0\x7e\x0b\x9c\xe7\x42\xcf\xb7" 29748 - "\x3f\x43\xcc\x86\x71\x34\x6a\xd9" 29749 - "\x5e\xec\x8f\x36\xc9\x0a\x03\xfe" 29750 - "\x18\x41\xdc\x9e\x2e\x75\x20\x3e" 29751 - "\xcc\x77\xe0\x8f\xe8\x43\x37\x4c" 29752 - "\xed\x1a\x5a\xb3\xfa\x43\xc9\x71" 29753 - "\x9f\xc5\xce\xcf\xff\xe7\x77\x1e" 29754 - "\x35\x93\xde\x6b\xc0\x6a\x7e\xa9" 29755 - "\x34\xb8\x27\x74\x08\xda\xf2\x4a" 29756 - "\x23\x5b\x9f\x55\x3a\x57\x82\x52" 29757 - "\xea\x6d\xc3\xc7\xf2\xc8\xb5\xdc" 29758 - "\xc5\xb9\xbb\xaa\xf2\x29\x9f\x49" 29759 - "\x7a\xef\xfe\xdc\x9f\xc9\x28\xe2" 29760 - "\x96\x0b\x35\x84\x05\x0d\xd6\x2a" 29761 - "\xea\x5a\xbf\x69\xde\xee\x4f\x8f" 29762 - "\x84\xb9\xcf\xa7\x57\xea\xe0\xe8" 29763 - "\x96\xef\x0f\x0e\xec\xc7\xa6\x74" 29764 - "\xb1\xfe\x7a\x6d\x11\xdd\x0e\x15" 29765 - "\x4a\x1e\x73\x7f\x55\xea\xf6\xe1" 29766 - "\x5b\xb6\x71\xda\xb0\x0c\xba\x26" 29767 - "\x5c\x48\x38\x6d\x1c\x32\xb2\x7d" 29768 - "\x05\x87\xc2\x1e\x7e\x2d\xd4\x33" 29769 - "\xcc\x06\xdb\xe7\x82\x29\x63\xd1" 29770 - "\x52\x84\x4f\xee\x27\xe8\x02\xd4" 29771 - "\x34\x3c\x69\xc2\xbd\x20\xe6\x7a", 29772 - .ilen = 512, 29773 - .result = "\x00\x01\x02\x03\x04\x05\x06\x07" 29774 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 29775 - "\x10\x11\x12\x13\x14\x15\x16\x17" 29776 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" 29777 - "\x20\x21\x22\x23\x24\x25\x26\x27" 29778 - "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f" 29779 - "\x30\x31\x32\x33\x34\x35\x36\x37" 29780 - "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f" 29781 - "\x40\x41\x42\x43\x44\x45\x46\x47" 29782 - "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f" 29783 - "\x50\x51\x52\x53\x54\x55\x56\x57" 29784 - "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f" 29785 - "\x60\x61\x62\x63\x64\x65\x66\x67" 29786 - "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f" 29787 - "\x70\x71\x72\x73\x74\x75\x76\x77" 29788 - "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f" 29789 - "\x80\x81\x82\x83\x84\x85\x86\x87" 29790 - "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f" 29791 - "\x90\x91\x92\x93\x94\x95\x96\x97" 29792 - "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f" 29793 - "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7" 29794 - "\xa8\xa9\xaa\xab\xac\xad\xae\xaf" 29795 - "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7" 29796 - "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf" 29797 - "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7" 29798 - "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf" 29799 - "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7" 29800 - "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf" 29801 - "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7" 29802 - "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 29803 - "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 29804 - "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff" 29805 - "\x00\x01\x02\x03\x04\x05\x06\x07" 29806 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 29807 - "\x10\x11\x12\x13\x14\x15\x16\x17" 29808 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" 29809 - "\x20\x21\x22\x23\x24\x25\x26\x27" 29810 - "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f" 29811 - "\x30\x31\x32\x33\x34\x35\x36\x37" 29812 - "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f" 29813 - "\x40\x41\x42\x43\x44\x45\x46\x47" 29814 - "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f" 29815 - "\x50\x51\x52\x53\x54\x55\x56\x57" 29816 - "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f" 29817 - "\x60\x61\x62\x63\x64\x65\x66\x67" 29818 - "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f" 29819 - "\x70\x71\x72\x73\x74\x75\x76\x77" 29820 - "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f" 29821 - "\x80\x81\x82\x83\x84\x85\x86\x87" 29822 - "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f" 29823 - "\x90\x91\x92\x93\x94\x95\x96\x97" 29824 - "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f" 29825 - "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7" 29826 - "\xa8\xa9\xaa\xab\xac\xad\xae\xaf" 29827 - "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7" 29828 - "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf" 29829 - "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7" 29830 - "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf" 29831 - "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7" 29832 - "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf" 29833 - "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7" 29834 - "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 29835 - "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 29836 - "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 29837 - .rlen = 512, 29838 - }, { 29839 - .key = "\x27\x18\x28\x18\x28\x45\x90\x45" 29840 - "\x23\x53\x60\x28\x74\x71\x35\x26" 29841 - "\x62\x49\x77\x57\x24\x70\x93\x69" 29842 - "\x99\x59\x57\x49\x66\x96\x76\x27" 29843 - "\x31\x41\x59\x26\x53\x58\x97\x93" 29844 - "\x23\x84\x62\x64\x33\x83\x27\x95" 29845 - "\x02\x88\x41\x97\x16\x93\x99\x37" 29846 - "\x51\x05\x82\x09\x74\x94\x45\x92", 29847 - .klen = 64, 29848 - .iv = "\xff\x00\x00\x00\x00\x00\x00\x00" 29849 - "\x00\x00\x00\x00\x00\x00\x00\x00", 29850 - .input = "\x49\xcd\xb8\xbf\x2f\x73\x37\x28" 29851 - "\x9a\x7f\x6e\x57\x55\xb8\x07\x88" 29852 - "\x4a\x0d\x8b\x55\x60\xed\xb6\x7b" 29853 - "\xf1\x74\xac\x96\x05\x7b\x32\xca" 29854 - "\xd1\x4e\xf1\x58\x29\x16\x24\x6c" 29855 - "\xf2\xb3\xe4\x88\x84\xac\x4d\xee" 29856 - "\x97\x07\x82\xf0\x07\x12\x38\x0a" 29857 - "\x67\x62\xaf\xfd\x85\x9f\x0a\x55" 29858 - "\xa5\x20\xc5\x60\xe4\x68\x53\xa4" 29859 - "\x0e\x2e\x65\xe3\xe4\x0c\x30\x7c" 29860 - "\x1c\x01\x4f\x55\xa9\x13\xeb\x25" 29861 - "\x21\x87\xbc\xd3\xe7\x67\x4f\x38" 29862 - "\xa8\x14\x25\x71\xe9\x2e\x4c\x21" 29863 - "\x41\x82\x0c\x45\x39\x35\xa8\x75" 29864 - "\x03\x29\x01\x84\x8c\xab\x48\xbe" 29865 - "\x11\x56\x22\x67\xb7\x67\x1a\x09" 29866 - "\xa1\x72\x25\x41\x3c\x39\x65\x80" 29867 - "\x7d\x2f\xf8\x2c\x73\x04\x58\x9d" 29868 - "\xdd\x16\x8b\x63\x70\x4e\xc5\x17" 29869 - "\x21\xe0\x84\x51\x4b\x6f\x05\x52" 29870 - "\xe3\x63\x34\xfa\xa4\xaf\x33\x20" 29871 - "\xc1\xae\x32\xc4\xb8\x2b\xdb\x76" 29872 - "\xd9\x02\x31\x2f\xa3\xc6\xd0\x7b" 29873 - "\xaf\x1b\x84\xe3\x9b\xbf\xa6\xe0" 29874 - "\xb8\x8a\x13\x88\x71\xf4\x11\xa5" 29875 - "\xe9\xa9\x10\x33\xe0\xbe\x49\x89" 29876 - "\x41\x22\xf5\x9d\x80\x3e\x3b\x76" 29877 - "\x01\x16\x50\x6e\x7c\x6a\x81\xe9" 29878 - "\x13\x2c\xde\xb2\x5f\x79\xba\xb2" 29879 - "\xb1\x75\xae\xd2\x07\x98\x4b\x69" 29880 - "\xae\x7d\x5b\x90\xc2\x6c\xe6\x98" 29881 - "\xd3\x4c\xa1\xa3\x9c\xc9\x33\x6a" 29882 - "\x0d\x23\xb1\x79\x25\x13\x4b\xe5" 29883 - "\xaf\x93\x20\x5c\x7f\x06\x7a\x34" 29884 - "\x0b\x78\xe3\x67\x26\xe0\xad\x95" 29885 - "\xc5\x4e\x26\x22\xcf\x73\x77\x62" 29886 - "\x3e\x10\xd7\x90\x4b\x52\x1c\xc9" 29887 - "\xef\x38\x52\x18\x0e\x29\x7e\xef" 29888 - "\x34\xfe\x31\x95\xc5\xbc\xa8\xe2" 29889 - "\xa8\x4e\x9f\xea\xa6\xf0\xfe\x5d" 29890 - "\xc5\x39\x86\xed\x2f\x6d\xa0\xfe" 29891 - "\x96\xcd\x41\x10\x78\x4e\x0c\xc9" 29892 - "\xc3\x6d\x0f\xb7\xe8\xe0\x62\xab" 29893 - "\x8b\xf1\x21\x89\xa1\x12\xaa\xfa" 29894 - "\x9d\x70\xbe\x4c\xa8\x98\x89\x01" 29895 - "\xb9\xe2\x61\xde\x0c\x4a\x0b\xaa" 29896 - "\x89\xf5\x14\x79\x18\x8f\x3b\x0d" 29897 - "\x21\x17\xf8\x59\x15\x24\x64\x22" 29898 - "\x57\x48\x80\xd5\x3d\x92\x30\x07" 29899 - "\xd9\xa1\x4a\x23\x16\x43\x48\x0e" 29900 - "\x2b\x2d\x1b\x87\xef\x7e\xbd\xfa" 29901 - "\x49\xbc\x7e\x68\x6e\xa8\x46\x95" 29902 - "\xad\x5e\xfe\x0a\xa8\xd3\x1a\x5d" 29903 - "\x6b\x84\xf3\x00\xba\x52\x05\x02" 29904 - "\xe3\x96\x4e\xb6\x79\x3f\x43\xd3" 29905 - "\x4d\x3f\xd6\xab\x0a\xc4\x75\x2d" 29906 - "\xd1\x08\xc3\x6a\xc8\x37\x29\xa0" 29907 - "\xcc\x9a\x05\xdd\x5c\xe1\xff\x66" 29908 - "\xf2\x7a\x1d\xf2\xaf\xa9\x48\x89" 29909 - "\xf5\x21\x0f\x02\x48\x83\x74\xbf" 29910 - "\x2e\xe6\x93\x7b\xa0\xf4\xb1\x2b" 29911 - "\xb1\x02\x0a\x5c\x79\x19\x3b\x75" 29912 - "\xb7\x16\xd8\x12\x5c\xcd\x7d\x4e" 29913 - "\xd5\xc6\x99\xcc\x4e\x6c\x94\x95", 29914 - .ilen = 512, 29915 - .result = "\x00\x01\x02\x03\x04\x05\x06\x07" 29916 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 29917 - "\x10\x11\x12\x13\x14\x15\x16\x17" 29918 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" 29919 - "\x20\x21\x22\x23\x24\x25\x26\x27" 29920 - "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f" 29921 - "\x30\x31\x32\x33\x34\x35\x36\x37" 29922 - "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f" 29923 - "\x40\x41\x42\x43\x44\x45\x46\x47" 29924 - "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f" 29925 - "\x50\x51\x52\x53\x54\x55\x56\x57" 29926 - "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f" 29927 - "\x60\x61\x62\x63\x64\x65\x66\x67" 29928 - "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f" 29929 - "\x70\x71\x72\x73\x74\x75\x76\x77" 29930 - "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f" 29931 - "\x80\x81\x82\x83\x84\x85\x86\x87" 29932 - "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f" 29933 - "\x90\x91\x92\x93\x94\x95\x96\x97" 29934 - "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f" 29935 - "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7" 29936 - "\xa8\xa9\xaa\xab\xac\xad\xae\xaf" 29937 - "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7" 29938 - "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf" 29939 - "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7" 29940 - "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf" 29941 - "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7" 29942 - "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf" 29943 - "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7" 29944 - "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 29945 - "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 29946 - "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff" 29947 - "\x00\x01\x02\x03\x04\x05\x06\x07" 29948 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 29949 - "\x10\x11\x12\x13\x14\x15\x16\x17" 29950 - "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" 29951 - "\x20\x21\x22\x23\x24\x25\x26\x27" 29952 - "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f" 29953 - "\x30\x31\x32\x33\x34\x35\x36\x37" 29954 - "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f" 29955 - "\x40\x41\x42\x43\x44\x45\x46\x47" 29956 - "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f" 29957 - "\x50\x51\x52\x53\x54\x55\x56\x57" 29958 - "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f" 29959 - "\x60\x61\x62\x63\x64\x65\x66\x67" 29960 - "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f" 29961 - "\x70\x71\x72\x73\x74\x75\x76\x77" 29962 - "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f" 29963 - "\x80\x81\x82\x83\x84\x85\x86\x87" 29964 - "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f" 29965 - "\x90\x91\x92\x93\x94\x95\x96\x97" 29966 - "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f" 29967 - "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7" 29968 - "\xa8\xa9\xaa\xab\xac\xad\xae\xaf" 29969 - "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7" 29970 - "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf" 29971 - "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7" 29972 - "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf" 29973 - "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7" 29974 - "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf" 29975 - "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7" 29976 - "\xe8\xe9\xea\xeb\xec\xed\xee\xef" 29977 - "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7" 29978 - "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 29979 - .rlen = 512, 39745 + .len = 512, 29980 39746 .also_non_np = 1, 29981 39747 .np = 3, 29982 39748 .tap = { 512 - 20, 4, 16 }, ··· 29643 40095 /* 29644 40096 * SEED test vectors 29645 40097 */ 29646 - static const struct cipher_testvec seed_enc_tv_template[] = { 40098 + static const struct cipher_testvec seed_tv_template[] = { 29647 40099 { 29648 40100 .key = zeroed_string, 29649 40101 .klen = 16, 29650 - .input = "\x00\x01\x02\x03\x04\x05\x06\x07" 40102 + .ptext = "\x00\x01\x02\x03\x04\x05\x06\x07" 29651 40103 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f", 29652 - .ilen = 16, 29653 - .result = "\x5e\xba\xc6\xe0\x05\x4e\x16\x68" 40104 + .ctext = "\x5e\xba\xc6\xe0\x05\x4e\x16\x68" 29654 40105 "\x19\xaf\xf1\xcc\x6d\x34\x6c\xdb", 29655 - .rlen = 16, 40106 + .len = 16, 29656 40107 }, { 29657 40108 .key = "\x00\x01\x02\x03\x04\x05\x06\x07" 29658 40109 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f", 29659 40110 .klen = 16, 29660 - .input = zeroed_string, 29661 - .ilen = 16, 29662 - .result = "\xc1\x1f\x22\xf2\x01\x40\x50\x50" 40111 + .ptext = zeroed_string, 40112 + .ctext = "\xc1\x1f\x22\xf2\x01\x40\x50\x50" 29663 40113 "\x84\x48\x35\x97\xe4\x37\x0f\x43", 29664 - .rlen = 16, 40114 + .len = 16, 29665 40115 }, { 29666 40116 .key = "\x47\x06\x48\x08\x51\xe6\x1b\xe8" 29667 40117 "\x5d\x74\xbf\xb3\xfd\x95\x61\x85", 29668 40118 .klen = 16, 29669 - .input = "\x83\xa2\xf8\xa2\x88\x64\x1f\xb9" 40119 + .ptext = "\x83\xa2\xf8\xa2\x88\x64\x1f\xb9" 29670 40120 "\xa4\xe9\xa5\xcc\x2f\x13\x1c\x7d", 29671 - .ilen = 16, 29672 - .result = "\xee\x54\xd1\x3e\xbc\xae\x70\x6d" 40121 + .ctext = "\xee\x54\xd1\x3e\xbc\xae\x70\x6d" 29673 40122 "\x22\x6b\xc3\x14\x2c\xd4\x0d\x4a", 29674 - .rlen = 16, 40123 + .len = 16, 29675 40124 }, { 29676 40125 .key = "\x28\xdb\xc3\xbc\x49\xff\xd8\x7d" 29677 40126 "\xcf\xa5\x09\xb1\x1d\x42\x2b\xe7", 29678 40127 .klen = 16, 29679 - .input = "\xb4\x1e\x6b\xe2\xeb\xa8\x4a\x14" 40128 + .ptext = "\xb4\x1e\x6b\xe2\xeb\xa8\x4a\x14" 29680 40129 "\x8e\x2e\xed\x84\x59\x3c\x5e\xc7", 29681 - .ilen = 16, 29682 - .result = "\x9b\x9b\x7b\xfc\xd1\x81\x3c\xb9" 40130 + .ctext = "\x9b\x9b\x7b\xfc\xd1\x81\x3c\xb9" 29683 40131 "\x5d\x0b\x36\x18\xf4\x0f\x51\x22", 29684 - .rlen = 16, 40132 + .len = 16, 29685 40133 } 29686 40134 }; 29687 40135 29688 - static const struct cipher_testvec seed_dec_tv_template[] = { 29689 - { 29690 - .key = zeroed_string, 29691 - .klen = 16, 29692 - .input = "\x5e\xba\xc6\xe0\x05\x4e\x16\x68" 29693 - "\x19\xaf\xf1\xcc\x6d\x34\x6c\xdb", 29694 - .ilen = 16, 29695 - .result = "\x00\x01\x02\x03\x04\x05\x06\x07" 29696 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f", 29697 - .rlen = 16, 29698 - }, { 29699 - .key = "\x00\x01\x02\x03\x04\x05\x06\x07" 29700 - "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f", 29701 - .klen = 16, 29702 - .input = "\xc1\x1f\x22\xf2\x01\x40\x50\x50" 29703 - "\x84\x48\x35\x97\xe4\x37\x0f\x43", 29704 - .ilen = 16, 29705 - .result = zeroed_string, 29706 - .rlen = 16, 29707 - }, { 29708 - .key = "\x47\x06\x48\x08\x51\xe6\x1b\xe8" 29709 - "\x5d\x74\xbf\xb3\xfd\x95\x61\x85", 29710 - .klen = 16, 29711 - .input = "\xee\x54\xd1\x3e\xbc\xae\x70\x6d" 29712 - "\x22\x6b\xc3\x14\x2c\xd4\x0d\x4a", 29713 - .ilen = 16, 29714 - .result = "\x83\xa2\xf8\xa2\x88\x64\x1f\xb9" 29715 - "\xa4\xe9\xa5\xcc\x2f\x13\x1c\x7d", 29716 - .rlen = 16, 29717 - }, { 29718 - .key = "\x28\xdb\xc3\xbc\x49\xff\xd8\x7d" 29719 - "\xcf\xa5\x09\xb1\x1d\x42\x2b\xe7", 29720 - .klen = 16, 29721 - .input = "\x9b\x9b\x7b\xfc\xd1\x81\x3c\xb9" 29722 - "\x5d\x0b\x36\x18\xf4\x0f\x51\x22", 29723 - .ilen = 16, 29724 - .result = "\xb4\x1e\x6b\xe2\xeb\xa8\x4a\x14" 29725 - "\x8e\x2e\xed\x84\x59\x3c\x5e\xc7", 29726 - .rlen = 16, 29727 - } 29728 - }; 29729 - 29730 - static const struct cipher_testvec salsa20_stream_enc_tv_template[] = { 40136 + static const struct cipher_testvec salsa20_stream_tv_template[] = { 29731 40137 /* 29732 40138 * Testvectors from verified.test-vectors submitted to ECRYPT. 29733 40139 * They are truncated to size 39, 64, 111, 129 to test a variety ··· 29692 40190 "\x08\x09\x0A\x0B\x0C\x0D\x0E\x0F", 29693 40191 .klen = 16, 29694 40192 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00", 29695 - .input = "\x00\x00\x00\x00\x00\x00\x00\x00" 40193 + .ptext = "\x00\x00\x00\x00\x00\x00\x00\x00" 29696 40194 "\x00\x00\x00\x00\x00\x00\x00\x00" 29697 40195 "\x00\x00\x00\x00\x00\x00\x00\x00" 29698 40196 "\x00\x00\x00\x00\x00\x00\x00\x00" 29699 40197 "\x00\x00\x00\x00\x00\x00\x00", 29700 - .ilen = 39, 29701 - .result = "\x2D\xD5\xC3\xF7\xBA\x2B\x20\xF7" 40198 + .ctext = "\x2D\xD5\xC3\xF7\xBA\x2B\x20\xF7" 29702 40199 "\x68\x02\x41\x0C\x68\x86\x88\x89" 29703 40200 "\x5A\xD8\xC1\xBD\x4E\xA6\xC9\xB1" 29704 40201 "\x40\xFB\x9B\x90\xE2\x10\x49\xBF" 29705 40202 "\x58\x3F\x52\x79\x70\xEB\xC1", 29706 - .rlen = 39, 40203 + .len = 39, 29707 40204 }, { /* Set 5, vector 0 */ 29708 40205 .key = "\x00\x00\x00\x00\x00\x00\x00\x00" 29709 40206 "\x00\x00\x00\x00\x00\x00\x00\x00", 29710 40207 .klen = 16, 29711 40208 .iv = "\x80\x00\x00\x00\x00\x00\x00\x00", 29712 - .input = "\x00\x00\x00\x00\x00\x00\x00\x00" 40209 + .ptext = "\x00\x00\x00\x00\x00\x00\x00\x00" 29713 40210 "\x00\x00\x00\x00\x00\x00\x00\x00" 29714 40211 "\x00\x00\x00\x00\x00\x00\x00\x00" 29715 40212 "\x00\x00\x00\x00\x00\x00\x00\x00" ··· 29716 40215 "\x00\x00\x00\x00\x00\x00\x00\x00" 29717 40216 "\x00\x00\x00\x00\x00\x00\x00\x00" 29718 40217 "\x00\x00\x00\x00\x00\x00\x00\x00", 29719 - .ilen = 64, 29720 - .result = "\xB6\x6C\x1E\x44\x46\xDD\x95\x57" 40218 + .ctext = "\xB6\x6C\x1E\x44\x46\xDD\x95\x57" 29721 40219 "\xE5\x78\xE2\x23\xB0\xB7\x68\x01" 29722 40220 "\x7B\x23\xB2\x67\xBB\x02\x34\xAE" 29723 40221 "\x46\x26\xBF\x44\x3F\x21\x97\x76" ··· 29724 40224 "\xCD\x0D\xE9\xA9\x53\x8F\x4A\x09" 29725 40225 "\xCA\x9A\xC0\x73\x2E\x30\xBC\xF9" 29726 40226 "\x8E\x4F\x13\xE4\xB9\xE2\x01\xD9", 29727 - .rlen = 64, 40227 + .len = 64, 29728 40228 }, { /* Set 3, vector 27 */ 29729 40229 .key = "\x1B\x1C\x1D\x1E\x1F\x20\x21\x22" 29730 40230 "\x23\x24\x25\x26\x27\x28\x29\x2A" ··· 29732 40232 "\x33\x34\x35\x36\x37\x38\x39\x3A", 29733 40233 .klen = 32, 29734 40234 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00", 29735 - .input = "\x00\x00\x00\x00\x00\x00\x00\x00" 40235 + .ptext = "\x00\x00\x00\x00\x00\x00\x00\x00" 29736 40236 "\x00\x00\x00\x00\x00\x00\x00\x00" 29737 40237 "\x00\x00\x00\x00\x00\x00\x00\x00" 29738 40238 "\x00\x00\x00\x00\x00\x00\x00\x00" ··· 29746 40246 "\x00\x00\x00\x00\x00\x00\x00\x00" 29747 40247 "\x00\x00\x00\x00\x00\x00\x00\x00" 29748 40248 "\x00\x00\x00\x00\x00\x00\x00", 29749 - .ilen = 111, 29750 - .result = "\xAE\x39\x50\x8E\xAC\x9A\xEC\xE7" 40249 + .ctext = "\xAE\x39\x50\x8E\xAC\x9A\xEC\xE7" 29751 40250 "\xBF\x97\xBB\x20\xB9\xDE\xE4\x1F" 29752 40251 "\x87\xD9\x47\xF8\x28\x91\x35\x98" 29753 40252 "\xDB\x72\xCC\x23\x29\x48\x56\x5E" ··· 29760 40261 "\xB1\x41\x3F\x19\x2F\xC4\x3B\xC6" 29761 40262 "\x95\x46\x45\x54\xE9\x75\x03\x08" 29762 40263 "\x44\xAF\xE5\x8A\x81\x12\x09", 29763 - .rlen = 111, 40264 + .len = 111, 29764 40265 }, { /* Set 5, vector 27 */ 29765 40266 .key = "\x00\x00\x00\x00\x00\x00\x00\x00" 29766 40267 "\x00\x00\x00\x00\x00\x00\x00\x00" ··· 29768 40269 "\x00\x00\x00\x00\x00\x00\x00\x00", 29769 40270 .klen = 32, 29770 40271 .iv = "\x00\x00\x00\x10\x00\x00\x00\x00", 29771 - .input = "\x00\x00\x00\x00\x00\x00\x00\x00" 40272 + .ptext = "\x00\x00\x00\x00\x00\x00\x00\x00" 29772 40273 "\x00\x00\x00\x00\x00\x00\x00\x00" 29773 40274 "\x00\x00\x00\x00\x00\x00\x00\x00" 29774 40275 "\x00\x00\x00\x00\x00\x00\x00\x00" ··· 29785 40286 "\x00\x00\x00\x00\x00\x00\x00\x00" 29786 40287 "\x00\x00\x00\x00\x00\x00\x00\x00" 29787 40288 "\x00", 29788 - .ilen = 129, 29789 - .result = "\xD2\xDB\x1A\x5C\xF1\xC1\xAC\xDB" 40289 + .ctext = "\xD2\xDB\x1A\x5C\xF1\xC1\xAC\xDB" 29790 40290 "\xE8\x1A\x7A\x43\x40\xEF\x53\x43" 29791 40291 "\x5E\x7F\x4B\x1A\x50\x52\x3F\x8D" 29792 40292 "\x28\x3D\xCF\x85\x1D\x69\x6E\x60" ··· 29802 40304 "\x2E\x40\x48\x75\xE9\xE2\x21\x45" 29803 40305 "\x0B\xC9\xB6\xB5\x66\xBC\x9A\x59" 29804 40306 "\x5A", 29805 - .rlen = 129, 40307 + .len = 129, 29806 40308 }, { /* large test vector generated using Crypto++ */ 29807 40309 .key = "\x00\x01\x02\x03\x04\x05\x06\x07" 29808 40310 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" ··· 29811 40313 .klen = 32, 29812 40314 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 29813 40315 "\x00\x00\x00\x00\x00\x00\x00\x00", 29814 - .input = 40316 + .ptext = 29815 40317 "\x00\x01\x02\x03\x04\x05\x06\x07" 29816 40318 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" 29817 40319 "\x10\x11\x12\x13\x14\x15\x16\x17" ··· 30325 40827 "\x10\x2f\x4e\x6d\x8c\xab\xca\xe9" 30326 40828 "\x08\x27\x46\x65\x84\xa3\xc2\xe1" 30327 40829 "\x00\x21\x42\x63", 30328 - .ilen = 4100, 30329 - .result = 40830 + .ctext = 30330 40831 "\xb5\x81\xf5\x64\x18\x73\xe3\xf0" 30331 40832 "\x4c\x13\xf2\x77\x18\x60\x65\x5e" 30332 40833 "\x29\x01\xce\x98\x55\x53\xf9\x0c" ··· 30839 41342 "\xfc\x3f\x09\x7a\x0b\xdc\xc5\x1b" 30840 41343 "\x87\x13\xc6\x5b\x59\x8d\xf2\xc8" 30841 41344 "\xaf\xdf\x11\x95", 30842 - .rlen = 4100, 41345 + .len = 4100, 30843 41346 .np = 2, 30844 41347 .tap = { 4064, 36 }, 30845 41348 }, 30846 41349 }; 30847 41350 30848 - static const struct cipher_testvec chacha20_enc_tv_template[] = { 41351 + static const struct cipher_testvec chacha20_tv_template[] = { 30849 41352 { /* RFC7539 A.2. Test Vector #1 */ 30850 41353 .key = "\x00\x00\x00\x00\x00\x00\x00\x00" 30851 41354 "\x00\x00\x00\x00\x00\x00\x00\x00" ··· 30854 41357 .klen = 32, 30855 41358 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00" 30856 41359 "\x00\x00\x00\x00\x00\x00\x00\x00", 30857 - .input = "\x00\x00\x00\x00\x00\x00\x00\x00" 41360 + .ptext = "\x00\x00\x00\x00\x00\x00\x00\x00" 30858 41361 "\x00\x00\x00\x00\x00\x00\x00\x00" 30859 41362 "\x00\x00\x00\x00\x00\x00\x00\x00" 30860 41363 "\x00\x00\x00\x00\x00\x00\x00\x00" ··· 30862 41365 "\x00\x00\x00\x00\x00\x00\x00\x00" 30863 41366 "\x00\x00\x00\x00\x00\x00\x00\x00" 30864 41367 "\x00\x00\x00\x00\x00\x00\x00\x00", 30865 - .ilen = 64, 30866 - .result = "\x76\xb8\xe0\xad\xa0\xf1\x3d\x90" 41368 + .ctext = "\x76\xb8\xe0\xad\xa0\xf1\x3d\x90" 30867 41369 "\x40\x5d\x6a\xe5\x53\x86\xbd\x28" 30868 41370 "\xbd\xd2\x19\xb8\xa0\x8d\xed\x1a" 30869 41371 "\xa8\x36\xef\xcc\x8b\x77\x0d\xc7" ··· 30870 41374 "\x77\x24\xe0\x3f\xb8\xd8\x4a\x37" 30871 41375 "\x6a\x43\xb8\xf4\x15\x18\xa1\x1c" 30872 41376 "\xc3\x87\xb6\x69\xb2\xee\x65\x86", 30873 - .rlen = 64, 41377 + .len = 64, 30874 41378 }, { /* RFC7539 A.2. Test Vector #2 */ 30875 41379 .key = "\x00\x00\x00\x00\x00\x00\x00\x00" 30876 41380 "\x00\x00\x00\x00\x00\x00\x00\x00" ··· 30879 41383 .klen = 32, 30880 41384 .iv = "\x01\x00\x00\x00\x00\x00\x00\x00" 30881 41385 "\x00\x00\x00\x00\x00\x00\x00\x02", 30882 - .input = "\x41\x6e\x79\x20\x73\x75\x62\x6d" 41386 + .ptext = "\x41\x6e\x79\x20\x73\x75\x62\x6d" 30883 41387 "\x69\x73\x73\x69\x6f\x6e\x20\x74" 30884 41388 "\x6f\x20\x74\x68\x65\x20\x49\x45" 30885 41389 "\x54\x46\x20\x69\x6e\x74\x65\x6e" ··· 30926 41430 "\x20\x77\x68\x69\x63\x68\x20\x61" 30927 41431 "\x72\x65\x20\x61\x64\x64\x72\x65" 30928 41432 "\x73\x73\x65\x64\x20\x74\x6f", 30929 - .ilen = 375, 30930 - .result = "\xa3\xfb\xf0\x7d\xf3\xfa\x2f\xde" 41433 + .ctext = "\xa3\xfb\xf0\x7d\xf3\xfa\x2f\xde" 30931 41434 "\x4f\x37\x6c\xa2\x3e\x82\x73\x70" 30932 41435 "\x41\x60\x5d\x9f\x4f\x4f\x57\xbd" 30933 41436 "\x8c\xff\x2c\x1d\x4b\x79\x55\xec" ··· 30973 41478 "\x7a\xc6\x1d\xd2\x9c\x6f\x21\xba" 30974 41479 "\x5b\x86\x2f\x37\x30\xe3\x7c\xfd" 30975 41480 "\xc4\xfd\x80\x6c\x22\xf2\x21", 30976 - .rlen = 375, 41481 + .len = 375, 30977 41482 .also_non_np = 1, 30978 41483 .np = 3, 30979 41484 .tap = { 375 - 20, 4, 16 }, ··· 30986 41491 .klen = 32, 30987 41492 .iv = "\x2a\x00\x00\x00\x00\x00\x00\x00" 30988 41493 "\x00\x00\x00\x00\x00\x00\x00\x02", 30989 - .input = "\x27\x54\x77\x61\x73\x20\x62\x72" 41494 + .ptext = "\x27\x54\x77\x61\x73\x20\x62\x72" 30990 41495 "\x69\x6c\x6c\x69\x67\x2c\x20\x61" 30991 41496 "\x6e\x64\x20\x74\x68\x65\x20\x73" 30992 41497 "\x6c\x69\x74\x68\x79\x20\x74\x6f" ··· 31002 41507 "\x68\x65\x20\x6d\x6f\x6d\x65\x20" 31003 41508 "\x72\x61\x74\x68\x73\x20\x6f\x75" 31004 41509 "\x74\x67\x72\x61\x62\x65\x2e", 31005 - .ilen = 127, 31006 - .result = "\x62\xe6\x34\x7f\x95\xed\x87\xa4" 41510 + .ctext = "\x62\xe6\x34\x7f\x95\xed\x87\xa4" 31007 41511 "\x5f\xfa\xe7\x42\x6f\x27\xa1\xdf" 31008 41512 "\x5f\xb6\x91\x10\x04\x4c\x0d\x73" 31009 41513 "\x11\x8e\xff\xa9\x5b\x01\xe5\xcf" ··· 31018 41524 "\x50\xd6\x15\x4b\x6d\xa7\x31\xb1" 31019 41525 "\x87\xb5\x8d\xfd\x72\x8a\xfa\x36" 31020 41526 "\x75\x7a\x79\x7a\xc1\x88\xd1", 31021 - .rlen = 127, 41527 + .len = 127, 31022 41528 }, { /* Self-made test vector for long data */ 31023 41529 .key = "\x1c\x92\x40\xa5\xeb\x55\xd3\x8a" 31024 41530 "\xf3\x33\x88\x86\x04\xf6\xb5\xf0" ··· 31027 41533 .klen = 32, 31028 41534 .iv = "\x1c\x00\x00\x00\x00\x00\x00\x00" 31029 41535 "\x00\x00\x00\x00\x00\x00\x00\x01", 31030 - .input = "\x49\xee\xe0\xdc\x24\x90\x40\xcd" 41536 + .ptext = "\x49\xee\xe0\xdc\x24\x90\x40\xcd" 31031 41537 "\xc5\x40\x8f\x47\x05\xbc\xdd\x81" 31032 41538 "\x47\xc6\x8d\xe6\xb1\x8f\xd7\xcb" 31033 41539 "\x09\x0e\x6e\x22\x48\x1f\xbf\xb8" ··· 31188 41694 "\x08\x7c\xbc\x66\x8a\xb0\xb6\x9f" 31189 41695 "\x92\xd6\x41\x7c\x5b\x2a\x00\x79" 31190 41696 "\x72", 31191 - .ilen = 1281, 31192 - .result = "\x45\xe8\xe0\xb6\x9c\xca\xfd\x87" 41697 + .ctext = "\x45\xe8\xe0\xb6\x9c\xca\xfd\x87" 31193 41698 "\xe8\x1d\x37\x96\x8a\xe3\x40\x35" 31194 41699 "\xcf\x5e\x3a\x46\x3d\xfb\xd0\x69" 31195 41700 "\xde\xaf\x7a\xd5\x0d\xe9\x52\xec" ··· 31349 41856 "\x23\x45\x89\x42\xa0\x30\xeb\xbf" 31350 41857 "\xa1\xed\xad\xd5\x76\xfa\x24\x8f" 31351 41858 "\x98", 31352 - .rlen = 1281, 41859 + .len = 1281, 31353 41860 .also_non_np = 1, 31354 41861 .np = 3, 31355 41862 .tap = { 1200, 1, 80 }, ··· 31359 41866 /* 31360 41867 * CTS (Cipher Text Stealing) mode tests 31361 41868 */ 31362 - static const struct cipher_testvec cts_mode_enc_tv_template[] = { 41869 + static const struct cipher_testvec cts_mode_tv_template[] = { 31363 41870 { /* from rfc3962 */ 31364 41871 .klen = 16, 31365 41872 .key = "\x63\x68\x69\x63\x6b\x65\x6e\x20" 31366 41873 "\x74\x65\x72\x69\x79\x61\x6b\x69", 31367 - .ilen = 17, 31368 - .input = "\x49\x20\x77\x6f\x75\x6c\x64\x20" 41874 + .ptext = "\x49\x20\x77\x6f\x75\x6c\x64\x20" 31369 41875 "\x6c\x69\x6b\x65\x20\x74\x68\x65" 31370 41876 "\x20", 31371 - .rlen = 17, 31372 - .result = "\xc6\x35\x35\x68\xf2\xbf\x8c\xb4" 41877 + .len = 17, 41878 + .ctext = "\xc6\x35\x35\x68\xf2\xbf\x8c\xb4" 31373 41879 "\xd8\xa5\x80\x36\x2d\xa7\xff\x7f" 31374 41880 "\x97", 31375 41881 }, { 31376 41882 .klen = 16, 31377 41883 .key = "\x63\x68\x69\x63\x6b\x65\x6e\x20" 31378 41884 "\x74\x65\x72\x69\x79\x61\x6b\x69", 31379 - .ilen = 31, 31380 - .input = "\x49\x20\x77\x6f\x75\x6c\x64\x20" 41885 + .ptext = "\x49\x20\x77\x6f\x75\x6c\x64\x20" 31381 41886 "\x6c\x69\x6b\x65\x20\x74\x68\x65" 31382 41887 "\x20\x47\x65\x6e\x65\x72\x61\x6c" 31383 41888 "\x20\x47\x61\x75\x27\x73\x20", 31384 - .rlen = 31, 31385 - .result = "\xfc\x00\x78\x3e\x0e\xfd\xb2\xc1" 41889 + .len = 31, 41890 + .ctext = "\xfc\x00\x78\x3e\x0e\xfd\xb2\xc1" 31386 41891 "\xd4\x45\xd4\xc8\xef\xf7\xed\x22" 31387 41892 "\x97\x68\x72\x68\xd6\xec\xcc\xc0" 31388 41893 "\xc0\x7b\x25\xe2\x5e\xcf\xe5", ··· 31388 41897 .klen = 16, 31389 41898 .key = "\x63\x68\x69\x63\x6b\x65\x6e\x20" 31390 41899 "\x74\x65\x72\x69\x79\x61\x6b\x69", 31391 - .ilen = 32, 31392 - .input = "\x49\x20\x77\x6f\x75\x6c\x64\x20" 41900 + .ptext = "\x49\x20\x77\x6f\x75\x6c\x64\x20" 31393 41901 "\x6c\x69\x6b\x65\x20\x74\x68\x65" 31394 41902 "\x20\x47\x65\x6e\x65\x72\x61\x6c" 31395 41903 "\x20\x47\x61\x75\x27\x73\x20\x43", 31396 - .rlen = 32, 31397 - .result = "\x39\x31\x25\x23\xa7\x86\x62\xd5" 41904 + .len = 32, 41905 + .ctext = "\x39\x31\x25\x23\xa7\x86\x62\xd5" 31398 41906 "\xbe\x7f\xcb\xcc\x98\xeb\xf5\xa8" 31399 41907 "\x97\x68\x72\x68\xd6\xec\xcc\xc0" 31400 41908 "\xc0\x7b\x25\xe2\x5e\xcf\xe5\x84", ··· 31401 41911 .klen = 16, 31402 41912 .key = "\x63\x68\x69\x63\x6b\x65\x6e\x20" 31403 41913 "\x74\x65\x72\x69\x79\x61\x6b\x69", 31404 - .ilen = 47, 31405 - .input = "\x49\x20\x77\x6f\x75\x6c\x64\x20" 41914 + .ptext = "\x49\x20\x77\x6f\x75\x6c\x64\x20" 31406 41915 "\x6c\x69\x6b\x65\x20\x74\x68\x65" 31407 41916 "\x20\x47\x65\x6e\x65\x72\x61\x6c" 31408 41917 "\x20\x47\x61\x75\x27\x73\x20\x43" 31409 41918 "\x68\x69\x63\x6b\x65\x6e\x2c\x20" 31410 41919 "\x70\x6c\x65\x61\x73\x65\x2c", 31411 - .rlen = 47, 31412 - .result = "\x97\x68\x72\x68\xd6\xec\xcc\xc0" 41920 + .len = 47, 41921 + .ctext = "\x97\x68\x72\x68\xd6\xec\xcc\xc0" 31413 41922 "\xc0\x7b\x25\xe2\x5e\xcf\xe5\x84" 31414 41923 "\xb3\xff\xfd\x94\x0c\x16\xa1\x8c" 31415 41924 "\x1b\x55\x49\xd2\xf8\x38\x02\x9e" ··· 31418 41929 .klen = 16, 31419 41930 .key = "\x63\x68\x69\x63\x6b\x65\x6e\x20" 31420 41931 "\x74\x65\x72\x69\x79\x61\x6b\x69", 31421 - .ilen = 48, 31422 - .input = "\x49\x20\x77\x6f\x75\x6c\x64\x20" 41932 + .ptext = "\x49\x20\x77\x6f\x75\x6c\x64\x20" 31423 41933 "\x6c\x69\x6b\x65\x20\x74\x68\x65" 31424 41934 "\x20\x47\x65\x6e\x65\x72\x61\x6c" 31425 41935 "\x20\x47\x61\x75\x27\x73\x20\x43" 31426 41936 "\x68\x69\x63\x6b\x65\x6e\x2c\x20" 31427 41937 "\x70\x6c\x65\x61\x73\x65\x2c\x20", 31428 - .rlen = 48, 31429 - .result = "\x97\x68\x72\x68\xd6\xec\xcc\xc0" 41938 + .len = 48, 41939 + .ctext = "\x97\x68\x72\x68\xd6\xec\xcc\xc0" 31430 41940 "\xc0\x7b\x25\xe2\x5e\xcf\xe5\x84" 31431 41941 "\x9d\xad\x8b\xbb\x96\xc4\xcd\xc0" 31432 41942 "\x3b\xc1\x03\xe1\xa1\x94\xbb\xd8" ··· 31435 41947 .klen = 16, 31436 41948 .key = "\x63\x68\x69\x63\x6b\x65\x6e\x20" 31437 41949 "\x74\x65\x72\x69\x79\x61\x6b\x69", 31438 - .ilen = 64, 31439 - .input = "\x49\x20\x77\x6f\x75\x6c\x64\x20" 41950 + .ptext = "\x49\x20\x77\x6f\x75\x6c\x64\x20" 31440 41951 "\x6c\x69\x6b\x65\x20\x74\x68\x65" 31441 41952 "\x20\x47\x65\x6e\x65\x72\x61\x6c" 31442 41953 "\x20\x47\x61\x75\x27\x73\x20\x43" ··· 31443 41956 "\x70\x6c\x65\x61\x73\x65\x2c\x20" 31444 41957 "\x61\x6e\x64\x20\x77\x6f\x6e\x74" 31445 41958 "\x6f\x6e\x20\x73\x6f\x75\x70\x2e", 31446 - .rlen = 64, 31447 - .result = "\x97\x68\x72\x68\xd6\xec\xcc\xc0" 31448 - "\xc0\x7b\x25\xe2\x5e\xcf\xe5\x84" 31449 - "\x39\x31\x25\x23\xa7\x86\x62\xd5" 31450 - "\xbe\x7f\xcb\xcc\x98\xeb\xf5\xa8" 31451 - "\x48\x07\xef\xe8\x36\xee\x89\xa5" 31452 - "\x26\x73\x0d\xbc\x2f\x7b\xc8\x40" 31453 - "\x9d\xad\x8b\xbb\x96\xc4\xcd\xc0" 31454 - "\x3b\xc1\x03\xe1\xa1\x94\xbb\xd8", 31455 - } 31456 - }; 31457 - 31458 - static const struct cipher_testvec cts_mode_dec_tv_template[] = { 31459 - { /* from rfc3962 */ 31460 - .klen = 16, 31461 - .key = "\x63\x68\x69\x63\x6b\x65\x6e\x20" 31462 - "\x74\x65\x72\x69\x79\x61\x6b\x69", 31463 - .rlen = 17, 31464 - .result = "\x49\x20\x77\x6f\x75\x6c\x64\x20" 31465 - "\x6c\x69\x6b\x65\x20\x74\x68\x65" 31466 - "\x20", 31467 - .ilen = 17, 31468 - .input = "\xc6\x35\x35\x68\xf2\xbf\x8c\xb4" 31469 - "\xd8\xa5\x80\x36\x2d\xa7\xff\x7f" 31470 - "\x97", 31471 - }, { 31472 - .klen = 16, 31473 - .key = "\x63\x68\x69\x63\x6b\x65\x6e\x20" 31474 - "\x74\x65\x72\x69\x79\x61\x6b\x69", 31475 - .rlen = 31, 31476 - .result = "\x49\x20\x77\x6f\x75\x6c\x64\x20" 31477 - "\x6c\x69\x6b\x65\x20\x74\x68\x65" 31478 - "\x20\x47\x65\x6e\x65\x72\x61\x6c" 31479 - "\x20\x47\x61\x75\x27\x73\x20", 31480 - .ilen = 31, 31481 - .input = "\xfc\x00\x78\x3e\x0e\xfd\xb2\xc1" 31482 - "\xd4\x45\xd4\xc8\xef\xf7\xed\x22" 31483 - "\x97\x68\x72\x68\xd6\xec\xcc\xc0" 31484 - "\xc0\x7b\x25\xe2\x5e\xcf\xe5", 31485 - }, { 31486 - .klen = 16, 31487 - .key = "\x63\x68\x69\x63\x6b\x65\x6e\x20" 31488 - "\x74\x65\x72\x69\x79\x61\x6b\x69", 31489 - .rlen = 32, 31490 - .result = "\x49\x20\x77\x6f\x75\x6c\x64\x20" 31491 - "\x6c\x69\x6b\x65\x20\x74\x68\x65" 31492 - "\x20\x47\x65\x6e\x65\x72\x61\x6c" 31493 - "\x20\x47\x61\x75\x27\x73\x20\x43", 31494 - .ilen = 32, 31495 - .input = "\x39\x31\x25\x23\xa7\x86\x62\xd5" 31496 - "\xbe\x7f\xcb\xcc\x98\xeb\xf5\xa8" 31497 - "\x97\x68\x72\x68\xd6\xec\xcc\xc0" 31498 - "\xc0\x7b\x25\xe2\x5e\xcf\xe5\x84", 31499 - }, { 31500 - .klen = 16, 31501 - .key = "\x63\x68\x69\x63\x6b\x65\x6e\x20" 31502 - "\x74\x65\x72\x69\x79\x61\x6b\x69", 31503 - .rlen = 47, 31504 - .result = "\x49\x20\x77\x6f\x75\x6c\x64\x20" 31505 - "\x6c\x69\x6b\x65\x20\x74\x68\x65" 31506 - "\x20\x47\x65\x6e\x65\x72\x61\x6c" 31507 - "\x20\x47\x61\x75\x27\x73\x20\x43" 31508 - "\x68\x69\x63\x6b\x65\x6e\x2c\x20" 31509 - "\x70\x6c\x65\x61\x73\x65\x2c", 31510 - .ilen = 47, 31511 - .input = "\x97\x68\x72\x68\xd6\xec\xcc\xc0" 31512 - "\xc0\x7b\x25\xe2\x5e\xcf\xe5\x84" 31513 - "\xb3\xff\xfd\x94\x0c\x16\xa1\x8c" 31514 - "\x1b\x55\x49\xd2\xf8\x38\x02\x9e" 31515 - "\x39\x31\x25\x23\xa7\x86\x62\xd5" 31516 - "\xbe\x7f\xcb\xcc\x98\xeb\xf5", 31517 - }, { 31518 - .klen = 16, 31519 - .key = "\x63\x68\x69\x63\x6b\x65\x6e\x20" 31520 - "\x74\x65\x72\x69\x79\x61\x6b\x69", 31521 - .rlen = 48, 31522 - .result = "\x49\x20\x77\x6f\x75\x6c\x64\x20" 31523 - "\x6c\x69\x6b\x65\x20\x74\x68\x65" 31524 - "\x20\x47\x65\x6e\x65\x72\x61\x6c" 31525 - "\x20\x47\x61\x75\x27\x73\x20\x43" 31526 - "\x68\x69\x63\x6b\x65\x6e\x2c\x20" 31527 - "\x70\x6c\x65\x61\x73\x65\x2c\x20", 31528 - .ilen = 48, 31529 - .input = "\x97\x68\x72\x68\xd6\xec\xcc\xc0" 31530 - "\xc0\x7b\x25\xe2\x5e\xcf\xe5\x84" 31531 - "\x9d\xad\x8b\xbb\x96\xc4\xcd\xc0" 31532 - "\x3b\xc1\x03\xe1\xa1\x94\xbb\xd8" 31533 - "\x39\x31\x25\x23\xa7\x86\x62\xd5" 31534 - "\xbe\x7f\xcb\xcc\x98\xeb\xf5\xa8", 31535 - }, { 31536 - .klen = 16, 31537 - .key = "\x63\x68\x69\x63\x6b\x65\x6e\x20" 31538 - "\x74\x65\x72\x69\x79\x61\x6b\x69", 31539 - .rlen = 64, 31540 - .result = "\x49\x20\x77\x6f\x75\x6c\x64\x20" 31541 - "\x6c\x69\x6b\x65\x20\x74\x68\x65" 31542 - "\x20\x47\x65\x6e\x65\x72\x61\x6c" 31543 - "\x20\x47\x61\x75\x27\x73\x20\x43" 31544 - "\x68\x69\x63\x6b\x65\x6e\x2c\x20" 31545 - "\x70\x6c\x65\x61\x73\x65\x2c\x20" 31546 - "\x61\x6e\x64\x20\x77\x6f\x6e\x74" 31547 - "\x6f\x6e\x20\x73\x6f\x75\x70\x2e", 31548 - .ilen = 64, 31549 - .input = "\x97\x68\x72\x68\xd6\xec\xcc\xc0" 41959 + .len = 64, 41960 + .ctext = "\x97\x68\x72\x68\xd6\xec\xcc\xc0" 31550 41961 "\xc0\x7b\x25\xe2\x5e\xcf\xe5\x84" 31551 41962 "\x39\x31\x25\x23\xa7\x86\x62\xd5" 31552 41963 "\xbe\x7f\xcb\xcc\x98\xeb\xf5\xa8"