[PATCH 05/10] crypto/des_generic: Ignore parity on triple keys

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



des3_ede_setkey now ignores unused bits (often used for parity)
when comparing keys to report weak combinations.
---
 crypto/des_generic.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/crypto/des_generic.c b/crypto/des_generic.c
index 24d7f93..d9a81d8 100644
--- a/crypto/des_generic.c
+++ b/crypto/des_generic.c
@@ -821,8 +821,8 @@ static int des3_ede_setkey(struct crypto_tfm *tfm, const u8 *key,
 	u32 *expkey = dctx->expkey;
 	u32 *flags = &tfm->crt_flags;
 
-	if (unlikely(!((K[0] ^ K[2]) | (K[1] ^ K[3])) ||
-		     !((K[2] ^ K[4]) | (K[3] ^ K[5]))) &&
+	if (unlikely(!(((K[0] ^ K[2]) | (K[1] ^ K[3])) & 0xfefefefe) ||
+		     !(((K[2] ^ K[4]) | (K[3] ^ K[5])) & 0xfefefefe)) &&
 		     (*flags & CRYPTO_TFM_REQ_WEAK_KEY))
 	{
 		*flags |= CRYPTO_TFM_RES_WEAK_KEY;
-- 
1.6.0.6

--
To unsubscribe from this list: send the line "unsubscribe linux-crypto" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Kernel]     [Gnu Classpath]     [Gnu Crypto]     [DM Crypt]     [Netfilter]     [Bugtraq]

  Powered by Linux