EVP_PKEY_get_default_digest_nid.3ssl - Man Page

get default signature digest


 #include <openssl/evp.h>
 int EVP_PKEY_get_default_digest_nid(EVP_PKEY *pkey, int *pnid);


The EVP_PKEY_get_default_digest_nid() function sets pnid to the default message digest NID for the public key signature operations associated with key pkey. Note that some signature algorithms (i.e. Ed25519 and Ed448) do not use a digest during signing. In this case pnid will be set to NID_undef.


For all current standard OpenSSL public key algorithms SHA1 is returned.

Return Values

The EVP_PKEY_get_default_digest_nid() function returns 1 if the message digest is advisory (that is other digests can be used) and 2 if it is mandatory (other digests can not be used).  It returns 0 or a negative value for failure. In particular a return value of -2 indicates the operation is not supported by the public key algorithm.

See Also

EVP_PKEY_CTX_new(3), EVP_PKEY_sign(3), EVP_PKEY_verify(3), EVP_PKEY_verify_recover(3),


This function was added in OpenSSL 1.0.0.

Referenced By


2021-09-20 1.1.1l OpenSSL