gpt4 book ai didi

java - 使用 keytool 将 p7b 文件导入 Java Keystore

转载 作者:行者123 更新时间:2023-12-03 21:11:57 28 4
gpt4 key购买 nike

我正在尝试将 p7b 文件从第三方导入到 java 信任库。看起来 p7b 包含一个根证书和一个公钥。

我正在尝试使用类似于的命令导入它

keytool -importcert -file certs.p7b -keystore dave.jks -storetype JCEKS -trustcacerts

当第三方将文件提交给我时,他们没有告诉我公钥的别名是什么。

我是否认为在不知道这些信息的情况下无法导入它?

最佳答案

这是一个相当古老的问题。但我刚刚遇到了同样的问题,所以我会发布我所做的。
我们有一个来自公共(public)机构的 .p7b 文件,该文件持有一个必须在我们的系统中接受的证书链。由于它有一个证书链,它不能直接导入到 p12 文件中,所以,首先,使用 openssl我检查了它:

 openssl pkcs7 -print_certs -inform der -in file.p7b
此命令提供别名列表和 base64 编码证书:
subject=LONG CERTIFICATE1 COMMONNAME WITH ESCAPE SEQUENCES
issuer=LONG CERTIFICATE1'S ISSUER COMMONNAME
-----BEGIN CERTIFICATE-----
long base64 string
-----END CERTIFICATE-----

subject=LONG CERTIFICATE2 COMMONNAME WITH ESCAPE SEQUENCES
issuer=LONG CERTIFICATE2'S ISSUER COMMONNAME
-----BEGIN CERTIFICATE-----
long base64 string
-----END CERTIFICATE-----
这个列表很长,因为 .p7b 文件包含多个证书。
下一步是复制 -----BEGIN CERTIFICATE----- 之间的所有片段。和 -----END CERTIFICATE-----并使用 .pem 将它们存储在不同的文件中延期:
certificate1.pem
certificate2.pem
...
然后使用长通用名作为别名将它们导入 keystore :
keytool -alias "LONG CERTIFICATE1 COMMONNAME WITH ESCAPE SEQUENCES" -importcert -trustcacerts -file certificate1.pem -keystore trustcerts.p12 -storetype PKCS12
keytool -alias "LONG CERTIFICATE2 COMMONNAME WITH ESCAPE SEQUENCES" -importcert -trustcacerts -file certificate2.pem -keystore trustcerts.p12 -storetype PKCS12
之后,我们有了一个包含所有 .p7b 证书的 pkcs12 keystore 。

关于java - 使用 keytool 将 p7b 文件导入 Java Keystore,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54445450/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com