From: Herbert Xu <herbert@gondor.apana.org.au>
To: Linux Crypto Mailing List <linux-crypto@vger.kernel.org>
Subject: [PATCH 12/24] crypto: hisilicon - Forbid 2-key 3DES in FIPS mode
Date: Thu, 11 Apr 2019 16:51:08 +0800 [thread overview]
Message-ID: <E1hEVQK-0006nA-SH@gondobar> (raw)
In-Reply-To: 20190411084707.h56mz2z7jxusnr7u@gondor.apana.org.au
This patch forbids the use of 2-key 3DES (K1 == K3) in FIPS mode.
It also removes a couple of unnecessary key length checks that
are already performed by the crypto API.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
---
drivers/crypto/hisilicon/sec/sec_algs.c | 12 ++++--------
1 file changed, 4 insertions(+), 8 deletions(-)
diff --git a/drivers/crypto/hisilicon/sec/sec_algs.c b/drivers/crypto/hisilicon/sec/sec_algs.c
index adc0cd8ae97b..02768af0dccd 100644
--- a/drivers/crypto/hisilicon/sec/sec_algs.c
+++ b/drivers/crypto/hisilicon/sec/sec_algs.c
@@ -365,20 +365,16 @@ static int sec_alg_skcipher_setkey_des_cbc(struct crypto_skcipher *tfm,
static int sec_alg_skcipher_setkey_3des_ecb(struct crypto_skcipher *tfm,
const u8 *key, unsigned int keylen)
{
- if (keylen != DES_KEY_SIZE * 3)
- return -EINVAL;
-
- return sec_alg_skcipher_setkey(tfm, key, keylen,
+ return unlikely(des3_verify_key(tfm, key)) ?:
+ sec_alg_skcipher_setkey(tfm, key, keylen,
SEC_C_3DES_ECB_192_3KEY);
}
static int sec_alg_skcipher_setkey_3des_cbc(struct crypto_skcipher *tfm,
const u8 *key, unsigned int keylen)
{
- if (keylen != DES3_EDE_KEY_SIZE)
- return -EINVAL;
-
- return sec_alg_skcipher_setkey(tfm, key, keylen,
+ return unlikely(des3_verify_key(tfm, key)) ?:
+ sec_alg_skcipher_setkey(tfm, key, keylen,
SEC_C_3DES_CBC_192_3KEY);
}
next prev parent reply other threads:[~2019-04-11 8:51 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-04-11 8:47 [PATCH 0/24] Forbid 2-key 3DES in FIPS mode Herbert Xu
2019-04-11 8:50 ` [PATCH 1/24] crypto: des_generic - Forbid 2-key in 3DES and add helpers Herbert Xu
2019-04-11 8:50 ` [PATCH 2/24] crypto: s390 - Forbid 2-key 3DES in FIPS mode Herbert Xu
2019-04-11 8:50 ` [PATCH 3/24] crypto: sparc " Herbert Xu
2019-04-11 8:51 ` [PATCH 4/24] crypto: atmel " Herbert Xu
2019-04-11 8:51 ` [PATCH 5/24] crypto: bcm " Herbert Xu
2019-04-11 8:51 ` [PATCH 6/24] crypto: caam " Herbert Xu
2019-04-16 12:52 ` Horia Geanta
2019-04-16 12:53 ` Iuliana Prodan
2019-04-11 8:51 ` [PATCH 7/24] crypto: cavium " Herbert Xu
2019-04-11 8:51 ` [PATCH 8/24] crypto: nitrox " Herbert Xu
2019-04-11 8:51 ` [PATCH 9/24] crypto: ccp " Herbert Xu
2019-04-11 8:51 ` [PATCH 10/24] crypto: ccree " Herbert Xu
2019-04-11 9:27 ` Stephan Mueller
2019-04-11 9:30 ` Herbert Xu
2019-04-11 11:07 ` Gilad Ben-Yossef
2019-04-11 8:51 ` [PATCH 11/24] crypto: hifn_795x " Herbert Xu
2019-04-11 8:51 ` Herbert Xu [this message]
2019-04-11 8:51 ` [PATCH 13/24] crypto: inside-secure " Herbert Xu
2019-04-11 8:51 ` [PATCH 14/24] crypto: ixp4xx " Herbert Xu
2019-04-11 8:51 ` [PATCH 15/24] crypto: marvell " Herbert Xu
2019-04-11 8:51 ` [PATCH 16/24] crypto: n2 " Herbert Xu
2019-04-11 8:51 ` [PATCH 17/24] crypto: omap " Herbert Xu
2019-04-11 8:51 ` [PATCH 18/24] crypto: picoxcell " Herbert Xu
2019-04-11 8:51 ` [PATCH 19/24] crypto: qce " Herbert Xu
2019-04-11 8:51 ` [PATCH 20/24] crypto: rockchip " Herbert Xu
2019-04-11 8:51 ` [PATCH 21/24] crypto: stm32 " Herbert Xu
2019-04-12 13:36 ` Lionel DEBIEVE
2019-04-13 13:50 ` Herbert Xu
2019-04-15 9:45 ` Lionel DEBIEVE
2019-04-11 8:51 ` [PATCH 22/24] crypto: sun4i-ss " Herbert Xu
2019-04-11 13:51 ` Corentin Labbe
2019-04-11 8:51 ` [PATCH 23/24] crypto: talitos " Herbert Xu
2019-04-11 8:51 ` [PATCH 24/24] crypto: ux500 " Herbert Xu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=E1hEVQK-0006nA-SH@gondobar \
--to=herbert@gondor.apana.org.au \
--cc=linux-crypto@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox