openssl报错 error:0909006C:PEM routines:get_name:no start line:../../dist/crypto/pem/pem_lib.c:745:Expecting: TRUSTED CERTIFICATE
时间: 2023-07-10 12:35:23 浏览: 3668
这个错误通常是由于证书文件格式不正确导致的。PEM routines:get_name:no start line 表示 OpenSSL 找不到 PEM 文件的开头行,因此认为该文件不是一个 PEM 文件,从而导致证书解析失败。
解决方法是检查证书文件的格式是否正确。可以尝试使用 openssl 命令查看证书文件内容,例如:
```
openssl x509 -in cert.pem -text -noout
```
如果该命令可以正常输出证书信息,则说明证书文件格式正确。如果仍然报错,可以尝试重新生成证书文件,或者尝试使用其他工具来生成证书文件。
相关问题
SSL error:0909006C:PEM routines:get_name:no start line: ../crypto/pem/pem_lib.c:745
这个错误通常是由于证书文件格式不正确或者证书文件已经损坏导致的。您可以尝试以下方法解决该问题:
1. 检查证书文件格式是否正确。证书文件应该以-----BEGIN CERTIFICATE-----开头,以-----END CERTIFICATE-----结尾。如果证书文件格式不正确,您可以使用以下命令将其转换为正确的PEM格式:
```
openssl x509 -inform DER -in certificate.cer -out certificate.pem
```
其中,certificate.cer为证书文件名,certificate.pem为转换后的证书文件名。
2. 检查证书文件是否已经损坏。您可以使用以下命令检查证书文件是否存在任何错误:
```
openssl x509 -in certificate.pem -text -noout
```
如果证书文件已经损坏,您需要重新下载或者重新生成证书文件。
3. 如果以上方法均无法解决问题,您可以尝试使用其他证书文件或者联系证书颁发机构寻求帮助。
openssl加密报错unable to load Private Key 1:error:0909006C:PEM routines:get_name:no start line:../../dist/crypto/pem/pem_lib.c:745:Expecting: ANY PRIVATE KEY pkeyutl: Error initializing context
这个错误通常是由于 OpenSSL 无法正确加载私钥文件导致的。确保您提供给pkeyutl`令的 `-inkey`引用了正确的钥文件,并且该文件格式正确。
您可以试使用以下命令来验证您的私钥文件是否存在语法错误:
```
openssl ec -in ecc_private_key.pem -text -noout
```
如果私钥文件存在语法错误,则会显示类似于以下内容的错误消息:
```
unable to load key
140735207794048:error:0D0680A8:asn1 encoding routines:asn1_check_tlen:wrong tag:../../crypto/asn1/tasn_dec.c:1315:
140735207794048:error:0D07803A:asn1 encoding routines:asn1_item_embed_d2i:nested asn1 error:../../crypto/asn1/tasn_dec.c:385:Type=EC_PRIVATEKEY
140735207794048:error:0D09A00D:asn1 encoding routines:d2i_PrivateKey:ASN1 lib:../../crypto/asn1/ameth_lib.c:116:
```
如果您收到类似的错误消息,请检查私钥文件中是否有任何非 ASCII 字符或空行,并确保文件以正确的格式存储。例如,如果您使用 PEM 格式存储私钥,则应该在文件的开头和结尾处分别包含 `-----BEGIN PRIVATE KEY-----` 和 `-----END PRIVATE KEY-----` 字段。
如果您无法解决此错误,请尝试重新生成私钥文件并重试加密操作。
阅读全文