aboutsummaryrefslogtreecommitdiffstats
path: root/crypto
diff options
context:
space:
mode:
authorJussi Kivilinna <jussi.kivilinna@mbnet.fi>2012-03-05 13:26:21 -0500
committerHerbert Xu <herbert@gondor.apana.org.au>2012-03-14 05:25:54 -0400
commit0840605eb47cf27e191017c4143fcb9cf7d82064 (patch)
treefe80922d35b1d6f0e441760544658b907e648316 /crypto
parentc9b56d33b03e9d5cd5f9d8598b56e9c84386844a (diff)
crypto: testmgr - add more camellia test vectors
New ECB, CBC, CTR, LRW and XTS test vectors for camellia. Larger ECB/CBC test vectors needed for parallel 2-way camellia implementation. Signed-off-by: Jussi Kivilinna <jussi.kivilinna@mbnet.fi> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'crypto')
-rw-r--r--crypto/testmgr.c45
-rw-r--r--crypto/testmgr.h1383
2 files changed, 1424 insertions, 4 deletions
diff --git a/crypto/testmgr.c b/crypto/testmgr.c
index bb54b882d738..5674878ff6c1 100644
--- a/crypto/testmgr.c
+++ b/crypto/testmgr.c
@@ -1846,6 +1846,21 @@ static const struct alg_test_desc alg_test_descs[] = {
1846 } 1846 }
1847 } 1847 }
1848 }, { 1848 }, {
1849 .alg = "ctr(camellia)",
1850 .test = alg_test_skcipher,
1851 .suite = {
1852 .cipher = {
1853 .enc = {
1854 .vecs = camellia_ctr_enc_tv_template,
1855 .count = CAMELLIA_CTR_ENC_TEST_VECTORS
1856 },
1857 .dec = {
1858 .vecs = camellia_ctr_dec_tv_template,
1859 .count = CAMELLIA_CTR_DEC_TEST_VECTORS
1860 }
1861 }
1862 }
1863 }, {
1849 .alg = "ctr(serpent)", 1864 .alg = "ctr(serpent)",
1850 .test = alg_test_skcipher, 1865 .test = alg_test_skcipher,
1851 .suite = { 1866 .suite = {
@@ -2297,6 +2312,21 @@ static const struct alg_test_desc alg_test_descs[] = {
2297 } 2312 }
2298 } 2313 }
2299 }, { 2314 }, {
2315 .alg = "lrw(camellia)",
2316 .test = alg_test_skcipher,
2317 .suite = {
2318 .cipher = {
2319 .enc = {
2320 .vecs = camellia_lrw_enc_tv_template,
2321 .count = CAMELLIA_LRW_ENC_TEST_VECTORS
2322 },
2323 .dec = {
2324 .vecs = camellia_lrw_dec_tv_template,
2325 .count = CAMELLIA_LRW_DEC_TEST_VECTORS
2326 }
2327 }
2328 }
2329 }, {
2300 .alg = "lrw(serpent)", 2330 .alg = "lrw(serpent)",
2301 .test = alg_test_skcipher, 2331 .test = alg_test_skcipher,
2302 .suite = { 2332 .suite = {
@@ -2634,6 +2664,21 @@ static const struct alg_test_desc alg_test_descs[] = {
2634 } 2664 }
2635 } 2665 }
2636 }, { 2666 }, {
2667 .alg = "xts(camellia)",
2668 .test = alg_test_skcipher,
2669 .suite = {
2670 .cipher = {
2671 .enc = {
2672 .vecs = camellia_xts_enc_tv_template,
2673 .count = CAMELLIA_XTS_ENC_TEST_VECTORS
2674 },
2675 .dec = {
2676 .vecs = camellia_xts_dec_tv_template,
2677 .count = CAMELLIA_XTS_DEC_TEST_VECTORS
2678 }
2679 }
2680 }
2681 }, {
2637 .alg = "xts(serpent)", 2682 .alg = "xts(serpent)",
2638 .test = alg_test_skcipher, 2683 .test = alg_test_skcipher,
2639 .suite = { 2684 .suite = {
diff --git a/crypto/testmgr.h b/crypto/testmgr.h
index 43e84d32b341..36e5a8ee0e1e 100644
--- a/crypto/testmgr.h
+++ b/crypto/testmgr.h
@@ -11332,10 +11332,16 @@ static struct cipher_testvec fcrypt_pcbc_dec_tv_template[] = {
11332/* 11332/*
11333 * CAMELLIA test vectors. 11333 * CAMELLIA test vectors.
11334 */ 11334 */
11335#define CAMELLIA_ENC_TEST_VECTORS 3 11335#define CAMELLIA_ENC_TEST_VECTORS 4
11336#define CAMELLIA_DEC_TEST_VECTORS 3 11336#define CAMELLIA_DEC_TEST_VECTORS 4
11337#define CAMELLIA_CBC_ENC_TEST_VECTORS 2 11337#define CAMELLIA_CBC_ENC_TEST_VECTORS 3
11338#define CAMELLIA_CBC_DEC_TEST_VECTORS 2 11338#define CAMELLIA_CBC_DEC_TEST_VECTORS 3
11339#define CAMELLIA_CTR_ENC_TEST_VECTORS 2
11340#define CAMELLIA_CTR_DEC_TEST_VECTORS 2
11341#define CAMELLIA_LRW_ENC_TEST_VECTORS 8
11342#define CAMELLIA_LRW_DEC_TEST_VECTORS 8
11343#define CAMELLIA_XTS_ENC_TEST_VECTORS 5
11344#define CAMELLIA_XTS_DEC_TEST_VECTORS 5
11339 11345
11340static struct cipher_testvec camellia_enc_tv_template[] = { 11346static struct cipher_testvec camellia_enc_tv_template[] = {
11341 { 11347 {
@@ -11372,6 +11378,27 @@ static struct cipher_testvec camellia_enc_tv_template[] = {
11372 "\x20\xef\x7c\x91\x9e\x3a\x75\x09", 11378 "\x20\xef\x7c\x91\x9e\x3a\x75\x09",
11373 .rlen = 16, 11379 .rlen = 16,
11374 }, 11380 },
11381 { /* Generated with Crypto++ */
11382 .key = "\x3F\x85\x62\x3F\x1C\xF9\xD6\x1C"
11383 "\xF9\xD6\xB3\x90\x6D\x4A\x90\x6D"
11384 "\x4A\x27\x04\xE1\x27\x04\xE1\xBE"
11385 "\x9B\x78\xBE\x9B\x78\x55\x32\x0F",
11386 .klen = 32,
11387 .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31"
11388 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3"
11389 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15"
11390 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87"
11391 "\x1E\x92\x29\xC0\x34\xCB\x62\xF9"
11392 "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48",
11393 .ilen = 48,
11394 .result = "\xED\xCD\xDB\xB8\x68\xCE\xBD\xEA"
11395 "\x9D\x9D\xCD\x9F\x4F\xFC\x4D\xB7"
11396 "\xA5\xFF\x6F\x43\x0F\xBA\x32\x04"
11397 "\xB3\xC2\xB9\x03\xAA\x91\x56\x29"
11398 "\x0D\xD0\xFD\xC4\x65\xA5\x69\xB9"
11399 "\xF1\xF6\xB1\xA5\xB2\x75\x4F\x8A",
11400 .rlen = 48,
11401 },
11375}; 11402};
11376 11403
11377static struct cipher_testvec camellia_dec_tv_template[] = { 11404static struct cipher_testvec camellia_dec_tv_template[] = {
@@ -11409,6 +11436,27 @@ static struct cipher_testvec camellia_dec_tv_template[] = {
11409 "\xfe\xdc\xba\x98\x76\x54\x32\x10", 11436 "\xfe\xdc\xba\x98\x76\x54\x32\x10",
11410 .rlen = 16, 11437 .rlen = 16,
11411 }, 11438 },
11439 { /* Generated with Crypto++ */
11440 .key = "\x3F\x85\x62\x3F\x1C\xF9\xD6\x1C"
11441 "\xF9\xD6\xB3\x90\x6D\x4A\x90\x6D"
11442 "\x4A\x27\x04\xE1\x27\x04\xE1\xBE"
11443 "\x9B\x78\xBE\x9B\x78\x55\x32\x0F",
11444 .klen = 32,
11445 .input = "\xED\xCD\xDB\xB8\x68\xCE\xBD\xEA"
11446 "\x9D\x9D\xCD\x9F\x4F\xFC\x4D\xB7"
11447 "\xA5\xFF\x6F\x43\x0F\xBA\x32\x04"
11448 "\xB3\xC2\xB9\x03\xAA\x91\x56\x29"
11449 "\x0D\xD0\xFD\xC4\x65\xA5\x69\xB9"
11450 "\xF1\xF6\xB1\xA5\xB2\x75\x4F\x8A",
11451 .ilen = 48,
11452 .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31"
11453 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3"
11454 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15"
11455 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87"
11456 "\x1E\x92\x29\xC0\x34\xCB\x62\xF9"
11457 "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48",
11458 .rlen = 48,
11459 },
11412}; 11460};
11413 11461
11414static struct cipher_testvec camellia_cbc_enc_tv_template[] = { 11462static struct cipher_testvec camellia_cbc_enc_tv_template[] = {
@@ -11440,6 +11488,29 @@ static struct cipher_testvec camellia_cbc_enc_tv_template[] = {
11440 "\x15\x78\xe0\x5e\xf2\xcb\x87\x16", 11488 "\x15\x78\xe0\x5e\xf2\xcb\x87\x16",
11441 .rlen = 32, 11489 .rlen = 32,
11442 }, 11490 },
11491 { /* Generated with Crypto++ */
11492 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9"
11493 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A"
11494 "\x27\x04\xE1\x27\x04\xE1\xBE\x9B"
11495 "\x78\xBE\x9B\x78\x55\x32\x0F\x55",
11496 .klen = 32,
11497 .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F"
11498 "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64",
11499 .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31"
11500 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3"
11501 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15"
11502 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87"
11503 "\x1E\x92\x29\xC0\x34\xCB\x62\xF9"
11504 "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48",
11505 .ilen = 48,
11506 .result = "\xCD\x3E\x2A\x3B\x3E\x94\xC5\x77"
11507 "\xBA\xBB\x5B\xB1\xDE\x7B\xA4\x40"
11508 "\x88\x39\xE3\xFD\x94\x4B\x25\x58"
11509 "\xE1\x4B\xC4\x18\x7A\xFD\x17\x2B"
11510 "\xB9\xF9\xC2\x27\x6A\xB6\x31\x27"
11511 "\xA6\xAD\xEF\xE5\x5D\xE4\x02\x01",
11512 .rlen = 48,
11513 },
11443}; 11514};
11444 11515
11445static struct cipher_testvec camellia_cbc_dec_tv_template[] = { 11516static struct cipher_testvec camellia_cbc_dec_tv_template[] = {
@@ -11471,6 +11542,1310 @@ static struct cipher_testvec camellia_cbc_dec_tv_template[] = {
11471 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f", 11542 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f",
11472 .rlen = 32, 11543 .rlen = 32,
11473 }, 11544 },
11545 { /* Generated with Crypto++ */
11546 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9"
11547 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A"
11548 "\x27\x04\xE1\x27\x04\xE1\xBE\x9B"
11549 "\x78\xBE\x9B\x78\x55\x32\x0F\x55",
11550 .klen = 32,
11551 .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F"
11552 "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64",
11553 .input = "\xCD\x3E\x2A\x3B\x3E\x94\xC5\x77"
11554 "\xBA\xBB\x5B\xB1\xDE\x7B\xA4\x40"
11555 "\x88\x39\xE3\xFD\x94\x4B\x25\x58"
11556 "\xE1\x4B\xC4\x18\x7A\xFD\x17\x2B"
11557 "\xB9\xF9\xC2\x27\x6A\xB6\x31\x27"
11558 "\xA6\xAD\xEF\xE5\x5D\xE4\x02\x01",
11559 .ilen = 48,
11560 .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31"
11561 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3"
11562 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15"
11563 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87"
11564 "\x1E\x92\x29\xC0\x34\xCB\x62\xF9"
11565 "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48",
11566 .rlen = 48,
11567 },
11568};
11569
11570static struct cipher_testvec camellia_ctr_enc_tv_template[] = {
11571 { /* Generated with Crypto++ */
11572 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9"
11573 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A"
11574 "\x27\x04\xE1\x27\x04\xE1\xBE\x9B"
11575 "\x78\xBE\x9B\x78\x55\x32\x0F\x55",
11576 .klen = 32,
11577 .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F"
11578 "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64",
11579 .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31"
11580 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3"
11581 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15"
11582 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87"
11583 "\x1E\x92\x29\xC0\x34\xCB\x62\xF9"
11584 "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48",
11585 .ilen = 48,
11586 .result = "\xF3\x06\x3A\x84\xCD\xBA\x8E\x11"
11587 "\xB7\x74\x6F\x5C\x97\xFB\x36\xFE"
11588 "\xDE\x71\x58\xD4\x15\xD1\xC1\xA4"
11589 "\xC9\x28\x74\xA6\x6B\xC7\x95\xA6"
11590 "\x6C\x77\xF7\x2F\xDF\xC7\xBB\x85"
11591 "\x60\xFC\xE8\x94\xE8\xB5\x09\x2C",
11592 .rlen = 48,
11593 },
11594 { /* Generated with Crypto++ */
11595 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9"
11596 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A"
11597 "\x27\x04\xE1\x27\x04\xE1\xBE\x9B"
11598 "\x78\xBE\x9B\x78\x55\x32\x0F\x55",
11599 .klen = 32,
11600 .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F"
11601 "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64",
11602 .input = "\x56\xED\x84\x1B\x8F\x26\xBD\x31"
11603 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3"
11604 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15"
11605 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87"
11606 "\x1E\x92\x29\xC0\x34\xCB\x62\xF9"
11607 "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48"
11608 "\xDF\x76\x0D",
11609 .ilen = 51,
11610 .result = "\xF3\x06\x3A\x84\xCD\xBA\x8E\x11"
11611 "\xB7\x74\x6F\x5C\x97\xFB\x36\xFE"
11612 "\xDE\x71\x58\xD4\x15\xD1\xC1\xA4"
11613 "\xC9\x28\x74\xA6\x6B\xC7\x95\xA6"
11614 "\x6C\x77\xF7\x2F\xDF\xC7\xBB\x85"
11615 "\x60\xFC\xE8\x94\xE8\xB5\x09\x2C"
11616 "\x1E\x43\xEF",
11617 .rlen = 51,
11618 },
11619};
11620
11621static struct cipher_testvec camellia_ctr_dec_tv_template[] = {
11622 { /* Generated with Crypto++ */
11623 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9"
11624 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A"
11625 "\x27\x04\xE1\x27\x04\xE1\xBE\x9B"
11626 "\x78\xBE\x9B\x78\x55\x32\x0F\x55",
11627 .klen = 32,
11628 .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F"
11629 "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64",
11630 .input = "\xF3\x06\x3A\x84\xCD\xBA\x8E\x11"
11631 "\xB7\x74\x6F\x5C\x97\xFB\x36\xFE"
11632 "\xDE\x71\x58\xD4\x15\xD1\xC1\xA4"
11633 "\xC9\x28\x74\xA6\x6B\xC7\x95\xA6"
11634 "\x6C\x77\xF7\x2F\xDF\xC7\xBB\x85"
11635 "\x60\xFC\xE8\x94\xE8\xB5\x09\x2C",
11636 .ilen = 48,
11637 .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31"
11638 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3"
11639 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15"
11640 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87"
11641 "\x1E\x92\x29\xC0\x34\xCB\x62\xF9"
11642 "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48",
11643 .rlen = 48,
11644 },
11645 { /* Generated with Crypto++ */
11646 .key = "\x85\x62\x3F\x1C\xF9\xD6\x1C\xF9"
11647 "\xD6\xB3\x90\x6D\x4A\x90\x6D\x4A"
11648 "\x27\x04\xE1\x27\x04\xE1\xBE\x9B"
11649 "\x78\xBE\x9B\x78\x55\x32\x0F\x55",
11650 .klen = 32,
11651 .iv = "\xE2\x24\x89\xEE\x53\xB8\x1D\x5F"
11652 "\xC4\x29\x8E\xF3\x35\x9A\xFF\x64",
11653 .input = "\xF3\x06\x3A\x84\xCD\xBA\x8E\x11"
11654 "\xB7\x74\x6F\x5C\x97\xFB\x36\xFE"
11655 "\xDE\x71\x58\xD4\x15\xD1\xC1\xA4"
11656 "\xC9\x28\x74\xA6\x6B\xC7\x95\xA6"
11657 "\x6C\x77\xF7\x2F\xDF\xC7\xBB\x85"
11658 "\x60\xFC\xE8\x94\xE8\xB5\x09\x2C"
11659 "\x1E\x43\xEF",
11660 .ilen = 51,
11661 .result = "\x56\xED\x84\x1B\x8F\x26\xBD\x31"
11662 "\xC8\x5F\xF6\x6A\x01\x98\x0C\xA3"
11663 "\x3A\xD1\x45\xDC\x73\x0A\x7E\x15"
11664 "\xAC\x20\xB7\x4E\xE5\x59\xF0\x87"
11665 "\x1E\x92\x29\xC0\x34\xCB\x62\xF9"
11666 "\x6D\x04\x9B\x0F\xA6\x3D\xD4\x48"
11667 "\xDF\x76\x0D",
11668 .rlen = 51,
11669 },
11670
11671};
11672
11673static struct cipher_testvec camellia_lrw_enc_tv_template[] = {
11674 /* Generated from AES-LRW test vectors */
11675 {
11676 .key = "\x45\x62\xac\x25\xf8\x28\x17\x6d"
11677 "\x4c\x26\x84\x14\xb5\x68\x01\x85"
11678 "\x25\x8e\x2a\x05\xe7\x3e\x9d\x03"
11679 "\xee\x5a\x83\x0c\xcc\x09\x4c\x87",
11680 .klen = 32,
11681 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00"
11682 "\x00\x00\x00\x00\x00\x00\x00\x01",
11683 .input = "\x30\x31\x32\x33\x34\x35\x36\x37"
11684 "\x38\x39\x41\x42\x43\x44\x45\x46",
11685 .ilen = 16,
11686 .result = "\x92\x68\x19\xd7\xb7\x5b\x0a\x31"
11687 "\x97\xcc\x72\xbe\x99\x17\xeb\x3e",
11688 .rlen = 16,
11689 }, {
11690 .key = "\x59\x70\x47\x14\xf5\x57\x47\x8c"
11691 "\xd7\x79\xe8\x0f\x54\x88\x79\x44"
11692 "\x0d\x48\xf0\xb7\xb1\x5a\x53\xea"
11693 "\x1c\xaa\x6b\x29\xc2\xca\xfb\xaf",
11694 .klen = 32,
11695 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00"
11696 "\x00\x00\x00\x00\x00\x00\x00\x02",
11697 .input = "\x30\x31\x32\x33\x34\x35\x36\x37"
11698 "\x38\x39\x41\x42\x43\x44\x45\x46",
11699 .ilen = 16,
11700 .result = "\x73\x09\xb7\x50\xb6\x77\x30\x50"
11701 "\x5c\x8a\x9c\x26\x77\x9d\xfc\x4a",
11702 .rlen = 16,
11703 }, {
11704 .key = "\xd8\x2a\x91\x34\xb2\x6a\x56\x50"
11705 "\x30\xfe\x69\xe2\x37\x7f\x98\x47"
11706 "\xcd\xf9\x0b\x16\x0c\x64\x8f\xb6"
11707 "\xb0\x0d\x0d\x1b\xae\x85\x87\x1f",
11708 .klen = 32,
11709 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00"
11710 "\x00\x00\x00\x02\x00\x00\x00\x00",
11711 .input = "\x30\x31\x32\x33\x34\x35\x36\x37"
11712 "\x38\x39\x41\x42\x43\x44\x45\x46",
11713 .ilen = 16,
11714 .result = "\x90\xae\x83\xe0\x22\xb9\x60\x91"
11715 "\xfa\xa9\xb7\x98\xe3\xed\x87\x01",
11716 .rlen = 16,
11717 }, {
11718 .key = "\x0f\x6a\xef\xf8\xd3\xd2\xbb\x15"
11719 "\x25\x83\xf7\x3c\x1f\x01\x28\x74"
11720 "\xca\xc6\xbc\x35\x4d\x4a\x65\x54"
11721 "\x90\xae\x61\xcf\x7b\xae\xbd\xcc"
11722 "\xad\xe4\x94\xc5\x4a\x29\xae\x70",
11723 .klen = 40,
11724 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00"
11725 "\x00\x00\x00\x00\x00\x00\x00\x01",
11726 .input = "\x30\x31\x32\x33\x34\x35\x36\x37"
11727 "\x38\x39\x41\x42\x43\x44\x45\x46",
11728 .ilen = 16,
11729 .result = "\x99\xe9\x6e\xd4\xc9\x21\xa5\xf0"
11730 "\xd8\x83\xef\xd9\x07\x16\x5f\x35",
11731 .rlen = 16,
11732 }, {
11733 .key = "\x8a\xd4\xee\x10\x2f\xbd\x81\xff"
11734 "\xf8\x86\xce\xac\x93\xc5\xad\xc6"
11735 "\xa0\x19\x07\xc0\x9d\xf7\xbb\xdd"
11736 "\x52\x13\xb2\xb7\xf0\xff\x11\xd8"
11737 "\xd6\x08\xd0\xcd\x2e\xb1\x17\x6f",
11738 .klen = 40,
11739 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00"
11740 "\x00\x00\x00\x02\x00\x00\x00\x00",
11741 .input = "\x30\x31\x32\x33\x34\x35\x36\x37"
11742 "\x38\x39\x41\x42\x43\x44\x45\x46",
11743 .ilen = 16,
11744 .result = "\x42\x88\xf4\xcb\x21\x11\x6d\x8e"
11745 "\xde\x1a\xf2\x29\xf1\x4a\xe0\x15",
11746 .rlen = 16,
11747 }, {
11748 .key = "\xf8\xd4\x76\xff\xd6\x46\xee\x6c"
11749 "\x23\x84\xcb\x1c\x77\xd6\x19\x5d"
11750 "\xfe\xf1\xa9\xf3\x7b\xbc\x8d\x21"
11751 "\xa7\x9c\x21\xf8\xcb\x90\x02\x89"
11752 "\xa8\x45\x34\x8e\xc8\xc5\xb5\xf1"
11753 "\x26\xf5\x0e\x76\xfe\xfd\x1b\x1e",
11754 .klen = 48,
11755 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00"
11756 "\x00\x00\x00\x00\x00\x00\x00\x01",
11757 .input = "\x30\x31\x32\x33\x34\x35\x36\x37"
11758 "\x38\x39\x41\x42\x43\x44\x45\x46",
11759 .ilen = 16,
11760 .result = "\x40\xaa\x34\x86\x4a\x8f\x78\xb9"
11761 "\xdb\xdb\x0f\x3d\x48\x70\xbe\x8d",
11762 .rlen = 16,
11763 }, {
11764 .key = "\xfb\x76\x15\xb2\x3d\x80\x89\x1d"
11765 "\xd4\x70\x98\x0b\xc7\x95\x84\xc8"
11766 "\xb2\xfb\x64\xce\x60\x97\x87\x8d"
11767 "\x17\xfc\xe4\x5a\x49\xe8\x30\xb7"
11768 "\x6e\x78\x17\xe7\x2d\x5e\x12\xd4"
11769 "\x60\x64\x04\x7a\xf1\x2f\x9e\x0c",
11770 .klen = 48,
11771 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00"
11772 "\x00\x00\x00\x02\x00\x00\x00\x00",
11773 .input = "\x30\x31\x32\x33\x34\x35\x36\x37"
11774 "\x38\x39\x41\x42\x43\x44\x45\x46",
11775 .ilen = 16,
11776 .result = "\x04\xab\x28\x37\x31\x7a\x26\xab"
11777 "\xa1\x70\x1b\x9c\xe7\xdd\x83\xff",
11778 .rlen = 16,
11779 }, {
11780 .key = "\xf8\xd4\x76\xff\xd6\x46\xee\x6c"
11781 "\x23\x84\xcb\x1c\x77\xd6\x19\x5d"
11782 "\xfe\xf1\xa9\xf3\x7b\xbc\x8d\x21"
11783 "\xa7\x9c\x21\xf8\xcb\x90\x02\x89"
11784 "\xa8\x45\x34\x8e\xc8\xc5\xb5\xf1"
11785 "\x26\xf5\x0e\x76\xfe\xfd\x1b\x1e",
11786 .klen = 48,
11787 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00"
11788 "\x00\x00\x00\x00\x00\x00\x00\x01",
11789 .input = "\x05\x11\xb7\x18\xab\xc6\x2d\xac"
11790 "\x70\x5d\xf6\x22\x94\xcd\xe5\x6c"
11791 "\x17\x6b\xf6\x1c\xf0\xf3\x6e\xf8"
11792 "\x50\x38\x1f\x71\x49\xb6\x57\xd6"
11793 "\x8f\xcb\x8d\x6b\xe3\xa6\x29\x90"
11794 "\xfe\x2a\x62\x82\xae\x6d\x8b\xf6"
11795 "\xad\x1e\x9e\x20\x5f\x38\xbe\x04"
11796 "\xda\x10\x8e\xed\xa2\xa4\x87\xab"
11797 "\xda\x6b\xb4\x0c\x75\xba\xd3\x7c"
11798 "\xc9\xac\x42\x31\x95\x7c\xc9\x04"
11799 "\xeb\xd5\x6e\x32\x69\x8a\xdb\xa6"
11800 "\x15\xd7\x3f\x4f\x2f\x66\x69\x03"
11801 "\x9c\x1f\x54\x0f\xde\x1f\xf3\x65"
11802 "\x4c\x96\x12\xed\x7c\x92\x03\x01"
11803 "\x6f\xbc\x35\x93\xac\xf1\x27\xf1"
11804 "\xb4\x96\x82\x5a\x5f\xb0\xa0\x50"
11805 "\x89\xa4\x8e\x66\x44\x85\xcc\xfd"
11806 "\x33\x14\x70\xe3\x96\xb2\xc3\xd3"
11807 "\xbb\x54\x5a\x1a\xf9\x74\xa2\xc5"
11808 "\x2d\x64\x75\xdd\xb4\x54\xe6\x74"
11809 "\x8c\xd3\x9d\x9e\x86\xab\x51\x53"
11810 "\xb7\x93\x3e\x6f\xd0\x4e\x2c\x40"
11811 "\xf6\xa8\x2e\x3e\x9d\xf4\x66\xa5"
11812 "\x76\x12\x73\x44\x1a\x56\xd7\x72"
11813 "\x88\xcd\x21\x8c\x4c\x0f\xfe\xda"
11814 "\x95\xe0\x3a\xa6\xa5\x84\x46\xcd"
11815 "\xd5\x3e\x9d\x3a\xe2\x67\xe6\x60"
11816 "\x1a\xe2\x70\x85\x58\xc2\x1b\x09"
11817 "\xe1\xd7\x2c\xca\xad\xa8\x8f\xf9"
11818 "\xac\xb3\x0e\xdb\xca\x2e\xe2\xb8"
11819 "\x51\x71\xd9\x3c\x6c\xf1\x56\xf8"
11820 "\xea\x9c\xf1\xfb\x0c\xe6\xb7\x10"
11821 "\x1c\xf8\xa9\x7c\xe8\x53\x35\xc1"
11822 "\x90\x3e\x76\x4a\x74\xa4\x21\x2c"
11823 "\xf6\x2c\x4e\x0f\x94\x3a\x88\x2e"
11824 "\x41\x09\x6a\x33\x7d\xf6\xdd\x3f"
11825 "\x8d\x23\x31\x74\x84\xeb\x88\x6e"
11826 "\xcc\xb9\xbc\x22\x83\x19\x07\x22"
11827 "\xa5\x2d\xdf\xa5\xf3\x80\x85\x78"
11828 "\x84\x39\x6a\x6d\x6a\x99\x4f\xa5"
11829 "\x15\xfe\x46\xb0\xe4\x6c\xa5\x41"
11830 "\x3c\xce\x8f\x42\x60\x71\xa7\x75"
11831 "\x08\x40\x65\x8a\x82\xbf\xf5\x43"
11832 "\x71\x96\xa9\x4d\x44\x8a\x20\xbe"
11833 "\xfa\x4d\xbb\xc0\x7d\x31\x96\x65"
11834 "\xe7\x75\xe5\x3e\xfd\x92\x3b\xc9"
11835 "\x55\xbb\x16\x7e\xf7\xc2\x8c\xa4"
11836 "\x40\x1d\xe5\xef\x0e\xdf\xe4\x9a"
11837 "\x62\x73\x65\xfd\x46\x63\x25\x3d"
11838 "\x2b\xaf\xe5\x64\xfe\xa5\x5c\xcf"
11839 "\x24\xf3\xb4\xac\x64\xba\xdf\x4b"
11840 "\xc6\x96\x7d\x81\x2d\x8d\x97\xf7"
11841 "\xc5\x68\x77\x84\x32\x2b\xcc\x85"
11842 "\x74\x96\xf0\x12\x77\x61\xb9\xeb"
11843 "\x71\xaa\x82\xcb\x1c\xdb\x89\xc8"
11844 "\xc6\xb5\xe3\x5c\x7d\x39\x07\x24"
11845 "\xda\x39\x87\x45\xc0\x2b\xbb\x01"
11846 "\xac\xbc\x2a\x5c\x7f\xfc\xe8\xce"
11847 "\x6d\x9c\x6f\xed\xd3\xc1\xa1\xd6"
11848 "\xc5\x55\xa9\x66\x2f\xe1\xc8\x32"
11849 "\xa6\x5d\xa4\x3a\x98\x73\xe8\x45"
11850 "\xa4\xc7\xa8\xb4\xf6\x13\x03\xf6"
11851 "\xe9\x2e\xc4\x29\x0f\x84\xdb\xc4"
11852 "\x21\xc4\xc2\x75\x67\x89\x37\x0a",
11853 .ilen = 512,
11854 .result = "\x90\x69\x8e\xf2\x14\x86\x59\xf9"
11855 "\xec\xe7\xfa\x3f\x48\x9d\x7f\x96"
11856 "\x67\x76\xac\x2c\xd2\x63\x18\x93"
11857 "\x13\xf8\xf1\xf6\x71\x77\xb3\xee"
11858 "\x93\xb2\xcc\xf3\x26\xc1\x16\x4f"
11859 "\xd4\xe8\x43\xc1\x68\xa3\x3e\x06"
11860 "\x38\x51\xff\xa8\xb9\xa4\xeb\xb1"
11861 "\x62\xdd\x78\x81\xea\x1d\xef\x04"
11862 "\x1d\x07\xc1\x67\xc8\xd6\x77\xa1"
11863 "\x84\x95\xf4\x9a\xd9\xbc\x2d\xe2"
11864 "\xf6\x80\xfc\x91\x2a\xbc\x42\xa0"
11865 "\x40\x41\x69\xaa\x71\xc0\x37\xec"
11866 "\x39\xf3\xf2\xec\x82\xc3\x88\x79"
11867 "\xbc\xc3\xaa\xb7\xcf\x6a\x72\x80"
11868 "\x4c\xf4\x84\x8f\x13\x9e\x94\x5c"
11869 "\xe5\xb2\x91\xbb\x92\x51\x4d\xf1"
11870 "\xd6\x0d\x71\x6b\x7a\xc2\x2f\x12"
11871 "\x6f\x75\xc7\x80\x99\x50\x84\xcf"
11872 "\xa8\xeb\xd6\xe1\x1c\x59\x81\x7e"
11873 "\xb9\xb3\xde\x7a\x93\x14\x12\xa2"
11874 "\xf7\x43\xb3\x9d\x1a\x87\x65\x91"
11875 "\x42\x08\x40\x82\x06\x1c\x2d\x55"
11876 "\x6e\x48\xd5\x74\x07\x6e\x9d\x80"
11877 "\xeb\xb4\x97\xa1\x36\xdf\xfa\x74"
11878 "\x79\x7f\x5a\x75\xe7\x71\xc8\x8c"
11879 "\x7e\xf8\x3a\x77\xcd\x32\x05\xf9"
11880 "\x3d\xd4\xe9\xa2\xbb\xc4\x8b\x83"
11881 "\x42\x5c\x82\xfa\xe9\x4b\x96\x3b"
11882 "\x7f\x89\x8b\xf9\xf1\x87\xda\xf0"
11883 "\x87\xef\x13\x5d\xf0\xe2\xc5\xc1"
11884 "\xed\x14\xa9\x57\x19\x63\x40\x04"
11885 "\x24\xeb\x6e\x19\xd1\x3d\x70\x78"
11886 "\xeb\xda\x55\x70\x2c\x4f\x41\x5b"
11887 "\x56\x9f\x1a\xd3\xac\xf1\xc0\xc3"
11888 "\x21\xec\xd7\xd2\x55\x32\x7c\x2e"
11889 "\x3c\x48\x8e\xb4\x85\x35\x47\xfe"
11890 "\xe2\x88\x79\x98\x6a\xc9\x8d\xff"
11891 "\xe9\x89\x6e\xb8\xe2\x97\x00\xbd"
11892 "\xa4\x8f\xba\xd0\x8c\xcb\x79\x99"
11893 "\xb3\xb2\xb2\x7a\xc3\xb7\xef\x75"
11894 "\x23\x52\x76\xc3\x50\x6e\x66\xf8"
11895 "\xa2\xe2\xce\xba\x40\x21\x3f\xc9"
11896 "\x0a\x32\x7f\xf7\x08\x8c\x66\xcf"
11897 "\xd3\xdf\x57\x59\x83\xb8\xe1\x85"
11898 "\xd6\x8f\xfb\x48\x1f\x3a\xc4\x2f"
11899 "\xb4\x2d\x58\xab\xd8\x7f\x5e\x3a"
11900 "\xbc\x62\x3e\xe2\x6a\x52\x0d\x76"
11901 "\x2f\x1c\x1a\x30\xed\x95\x2a\x44"
11902 "\x35\xa5\x83\x04\x84\x01\x99\x56"
11903 "\xb7\xe3\x10\x96\xfa\xdc\x19\xdd"
11904 "\xe2\x7f\xcb\xa0\x49\x1b\xff\x4c"
11905 "\x73\xf6\xbb\x94\x00\xe8\xa9\x3d"
11906 "\xe2\x20\xe9\x3f\xfa\x07\x5d\x77"
11907 "\x06\xd5\x4f\x4d\x02\xb8\x40\x1b"
11908 "\x30\xed\x1a\x50\x19\xef\xc4\x2c"
11909 "\x02\xd9\xc5\xd3\x11\x33\x37\xe5"
11910 "\x2b\xa3\x95\xa6\xee\xd8\x74\x1d"
11911 "\x68\xa0\xeb\xbf\xdd\x5e\x99\x96"
11912 "\x91\xc3\x94\x24\xa5\x12\xa2\x37"
11913 "\xb3\xac\xcf\x2a\xfd\x55\x34\xfe"
11914 "\x79\x92\x3e\xe6\x1b\x49\x57\x5d"
11915 "\x93\x6c\x01\xf7\xcc\x4e\x20\xd1"
11916 "\xb2\x1a\xd8\x4c\xbd\x1d\x10\xe9"
11917 "\x5a\xa8\x92\x7f\xba\xe6\x0c\x95",
11918 .rlen = 512,
11919 },
11920};
11921
11922static struct cipher_testvec camellia_lrw_dec_tv_template[] = {
11923 /* Generated from AES-LRW test vectors */
11924 /* same as enc vectors with input and result reversed */
11925 {
11926 .key = "\x45\x62\xac\x25\xf8\x28\x17\x6d"
11927 "\x4c\x26\x84\x14\xb5\x68\x01\x85"
11928 "\x25\x8e\x2a\x05\xe7\x3e\x9d\x03"
11929 "\xee\x5a\x83\x0c\xcc\x09\x4c\x87",
11930 .klen = 32,
11931 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00"
11932 "\x00\x00\x00\x00\x00\x00\x00\x01",
11933 .input = "\x92\x68\x19\xd7\xb7\x5b\x0a\x31"
11934 "\x97\xcc\x72\xbe\x99\x17\xeb\x3e",
11935 .ilen = 16,
11936 .result = "\x30\x31\x32\x33\x34\x35\x36\x37"
11937 "\x38\x39\x41\x42\x43\x44\x45\x46",
11938 .rlen = 16,
11939 }, {
11940 .key = "\x59\x70\x47\x14\xf5\x57\x47\x8c"
11941 "\xd7\x79\xe8\x0f\x54\x88\x79\x44"
11942 "\x0d\x48\xf0\xb7\xb1\x5a\x53\xea"
11943 "\x1c\xaa\x6b\x29\xc2\xca\xfb\xaf",
11944 .klen = 32,
11945 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00"
11946 "\x00\x00\x00\x00\x00\x00\x00\x02",
11947 .input = "\x73\x09\xb7\x50\xb6\x77\x30\x50"
11948 "\x5c\x8a\x9c\x26\x77\x9d\xfc\x4a",
11949 .ilen = 16,
11950 .result = "\x30\x31\x32\x33\x34\x35\x36\x37"
11951 "\x38\x39\x41\x42\x43\x44\x45\x46",
11952 .rlen = 16,
11953 }, {
11954 .key = "\xd8\x2a\x91\x34\xb2\x6a\x56\x50"
11955 "\x30\xfe\x69\xe2\x37\x7f\x98\x47"
11956 "\xcd\xf9\x0b\x16\x0c\x64\x8f\xb6"
11957 "\xb0\x0d\x0d\x1b\xae\x85\x87\x1f",
11958 .klen = 32,
11959 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00"
11960 "\x00\x00\x00\x02\x00\x00\x00\x00",
11961 .input = "\x90\xae\x83\xe0\x22\xb9\x60\x91"
11962 "\xfa\xa9\xb7\x98\xe3\xed\x87\x01",
11963 .ilen = 16,
11964 .result = "\x30\x31\x32\x33\x34\x35\x36\x37"
11965 "\x38\x39\x41\x42\x43\x44\x45\x46",
11966 .rlen = 16,
11967 }, {
11968 .key = "\x0f\x6a\xef\xf8\xd3\xd2\xbb\x15"
11969 "\x25\x83\xf7\x3c\x1f\x01\x28\x74"
11970 "\xca\xc6\xbc\x35\x4d\x4a\x65\x54"
11971 "\x90\xae\x61\xcf\x7b\xae\xbd\xcc"
11972 "\xad\xe4\x94\xc5\x4a\x29\xae\x70",
11973 .klen = 40,
11974 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00"
11975 "\x00\x00\x00\x00\x00\x00\x00\x01",
11976 .input = "\x99\xe9\x6e\xd4\xc9\x21\xa5\xf0"
11977 "\xd8\x83\xef\xd9\x07\x16\x5f\x35",
11978 .ilen = 16,
11979 .result = "\x30\x31\x32\x33\x34\x35\x36\x37"
11980 "\x38\x39\x41\x42\x43\x44\x45\x46",
11981 .rlen = 16,
11982 }, {
11983 .key = "\x8a\xd4\xee\x10\x2f\xbd\x81\xff"
11984 "\xf8\x86\xce\xac\x93\xc5\xad\xc6"
11985 "\xa0\x19\x07\xc0\x9d\xf7\xbb\xdd"
11986 "\x52\x13\xb2\xb7\xf0\xff\x11\xd8"
11987 "\xd6\x08\xd0\xcd\x2e\xb1\x17\x6f",
11988 .klen = 40,
11989 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00"
11990 "\x00\x00\x00\x02\x00\x00\x00\x00",
11991 .input = "\x42\x88\xf4\xcb\x21\x11\x6d\x8e"
11992 "\xde\x1a\xf2\x29\xf1\x4a\xe0\x15",
11993 .ilen = 16,
11994 .result = "\x30\x31\x32\x33\x34\x35\x36\x37"
11995 "\x38\x39\x41\x42\x43\x44\x45\x46",
11996 .rlen = 16,
11997 }, {
11998 .key = "\xf8\xd4\x76\xff\xd6\x46\xee\x6c"
11999 "\x23\x84\xcb\x1c\x77\xd6\x19\x5d"
12000 "\xfe\xf1\xa9\xf3\x7b\xbc\x8d\x21"
12001 "\xa7\x9c\x21\xf8\xcb\x90\x02\x89"
12002 "\xa8\x45\x34\x8e\xc8\xc5\xb5\xf1"
12003 "\x26\xf5\x0e\x76\xfe\xfd\x1b\x1e",
12004 .klen = 48,
12005 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00"
12006 "\x00\x00\x00\x00\x00\x00\x00\x01",
12007 .input = "\x40\xaa\x34\x86\x4a\x8f\x78\xb9"
12008 "\xdb\xdb\x0f\x3d\x48\x70\xbe\x8d",
12009 .ilen = 16,
12010 .result = "\x30\x31\x32\x33\x34\x35\x36\x37"
12011 "\x38\x39\x41\x42\x43\x44\x45\x46",
12012 .rlen = 16,
12013 }, {
12014 .key = "\xfb\x76\x15\xb2\x3d\x80\x89\x1d"
12015 "\xd4\x70\x98\x0b\xc7\x95\x84\xc8"
12016 "\xb2\xfb\x64\xce\x60\x97\x87\x8d"
12017 "\x17\xfc\xe4\x5a\x49\xe8\x30\xb7"
12018 "\x6e\x78\x17\xe7\x2d\x5e\x12\xd4"
12019 "\x60\x64\x04\x7a\xf1\x2f\x9e\x0c",
12020 .klen = 48,
12021 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00"
12022 "\x00\x00\x00\x02\x00\x00\x00\x00",
12023 .input = "\x04\xab\x28\x37\x31\x7a\x26\xab"
12024 "\xa1\x70\x1b\x9c\xe7\xdd\x83\xff",
12025 .ilen = 16,
12026 .result = "\x30\x31\x32\x33\x34\x35\x36\x37"
12027 "\x38\x39\x41\x42\x43\x44\x45\x46",
12028 .rlen = 16,
12029 }, {
12030 .key = "\xf8\xd4\x76\xff\xd6\x46\xee\x6c"
12031 "\x23\x84\xcb\x1c\x77\xd6\x19\x5d"
12032 "\xfe\xf1\xa9\xf3\x7b\xbc\x8d\x21"
12033 "\xa7\x9c\x21\xf8\xcb\x90\x02\x89"
12034 "\xa8\x45\x34\x8e\xc8\xc5\xb5\xf1"
12035 "\x26\xf5\x0e\x76\xfe\xfd\x1b\x1e",
12036 .klen = 48,
12037 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00"
12038 "\x00\x00\x00\x00\x00\x00\x00\x01",
12039 .input = "\x90\x69\x8e\xf2\x14\x86\x59\xf9"
12040 "\xec\xe7\xfa\x3f\x48\x9d\x7f\x96"
12041 "\x67\x76\xac\x2c\xd2\x63\x18\x93"
12042 "\x13\xf8\xf1\xf6\x71\x77\xb3\xee"
12043 "\x93\xb2\xcc\xf3\x26\xc1\x16\x4f"
12044 "\xd4\xe8\x43\xc1\x68\xa3\x3e\x06"
12045 "\x38\x51\xff\xa8\xb9\xa4\xeb\xb1"
12046 "\x62\xdd\x78\x81\xea\x1d\xef\x04"
12047 "\x1d\x07\xc1\x67\xc8\xd6\x77\xa1"
12048 "\x84\x95\xf4\x9a\xd9\xbc\x2d\xe2"
12049 "\xf6\x80\xfc\x91\x2a\xbc\x42\xa0"
12050 "\x40\x41\x69\xaa\x71\xc0\x37\xec"
12051 "\x39\xf3\xf2\xec\x82\xc3\x88\x79"
12052 "\xbc\xc3\xaa\xb7\xcf\x6a\x72\x80"
12053 "\x4c\xf4\x84\x8f\x13\x9e\x94\x5c"
12054 "\xe5\xb2\x91\xbb\x92\x51\x4d\xf1"
12055 "\xd6\x0d\x71\x6b\x7a\xc2\x2f\x12"
12056 "\x6f\x75\xc7\x80\x99\x50\x84\xcf"
12057 "\xa8\xeb\xd6\xe1\x1c\x59\x81\x7e"
12058 "\xb9\xb3\xde\x7a\x93\x14\x12\xa2"
12059 "\xf7\x43\xb3\x9d\x1a\x87\x65\x91"
12060 "\x42\x08\x40\x82\x06\x1c\x2d\x55"
12061 "\x6e\x48\xd5\x74\x07\x6e\x9d\x80"
12062 "\xeb\xb4\x97\xa1\x36\xdf\xfa\x74"
12063 "\x79\x7f\x5a\x75\xe7\x71\xc8\x8c"
12064 "\x7e\xf8\x3a\x77\xcd\x32\x05\xf9"
12065 "\x3d\xd4\xe9\xa2\xbb\xc4\x8b\x83"
12066 "\x42\x5c\x82\xfa\xe9\x4b\x96\x3b"
12067 "\x7f\x89\x8b\xf9\xf1\x87\xda\xf0"
12068 "\x87\xef\x13\x5d\xf0\xe2\xc5\xc1"
12069 "\xed\x14\xa9\x57\x19\x63\x40\x04"
12070 "\x24\xeb\x6e\x19\xd1\x3d\x70\x78"
12071 "\xeb\xda\x55\x70\x2c\x4f\x41\x5b"
12072 "\x56\x9f\x1a\xd3\xac\xf1\xc0\xc3"
12073 "\x21\xec\xd7\xd2\x55\x32\x7c\x2e"
12074 "\x3c\x48\x8e\xb4\x85\x35\x47\xfe"
12075 "\xe2\x88\x79\x98\x6a\xc9\x8d\xff"
12076 "\xe9\x89\x6e\xb8\xe2\x97\x00\xbd"
12077 "\xa4\x8f\xba\xd0\x8c\xcb\x79\x99"
12078 "\xb3\xb2\xb2\x7a\xc3\xb7\xef\x75"
12079 "\x23\x52\x76\xc3\x50\x6e\x66\xf8"
12080 "\xa2\xe2\xce\xba\x40\x21\x3f\xc9"
12081 "\x0a\x32\x7f\xf7\x08\x8c\x66\xcf"
12082 "\xd3\xdf\x57\x59\x83\xb8\xe1\x85"
12083 "\xd6\x8f\xfb\x48\x1f\x3a\xc4\x2f"
12084 "\xb4\x2d\x58\xab\xd8\x7f\x5e\x3a"
12085 "\xbc\x62\x3e\xe2\x6a\x52\x0d\x76"
12086 "\x2f\x1c\x1a\x30\xed\x95\x2a\x44"
12087 "\x35\xa5\x83\x04\x84\x01\x99\x56"
12088 "\xb7\xe3\x10\x96\xfa\xdc\x19\xdd"
12089 "\xe2\x7f\xcb\xa0\x49\x1b\xff\x4c"
12090 "\x73\xf6\xbb\x94\x00\xe8\xa9\x3d"
12091 "\xe2\x20\xe9\x3f\xfa\x07\x5d\x77"
12092 "\x06\xd5\x4f\x4d\x02\xb8\x40\x1b"
12093 "\x30\xed\x1a\x50\x19\xef\xc4\x2c"
12094 "\x02\xd9\xc5\xd3\x11\x33\x37\xe5"
12095 "\x2b\xa3\x95\xa6\xee\xd8\x74\x1d"
12096 "\x68\xa0\xeb\xbf\xdd\x5e\x99\x96"
12097 "\x91\xc3\x94\x24\xa5\x12\xa2\x37"
12098 "\xb3\xac\xcf\x2a\xfd\x55\x34\xfe"
12099 "\x79\x92\x3e\xe6\x1b\x49\x57\x5d"
12100 "\x93\x6c\x01\xf7\xcc\x4e\x20\xd1"
12101 "\xb2\x1a\xd8\x4c\xbd\x1d\x10\xe9"
12102 "\x5a\xa8\x92\x7f\xba\xe6\x0c\x95",
12103 .ilen = 512,
12104 .result = "\x05\x11\xb7\x18\xab\xc6\x2d\xac"
12105 "\x70\x5d\xf6\x22\x94\xcd\xe5\x6c"
12106 "\x17\x6b\xf6\x1c\xf0\xf3\x6e\xf8"
12107 "\x50\x38\x1f\x71\x49\xb6\x57\xd6"
12108 "\x8f\xcb\x8d\x6b\xe3\xa6\x29\x90"
12109 "\xfe\x2a\x62\x82\xae\x6d\x8b\xf6"
12110 "\xad\x1e\x9e\x20\x5f\x38\xbe\x04"
12111 "\xda\x10\x8e\xed\xa2\xa4\x87\xab"
12112 "\xda\x6b\xb4\x0c\x75\xba\xd3\x7c"
12113 "\xc9\xac\x42\x31\x95\x7c\xc9\x04"
12114 "\xeb\xd5\x6e\x32\x69\x8a\xdb\xa6"
12115 "\x15\xd7\x3f\x4f\x2f\x66\x69\x03"
12116 "\x9c\x1f\x54\x0f\xde\x1f\xf3\x65"
12117 "\x4c\x96\x12\xed\x7c\x92\x03\x01"
12118 "\x6f\xbc\x35\x93\xac\xf1\x27\xf1"
12119 "\xb4\x96\x82\x5a\x5f\xb0\xa0\x50"
12120 "\x89\xa4\x8e\x66\x44\x85\xcc\xfd"
12121 "\x33\x14\x70\xe3\x96\xb2\xc3\xd3"
12122 "\xbb\x54\x5a\x1a\xf9\x74\xa2\xc5"
12123 "\x2d\x64\x75\xdd\xb4\x54\xe6\x74"
12124 "\x8c\xd3\x9d\x9e\x86\xab\x51\x53"
12125 "\xb7\x93\x3e\x6f\xd0\x4e\x2c\x40"
12126 "\xf6\xa8\x2e\x3e\x9d\xf4\x66\xa5"
12127 "\x76\x12\x73\x44\x1a\x56\xd7\x72"
12128 "\x88\xcd\x21\x8c\x4c\x0f\xfe\xda"
12129 "\x95\xe0\x3a\xa6\xa5\x84\x46\xcd"
12130 "\xd5\x3e\x9d\x3a\xe2\x67\xe6\x60"
12131 "\x1a\xe2\x70\x85\x58\xc2\x1b\x09"
12132 "\xe1\xd7\x2c\xca\xad\xa8\x8f\xf9"
12133 "\xac\xb3\x0e\xdb\xca\x2e\xe2\xb8"
12134 "\x51\x71\xd9\x3c\x6c\xf1\x56\xf8"
12135 "\xea\x9c\xf1\xfb\x0c\xe6\xb7\x10"
12136 "\x1c\xf8\xa9\x7c\xe8\x53\x35\xc1"
12137 "\x90\x3e\x76\x4a\x74\xa4\x21\x2c"
12138 "\xf6\x2c\x4e\x0f\x94\x3a\x88\x2e"
12139 "\x41\x09\x6a\x33\x7d\xf6\xdd\x3f"
12140 "\x8d\x23\x31\x74\x84\xeb\x88\x6e"
12141 "\xcc\xb9\xbc\x22\x83\x19\x07\x22"
12142 "\xa5\x2d\xdf\xa5\xf3\x80\x85\x78"
12143 "\x84\x39\x6a\x6d\x6a\x99\x4f\xa5"
12144 "\x15\xfe\x46\xb0\xe4\x6c\xa5\x41"
12145 "\x3c\xce\x8f\x42\x60\x71\xa7\x75"
12146 "\x08\x40\x65\x8a\x82\xbf\xf5\x43"
12147 "\x71\x96\xa9\x4d\x44\x8a\x20\xbe"
12148 "\xfa\x4d\xbb\xc0\x7d\x31\x96\x65"
12149 "\xe7\x75\xe5\x3e\xfd\x92\x3b\xc9"
12150 "\x55\xbb\x16\x7e\xf7\xc2\x8c\xa4"
12151 "\x40\x1d\xe5\xef\x0e\xdf\xe4\x9a"
12152 "\x62\x73\x65\xfd\x46\x63\x25\x3d"
12153 "\x2b\xaf\xe5\x64\xfe\xa5\x5c\xcf"
12154 "\x24\xf3\xb4\xac\x64\xba\xdf\x4b"
12155 "\xc6\x96\x7d\x81\x2d\x8d\x97\xf7"
12156 "\xc5\x68\x77\x84\x32\x2b\xcc\x85"
12157 "\x74\x96\xf0\x12\x77\x61\xb9\xeb"
12158 "\x71\xaa\x82\xcb\x1c\xdb\x89\xc8"
12159 "\xc6\xb5\xe3\x5c\x7d\x39\x07\x24"
12160 "\xda\x39\x87\x45\xc0\x2b\xbb\x01"
12161 "\xac\xbc\x2a\x5c\x7f\xfc\xe8\xce"
12162 "\x6d\x9c\x6f\xed\xd3\xc1\xa1\xd6"
12163 "\xc5\x55\xa9\x66\x2f\xe1\xc8\x32"
12164 "\xa6\x5d\xa4\x3a\x98\x73\xe8\x45"
12165 "\xa4\xc7\xa8\xb4\xf6\x13\x03\xf6"
12166 "\xe9\x2e\xc4\x29\x0f\x84\xdb\xc4"
12167 "\x21\xc4\xc2\x75\x67\x89\x37\x0a",
12168 .rlen = 512,
12169 },
12170};
12171
12172static struct cipher_testvec camellia_xts_enc_tv_template[] = {
12173 /* Generated from AES-XTS test vectors */
12174 {
12175 .key = "\x00\x00\x00\x00\x00\x00\x00\x00"
12176 "\x00\x00\x00\x00\x00\x00\x00\x00"
12177 "\x00\x00\x00\x00\x00\x00\x00\x00"
12178 "\x00\x00\x00\x00\x00\x00\x00\x00",
12179 .klen = 32,
12180 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00"
12181 "\x00\x00\x00\x00\x00\x00\x00\x00",
12182 .input = "\x00\x00\x00\x00\x00\x00\x00\x00"
12183 "\x00\x00\x00\x00\x00\x00\x00\x00"
12184 "\x00\x00\x00\x00\x00\x00\x00\x00"
12185 "\x00\x00\x00\x00\x00\x00\x00\x00",
12186 .ilen = 32,
12187 .result = "\x06\xcb\xa5\xf1\x04\x63\xb2\x41"
12188 "\xdc\xca\xfa\x09\xba\x74\xb9\x05"
12189 "\x78\xba\xa4\xf8\x67\x4d\x7e\xad"
12190 "\x20\x18\xf5\x0c\x41\x16\x2a\x61",
12191 .rlen = 32,
12192 }, {
12193 .key = "\x11\x11\x11\x11\x11\x11\x11\x11"
12194 "\x11\x11\x11\x11\x11\x11\x11\x11"
12195 "\x22\x22\x22\x22\x22\x22\x22\x22"
12196 "\x22\x22\x22\x22\x22\x22\x22\x22",
12197 .klen = 32,
12198 .iv = "\x33\x33\x33\x33\x33\x00\x00\x00"
12199 "\x00\x00\x00\x00\x00\x00\x00\x00",
12200 .input = "\x44\x44\x44\x44\x44\x44\x44\x44"
12201 "\x44\x44\x44\x44\x44\x44\x44\x44"
12202 "\x44\x44\x44\x44\x44\x44\x44\x44"
12203 "\x44\x44\x44\x44\x44\x44\x44\x44",
12204 .ilen = 32,
12205 .result = "\xc2\xb9\xdc\x44\x1d\xdf\xf2\x86"
12206 "\x8d\x35\x42\x0a\xa5\x5e\x3d\x4f"
12207 "\xb5\x37\x06\xff\xbd\xd4\x91\x70"
12208 "\x80\x1f\xb2\x39\x10\x89\x44\xf5",
12209 .rlen = 32,
12210 }, {
12211 .key = "\xff\xfe\xfd\xfc\xfb\xfa\xf9\xf8"
12212 "\xf7\xf6\xf5\xf4\xf3\xf2\xf1\xf0"
12213 "\x22\x22\x22\x22\x22\x22\x22\x22"
12214 "\x22\x22\x22\x22\x22\x22\x22\x22",
12215 .klen = 32,
12216 .iv = "\x33\x33\x33\x33\x33\x00\x00\x00"
12217 "\x00\x00\x00\x00\x00\x00\x00\x00",
12218 .input = "\x44\x44\x44\x44\x44\x44\x44\x44"
12219 "\x44\x44\x44\x44\x44\x44\x44\x44"
12220 "\x44\x44\x44\x44\x44\x44\x44\x44"
12221 "\x44\x44\x44\x44\x44\x44\x44\x44",
12222 .ilen = 32,
12223 .result = "\x52\x1f\x9d\xf5\x5a\x58\x5a\x7e"
12224 "\x9f\xd0\x8e\x02\x9c\x9a\x6a\xa7"
12225 "\xb4\x3b\xce\xe7\x17\xaa\x89\x6a"
12226 "\x35\x3c\x6b\xb5\x61\x1c\x79\x38",
12227 .rlen = 32,
12228 }, {
12229 .key = "\x27\x18\x28\x18\x28\x45\x90\x45"
12230 "\x23\x53\x60\x28\x74\x71\x35\x26"
12231 "\x31\x41\x59\x26\x53\x58\x97\x93"
12232 "\x23\x84\x62\x64\x33\x83\x27\x95",
12233 .klen = 32,
12234 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00"
12235 "\x00\x00\x00\x00\x00\x00\x00\x00",
12236 .input = "\x00\x01\x02\x03\x04\x05\x06\x07"
12237 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f"
12238 "\x10\x11\x12\x13\x14\x15\x16\x17"
12239 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f"
12240 "\x20\x21\x22\x23\x24\x25\x26\x27"
12241 "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f"
12242 "\x30\x31\x32\x33\x34\x35\x36\x37"
12243 "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f"
12244 "\x40\x41\x42\x43\x44\x45\x46\x47"
12245 "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f"
12246 "\x50\x51\x52\x53\x54\x55\x56\x57"
12247 "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f"
12248 "\x60\x61\x62\x63\x64\x65\x66\x67"
12249 "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f"
12250 "\x70\x71\x72\x73\x74\x75\x76\x77"
12251 "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f"
12252 "\x80\x81\x82\x83\x84\x85\x86\x87"
12253 "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f"
12254 "\x90\x91\x92\x93\x94\x95\x96\x97"
12255 "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f"
12256 "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7"
12257 "\xa8\xa9\xaa\xab\xac\xad\xae\xaf"
12258 "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7"
12259 "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf"
12260 "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7"
12261 "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf"
12262 "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7"
12263 "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf"
12264 "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7"
12265 "\xe8\xe9\xea\xeb\xec\xed\xee\xef"
12266 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7"
12267 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff"
12268 "\x00\x01\x02\x03\x04\x05\x06\x07"
12269 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f"
12270 "\x10\x11\x12\x13\x14\x15\x16\x17"
12271 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f"
12272 "\x20\x21\x22\x23\x24\x25\x26\x27"
12273 "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f"
12274 "\x30\x31\x32\x33\x34\x35\x36\x37"
12275 "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f"
12276 "\x40\x41\x42\x43\x44\x45\x46\x47"
12277 "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f"
12278 "\x50\x51\x52\x53\x54\x55\x56\x57"
12279 "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f"
12280 "\x60\x61\x62\x63\x64\x65\x66\x67"
12281 "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f"
12282 "\x70\x71\x72\x73\x74\x75\x76\x77"
12283 "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f"
12284 "\x80\x81\x82\x83\x84\x85\x86\x87"
12285 "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f"
12286 "\x90\x91\x92\x93\x94\x95\x96\x97"
12287 "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f"
12288 "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7"
12289 "\xa8\xa9\xaa\xab\xac\xad\xae\xaf"
12290 "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7"
12291 "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf"
12292 "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7"
12293 "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf"
12294 "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7"
12295 "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf"
12296 "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7"
12297 "\xe8\xe9\xea\xeb\xec\xed\xee\xef"
12298 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7"
12299 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff",
12300 .ilen = 512,
12301 .result = "\xc7\xf9\x0a\xaa\xcb\xb5\x8f\x33"
12302 "\x60\xc3\xe9\x47\x90\xb7\x50\x57"
12303 "\xa3\xad\x81\x2f\xf5\x22\x96\x02"
12304 "\xaa\x7f\xea\xac\x29\x78\xca\x2a"
12305 "\x7c\xcd\x31\x1a\x3c\x40\x0a\x73"
12306 "\x09\x66\xad\x72\x0e\x4d\x5d\x77"
12307 "\xbc\xb8\x76\x80\x37\x59\xa9\x01"
12308 "\x9e\xfb\xdb\x6c\x93\xef\xb6\x8d"
12309 "\x1e\xc1\x94\xa8\xd4\xb5\xb0\x01"
12310 "\xd5\x01\x97\x28\xcd\x7a\x1f\xe8"
12311 "\x08\xda\x76\x00\x65\xcf\x7b\x31"
12312 "\xc6\xfa\xf2\x3b\x00\xa7\x6a\x9e"
12313 "\x6c\x43\x80\x87\xe0\xbb\x4e\xe5"
12314 "\xdc\x8a\xdf\xc3\x1d\x1b\x41\x04"
12315 "\xfb\x54\xdd\x29\x27\xc2\x65\x17"
12316 "\x36\x88\xb0\x85\x8d\x73\x7e\x4b"
12317 "\x1d\x16\x8a\x52\xbc\xa6\xbc\xa4"
12318 "\x8c\xd1\x04\x16\xbf\x8c\x01\x0f"
12319 "\x7e\x6b\x59\x15\x29\xd1\x9b\xd3"
12320 "\x6c\xee\xac\xdc\x45\x58\xca\x5b"
12321 "\x70\x0e\x6a\x12\x86\x82\x79\x9f"
12322 "\x16\xd4\x9d\x67\xcd\x70\x65\x26"
12323 "\x21\x72\x1e\xa1\x94\x8a\x83\x0c"
12324 "\x92\x42\x58\x5e\xa2\xc5\x31\xf3"
12325 "\x7b\xd1\x31\xd4\x15\x80\x31\x61"
12326 "\x5c\x53\x10\xdd\xea\xc8\x83\x5c"
12327 "\x7d\xa7\x05\x66\xcc\x1e\xbb\x05"
12328 "\x47\xae\xb4\x0f\x84\xd8\xf6\xb5"
12329 "\xa1\xc6\x52\x00\x52\xe8\xdc\xd9"
12330 "\x16\x31\xb2\x47\x91\x67\xaa\x28"
12331 "\x2c\x29\x85\xa3\xf7\xf2\x24\x93"
12332 "\x23\x80\x1f\xa8\x1b\x82\x8d\xdc"
12333 "\x9f\x0b\xcd\xb4\x3c\x20\xbc\xec"
12334 "\x4f\xc7\xee\xf8\xfd\xd9\xfb\x7e"
12335 "\x3f\x0d\x23\xfa\x3f\xa7\xcc\x66"
12336 "\x1c\xfe\xa6\x86\xf6\xf7\x85\xc7"
12337 "\x43\xc1\xd4\xfc\xe4\x79\xc9\x1d"
12338 "\xf8\x89\xcd\x20\x27\x84\x5d\x5c"
12339 "\x8e\x4f\x1f\xeb\x08\x21\x4f\xa3"
12340 "\xe0\x7e\x0b\x9c\xe7\x42\xcf\xb7"
12341 "\x3f\x43\xcc\x86\x71\x34\x6a\xd9"
12342 "\x5e\xec\x8f\x36\xc9\x0a\x03\xfe"
12343 "\x18\x41\xdc\x9e\x2e\x75\x20\x3e"
12344 "\xcc\x77\xe0\x8f\xe8\x43\x37\x4c"
12345 "\xed\x1a\x5a\xb3\xfa\x43\xc9\x71"
12346 "\x9f\xc5\xce\xcf\xff\xe7\x77\x1e"
12347 "\x35\x93\xde\x6b\xc0\x6a\x7e\xa9"
12348 "\x34\xb8\x27\x74\x08\xda\xf2\x4a"
12349 "\x23\x5b\x9f\x55\x3a\x57\x82\x52"
12350 "\xea\x6d\xc3\xc7\xf2\xc8\xb5\xdc"
12351 "\xc5\xb9\xbb\xaa\xf2\x29\x9f\x49"
12352 "\x7a\xef\xfe\xdc\x9f\xc9\x28\xe2"
12353 "\x96\x0b\x35\x84\x05\x0d\xd6\x2a"
12354 "\xea\x5a\xbf\x69\xde\xee\x4f\x8f"
12355 "\x84\xb9\xcf\xa7\x57\xea\xe0\xe8"
12356 "\x96\xef\x0f\x0e\xec\xc7\xa6\x74"
12357 "\xb1\xfe\x7a\x6d\x11\xdd\x0e\x15"
12358 "\x4a\x1e\x73\x7f\x55\xea\xf6\xe1"
12359 "\x5b\xb6\x71\xda\xb0\x0c\xba\x26"
12360 "\x5c\x48\x38\x6d\x1c\x32\xb2\x7d"
12361 "\x05\x87\xc2\x1e\x7e\x2d\xd4\x33"
12362 "\xcc\x06\xdb\xe7\x82\x29\x63\xd1"
12363 "\x52\x84\x4f\xee\x27\xe8\x02\xd4"
12364 "\x34\x3c\x69\xc2\xbd\x20\xe6\x7a",
12365 .rlen = 512,
12366 }, {
12367 .key = "\x27\x18\x28\x18\x28\x45\x90\x45"
12368 "\x23\x53\x60\x28\x74\x71\x35\x26"
12369 "\x62\x49\x77\x57\x24\x70\x93\x69"
12370 "\x99\x59\x57\x49\x66\x96\x76\x27"
12371 "\x31\x41\x59\x26\x53\x58\x97\x93"
12372 "\x23\x84\x62\x64\x33\x83\x27\x95"
12373 "\x02\x88\x41\x97\x16\x93\x99\x37"
12374 "\x51\x05\x82\x09\x74\x94\x45\x92",
12375 .klen = 64,
12376 .iv = "\xff\x00\x00\x00\x00\x00\x00\x00"
12377 "\x00\x00\x00\x00\x00\x00\x00\x00",
12378 .input = "\x00\x01\x02\x03\x04\x05\x06\x07"
12379 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f"
12380 "\x10\x11\x12\x13\x14\x15\x16\x17"
12381 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f"
12382 "\x20\x21\x22\x23\x24\x25\x26\x27"
12383 "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f"
12384 "\x30\x31\x32\x33\x34\x35\x36\x37"
12385 "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f"
12386 "\x40\x41\x42\x43\x44\x45\x46\x47"
12387 "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f"
12388 "\x50\x51\x52\x53\x54\x55\x56\x57"
12389 "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f"
12390 "\x60\x61\x62\x63\x64\x65\x66\x67"
12391 "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f"
12392 "\x70\x71\x72\x73\x74\x75\x76\x77"
12393 "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f"
12394 "\x80\x81\x82\x83\x84\x85\x86\x87"
12395 "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f"
12396 "\x90\x91\x92\x93\x94\x95\x96\x97"
12397 "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f"
12398 "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7"
12399 "\xa8\xa9\xaa\xab\xac\xad\xae\xaf"
12400 "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7"
12401 "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf"
12402 "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7"
12403 "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf"
12404 "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7"
12405 "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf"
12406 "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7"
12407 "\xe8\xe9\xea\xeb\xec\xed\xee\xef"
12408 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7"
12409 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff"
12410 "\x00\x01\x02\x03\x04\x05\x06\x07"
12411 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f"
12412 "\x10\x11\x12\x13\x14\x15\x16\x17"
12413 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f"
12414 "\x20\x21\x22\x23\x24\x25\x26\x27"
12415 "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f"
12416 "\x30\x31\x32\x33\x34\x35\x36\x37"
12417 "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f"
12418 "\x40\x41\x42\x43\x44\x45\x46\x47"
12419 "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f"
12420 "\x50\x51\x52\x53\x54\x55\x56\x57"
12421 "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f"
12422 "\x60\x61\x62\x63\x64\x65\x66\x67"
12423 "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f"
12424 "\x70\x71\x72\x73\x74\x75\x76\x77"
12425 "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f"
12426 "\x80\x81\x82\x83\x84\x85\x86\x87"
12427 "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f"
12428 "\x90\x91\x92\x93\x94\x95\x96\x97"
12429 "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f"
12430 "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7"
12431 "\xa8\xa9\xaa\xab\xac\xad\xae\xaf"
12432 "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7"
12433 "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf"
12434 "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7"
12435 "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf"
12436 "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7"
12437 "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf"
12438 "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7"
12439 "\xe8\xe9\xea\xeb\xec\xed\xee\xef"
12440 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7"
12441 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff",
12442 .ilen = 512,
12443 .result = "\x49\xcd\xb8\xbf\x2f\x73\x37\x28"
12444 "\x9a\x7f\x6e\x57\x55\xb8\x07\x88"
12445 "\x4a\x0d\x8b\x55\x60\xed\xb6\x7b"
12446 "\xf1\x74\xac\x96\x05\x7b\x32\xca"
12447 "\xd1\x4e\xf1\x58\x29\x16\x24\x6c"
12448 "\xf2\xb3\xe4\x88\x84\xac\x4d\xee"
12449 "\x97\x07\x82\xf0\x07\x12\x38\x0a"
12450 "\x67\x62\xaf\xfd\x85\x9f\x0a\x55"
12451 "\xa5\x20\xc5\x60\xe4\x68\x53\xa4"
12452 "\x0e\x2e\x65\xe3\xe4\x0c\x30\x7c"
12453 "\x1c\x01\x4f\x55\xa9\x13\xeb\x25"
12454 "\x21\x87\xbc\xd3\xe7\x67\x4f\x38"
12455 "\xa8\x14\x25\x71\xe9\x2e\x4c\x21"
12456 "\x41\x82\x0c\x45\x39\x35\xa8\x75"
12457 "\x03\x29\x01\x84\x8c\xab\x48\xbe"
12458 "\x11\x56\x22\x67\xb7\x67\x1a\x09"
12459 "\xa1\x72\x25\x41\x3c\x39\x65\x80"
12460 "\x7d\x2f\xf8\x2c\x73\x04\x58\x9d"
12461 "\xdd\x16\x8b\x63\x70\x4e\xc5\x17"
12462 "\x21\xe0\x84\x51\x4b\x6f\x05\x52"
12463 "\xe3\x63\x34\xfa\xa4\xaf\x33\x20"
12464 "\xc1\xae\x32\xc4\xb8\x2b\xdb\x76"
12465 "\xd9\x02\x31\x2f\xa3\xc6\xd0\x7b"
12466 "\xaf\x1b\x84\xe3\x9b\xbf\xa6\xe0"
12467 "\xb8\x8a\x13\x88\x71\xf4\x11\xa5"
12468 "\xe9\xa9\x10\x33\xe0\xbe\x49\x89"
12469 "\x41\x22\xf5\x9d\x80\x3e\x3b\x76"
12470 "\x01\x16\x50\x6e\x7c\x6a\x81\xe9"
12471 "\x13\x2c\xde\xb2\x5f\x79\xba\xb2"
12472 "\xb1\x75\xae\xd2\x07\x98\x4b\x69"
12473 "\xae\x7d\x5b\x90\xc2\x6c\xe6\x98"
12474 "\xd3\x4c\xa1\xa3\x9c\xc9\x33\x6a"
12475 "\x0d\x23\xb1\x79\x25\x13\x4b\xe5"
12476 "\xaf\x93\x20\x5c\x7f\x06\x7a\x34"
12477 "\x0b\x78\xe3\x67\x26\xe0\xad\x95"
12478 "\xc5\x4e\x26\x22\xcf\x73\x77\x62"
12479 "\x3e\x10\xd7\x90\x4b\x52\x1c\xc9"
12480 "\xef\x38\x52\x18\x0e\x29\x7e\xef"
12481 "\x34\xfe\x31\x95\xc5\xbc\xa8\xe2"
12482 "\xa8\x4e\x9f\xea\xa6\xf0\xfe\x5d"
12483 "\xc5\x39\x86\xed\x2f\x6d\xa0\xfe"
12484 "\x96\xcd\x41\x10\x78\x4e\x0c\xc9"
12485 "\xc3\x6d\x0f\xb7\xe8\xe0\x62\xab"
12486 "\x8b\xf1\x21\x89\xa1\x12\xaa\xfa"
12487 "\x9d\x70\xbe\x4c\xa8\x98\x89\x01"
12488 "\xb9\xe2\x61\xde\x0c\x4a\x0b\xaa"
12489 "\x89\xf5\x14\x79\x18\x8f\x3b\x0d"
12490 "\x21\x17\xf8\x59\x15\x24\x64\x22"
12491 "\x57\x48\x80\xd5\x3d\x92\x30\x07"
12492 "\xd9\xa1\x4a\x23\x16\x43\x48\x0e"
12493 "\x2b\x2d\x1b\x87\xef\x7e\xbd\xfa"
12494 "\x49\xbc\x7e\x68\x6e\xa8\x46\x95"
12495 "\xad\x5e\xfe\x0a\xa8\xd3\x1a\x5d"
12496 "\x6b\x84\xf3\x00\xba\x52\x05\x02"
12497 "\xe3\x96\x4e\xb6\x79\x3f\x43\xd3"
12498 "\x4d\x3f\xd6\xab\x0a\xc4\x75\x2d"
12499 "\xd1\x08\xc3\x6a\xc8\x37\x29\xa0"
12500 "\xcc\x9a\x05\xdd\x5c\xe1\xff\x66"
12501 "\xf2\x7a\x1d\xf2\xaf\xa9\x48\x89"
12502 "\xf5\x21\x0f\x02\x48\x83\x74\xbf"
12503 "\x2e\xe6\x93\x7b\xa0\xf4\xb1\x2b"
12504 "\xb1\x02\x0a\x5c\x79\x19\x3b\x75"
12505 "\xb7\x16\xd8\x12\x5c\xcd\x7d\x4e"
12506 "\xd5\xc6\x99\xcc\x4e\x6c\x94\x95",
12507 .rlen = 512,
12508 },
12509};
12510
12511static struct cipher_testvec camellia_xts_dec_tv_template[] = {
12512 /* Generated from AES-XTS test vectors */
12513 /* same as enc vectors with input and result reversed */
12514 {
12515 .key = "\x00\x00\x00\x00\x00\x00\x00\x00"
12516 "\x00\x00\x00\x00\x00\x00\x00\x00"
12517 "\x00\x00\x00\x00\x00\x00\x00\x00"
12518 "\x00\x00\x00\x00\x00\x00\x00\x00",
12519 .klen = 32,
12520 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00"
12521 "\x00\x00\x00\x00\x00\x00\x00\x00",
12522 .input = "\x06\xcb\xa5\xf1\x04\x63\xb2\x41"
12523 "\xdc\xca\xfa\x09\xba\x74\xb9\x05"
12524 "\x78\xba\xa4\xf8\x67\x4d\x7e\xad"
12525 "\x20\x18\xf5\x0c\x41\x16\x2a\x61",
12526 .ilen = 32,
12527 .result = "\x00\x00\x00\x00\x00\x00\x00\x00"
12528 "\x00\x00\x00\x00\x00\x00\x00\x00"
12529 "\x00\x00\x00\x00\x00\x00\x00\x00"
12530 "\x00\x00\x00\x00\x00\x00\x00\x00",
12531 .rlen = 32,
12532 }, {
12533 .key = "\x11\x11\x11\x11\x11\x11\x11\x11"
12534 "\x11\x11\x11\x11\x11\x11\x11\x11"
12535 "\x22\x22\x22\x22\x22\x22\x22\x22"
12536 "\x22\x22\x22\x22\x22\x22\x22\x22",
12537 .klen = 32,
12538 .iv = "\x33\x33\x33\x33\x33\x00\x00\x00"
12539 "\x00\x00\x00\x00\x00\x00\x00\x00",
12540 .input = "\xc2\xb9\xdc\x44\x1d\xdf\xf2\x86"
12541 "\x8d\x35\x42\x0a\xa5\x5e\x3d\x4f"
12542 "\xb5\x37\x06\xff\xbd\xd4\x91\x70"
12543 "\x80\x1f\xb2\x39\x10\x89\x44\xf5",
12544 .ilen = 32,
12545 .result = "\x44\x44\x44\x44\x44\x44\x44\x44"
12546 "\x44\x44\x44\x44\x44\x44\x44\x44"
12547 "\x44\x44\x44\x44\x44\x44\x44\x44"
12548 "\x44\x44\x44\x44\x44\x44\x44\x44",
12549 .rlen = 32,
12550 }, {
12551 .key = "\xff\xfe\xfd\xfc\xfb\xfa\xf9\xf8"
12552 "\xf7\xf6\xf5\xf4\xf3\xf2\xf1\xf0"
12553 "\x22\x22\x22\x22\x22\x22\x22\x22"
12554 "\x22\x22\x22\x22\x22\x22\x22\x22",
12555 .klen = 32,
12556 .iv = "\x33\x33\x33\x33\x33\x00\x00\x00"
12557 "\x00\x00\x00\x00\x00\x00\x00\x00",
12558 .input = "\x52\x1f\x9d\xf5\x5a\x58\x5a\x7e"
12559 "\x9f\xd0\x8e\x02\x9c\x9a\x6a\xa7"
12560 "\xb4\x3b\xce\xe7\x17\xaa\x89\x6a"
12561 "\x35\x3c\x6b\xb5\x61\x1c\x79\x38",
12562 .ilen = 32,
12563 .result = "\x44\x44\x44\x44\x44\x44\x44\x44"
12564 "\x44\x44\x44\x44\x44\x44\x44\x44"
12565 "\x44\x44\x44\x44\x44\x44\x44\x44"
12566 "\x44\x44\x44\x44\x44\x44\x44\x44",
12567 .rlen = 32,
12568 }, {
12569 .key = "\x27\x18\x28\x18\x28\x45\x90\x45"
12570 "\x23\x53\x60\x28\x74\x71\x35\x26"
12571 "\x31\x41\x59\x26\x53\x58\x97\x93"
12572 "\x23\x84\x62\x64\x33\x83\x27\x95",
12573 .klen = 32,
12574 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00"
12575 "\x00\x00\x00\x00\x00\x00\x00\x00",
12576 .input = "\xc7\xf9\x0a\xaa\xcb\xb5\x8f\x33"
12577 "\x60\xc3\xe9\x47\x90\xb7\x50\x57"
12578 "\xa3\xad\x81\x2f\xf5\x22\x96\x02"
12579 "\xaa\x7f\xea\xac\x29\x78\xca\x2a"
12580 "\x7c\xcd\x31\x1a\x3c\x40\x0a\x73"
12581 "\x09\x66\xad\x72\x0e\x4d\x5d\x77"
12582 "\xbc\xb8\x76\x80\x37\x59\xa9\x01"
12583 "\x9e\xfb\xdb\x6c\x93\xef\xb6\x8d"
12584 "\x1e\xc1\x94\xa8\xd4\xb5\xb0\x01"
12585 "\xd5\x01\x97\x28\xcd\x7a\x1f\xe8"
12586 "\x08\xda\x76\x00\x65\xcf\x7b\x31"
12587 "\xc6\xfa\xf2\x3b\x00\xa7\x6a\x9e"
12588 "\x6c\x43\x80\x87\xe0\xbb\x4e\xe5"
12589 "\xdc\x8a\xdf\xc3\x1d\x1b\x41\x04"
12590 "\xfb\x54\xdd\x29\x27\xc2\x65\x17"
12591 "\x36\x88\xb0\x85\x8d\x73\x7e\x4b"
12592 "\x1d\x16\x8a\x52\xbc\xa6\xbc\xa4"
12593 "\x8c\xd1\x04\x16\xbf\x8c\x01\x0f"
12594 "\x7e\x6b\x59\x15\x29\xd1\x9b\xd3"
12595 "\x6c\xee\xac\xdc\x45\x58\xca\x5b"
12596 "\x70\x0e\x6a\x12\x86\x82\x79\x9f"
12597 "\x16\xd4\x9d\x67\xcd\x70\x65\x26"
12598 "\x21\x72\x1e\xa1\x94\x8a\x83\x0c"
12599 "\x92\x42\x58\x5e\xa2\xc5\x31\xf3"
12600 "\x7b\xd1\x31\xd4\x15\x80\x31\x61"
12601 "\x5c\x53\x10\xdd\xea\xc8\x83\x5c"
12602 "\x7d\xa7\x05\x66\xcc\x1e\xbb\x05"
12603 "\x47\xae\xb4\x0f\x84\xd8\xf6\xb5"
12604 "\xa1\xc6\x52\x00\x52\xe8\xdc\xd9"
12605 "\x16\x31\xb2\x47\x91\x67\xaa\x28"
12606 "\x2c\x29\x85\xa3\xf7\xf2\x24\x93"
12607 "\x23\x80\x1f\xa8\x1b\x82\x8d\xdc"
12608 "\x9f\x0b\xcd\xb4\x3c\x20\xbc\xec"
12609 "\x4f\xc7\xee\xf8\xfd\xd9\xfb\x7e"
12610 "\x3f\x0d\x23\xfa\x3f\xa7\xcc\x66"
12611 "\x1c\xfe\xa6\x86\xf6\xf7\x85\xc7"
12612 "\x43\xc1\xd4\xfc\xe4\x79\xc9\x1d"
12613 "\xf8\x89\xcd\x20\x27\x84\x5d\x5c"
12614 "\x8e\x4f\x1f\xeb\x08\x21\x4f\xa3"
12615 "\xe0\x7e\x0b\x9c\xe7\x42\xcf\xb7"
12616 "\x3f\x43\xcc\x86\x71\x34\x6a\xd9"
12617 "\x5e\xec\x8f\x36\xc9\x0a\x03\xfe"
12618 "\x18\x41\xdc\x9e\x2e\x75\x20\x3e"
12619 "\xcc\x77\xe0\x8f\xe8\x43\x37\x4c"
12620 "\xed\x1a\x5a\xb3\xfa\x43\xc9\x71"
12621 "\x9f\xc5\xce\xcf\xff\xe7\x77\x1e"
12622 "\x35\x93\xde\x6b\xc0\x6a\x7e\xa9"
12623 "\x34\xb8\x27\x74\x08\xda\xf2\x4a"
12624 "\x23\x5b\x9f\x55\x3a\x57\x82\x52"
12625 "\xea\x6d\xc3\xc7\xf2\xc8\xb5\xdc"
12626 "\xc5\xb9\xbb\xaa\xf2\x29\x9f\x49"
12627 "\x7a\xef\xfe\xdc\x9f\xc9\x28\xe2"
12628 "\x96\x0b\x35\x84\x05\x0d\xd6\x2a"
12629 "\xea\x5a\xbf\x69\xde\xee\x4f\x8f"
12630 "\x84\xb9\xcf\xa7\x57\xea\xe0\xe8"
12631 "\x96\xef\x0f\x0e\xec\xc7\xa6\x74"
12632 "\xb1\xfe\x7a\x6d\x11\xdd\x0e\x15"
12633 "\x4a\x1e\x73\x7f\x55\xea\xf6\xe1"
12634 "\x5b\xb6\x71\xda\xb0\x0c\xba\x26"
12635 "\x5c\x48\x38\x6d\x1c\x32\xb2\x7d"
12636 "\x05\x87\xc2\x1e\x7e\x2d\xd4\x33"
12637 "\xcc\x06\xdb\xe7\x82\x29\x63\xd1"
12638 "\x52\x84\x4f\xee\x27\xe8\x02\xd4"
12639 "\x34\x3c\x69\xc2\xbd\x20\xe6\x7a",
12640 .ilen = 512,
12641 .result = "\x00\x01\x02\x03\x04\x05\x06\x07"
12642 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f"
12643 "\x10\x11\x12\x13\x14\x15\x16\x17"
12644 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f"
12645 "\x20\x21\x22\x23\x24\x25\x26\x27"
12646 "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f"
12647 "\x30\x31\x32\x33\x34\x35\x36\x37"
12648 "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f"
12649 "\x40\x41\x42\x43\x44\x45\x46\x47"
12650 "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f"
12651 "\x50\x51\x52\x53\x54\x55\x56\x57"
12652 "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f"
12653 "\x60\x61\x62\x63\x64\x65\x66\x67"
12654 "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f"
12655 "\x70\x71\x72\x73\x74\x75\x76\x77"
12656 "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f"
12657 "\x80\x81\x82\x83\x84\x85\x86\x87"
12658 "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f"
12659 "\x90\x91\x92\x93\x94\x95\x96\x97"
12660 "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f"
12661 "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7"
12662 "\xa8\xa9\xaa\xab\xac\xad\xae\xaf"
12663 "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7"
12664 "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf"
12665 "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7"
12666 "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf"
12667 "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7"
12668 "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf"
12669 "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7"
12670 "\xe8\xe9\xea\xeb\xec\xed\xee\xef"
12671 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7"
12672 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff"
12673 "\x00\x01\x02\x03\x04\x05\x06\x07"
12674 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f"
12675 "\x10\x11\x12\x13\x14\x15\x16\x17"
12676 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f"
12677 "\x20\x21\x22\x23\x24\x25\x26\x27"
12678 "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f"
12679 "\x30\x31\x32\x33\x34\x35\x36\x37"
12680 "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f"
12681 "\x40\x41\x42\x43\x44\x45\x46\x47"
12682 "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f"
12683 "\x50\x51\x52\x53\x54\x55\x56\x57"
12684 "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f"
12685 "\x60\x61\x62\x63\x64\x65\x66\x67"
12686 "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f"
12687 "\x70\x71\x72\x73\x74\x75\x76\x77"
12688 "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f"
12689 "\x80\x81\x82\x83\x84\x85\x86\x87"
12690 "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f"
12691 "\x90\x91\x92\x93\x94\x95\x96\x97"
12692 "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f"
12693 "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7"
12694 "\xa8\xa9\xaa\xab\xac\xad\xae\xaf"
12695 "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7"
12696 "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf"
12697 "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7"
12698 "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf"
12699 "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7"
12700 "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf"
12701 "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7"
12702 "\xe8\xe9\xea\xeb\xec\xed\xee\xef"
12703 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7"
12704 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff",
12705 .rlen = 512,
12706 }, {
12707 .key = "\x27\x18\x28\x18\x28\x45\x90\x45"
12708 "\x23\x53\x60\x28\x74\x71\x35\x26"
12709 "\x62\x49\x77\x57\x24\x70\x93\x69"
12710 "\x99\x59\x57\x49\x66\x96\x76\x27"
12711 "\x31\x41\x59\x26\x53\x58\x97\x93"
12712 "\x23\x84\x62\x64\x33\x83\x27\x95"
12713 "\x02\x88\x41\x97\x16\x93\x99\x37"
12714 "\x51\x05\x82\x09\x74\x94\x45\x92",
12715 .klen = 64,
12716 .iv = "\xff\x00\x00\x00\x00\x00\x00\x00"
12717 "\x00\x00\x00\x00\x00\x00\x00\x00",
12718 .input = "\x49\xcd\xb8\xbf\x2f\x73\x37\x28"
12719 "\x9a\x7f\x6e\x57\x55\xb8\x07\x88"
12720 "\x4a\x0d\x8b\x55\x60\xed\xb6\x7b"
12721 "\xf1\x74\xac\x96\x05\x7b\x32\xca"
12722 "\xd1\x4e\xf1\x58\x29\x16\x24\x6c"
12723 "\xf2\xb3\xe4\x88\x84\xac\x4d\xee"
12724 "\x97\x07\x82\xf0\x07\x12\x38\x0a"
12725 "\x67\x62\xaf\xfd\x85\x9f\x0a\x55"
12726 "\xa5\x20\xc5\x60\xe4\x68\x53\xa4"
12727 "\x0e\x2e\x65\xe3\xe4\x0c\x30\x7c"
12728 "\x1c\x01\x4f\x55\xa9\x13\xeb\x25"
12729 "\x21\x87\xbc\xd3\xe7\x67\x4f\x38"
12730 "\xa8\x14\x25\x71\xe9\x2e\x4c\x21"
12731 "\x41\x82\x0c\x45\x39\x35\xa8\x75"
12732 "\x03\x29\x01\x84\x8c\xab\x48\xbe"
12733 "\x11\x56\x22\x67\xb7\x67\x1a\x09"
12734 "\xa1\x72\x25\x41\x3c\x39\x65\x80"
12735 "\x7d\x2f\xf8\x2c\x73\x04\x58\x9d"
12736 "\xdd\x16\x8b\x63\x70\x4e\xc5\x17"
12737 "\x21\xe0\x84\x51\x4b\x6f\x05\x52"
12738 "\xe3\x63\x34\xfa\xa4\xaf\x33\x20"
12739 "\xc1\xae\x32\xc4\xb8\x2b\xdb\x76"
12740 "\xd9\x02\x31\x2f\xa3\xc6\xd0\x7b"
12741 "\xaf\x1b\x84\xe3\x9b\xbf\xa6\xe0"
12742 "\xb8\x8a\x13\x88\x71\xf4\x11\xa5"
12743 "\xe9\xa9\x10\x33\xe0\xbe\x49\x89"
12744 "\x41\x22\xf5\x9d\x80\x3e\x3b\x76"
12745 "\x01\x16\x50\x6e\x7c\x6a\x81\xe9"
12746 "\x13\x2c\xde\xb2\x5f\x79\xba\xb2"
12747 "\xb1\x75\xae\xd2\x07\x98\x4b\x69"
12748 "\xae\x7d\x5b\x90\xc2\x6c\xe6\x98"
12749 "\xd3\x4c\xa1\xa3\x9c\xc9\x33\x6a"
12750 "\x0d\x23\xb1\x79\x25\x13\x4b\xe5"
12751 "\xaf\x93\x20\x5c\x7f\x06\x7a\x34"
12752 "\x0b\x78\xe3\x67\x26\xe0\xad\x95"
12753 "\xc5\x4e\x26\x22\xcf\x73\x77\x62"
12754 "\x3e\x10\xd7\x90\x4b\x52\x1c\xc9"
12755 "\xef\x38\x52\x18\x0e\x29\x7e\xef"
12756 "\x34\xfe\x31\x95\xc5\xbc\xa8\xe2"
12757 "\xa8\x4e\x9f\xea\xa6\xf0\xfe\x5d"
12758 "\xc5\x39\x86\xed\x2f\x6d\xa0\xfe"
12759 "\x96\xcd\x41\x10\x78\x4e\x0c\xc9"
12760 "\xc3\x6d\x0f\xb7\xe8\xe0\x62\xab"
12761 "\x8b\xf1\x21\x89\xa1\x12\xaa\xfa"
12762 "\x9d\x70\xbe\x4c\xa8\x98\x89\x01"
12763 "\xb9\xe2\x61\xde\x0c\x4a\x0b\xaa"
12764 "\x89\xf5\x14\x79\x18\x8f\x3b\x0d"
12765 "\x21\x17\xf8\x59\x15\x24\x64\x22"
12766 "\x57\x48\x80\xd5\x3d\x92\x30\x07"
12767 "\xd9\xa1\x4a\x23\x16\x43\x48\x0e"
12768 "\x2b\x2d\x1b\x87\xef\x7e\xbd\xfa"
12769 "\x49\xbc\x7e\x68\x6e\xa8\x46\x95"
12770 "\xad\x5e\xfe\x0a\xa8\xd3\x1a\x5d"
12771 "\x6b\x84\xf3\x00\xba\x52\x05\x02"
12772 "\xe3\x96\x4e\xb6\x79\x3f\x43\xd3"
12773 "\x4d\x3f\xd6\xab\x0a\xc4\x75\x2d"
12774 "\xd1\x08\xc3\x6a\xc8\x37\x29\xa0"
12775 "\xcc\x9a\x05\xdd\x5c\xe1\xff\x66"
12776 "\xf2\x7a\x1d\xf2\xaf\xa9\x48\x89"
12777 "\xf5\x21\x0f\x02\x48\x83\x74\xbf"
12778 "\x2e\xe6\x93\x7b\xa0\xf4\xb1\x2b"
12779 "\xb1\x02\x0a\x5c\x79\x19\x3b\x75"
12780 "\xb7\x16\xd8\x12\x5c\xcd\x7d\x4e"
12781 "\xd5\xc6\x99\xcc\x4e\x6c\x94\x95",
12782 .ilen = 512,
12783 .result = "\x00\x01\x02\x03\x04\x05\x06\x07"
12784 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f"
12785 "\x10\x11\x12\x13\x14\x15\x16\x17"
12786 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f"
12787 "\x20\x21\x22\x23\x24\x25\x26\x27"
12788 "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f"
12789 "\x30\x31\x32\x33\x34\x35\x36\x37"
12790 "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f"
12791 "\x40\x41\x42\x43\x44\x45\x46\x47"
12792 "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f"
12793 "\x50\x51\x52\x53\x54\x55\x56\x57"
12794 "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f"
12795 "\x60\x61\x62\x63\x64\x65\x66\x67"
12796 "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f"
12797 "\x70\x71\x72\x73\x74\x75\x76\x77"
12798 "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f"
12799 "\x80\x81\x82\x83\x84\x85\x86\x87"
12800 "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f"
12801 "\x90\x91\x92\x93\x94\x95\x96\x97"
12802 "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f"
12803 "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7"
12804 "\xa8\xa9\xaa\xab\xac\xad\xae\xaf"
12805 "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7"
12806 "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf"
12807 "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7"
12808 "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf"
12809 "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7"
12810 "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf"
12811 "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7"
12812 "\xe8\xe9\xea\xeb\xec\xed\xee\xef"
12813 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7"
12814 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff"
12815 "\x00\x01\x02\x03\x04\x05\x06\x07"
12816 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f"
12817 "\x10\x11\x12\x13\x14\x15\x16\x17"
12818 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f"
12819 "\x20\x21\x22\x23\x24\x25\x26\x27"
12820 "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f"
12821 "\x30\x31\x32\x33\x34\x35\x36\x37"
12822 "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f"
12823 "\x40\x41\x42\x43\x44\x45\x46\x47"
12824 "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f"
12825 "\x50\x51\x52\x53\x54\x55\x56\x57"
12826 "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f"
12827 "\x60\x61\x62\x63\x64\x65\x66\x67"
12828 "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f"
12829 "\x70\x71\x72\x73\x74\x75\x76\x77"
12830 "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f"
12831 "\x80\x81\x82\x83\x84\x85\x86\x87"
12832 "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f"
12833 "\x90\x91\x92\x93\x94\x95\x96\x97"
12834 "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f"
12835 "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7"
12836 "\xa8\xa9\xaa\xab\xac\xad\xae\xaf"
12837 "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7"
12838 "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf"
12839 "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7"
12840 "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf"
12841 "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7"
12842 "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf"
12843 "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7"
12844 "\xe8\xe9\xea\xeb\xec\xed\xee\xef"
12845 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7"
12846 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff",
12847 .rlen = 512,
12848 },
11474}; 12849};
11475 12850
11476/* 12851/*