forked from espressif/esp-idf
fix(mbedtls/port): Check signature hash length before using ECDSA hardware
This commit is contained in:
@@ -674,7 +674,7 @@ int __wrap_mbedtls_ecdsa_verify(mbedtls_ecp_group *grp,
|
|||||||
const mbedtls_mpi *r,
|
const mbedtls_mpi *r,
|
||||||
const mbedtls_mpi *s)
|
const mbedtls_mpi *s)
|
||||||
{
|
{
|
||||||
if (grp->id == MBEDTLS_ECP_DP_SECP192R1 || grp->id == MBEDTLS_ECP_DP_SECP256R1) {
|
if ((grp->id == MBEDTLS_ECP_DP_SECP192R1 || grp->id == MBEDTLS_ECP_DP_SECP256R1) && blen == ECDSA_SHA_LEN) {
|
||||||
return esp_ecdsa_verify(grp, buf, blen, Q, r, s);
|
return esp_ecdsa_verify(grp, buf, blen, Q, r, s);
|
||||||
} else {
|
} else {
|
||||||
return __real_mbedtls_ecdsa_verify(grp, buf, blen, Q, r, s);
|
return __real_mbedtls_ecdsa_verify(grp, buf, blen, Q, r, s);
|
||||||
|
Reference in New Issue
Block a user