我需要在C中创建一个应用程序来生成一个自签名的PKCS#12证书。我有一个应用程序,到目前为止创建了一个 .cs 和一个 .key 文件。
我还有一个程序可以从提供的 .key 和 .p7 文件中创建PKCS#12对象。因此,鉴于我有 .csr 和 .key 文件,我认为我的下一步行动是创建一个 .p7 文件 .key / .csr 文件?
我找到了一个签署或验证证书的示例应用程序here。在签名过程结束时,我们有一个PKCS7对象。我认为这是我需要的对象。
但是,当我使用生成的密钥运行示例应用程序时,会出现以下错误:
$ ./sign_and_verify_util sign mykey.key.pem
Error reading signer private key in mykey.key.pem
我将.pem添加到文件中,因为我认为这是问题所在。
任何向正确方向推的都会有很大的帮助,我真的很感激!
修改
我刚刚使用以下方法将mykey.key转换为mykey.key.pem:
openssl rsa -inform DER -outform PEM -in mykey.key -out mykey.key.pem
现在,我正在尝试从 .p7 文件获取的应用程序说:
Error reading signer certificate in (null)