Commit 9c6d536f authored by Paul Yang's avatar Paul Yang
Browse files

Fix the default digest algorthm of SM2



Currently SM2 shares the ameth with EC, so the current default digest
algorithm returned is SHA256. This fixes the default digest algorithm of
SM2 to SM3, which is the only valid digest algorithm for SM2 signature.

Reviewed-by: default avatarMatt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/8186)

(cherry picked from commit e766f4a0)
parent e8dc6580
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -504,7 +504,12 @@ static int ec_pkey_ctrl(EVP_PKEY *pkey, int op, long arg1, void *arg2)
#endif

    case ASN1_PKEY_CTRL_DEFAULT_MD_NID:
        if (EVP_PKEY_id(pkey) == EVP_PKEY_SM2) {
            /* For SM2, the only valid digest-alg is SM3 */
            *(int *)arg2 = NID_sm3;
        } else {
            *(int *)arg2 = NID_sha256;
        }
        return 1;

    case ASN1_PKEY_CTRL_SET1_TLS_ENCPT: