aboutsummaryrefslogtreecommitdiffstats
path: root/crypto
diff options
context:
space:
mode:
authorJussi Kivilinna <jussi.kivilinna@mbnet.fi>2011-10-18 06:33:17 -0400
committerHerbert Xu <herbert@gondor.apana.org.au>2011-11-08 22:57:56 -0500
commit18be20b9445731c57ef2fa0c7c9e71ac1b4a7872 (patch)
tree7126bae2743aae0061d4d493c1c2ece5d53bae48 /crypto
parentce0045561e1edb92e4a509eb433ff52d3afaa258 (diff)
crypto: testmgr - add xts(serpent) test vectors
Add test vectors for xts(serpent). These are generated from xts(aes) test vectors. 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.c15
-rw-r--r--crypto/testmgr.h682
2 files changed, 697 insertions, 0 deletions
diff --git a/crypto/testmgr.c b/crypto/testmgr.c
index ae33d3075ce7..5e349a6bc98a 100644
--- a/crypto/testmgr.c
+++ b/crypto/testmgr.c
@@ -2574,6 +2574,21 @@ static const struct alg_test_desc alg_test_descs[] = {
2574 } 2574 }
2575 } 2575 }
2576 }, { 2576 }, {
2577 .alg = "xts(serpent)",
2578 .test = alg_test_skcipher,
2579 .suite = {
2580 .cipher = {
2581 .enc = {
2582 .vecs = serpent_xts_enc_tv_template,
2583 .count = SERPENT_XTS_ENC_TEST_VECTORS
2584 },
2585 .dec = {
2586 .vecs = serpent_xts_dec_tv_template,
2587 .count = SERPENT_XTS_DEC_TEST_VECTORS
2588 }
2589 }
2590 }
2591 }, {
2577 .alg = "zlib", 2592 .alg = "zlib",
2578 .test = alg_test_pcomp, 2593 .test = alg_test_pcomp,
2579 .suite = { 2594 .suite = {
diff --git a/crypto/testmgr.h b/crypto/testmgr.h
index 4b887895c1e4..9158a92aa18b 100644
--- a/crypto/testmgr.h
+++ b/crypto/testmgr.h
@@ -3612,6 +3612,9 @@ static struct cipher_testvec tf_lrw_dec_tv_template[] = {
3612#define SERPENT_LRW_ENC_TEST_VECTORS 8 3612#define SERPENT_LRW_ENC_TEST_VECTORS 8
3613#define SERPENT_LRW_DEC_TEST_VECTORS 8 3613#define SERPENT_LRW_DEC_TEST_VECTORS 8
3614 3614
3615#define SERPENT_XTS_ENC_TEST_VECTORS 5
3616#define SERPENT_XTS_DEC_TEST_VECTORS 5
3617
3615static struct cipher_testvec serpent_enc_tv_template[] = { 3618static struct cipher_testvec serpent_enc_tv_template[] = {
3616 { 3619 {
3617 .input = "\x00\x01\x02\x03\x04\x05\x06\x07" 3620 .input = "\x00\x01\x02\x03\x04\x05\x06\x07"
@@ -4668,6 +4671,685 @@ static struct cipher_testvec serpent_lrw_dec_tv_template[] = {
4668 }, 4671 },
4669}; 4672};
4670 4673
4674static struct cipher_testvec serpent_xts_enc_tv_template[] = {
4675 /* Generated from AES-XTS test vectors */
4676 {
4677 .key = "\x00\x00\x00\x00\x00\x00\x00\x00"
4678 "\x00\x00\x00\x00\x00\x00\x00\x00"
4679 "\x00\x00\x00\x00\x00\x00\x00\x00"
4680 "\x00\x00\x00\x00\x00\x00\x00\x00",
4681 .klen = 32,
4682 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00"
4683 "\x00\x00\x00\x00\x00\x00\x00\x00",
4684 .input = "\x00\x00\x00\x00\x00\x00\x00\x00"
4685 "\x00\x00\x00\x00\x00\x00\x00\x00"
4686 "\x00\x00\x00\x00\x00\x00\x00\x00"
4687 "\x00\x00\x00\x00\x00\x00\x00\x00",
4688 .ilen = 32,
4689 .result = "\xe1\x08\xb8\x1d\x2c\xf5\x33\x64"
4690 "\xc8\x12\x04\xc7\xb3\x70\xe8\xc4"
4691 "\x6a\x31\xc5\xf3\x00\xca\xb9\x16"
4692 "\xde\xe2\x77\x66\xf7\xfe\x62\x08",
4693 .rlen = 32,
4694 }, {
4695 .key = "\x11\x11\x11\x11\x11\x11\x11\x11"
4696 "\x11\x11\x11\x11\x11\x11\x11\x11"
4697 "\x22\x22\x22\x22\x22\x22\x22\x22"
4698 "\x22\x22\x22\x22\x22\x22\x22\x22",
4699 .klen = 32,
4700 .iv = "\x33\x33\x33\x33\x33\x00\x00\x00"
4701 "\x00\x00\x00\x00\x00\x00\x00\x00",
4702 .input = "\x44\x44\x44\x44\x44\x44\x44\x44"
4703 "\x44\x44\x44\x44\x44\x44\x44\x44"
4704 "\x44\x44\x44\x44\x44\x44\x44\x44"
4705 "\x44\x44\x44\x44\x44\x44\x44\x44",
4706 .ilen = 32,
4707 .result = "\x1a\x0a\x09\x5f\xcd\x07\x07\x98"
4708 "\x41\x86\x12\xaf\xb3\xd7\x68\x13"
4709 "\xed\x81\xcd\x06\x87\x43\x1a\xbb"
4710 "\x13\x3d\xd6\x1e\x2b\xe1\x77\xbe",
4711 .rlen = 32,
4712 }, {
4713 .key = "\xff\xfe\xfd\xfc\xfb\xfa\xf9\xf8"
4714 "\xf7\xf6\xf5\xf4\xf3\xf2\xf1\xf0"
4715 "\x22\x22\x22\x22\x22\x22\x22\x22"
4716 "\x22\x22\x22\x22\x22\x22\x22\x22",
4717 .klen = 32,
4718 .iv = "\x33\x33\x33\x33\x33\x00\x00\x00"
4719 "\x00\x00\x00\x00\x00\x00\x00\x00",
4720 .input = "\x44\x44\x44\x44\x44\x44\x44\x44"
4721 "\x44\x44\x44\x44\x44\x44\x44\x44"
4722 "\x44\x44\x44\x44\x44\x44\x44\x44"
4723 "\x44\x44\x44\x44\x44\x44\x44\x44",
4724 .ilen = 32,
4725 .result = "\xf9\x9b\x28\xb8\x5c\xaf\x8c\x61"
4726 "\xb6\x1c\x81\x8f\x2c\x87\x60\x89"
4727 "\x0d\x8d\x7a\xe8\x60\x48\xcc\x86"
4728 "\xc1\x68\x45\xaa\x00\xe9\x24\xc5",
4729 .rlen = 32,
4730 }, {
4731 .key = "\x27\x18\x28\x18\x28\x45\x90\x45"
4732 "\x23\x53\x60\x28\x74\x71\x35\x26"
4733 "\x31\x41\x59\x26\x53\x58\x97\x93"
4734 "\x23\x84\x62\x64\x33\x83\x27\x95",
4735 .klen = 32,
4736 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00"
4737 "\x00\x00\x00\x00\x00\x00\x00\x00",
4738 .input = "\x00\x01\x02\x03\x04\x05\x06\x07"
4739 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f"
4740 "\x10\x11\x12\x13\x14\x15\x16\x17"
4741 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f"
4742 "\x20\x21\x22\x23\x24\x25\x26\x27"
4743 "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f"
4744 "\x30\x31\x32\x33\x34\x35\x36\x37"
4745 "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f"
4746 "\x40\x41\x42\x43\x44\x45\x46\x47"
4747 "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f"
4748 "\x50\x51\x52\x53\x54\x55\x56\x57"
4749 "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f"
4750 "\x60\x61\x62\x63\x64\x65\x66\x67"
4751 "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f"
4752 "\x70\x71\x72\x73\x74\x75\x76\x77"
4753 "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f"
4754 "\x80\x81\x82\x83\x84\x85\x86\x87"
4755 "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f"
4756 "\x90\x91\x92\x93\x94\x95\x96\x97"
4757 "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f"
4758 "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7"
4759 "\xa8\xa9\xaa\xab\xac\xad\xae\xaf"
4760 "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7"
4761 "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf"
4762 "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7"
4763 "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf"
4764 "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7"
4765 "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf"
4766 "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7"
4767 "\xe8\xe9\xea\xeb\xec\xed\xee\xef"
4768 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7"
4769 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff"
4770 "\x00\x01\x02\x03\x04\x05\x06\x07"
4771 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f"
4772 "\x10\x11\x12\x13\x14\x15\x16\x17"
4773 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f"
4774 "\x20\x21\x22\x23\x24\x25\x26\x27"
4775 "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f"
4776 "\x30\x31\x32\x33\x34\x35\x36\x37"
4777 "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f"
4778 "\x40\x41\x42\x43\x44\x45\x46\x47"
4779 "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f"
4780 "\x50\x51\x52\x53\x54\x55\x56\x57"
4781 "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f"
4782 "\x60\x61\x62\x63\x64\x65\x66\x67"
4783 "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f"
4784 "\x70\x71\x72\x73\x74\x75\x76\x77"
4785 "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f"
4786 "\x80\x81\x82\x83\x84\x85\x86\x87"
4787 "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f"
4788 "\x90\x91\x92\x93\x94\x95\x96\x97"
4789 "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f"
4790 "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7"
4791 "\xa8\xa9\xaa\xab\xac\xad\xae\xaf"
4792 "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7"
4793 "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf"
4794 "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7"
4795 "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf"
4796 "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7"
4797 "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf"
4798 "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7"
4799 "\xe8\xe9\xea\xeb\xec\xed\xee\xef"
4800 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7"
4801 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff",
4802 .ilen = 512,
4803 .result = "\xfe\x47\x4a\xc8\x60\x7e\xb4\x8b"
4804 "\x0d\x10\xf4\xb0\x0d\xba\xf8\x53"
4805 "\x65\x6e\x38\x4b\xdb\xaa\xb1\x9e"
4806 "\x28\xca\xb0\x22\xb3\x85\x75\xf4"
4807 "\x00\x5c\x75\x14\x06\xd6\x25\x82"
4808 "\xe6\xcb\x08\xf7\x29\x90\x23\x8e"
4809 "\xa4\x68\x57\xe4\xf0\xd8\x32\xf3"
4810 "\x80\x51\x67\xb5\x0b\x85\x69\xe8"
4811 "\x19\xfe\xc4\xc7\x3e\xea\x90\xd3"
4812 "\x8f\xa3\xf2\x0a\xac\x17\x4b\xa0"
4813 "\x63\x5a\x16\x0f\xf0\xce\x66\x1f"
4814 "\x2c\x21\x07\xf1\xa4\x03\xa3\x44"
4815 "\x41\x61\x87\x5d\x6b\xb3\xef\xd4"
4816 "\xfc\xaa\x32\x7e\x55\x58\x04\x41"
4817 "\xc9\x07\x33\xc6\xa2\x68\xd6\x5a"
4818 "\x55\x79\x4b\x6f\xcf\x89\xb9\x19"
4819 "\xe5\x54\x13\x15\xb2\x1a\xfa\x15"
4820 "\xc2\xf0\x06\x59\xfa\xa0\x25\x05"
4821 "\x58\xfa\x43\x91\x16\x85\x40\xbb"
4822 "\x0d\x34\x4d\xc5\x1e\x20\xd5\x08"
4823 "\xcd\x22\x22\x41\x11\x9f\x6c\x7c"
4824 "\x8d\x57\xc9\xba\x57\xe8\x2c\xf7"
4825 "\xa0\x42\xa8\xde\xfc\xa3\xca\x98"
4826 "\x4b\x43\xb1\xce\x4b\xbf\x01\x67"
4827 "\x6e\x29\x60\xbd\x10\x14\x84\x82"
4828 "\x83\x82\x0c\x63\x73\x92\x02\x7c"
4829 "\x55\x37\x20\x80\x17\x51\xc8\xbc"
4830 "\x46\x02\xcb\x38\x07\x6d\xe2\x85"
4831 "\xaa\x29\xaf\x24\x58\x0d\xf0\x75"
4832 "\x08\x0a\xa5\x34\x25\x16\xf3\x74"
4833 "\xa7\x0b\x97\xbe\xc1\xa9\xdc\x29"
4834 "\x1a\x0a\x56\xc1\x1a\x91\x97\x8c"
4835 "\x0b\xc7\x16\xed\x5a\x22\xa6\x2e"
4836 "\x8c\x2b\x4f\x54\x76\x47\x53\x8e"
4837 "\xe8\x00\xec\x92\xb9\x55\xe6\xa2"
4838 "\xf3\xe2\x4f\x6a\x66\x60\xd0\x87"
4839 "\xe6\xd1\xcc\xe3\x6a\xc5\x2d\x21"
4840 "\xcc\x9d\x6a\xb6\x75\xaa\xe2\x19"
4841 "\x21\x9f\xa1\x5e\x4c\xfd\x72\xf9"
4842 "\x94\x4e\x63\xc7\xae\xfc\xed\x47"
4843 "\xe2\xfe\x7a\x63\x77\xfe\x97\x82"
4844 "\xb1\x10\x6e\x36\x1d\xe1\xc4\x80"
4845 "\xec\x69\x41\xec\xa7\x8a\xe0\x2f"
4846 "\xe3\x49\x26\xa2\x41\xb2\x08\x0f"
4847 "\x28\xb4\xa7\x39\xa1\x99\x2d\x1e"
4848 "\x43\x42\x35\xd0\xcf\xec\x77\x67"
4849 "\xb2\x3b\x9e\x1c\x35\xde\x4f\x5e"
4850 "\x73\x3f\x5d\x6f\x07\x4b\x2e\x50"
4851 "\xab\x6c\x6b\xff\xea\x00\x67\xaa"
4852 "\x0e\x82\x32\xdd\x3d\xb5\xe5\x76"
4853 "\x2b\x77\x3f\xbe\x12\x75\xfb\x92"
4854 "\xc6\x89\x67\x4d\xca\xf7\xd4\x50"
4855 "\xc0\x74\x47\xcc\xd9\x0a\xd4\xc6"
4856 "\x3b\x17\x2e\xe3\x35\xbb\x53\xb5"
4857 "\x86\xad\x51\xcc\xd5\x96\xb8\xdc"
4858 "\x03\x57\xe6\x98\x52\x2f\x61\x62"
4859 "\xc4\x5c\x9c\x36\x71\x07\xfb\x94"
4860 "\xe3\x02\xc4\x2b\x08\x75\xc7\x35"
4861 "\xfb\x2e\x88\x7b\xbb\x67\x00\xe1"
4862 "\xc9\xdd\x99\xb2\x13\x53\x1a\x4e"
4863 "\x76\x87\x19\x04\x1a\x2f\x38\x3e"
4864 "\xef\x91\x64\x1d\x18\x07\x4e\x31"
4865 "\x88\x21\x7c\xb0\xa5\x12\x4c\x3c"
4866 "\xb0\x20\xbd\xda\xdf\xf9\x7c\xdd",
4867 .rlen = 512,
4868 }, {
4869 .key = "\x27\x18\x28\x18\x28\x45\x90\x45"
4870 "\x23\x53\x60\x28\x74\x71\x35\x26"
4871 "\x62\x49\x77\x57\x24\x70\x93\x69"
4872 "\x99\x59\x57\x49\x66\x96\x76\x27"
4873 "\x31\x41\x59\x26\x53\x58\x97\x93"
4874 "\x23\x84\x62\x64\x33\x83\x27\x95"
4875 "\x02\x88\x41\x97\x16\x93\x99\x37"
4876 "\x51\x05\x82\x09\x74\x94\x45\x92",
4877 .klen = 64,
4878 .iv = "\xff\x00\x00\x00\x00\x00\x00\x00"
4879 "\x00\x00\x00\x00\x00\x00\x00\x00",
4880 .input = "\x00\x01\x02\x03\x04\x05\x06\x07"
4881 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f"
4882 "\x10\x11\x12\x13\x14\x15\x16\x17"
4883 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f"
4884 "\x20\x21\x22\x23\x24\x25\x26\x27"
4885 "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f"
4886 "\x30\x31\x32\x33\x34\x35\x36\x37"
4887 "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f"
4888 "\x40\x41\x42\x43\x44\x45\x46\x47"
4889 "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f"
4890 "\x50\x51\x52\x53\x54\x55\x56\x57"
4891 "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f"
4892 "\x60\x61\x62\x63\x64\x65\x66\x67"
4893 "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f"
4894 "\x70\x71\x72\x73\x74\x75\x76\x77"
4895 "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f"
4896 "\x80\x81\x82\x83\x84\x85\x86\x87"
4897 "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f"
4898 "\x90\x91\x92\x93\x94\x95\x96\x97"
4899 "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f"
4900 "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7"
4901 "\xa8\xa9\xaa\xab\xac\xad\xae\xaf"
4902 "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7"
4903 "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf"
4904 "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7"
4905 "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf"
4906 "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7"
4907 "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf"
4908 "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7"
4909 "\xe8\xe9\xea\xeb\xec\xed\xee\xef"
4910 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7"
4911 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff"
4912 "\x00\x01\x02\x03\x04\x05\x06\x07"
4913 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f"
4914 "\x10\x11\x12\x13\x14\x15\x16\x17"
4915 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f"
4916 "\x20\x21\x22\x23\x24\x25\x26\x27"
4917 "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f"
4918 "\x30\x31\x32\x33\x34\x35\x36\x37"
4919 "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f"
4920 "\x40\x41\x42\x43\x44\x45\x46\x47"
4921 "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f"
4922 "\x50\x51\x52\x53\x54\x55\x56\x57"
4923 "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f"
4924 "\x60\x61\x62\x63\x64\x65\x66\x67"
4925 "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f"
4926 "\x70\x71\x72\x73\x74\x75\x76\x77"
4927 "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f"
4928 "\x80\x81\x82\x83\x84\x85\x86\x87"
4929 "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f"
4930 "\x90\x91\x92\x93\x94\x95\x96\x97"
4931 "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f"
4932 "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7"
4933 "\xa8\xa9\xaa\xab\xac\xad\xae\xaf"
4934 "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7"
4935 "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf"
4936 "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7"
4937 "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf"
4938 "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7"
4939 "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf"
4940 "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7"
4941 "\xe8\xe9\xea\xeb\xec\xed\xee\xef"
4942 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7"
4943 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff",
4944 .ilen = 512,
4945 .result = "\x2b\xc9\xb4\x6b\x10\x94\xa9\x32"
4946 "\xaa\xb0\x20\xc6\x44\x3d\x74\x1f"
4947 "\x75\x01\xa7\xf6\xf5\xf7\x62\x1b"
4948 "\x80\x1b\x82\xcb\x01\x59\x91\x7f"
4949 "\x80\x3a\x98\xf0\xd2\xca\xc4\xc3"
4950 "\x34\xfd\xe6\x11\xf9\x33\x45\x12"
4951 "\x48\xc5\x8c\x25\xf1\xc5\xc5\x23"
4952 "\xd3\x44\xb4\x73\xd5\x04\xc0\xb7"
4953 "\xca\x2f\xf5\xcd\xc5\xb4\xdd\xb0"
4954 "\xf4\x60\xe8\xfb\xc6\x9c\xc5\x78"
4955 "\xcd\xec\x7d\xdc\x19\x9c\x72\x64"
4956 "\x63\x0b\x38\x2e\x76\xdd\x2d\x36"
4957 "\x49\xb0\x1d\xea\x78\x9e\x00\xca"
4958 "\x20\xcc\x1b\x1e\x98\x74\xab\xed"
4959 "\x79\xf7\xd0\x6c\xd8\x93\x80\x29"
4960 "\xac\xa5\x5e\x34\xa9\xab\xa0\x55"
4961 "\x9a\xea\xaa\x95\x4d\x7b\xfe\x46"
4962 "\x26\x8a\xfd\x88\xa2\xa8\xa6\xae"
4963 "\x25\x42\x17\xbf\x76\x8f\x1c\x3d"
4964 "\xec\x9a\xda\x64\x96\xb5\x61\xff"
4965 "\x99\xeb\x12\x96\x85\x82\x9d\xd5"
4966 "\x81\x85\x14\xa8\x59\xac\x8c\x94"
4967 "\xbb\x3b\x85\x2b\xdf\xb3\x0c\xba"
4968 "\x82\xc6\x4d\xca\x86\xea\x53\x28"
4969 "\x4c\xe0\x4e\x31\xe3\x73\x2f\x79"
4970 "\x9d\x42\xe1\x03\xe3\x8b\xc4\xff"
4971 "\x05\xca\x81\x7b\xda\xa2\xde\x63"
4972 "\x3a\x10\xbe\xc2\xac\x32\xc4\x05"
4973 "\x47\x7e\xef\x67\xe2\x5f\x5b\xae"
4974 "\xed\xf1\x70\x34\x16\x9a\x07\x7b"
4975 "\xf2\x25\x2b\xb0\xf8\x3c\x15\x9a"
4976 "\xa6\x59\x55\x5f\xc1\xf4\x1e\xcd"
4977 "\x93\x1f\x06\xba\xd4\x9a\x22\x69"
4978 "\xfa\x8e\x95\x0d\xf3\x23\x59\x2c"
4979 "\xfe\x00\xba\xf0\x0e\xbc\x6d\xd6"
4980 "\x62\xf0\x7a\x0e\x83\x3e\xdb\x32"
4981 "\xfd\x43\x7d\xda\x42\x51\x87\x43"
4982 "\x9d\xf9\xef\xf4\x30\x97\xf8\x09"
4983 "\x88\xfc\x3f\x93\x70\xc1\x4a\xec"
4984 "\x27\x5f\x11\xac\x71\xc7\x48\x46"
4985 "\x2f\xf9\xdf\x8d\x9f\xf7\x2e\x56"
4986 "\x0d\x4e\xb0\x32\x76\xce\x86\x81"
4987 "\xcd\xdf\xe4\x00\xbf\xfd\x5f\x24"
4988 "\xaf\xf7\x9a\xde\xff\x18\xac\x14"
4989 "\x90\xc5\x01\x39\x34\x0f\x24\xf3"
4990 "\x13\x2f\x5e\x4f\x30\x9a\x36\x40"
4991 "\xec\xea\xbc\xcd\x9e\x0e\x5b\x23"
4992 "\x50\x88\x97\x40\x69\xb1\x37\xf5"
4993 "\xc3\x15\xf9\x3f\xb7\x79\x64\xe8"
4994 "\x7b\x10\x20\xb9\x2b\x46\x83\x5b"
4995 "\xd8\x39\xfc\xe4\xfa\x88\x52\xf2"
4996 "\x72\xb0\x97\x4e\x89\xb3\x48\x00"
4997 "\xc1\x16\x73\x50\x77\xba\xa6\x65"
4998 "\x20\x2d\xb0\x02\x27\x89\xda\x99"
4999 "\x45\xfb\xe9\xd3\x1d\x39\x2f\xd6"
5000 "\x2a\xda\x09\x12\x11\xaf\xe6\x57"
5001 "\x01\x04\x8a\xff\x86\x8b\xac\xf8"
5002 "\xee\xe4\x1c\x98\x5b\xcf\x6b\x76"
5003 "\xa3\x0e\x33\x74\x40\x18\x39\x72"
5004 "\x66\x50\x31\xfd\x70\xdf\xe8\x51"
5005 "\x96\x21\x36\xb2\x9b\xfa\x85\xd1"
5006 "\x30\x05\xc8\x92\x98\x80\xff\x7a"
5007 "\xaf\x43\x0b\xc5\x20\x41\x92\x20"
5008 "\xd4\xa0\x91\x98\x11\x5f\x4d\xb1",
5009 .rlen = 512,
5010 },
5011};
5012
5013static struct cipher_testvec serpent_xts_dec_tv_template[] = {
5014 /* Generated from AES-XTS test vectors */
5015 /* same as enc vectors with input and result reversed */
5016 {
5017 .key = "\x00\x00\x00\x00\x00\x00\x00\x00"
5018 "\x00\x00\x00\x00\x00\x00\x00\x00"
5019 "\x00\x00\x00\x00\x00\x00\x00\x00"
5020 "\x00\x00\x00\x00\x00\x00\x00\x00",
5021 .klen = 32,
5022 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00"
5023 "\x00\x00\x00\x00\x00\x00\x00\x00",
5024 .input = "\xe1\x08\xb8\x1d\x2c\xf5\x33\x64"
5025 "\xc8\x12\x04\xc7\xb3\x70\xe8\xc4"
5026 "\x6a\x31\xc5\xf3\x00\xca\xb9\x16"
5027 "\xde\xe2\x77\x66\xf7\xfe\x62\x08",
5028 .ilen = 32,
5029 .result = "\x00\x00\x00\x00\x00\x00\x00\x00"
5030 "\x00\x00\x00\x00\x00\x00\x00\x00"
5031 "\x00\x00\x00\x00\x00\x00\x00\x00"
5032 "\x00\x00\x00\x00\x00\x00\x00\x00",
5033 .rlen = 32,
5034 }, {
5035 .key = "\x11\x11\x11\x11\x11\x11\x11\x11"
5036 "\x11\x11\x11\x11\x11\x11\x11\x11"
5037 "\x22\x22\x22\x22\x22\x22\x22\x22"
5038 "\x22\x22\x22\x22\x22\x22\x22\x22",
5039 .klen = 32,
5040 .iv = "\x33\x33\x33\x33\x33\x00\x00\x00"
5041 "\x00\x00\x00\x00\x00\x00\x00\x00",
5042 .input = "\x1a\x0a\x09\x5f\xcd\x07\x07\x98"
5043 "\x41\x86\x12\xaf\xb3\xd7\x68\x13"
5044 "\xed\x81\xcd\x06\x87\x43\x1a\xbb"
5045 "\x13\x3d\xd6\x1e\x2b\xe1\x77\xbe",
5046 .ilen = 32,
5047 .result = "\x44\x44\x44\x44\x44\x44\x44\x44"
5048 "\x44\x44\x44\x44\x44\x44\x44\x44"
5049 "\x44\x44\x44\x44\x44\x44\x44\x44"
5050 "\x44\x44\x44\x44\x44\x44\x44\x44",
5051 .rlen = 32,
5052 }, {
5053 .key = "\xff\xfe\xfd\xfc\xfb\xfa\xf9\xf8"
5054 "\xf7\xf6\xf5\xf4\xf3\xf2\xf1\xf0"
5055 "\x22\x22\x22\x22\x22\x22\x22\x22"
5056 "\x22\x22\x22\x22\x22\x22\x22\x22",
5057 .klen = 32,
5058 .iv = "\x33\x33\x33\x33\x33\x00\x00\x00"
5059 "\x00\x00\x00\x00\x00\x00\x00\x00",
5060 .input = "\xf9\x9b\x28\xb8\x5c\xaf\x8c\x61"
5061 "\xb6\x1c\x81\x8f\x2c\x87\x60\x89"
5062 "\x0d\x8d\x7a\xe8\x60\x48\xcc\x86"
5063 "\xc1\x68\x45\xaa\x00\xe9\x24\xc5",
5064 .ilen = 32,
5065 .result = "\x44\x44\x44\x44\x44\x44\x44\x44"
5066 "\x44\x44\x44\x44\x44\x44\x44\x44"
5067 "\x44\x44\x44\x44\x44\x44\x44\x44"
5068 "\x44\x44\x44\x44\x44\x44\x44\x44",
5069 .rlen = 32,
5070 }, {
5071 .key = "\x27\x18\x28\x18\x28\x45\x90\x45"
5072 "\x23\x53\x60\x28\x74\x71\x35\x26"
5073 "\x31\x41\x59\x26\x53\x58\x97\x93"
5074 "\x23\x84\x62\x64\x33\x83\x27\x95",
5075 .klen = 32,
5076 .iv = "\x00\x00\x00\x00\x00\x00\x00\x00"
5077 "\x00\x00\x00\x00\x00\x00\x00\x00",
5078 .input = "\xfe\x47\x4a\xc8\x60\x7e\xb4\x8b"
5079 "\x0d\x10\xf4\xb0\x0d\xba\xf8\x53"
5080 "\x65\x6e\x38\x4b\xdb\xaa\xb1\x9e"
5081 "\x28\xca\xb0\x22\xb3\x85\x75\xf4"
5082 "\x00\x5c\x75\x14\x06\xd6\x25\x82"
5083 "\xe6\xcb\x08\xf7\x29\x90\x23\x8e"
5084 "\xa4\x68\x57\xe4\xf0\xd8\x32\xf3"
5085 "\x80\x51\x67\xb5\x0b\x85\x69\xe8"
5086 "\x19\xfe\xc4\xc7\x3e\xea\x90\xd3"
5087 "\x8f\xa3\xf2\x0a\xac\x17\x4b\xa0"
5088 "\x63\x5a\x16\x0f\xf0\xce\x66\x1f"
5089 "\x2c\x21\x07\xf1\xa4\x03\xa3\x44"
5090 "\x41\x61\x87\x5d\x6b\xb3\xef\xd4"
5091 "\xfc\xaa\x32\x7e\x55\x58\x04\x41"
5092 "\xc9\x07\x33\xc6\xa2\x68\xd6\x5a"
5093 "\x55\x79\x4b\x6f\xcf\x89\xb9\x19"
5094 "\xe5\x54\x13\x15\xb2\x1a\xfa\x15"
5095 "\xc2\xf0\x06\x59\xfa\xa0\x25\x05"
5096 "\x58\xfa\x43\x91\x16\x85\x40\xbb"
5097 "\x0d\x34\x4d\xc5\x1e\x20\xd5\x08"
5098 "\xcd\x22\x22\x41\x11\x9f\x6c\x7c"
5099 "\x8d\x57\xc9\xba\x57\xe8\x2c\xf7"
5100 "\xa0\x42\xa8\xde\xfc\xa3\xca\x98"
5101 "\x4b\x43\xb1\xce\x4b\xbf\x01\x67"
5102 "\x6e\x29\x60\xbd\x10\x14\x84\x82"
5103 "\x83\x82\x0c\x63\x73\x92\x02\x7c"
5104 "\x55\x37\x20\x80\x17\x51\xc8\xbc"
5105 "\x46\x02\xcb\x38\x07\x6d\xe2\x85"
5106 "\xaa\x29\xaf\x24\x58\x0d\xf0\x75"
5107 "\x08\x0a\xa5\x34\x25\x16\xf3\x74"
5108 "\xa7\x0b\x97\xbe\xc1\xa9\xdc\x29"
5109 "\x1a\x0a\x56\xc1\x1a\x91\x97\x8c"
5110 "\x0b\xc7\x16\xed\x5a\x22\xa6\x2e"
5111 "\x8c\x2b\x4f\x54\x76\x47\x53\x8e"
5112 "\xe8\x00\xec\x92\xb9\x55\xe6\xa2"
5113 "\xf3\xe2\x4f\x6a\x66\x60\xd0\x87"
5114 "\xe6\xd1\xcc\xe3\x6a\xc5\x2d\x21"
5115 "\xcc\x9d\x6a\xb6\x75\xaa\xe2\x19"
5116 "\x21\x9f\xa1\x5e\x4c\xfd\x72\xf9"
5117 "\x94\x4e\x63\xc7\xae\xfc\xed\x47"
5118 "\xe2\xfe\x7a\x63\x77\xfe\x97\x82"
5119 "\xb1\x10\x6e\x36\x1d\xe1\xc4\x80"
5120 "\xec\x69\x41\xec\xa7\x8a\xe0\x2f"
5121 "\xe3\x49\x26\xa2\x41\xb2\x08\x0f"
5122 "\x28\xb4\xa7\x39\xa1\x99\x2d\x1e"
5123 "\x43\x42\x35\xd0\xcf\xec\x77\x67"
5124 "\xb2\x3b\x9e\x1c\x35\xde\x4f\x5e"
5125 "\x73\x3f\x5d\x6f\x07\x4b\x2e\x50"
5126 "\xab\x6c\x6b\xff\xea\x00\x67\xaa"
5127 "\x0e\x82\x32\xdd\x3d\xb5\xe5\x76"
5128 "\x2b\x77\x3f\xbe\x12\x75\xfb\x92"
5129 "\xc6\x89\x67\x4d\xca\xf7\xd4\x50"
5130 "\xc0\x74\x47\xcc\xd9\x0a\xd4\xc6"
5131 "\x3b\x17\x2e\xe3\x35\xbb\x53\xb5"
5132 "\x86\xad\x51\xcc\xd5\x96\xb8\xdc"
5133 "\x03\x57\xe6\x98\x52\x2f\x61\x62"
5134 "\xc4\x5c\x9c\x36\x71\x07\xfb\x94"
5135 "\xe3\x02\xc4\x2b\x08\x75\xc7\x35"
5136 "\xfb\x2e\x88\x7b\xbb\x67\x00\xe1"
5137 "\xc9\xdd\x99\xb2\x13\x53\x1a\x4e"
5138 "\x76\x87\x19\x04\x1a\x2f\x38\x3e"
5139 "\xef\x91\x64\x1d\x18\x07\x4e\x31"
5140 "\x88\x21\x7c\xb0\xa5\x12\x4c\x3c"
5141 "\xb0\x20\xbd\xda\xdf\xf9\x7c\xdd",
5142 .ilen = 512,
5143 .result = "\x00\x01\x02\x03\x04\x05\x06\x07"
5144 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f"
5145 "\x10\x11\x12\x13\x14\x15\x16\x17"
5146 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f"
5147 "\x20\x21\x22\x23\x24\x25\x26\x27"
5148 "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f"
5149 "\x30\x31\x32\x33\x34\x35\x36\x37"
5150 "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f"
5151 "\x40\x41\x42\x43\x44\x45\x46\x47"
5152 "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f"
5153 "\x50\x51\x52\x53\x54\x55\x56\x57"
5154 "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f"
5155 "\x60\x61\x62\x63\x64\x65\x66\x67"
5156 "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f"
5157 "\x70\x71\x72\x73\x74\x75\x76\x77"
5158 "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f"
5159 "\x80\x81\x82\x83\x84\x85\x86\x87"
5160 "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f"
5161 "\x90\x91\x92\x93\x94\x95\x96\x97"
5162 "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f"
5163 "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7"
5164 "\xa8\xa9\xaa\xab\xac\xad\xae\xaf"
5165 "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7"
5166 "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf"
5167 "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7"
5168 "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf"
5169 "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7"
5170 "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf"
5171 "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7"
5172 "\xe8\xe9\xea\xeb\xec\xed\xee\xef"
5173 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7"
5174 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff"
5175 "\x00\x01\x02\x03\x04\x05\x06\x07"
5176 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f"
5177 "\x10\x11\x12\x13\x14\x15\x16\x17"
5178 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f"
5179 "\x20\x21\x22\x23\x24\x25\x26\x27"
5180 "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f"
5181 "\x30\x31\x32\x33\x34\x35\x36\x37"
5182 "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f"
5183 "\x40\x41\x42\x43\x44\x45\x46\x47"
5184 "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f"
5185 "\x50\x51\x52\x53\x54\x55\x56\x57"
5186 "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f"
5187 "\x60\x61\x62\x63\x64\x65\x66\x67"
5188 "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f"
5189 "\x70\x71\x72\x73\x74\x75\x76\x77"
5190 "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f"
5191 "\x80\x81\x82\x83\x84\x85\x86\x87"
5192 "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f"
5193 "\x90\x91\x92\x93\x94\x95\x96\x97"
5194 "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f"
5195 "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7"
5196 "\xa8\xa9\xaa\xab\xac\xad\xae\xaf"
5197 "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7"
5198 "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf"
5199 "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7"
5200 "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf"
5201 "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7"
5202 "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf"
5203 "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7"
5204 "\xe8\xe9\xea\xeb\xec\xed\xee\xef"
5205 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7"
5206 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff",
5207 .rlen = 512,
5208 }, {
5209 .key = "\x27\x18\x28\x18\x28\x45\x90\x45"
5210 "\x23\x53\x60\x28\x74\x71\x35\x26"
5211 "\x62\x49\x77\x57\x24\x70\x93\x69"
5212 "\x99\x59\x57\x49\x66\x96\x76\x27"
5213 "\x31\x41\x59\x26\x53\x58\x97\x93"
5214 "\x23\x84\x62\x64\x33\x83\x27\x95"
5215 "\x02\x88\x41\x97\x16\x93\x99\x37"
5216 "\x51\x05\x82\x09\x74\x94\x45\x92",
5217 .klen = 64,
5218 .iv = "\xff\x00\x00\x00\x00\x00\x00\x00"
5219 "\x00\x00\x00\x00\x00\x00\x00\x00",
5220 .input = "\x2b\xc9\xb4\x6b\x10\x94\xa9\x32"
5221 "\xaa\xb0\x20\xc6\x44\x3d\x74\x1f"
5222 "\x75\x01\xa7\xf6\xf5\xf7\x62\x1b"
5223 "\x80\x1b\x82\xcb\x01\x59\x91\x7f"
5224 "\x80\x3a\x98\xf0\xd2\xca\xc4\xc3"
5225 "\x34\xfd\xe6\x11\xf9\x33\x45\x12"
5226 "\x48\xc5\x8c\x25\xf1\xc5\xc5\x23"
5227 "\xd3\x44\xb4\x73\xd5\x04\xc0\xb7"
5228 "\xca\x2f\xf5\xcd\xc5\xb4\xdd\xb0"
5229 "\xf4\x60\xe8\xfb\xc6\x9c\xc5\x78"
5230 "\xcd\xec\x7d\xdc\x19\x9c\x72\x64"
5231 "\x63\x0b\x38\x2e\x76\xdd\x2d\x36"
5232 "\x49\xb0\x1d\xea\x78\x9e\x00\xca"
5233 "\x20\xcc\x1b\x1e\x98\x74\xab\xed"
5234 "\x79\xf7\xd0\x6c\xd8\x93\x80\x29"
5235 "\xac\xa5\x5e\x34\xa9\xab\xa0\x55"
5236 "\x9a\xea\xaa\x95\x4d\x7b\xfe\x46"
5237 "\x26\x8a\xfd\x88\xa2\xa8\xa6\xae"
5238 "\x25\x42\x17\xbf\x76\x8f\x1c\x3d"
5239 "\xec\x9a\xda\x64\x96\xb5\x61\xff"
5240 "\x99\xeb\x12\x96\x85\x82\x9d\xd5"
5241 "\x81\x85\x14\xa8\x59\xac\x8c\x94"
5242 "\xbb\x3b\x85\x2b\xdf\xb3\x0c\xba"
5243 "\x82\xc6\x4d\xca\x86\xea\x53\x28"
5244 "\x4c\xe0\x4e\x31\xe3\x73\x2f\x79"
5245 "\x9d\x42\xe1\x03\xe3\x8b\xc4\xff"
5246 "\x05\xca\x81\x7b\xda\xa2\xde\x63"
5247 "\x3a\x10\xbe\xc2\xac\x32\xc4\x05"
5248 "\x47\x7e\xef\x67\xe2\x5f\x5b\xae"
5249 "\xed\xf1\x70\x34\x16\x9a\x07\x7b"
5250 "\xf2\x25\x2b\xb0\xf8\x3c\x15\x9a"
5251 "\xa6\x59\x55\x5f\xc1\xf4\x1e\xcd"
5252 "\x93\x1f\x06\xba\xd4\x9a\x22\x69"
5253 "\xfa\x8e\x95\x0d\xf3\x23\x59\x2c"
5254 "\xfe\x00\xba\xf0\x0e\xbc\x6d\xd6"
5255 "\x62\xf0\x7a\x0e\x83\x3e\xdb\x32"
5256 "\xfd\x43\x7d\xda\x42\x51\x87\x43"
5257 "\x9d\xf9\xef\xf4\x30\x97\xf8\x09"
5258 "\x88\xfc\x3f\x93\x70\xc1\x4a\xec"
5259 "\x27\x5f\x11\xac\x71\xc7\x48\x46"
5260 "\x2f\xf9\xdf\x8d\x9f\xf7\x2e\x56"
5261 "\x0d\x4e\xb0\x32\x76\xce\x86\x81"
5262 "\xcd\xdf\xe4\x00\xbf\xfd\x5f\x24"
5263 "\xaf\xf7\x9a\xde\xff\x18\xac\x14"
5264 "\x90\xc5\x01\x39\x34\x0f\x24\xf3"
5265 "\x13\x2f\x5e\x4f\x30\x9a\x36\x40"
5266 "\xec\xea\xbc\xcd\x9e\x0e\x5b\x23"
5267 "\x50\x88\x97\x40\x69\xb1\x37\xf5"
5268 "\xc3\x15\xf9\x3f\xb7\x79\x64\xe8"
5269 "\x7b\x10\x20\xb9\x2b\x46\x83\x5b"
5270 "\xd8\x39\xfc\xe4\xfa\x88\x52\xf2"
5271 "\x72\xb0\x97\x4e\x89\xb3\x48\x00"
5272 "\xc1\x16\x73\x50\x77\xba\xa6\x65"
5273 "\x20\x2d\xb0\x02\x27\x89\xda\x99"
5274 "\x45\xfb\xe9\xd3\x1d\x39\x2f\xd6"
5275 "\x2a\xda\x09\x12\x11\xaf\xe6\x57"
5276 "\x01\x04\x8a\xff\x86\x8b\xac\xf8"
5277 "\xee\xe4\x1c\x98\x5b\xcf\x6b\x76"
5278 "\xa3\x0e\x33\x74\x40\x18\x39\x72"
5279 "\x66\x50\x31\xfd\x70\xdf\xe8\x51"
5280 "\x96\x21\x36\xb2\x9b\xfa\x85\xd1"
5281 "\x30\x05\xc8\x92\x98\x80\xff\x7a"
5282 "\xaf\x43\x0b\xc5\x20\x41\x92\x20"
5283 "\xd4\xa0\x91\x98\x11\x5f\x4d\xb1",
5284 .ilen = 512,
5285 .result = "\x00\x01\x02\x03\x04\x05\x06\x07"
5286 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f"
5287 "\x10\x11\x12\x13\x14\x15\x16\x17"
5288 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f"
5289 "\x20\x21\x22\x23\x24\x25\x26\x27"
5290 "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f"
5291 "\x30\x31\x32\x33\x34\x35\x36\x37"
5292 "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f"
5293 "\x40\x41\x42\x43\x44\x45\x46\x47"
5294 "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f"
5295 "\x50\x51\x52\x53\x54\x55\x56\x57"
5296 "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f"
5297 "\x60\x61\x62\x63\x64\x65\x66\x67"
5298 "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f"
5299 "\x70\x71\x72\x73\x74\x75\x76\x77"
5300 "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f"
5301 "\x80\x81\x82\x83\x84\x85\x86\x87"
5302 "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f"
5303 "\x90\x91\x92\x93\x94\x95\x96\x97"
5304 "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f"
5305 "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7"
5306 "\xa8\xa9\xaa\xab\xac\xad\xae\xaf"
5307 "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7"
5308 "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf"
5309 "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7"
5310 "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf"
5311 "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7"
5312 "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf"
5313 "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7"
5314 "\xe8\xe9\xea\xeb\xec\xed\xee\xef"
5315 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7"
5316 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff"
5317 "\x00\x01\x02\x03\x04\x05\x06\x07"
5318 "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f"
5319 "\x10\x11\x12\x13\x14\x15\x16\x17"
5320 "\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f"
5321 "\x20\x21\x22\x23\x24\x25\x26\x27"
5322 "\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f"
5323 "\x30\x31\x32\x33\x34\x35\x36\x37"
5324 "\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f"
5325 "\x40\x41\x42\x43\x44\x45\x46\x47"
5326 "\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f"
5327 "\x50\x51\x52\x53\x54\x55\x56\x57"
5328 "\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f"
5329 "\x60\x61\x62\x63\x64\x65\x66\x67"
5330 "\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f"
5331 "\x70\x71\x72\x73\x74\x75\x76\x77"
5332 "\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f"
5333 "\x80\x81\x82\x83\x84\x85\x86\x87"
5334 "\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f"
5335 "\x90\x91\x92\x93\x94\x95\x96\x97"
5336 "\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f"
5337 "\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7"
5338 "\xa8\xa9\xaa\xab\xac\xad\xae\xaf"
5339 "\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7"
5340 "\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf"
5341 "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7"
5342 "\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf"
5343 "\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7"
5344 "\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf"
5345 "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7"
5346 "\xe8\xe9\xea\xeb\xec\xed\xee\xef"
5347 "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7"
5348 "\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff",
5349 .rlen = 512,
5350 },
5351};
5352
4671/* Cast6 test vectors from RFC 2612 */ 5353/* Cast6 test vectors from RFC 2612 */
4672#define CAST6_ENC_TEST_VECTORS 3 5354#define CAST6_ENC_TEST_VECTORS 3
4673#define CAST6_DEC_TEST_VECTORS 3 5355#define CAST6_DEC_TEST_VECTORS 3