使用.pem文件中的公钥进行RSA加密

时间:2013-04-28 18:52:28

标签: rsa public-key-encryption evp-cipher

我正在使用RSA_public_encrypt函数将加密数据发送到套接字。我正在使用“pkey = PEM_read_PUBKEY(f,NULL,NULL,NULL);”从.PEM文件中读取公钥。功能。 从上面的函数检索的'pkey'是EVP_PKEY *类型,我不能在函数RSA_public_encrypt中使用它。 (RSA_public_encrypt使用RSA *类型密钥)

如何将EVP_PKEY * pkey转换为RSA * rsa?

1 个答案:

答案 0 :(得分:1)

使用RSA *EVP_PKEY_get1_RSA(EVP_PKEY *pkey)从EVP_PKEY获取RSA类型密钥。

示例:

EVP_PKEY    *evp;
RSA         *pubkey

evp = ...; /* some way to get the public key */
pubkey = EVP_PKEY_get1_RSA(evp);
if (pubkey == NULL) {
    /* error handling */
}