我正在尝试导入Gmails smtp证书以用于Jira,但是在使用Javas keytool导入时出现此错误。
我使用openssl获取证书,即---- Begin Certificate ----和---- End Certificate ----(包括)之间的所有内容。我还尝试使用Windows证书管理器创建x.509证书,但仍然出现此错误。我已经确认文件中没有额外的空格。
我在网上看到很多人遇到过这个问题,但这些解决方案似乎都不适用于我。任何帮助将不胜感激。
由于
答案 0 :(得分:16)
openssl x509 -outform der -in foo.pem -out foo.der
然后使用DER编码的输出证书。
答案 1 :(得分:5)
答案是正确的,但请务必在复制/粘贴中包含-----BEGIN CERTIFICATE-----
和-----END CERTIFICATE-----
。
然后该命令将起作用:
openssl x509 -outform der -in gmail.pem -out gmail.der
然后你做:
sudo keytool -import -file gmail.der -keystore $JAVA_HOME/jre/lib/security/cacerts -trustcacerts
答案 2 :(得分:2)
不幸的是,openssl对我不起作用。
无法加载证书2740:错误:0D0680A8:asn1编码 例程:ASN1_CHECK_TLEN:错误标记:./ crypto / as n1 / tasn_dec.c:1294: 2740:错误:0D07803A:asn1编码例程:ASN1_ITEM_EX_D2I:嵌套 asn1错误:./ crypto / asn1 / tasn_dec.c:380:Type = X509_CINF 2740:错误:0D08303A:asn1编码 例程:ASN1_TEMPLATE_NOEXP_D2I:嵌套asn1 e rror:./ crypto / asn1 / tasn_dec.c:749:Field = cert_info,Type = X509 2740:错误:0906700D:PEM例程:PEM_ASN1_read_bio:ASN1 lib:./ crypto / pem / pem_oth .c:83:
使用此知识库并遵循成功。