* [PATCH] crypto: ccree - use crypto_memneq() to compare AEAD tag
@ 2026-08-15 17:09 David C.C.M. Gall
0 siblings, 0 replies; only message in thread
From: David C.C.M. Gall @ 2026-08-15 17:09 UTC (permalink / raw)
To: Gilad Ben-Yossef, Herbert Xu, David S. Miller, linux-crypto,
linux-kernel
Cc: gregkh
cc_aead_complete() compares the computed MAC against the received ICV
with memcmp(), which short-circuits on the first differing byte and
leaks tag-match length via timing. Use crypto_memneq() instead.
Assisted-by: gregkh_clanker_t1000
Signed-off-by: David C.C.M. Gall <david.ccm.gall@googlemail.com>
---
drivers/crypto/ccree/cc_aead.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/crypto/ccree/cc_aead.c b/drivers/crypto/ccree/cc_aead.c
index 088c4603047f..d57a98f89e53 100644
--- a/drivers/crypto/ccree/cc_aead.c
+++ b/drivers/crypto/ccree/cc_aead.c
@@ -226,8 +226,8 @@ static void cc_aead_complete(struct device *dev, void *cc_req, int err)
goto done;
if (areq_ctx->gen_ctx.op_type == DRV_CRYPTO_DIRECTION_DECRYPT) {
- if (memcmp(areq_ctx->mac_buf, areq_ctx->icv_virt_addr,
- ctx->authsize) != 0) {
+ if (crypto_memneq(areq_ctx->mac_buf, areq_ctx->icv_virt_addr,
+ ctx->authsize)) {
dev_dbg(dev, "Payload authentication failure, (auth-size=%d, cipher=%d)\n",
ctx->authsize, ctx->cipher_mode);
/* In case of payload authentication failure, MUST NOT
--
2.43.0
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2026-08-15 17:10 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-15 17:09 [PATCH] crypto: ccree - use crypto_memneq() to compare AEAD tag David C.C.M. Gall
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.