From f6bd1ad0f8e9cff0aea72d488611e5f2ff077826 Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Tue, 29 Jul 2025 15:32:21 +0200 Subject: agent: Another fix for our use of point prefixes. * agent/divert-scd.c (agent_card_ecc_kem): Check for 0x41 prefix. -- GnuPG-bug-id: 7709 --- agent/divert-scd.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/agent/divert-scd.c b/agent/divert-scd.c index e0b5164b5..cd80f09f1 100644 --- a/agent/divert-scd.c +++ b/agent/divert-scd.c @@ -518,7 +518,7 @@ agent_card_ecc_kem (ctrl_t ctrl, const unsigned char *ecc_ct, if (len == ecc_point_len) memcpy (ecc_ecdh, ecdh, len); else if (len && (len - 1) * 2 == ecc_point_len - 1 - && (ecdh[0] & ~1) == 0x02) + && (ecdh[0] == 0x41 || (ecdh[0] & ~1) == 0x02)) { /* It's x-coordinate-only (compressed) point representation. */ memcpy (ecc_ecdh, ecdh, len); -- cgit v1.2.3