0

我有一个从 .p12 文件中导出的私钥。该密钥已用于成功签署应用程序本身。

现在我需要从密钥生成 CSR。该站点建议对任务使用以下命令:

req -out CSR.csr -key privateKey.key -new

这会产生以下错误:

无法加载私钥

6420:错误:0D0680A8:asn1 编码例程:ASN1_CHECK_TLEN:错误标签:.\crypto\asn1\tasn_dec.c:1319:

6420:error:0D06C03A:asn1 编码例程:ASN1_D2I_EX_PRIMITIVE:nested asn1 错误:.\crypto\asn1\tasn_dec.c:831:

6420:error:0D08303A:asn1 编码例程:ASN1_TEMPLATE_NOEXP_D2I:nested asn1 错误:.\crypto\asn1\tasn_dec.c:751:Field=version, Type=RSA

6420:错误:04093004:rsa 例程:OLD_RSA_PRIV_DECODE:RSA lib:.\crypto\rsa\rsa_ameth.c:115:

6420:错误:0D0680A8:asn1 编码例程:ASN1_CHECK_TLEN:错误标签:.\crypto\asn1\tasn_dec.c:1319:

6420:error:0D06C03A:asn1 编码例程:ASN1_D2I_EX_PRIMITIVE:nested asn1 错误:.\crypto\asn1\tasn_dec.c:831:

6420:error:0D08303A:asn1 编码例程:ASN1_TEMPLATE_NOEXP_D2I:nested asn1 错误:.\crypto\asn1\tasn_dec.c:751:Field=version, Type=PKCS8_PRIV_KEY_INFO

6420:error:0907B00D:PEM 例程:PEM_READ_BIO_PRIVATEKEY:ASN1 lib:.\crypto\pem\pem_pkey.c:132: req 中的错误

错误与我尝试相同

rsa -noout -text -in privateKey.key

该文件确实存在。我做错了什么,我该如何解决?

4

1 回答 1

0

另一种可行的解决方案。

1、从原来的.p12创建一个.pem文件(提示时输入密码)

openssl pkcs12 -in my.p12 -nocerts -out my.pem -nodes

2、从.pem创建请求:

openssl req -new -key my.pem -out my.csr

系统将提示您输入国家、州、地区、组织、单位和常用名称以及您的电子邮件地址和其他属性(挑战密码和可选的公司名称)。

完毕。

编辑:也在 CERN 证书颁发机构的准备续订证书签名请求(CSR)与 OpenSSL

于 2013-01-30T11:06:58.807 回答