Skip to content

Commit 5c0d733

Browse files
committed
Fix for TPM2_VerifySignature not using the correct hash algorithm (ZD 20296)
1 parent 877a43d commit 5c0d733

File tree

2 files changed

+12
-2
lines changed

2 files changed

+12
-2
lines changed

configure.ac

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -264,7 +264,7 @@ fi
264264

265265

266266
# STM ST33 Support
267-
AC_ARG_ENABLE([st33],,
267+
AC_ARG_ENABLE([st33],
268268
[ ENABLED_ST33=$enableval ],
269269
[ ENABLED_ST33=no ]
270270
)

src/tpm2_wrap.c

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4273,8 +4273,18 @@ int wolfTPM2_VerifyHash_ex(WOLFTPM2_DEV* dev, WOLFTPM2_KEY* key,
42734273
int wolfTPM2_VerifyHash(WOLFTPM2_DEV* dev, WOLFTPM2_KEY* key,
42744274
const byte* sig, int sigSz, const byte* digest, int digestSz)
42754275
{
4276+
int hashAlg = TPM_ALG_NULL;
4277+
4278+
/* detect hash algithm based on digest size*/
4279+
if (digestSz >= TPM_SHA512_DIGEST_SIZE)
4280+
hashAlg = TPM_ALG_SHA512;
4281+
else if (digestSz >= TPM_SHA384_DIGEST_SIZE)
4282+
hashAlg = TPM_ALG_SHA384;
4283+
else
4284+
hashAlg = TPM_ALG_SHA256;
4285+
42764286
return wolfTPM2_VerifyHashTicket(dev, key, sig, sigSz, digest, digestSz,
4277-
TPM_ALG_NULL, WOLFTPM2_WRAP_DIGEST, NULL);
4287+
TPM_ALG_NULL, hashAlg, NULL);
42784288
}
42794289

42804290
/* Generate ECC key-pair with NULL hierarchy and load (populates handle) */

0 commit comments

Comments
 (0)