Commit 3c383637 authored by Tianjia Zhang's avatar Tianjia Zhang Committed by Herbert Xu
Browse files

crypto: tcrypt - add SM4 cts-cbc/xts/xcbc test



Added CTS-CBC/XTS/XCBC tests for SM4 algorithms, as well as
corresponding speed tests, this is to test performance-optimized
implementations of these modes.

Signed-off-by: default avatarTianjia Zhang <tianjia.zhang@linux.alibaba.com>
Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
parent c24ee936
Loading
Loading
Loading
Loading
+21 −0
Original line number Diff line number Diff line
@@ -1710,6 +1710,10 @@ static int do_test(const char *alg, u32 type, u32 mask, int m, u32 num_mb)
		ret = min(ret, tcrypt_test("gcm(aria)"));
		break;

	case 59:
		ret = min(ret, tcrypt_test("cts(cbc(sm4))"));
		break;

	case 100:
		ret = min(ret, tcrypt_test("hmac(md5)"));
		break;
@@ -1810,6 +1814,10 @@ static int do_test(const char *alg, u32 type, u32 mask, int m, u32 num_mb)
		ret = min(ret, tcrypt_test("cmac(sm4)"));
		break;

	case 160:
		ret = min(ret, tcrypt_test("xcbc(sm4)"));
		break;

	case 181:
		ret = min(ret, tcrypt_test("authenc(hmac(sha1),cbc(des))"));
		break;
@@ -1845,6 +1853,7 @@ static int do_test(const char *alg, u32 type, u32 mask, int m, u32 num_mb)
		ret = min(ret, tcrypt_test("cbc(sm4)"));
		ret = min(ret, tcrypt_test("cfb(sm4)"));
		ret = min(ret, tcrypt_test("ctr(sm4)"));
		ret = min(ret, tcrypt_test("xts(sm4)"));
		break;
	case 192:
		ret = min(ret, tcrypt_test("ecb(aria)"));
@@ -2108,6 +2117,10 @@ static int do_test(const char *alg, u32 type, u32 mask, int m, u32 num_mb)
				speed_template_16);
		test_cipher_speed("cbc(sm4)", DECRYPT, sec, NULL, 0,
				speed_template_16);
		test_cipher_speed("cts(cbc(sm4))", ENCRYPT, sec, NULL, 0,
				speed_template_16);
		test_cipher_speed("cts(cbc(sm4))", DECRYPT, sec, NULL, 0,
				speed_template_16);
		test_cipher_speed("cfb(sm4)", ENCRYPT, sec, NULL, 0,
				speed_template_16);
		test_cipher_speed("cfb(sm4)", DECRYPT, sec, NULL, 0,
@@ -2116,6 +2129,10 @@ static int do_test(const char *alg, u32 type, u32 mask, int m, u32 num_mb)
				speed_template_16);
		test_cipher_speed("ctr(sm4)", DECRYPT, sec, NULL, 0,
				speed_template_16);
		test_cipher_speed("xts(sm4)", ENCRYPT, sec, NULL, 0,
				speed_template_32);
		test_cipher_speed("xts(sm4)", DECRYPT, sec, NULL, 0,
				speed_template_32);
		break;

	case 219:
@@ -2629,6 +2646,10 @@ static int do_test(const char *alg, u32 type, u32 mask, int m, u32 num_mb)
				speed_template_16);
		test_acipher_speed("ctr(sm4)", DECRYPT, sec, NULL, 0,
				speed_template_16);
		test_acipher_speed("xts(sm4)", ENCRYPT, sec, NULL, 0,
				speed_template_32);
		test_acipher_speed("xts(sm4)", DECRYPT, sec, NULL, 0,
				speed_template_32);
		break;

	case 519: