From 76cb9521795a167ae3d206343c072f602d84f815 Mon Sep 17 00:00:00 2001 From: Kevin Coffman Date: Mon, 24 Mar 2008 21:26:16 +0800 Subject: [CRYPTO] cts: Add CTS mode required for Kerberos AES support Implement CTS wrapper for CBC mode required for support of AES encryption support for Kerberos (rfc3962). Signed-off-by: Kevin Coffman Signed-off-by: Herbert Xu --- crypto/tcrypt.c | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) (limited to 'crypto/tcrypt.c') diff --git a/crypto/tcrypt.c b/crypto/tcrypt.c index 30e75d49f35..689482cd16c 100644 --- a/crypto/tcrypt.c +++ b/crypto/tcrypt.c @@ -82,9 +82,8 @@ static char *check[] = { "des", "md5", "des3_ede", "rot13", "sha1", "sha224", "sha256", "blowfish", "twofish", "serpent", "sha384", "sha512", "md4", "aes", "cast6", "arc4", "michael_mic", "deflate", "crc32c", "tea", "xtea", - "arc4", "michael_mic", "deflate", "crc32c", "tea", "xtea", "khazad", "wp512", "wp384", "wp256", "tnepres", "xeta", "fcrypt", - "camellia", "seed", "salsa20", "lzo", NULL + "camellia", "seed", "salsa20", "lzo", "cts", NULL }; static void hexdump(unsigned char *buf, unsigned int len) @@ -1328,6 +1327,12 @@ static void do_test(void) test_cipher("ecb(seed)", DECRYPT, seed_dec_tv_template, SEED_DEC_TEST_VECTORS); + //CTS + test_cipher("cts(cbc(aes))", ENCRYPT, cts_mode_enc_tv_template, + CTS_MODE_ENC_TEST_VECTORS); + test_cipher("cts(cbc(aes))", DECRYPT, cts_mode_dec_tv_template, + CTS_MODE_DEC_TEST_VECTORS); + test_hash("sha384", sha384_tv_template, SHA384_TEST_VECTORS); test_hash("sha512", sha512_tv_template, SHA512_TEST_VECTORS); test_hash("wp512", wp512_tv_template, WP512_TEST_VECTORS); @@ -1611,6 +1616,13 @@ static void do_test(void) AES_CCM_DEC_TEST_VECTORS); break; + case 38: + test_cipher("cts(cbc(aes))", ENCRYPT, cts_mode_enc_tv_template, + CTS_MODE_ENC_TEST_VECTORS); + test_cipher("cts(cbc(aes))", DECRYPT, cts_mode_dec_tv_template, + CTS_MODE_DEC_TEST_VECTORS); + break; + case 100: test_hash("hmac(md5)", hmac_md5_tv_template, HMAC_MD5_TEST_VECTORS); -- cgit v1.2.3