bouncycastle - 如何创建包含来自 PKCS12 的证书链的 .crt 存储文件?
问题描述
我有一个包含证书链和私钥的 PKCS12 文件。我想使用 BouncyCastle 使用该证书链创建一个 CRT 文件,就像我们可以使用 OpenSSL 命令行工具一样:
openssl pkcs12 -in [yourfilename.pfx] -clcerts -nokeys -out [certificatename.crt]
我已经能够加载 pkcs12 密钥库并获得证书:
Certificate[] certs = pKeyStore.getCertificateChain(pAlias);
但是我找不到可以接受上述证书数组的 CRT 文件的存储构建器...
解决方案
您要查找的课程org.bouncycastle.openssl.jcajce.JcaPEMWriter
在bcpkix中。您可以使用它的write
方法将各种 JCE 接口(X509Certificate
、X509CRL
、PublicKey
、PrivateKey
、KeyPair
)编码为 PEM 文件。
在你的情况下:
final JcaPEMWriter pemWriter = new JcaPEMWriter(System.out);
for (final Certificate cert : certs) {
pemWriter.write(cert);
}
推荐阅读
- javascript - 未捕获的 TypeError:this.testFunction 不是函数
- r - 从工作区文件恢复以前的 R 代码
- c++ - 我应该使用 2 个 VBO 进行实例化吗?
- mathjax - 如何使用 Arithmatex 和 MathJax 获取 MkDocs 以将 \\[ ... \\] 识别为显示数学分隔符?
- python - 为什么单击功能在页面上不起作用,但在控制台上起作用?
- python - 为什么会说“TypeError:'Label' object is not callable”?
- node.js - 如何在 shell 中运行此命令?
- symfony - Symfony 5.3 用户通过用户名或电子邮件登录
- javascript - 在 PayPal 交易中访问 Django 用户名
- android-studio - 如何删除菜单工具栏中的顶部和底部边距?