From 2bfed46bbc6fb3326d475ef0e8ca227966f58922 Mon Sep 17 00:00:00 2001 From: Stefan Berger Date: Thu, 30 Aug 2018 06:20:48 -0400 Subject: [PATCH] tpm2: Fix an error in BnValidateSignatureEcSm2() Signed-off-by: Stefan Berger --- src/tpm2/crypto/openssl/CryptEccSignature.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/tpm2/crypto/openssl/CryptEccSignature.c b/src/tpm2/crypto/openssl/CryptEccSignature.c index 5f7c2da8..55f23843 100644 --- a/src/tpm2/crypto/openssl/CryptEccSignature.c +++ b/src/tpm2/crypto/openssl/CryptEccSignature.c @@ -3,7 +3,7 @@ /* ECC Signatures */ /* Written by Ken Goldman */ /* IBM Thomas J. Watson Research Center */ -/* $Id: CryptEccSignature.c 1311 2018-08-23 21:39:29Z kgoldman $ */ +/* $Id: CryptEccSignature.c 1319 2018-08-30 13:35:27Z kgoldman $ */ /* */ /* Licenses and Notices */ /* */ @@ -667,8 +667,9 @@ BnValidateSignatureEcSm2( OK = OK && BnAdd(bnRp, bnE, P->x); OK = OK && BnMod(bnRp, order); // f) verify that r' = r - OK = OK && (BnUnsignedCmp(bnR, bnRp)); - if(!OK) + OK = OK && (BnUnsignedCmp(bnR, bnRp) == 0); + + if(!OK) return TPM_RC_SIGNATURE; else return TPM_RC_SUCCESS;