1

我使用命令创建了 mykey.pem

"openssl genrsa -out mykey.pem 1024"

然后我使用命令分离公钥

'openssl rsa -in key.pem -pubout -out pubkey.pem'

我正在使用函数读取私钥,

PEM_read_RSAPrivateKey(fp,NULL,NULL,NULL)

但我无法检索私钥。

我是否必须摆脱像“开始 RSA 私钥”和“结束 RSA 私钥”这样的标题?//我试过但没用

我是否必须向 PEM_read_RSAPrivateKey 函数发送任何其他值?

或使用其他功能来检索私钥?

4

2 回答 2

2

如果您仍然无法使用

PEM_read_RSAPrivateKey()

即使在提供密码后,一个原因可能是您没有正确初始化 OpenSSL 库,请尝试添加

OpenSSL_add_all_algorithms();
OpenSSL_add_all_ciphers();
OpenSSL_add_all_digests();

在你打电话之前

PEM_read_RSAPrivateKey()
于 2013-05-06T06:50:45.490 回答
0

您不需要从文件中删除标题。但是,如果文件受密码保护,则需要将密码传递给函数 PEM_read_RSAPrivateKey。

您还可以查看 PEM_read_PrivateKey。其他功能在这里列出。

如果 fp 指向具有 PE​​M 形式的 RSA 私钥且没有任何密码的文件,那么它应该会成功。

于 2013-05-01T04:43:03.463 回答