Provided by: libssl-doc_1.0.1f-1ubuntu2.27_all bug

NAME

       EVP_PKEY_copy_parameters, EVP_PKEY_missing_parameters, EVP_PKEY_cmp_parameters,
       EVP_PKEY_cmp - public key parameter and comparison functions

SYNOPSIS

        #include <openssl/evp.h>

        int EVP_PKEY_missing_parameters(const EVP_PKEY *pkey);
        int EVP_PKEY_copy_parameters(EVP_PKEY *to, const EVP_PKEY *from);

        int EVP_PKEY_cmp_parameters(const EVP_PKEY *a, const EVP_PKEY *b);
        int EVP_PKEY_cmp(const EVP_PKEY *a, const EVP_PKEY *b);

DESCRIPTION

       The function EVP_PKEY_missing_parameters() returns 1 if the public key parameters of pkey
       are missing and 0 if they are present or the algorithm doesn't use parameters.

       The function EVP_PKEY_copy_parameters() copies the parameters from key from to key to.

       The funcion EVP_PKEY_cmp_parameters() compares the parameters of keys a and b.

       The funcion EVP_PKEY_cmp() compares the public key components and parameters (if present)
       of keys a and b.

NOTES

       The main purpose of the functions EVP_PKEY_missing_parameters() and
       EVP_PKEY_copy_parameters() is to handle public keys in certificates where the parameters
       are sometimes omitted from a public key if they are inherited from the CA that signed it.

       Since OpenSSL private keys contain public key components too the function EVP_PKEY_cmp()
       can also be used to determine if a private key matches a public key.

RETURN VALUES

       The function EVP_PKEY_missing_parameters() returns 1 if the public key parameters of pkey
       are missing and 0 if they are present or the algorithm doesn't use parameters.

       These functions EVP_PKEY_copy_parameters() returns 1 for success and 0 for failure.

       The function EVP_PKEY_cmp_parameters() and EVP_PKEY_cmp() return 1 if the keys match, 0 if
       they don't match, -1 if the key types are different and -2 if the operation is not
       supported.

SEE ALSO

       EVP_PKEY_CTX_new(3), EVP_PKEY_keygen(3)