作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在 Windows 上导出了文件 cert.pfx
。该文件包含我的证书。在 Ubuntu 上我可以使用密码打开它并看到证书。但是当我加载这个文件时:
BouncyCastleProvider provider = new BouncyCastleProvider();
Security.addProvider(provider);
KeyStore ks = ks = KeyStore.getInstance("pkcs12", provider.getName());
ks.load(new FileInputStream("/home/test/.cert.pfx", "xxxxxx".toCharArray());
String alias = ks.aliases().nextElement();
PrivateKey pk = (PrivateKey) ks.getKey(alias, pts.getRandom());
Certificate[] chain = ks.getCertificateChain(alias);
在此操作之后,我在 pk
和 chain
中得到 null
。
我还在 java.security
最佳答案
我将 BouncyCaSTLeProvider
更改为 SunJSSE
。现在我的正确代码是:
String providerName = "SunJSSE";
KeyStore ks = ks = KeyStore.getInstance("pkcs12", providerName);
ks.load(new FileInputStream("/home/test/.cert.pfx", "xxxxxx".toCharArray());
String alias = ks.aliases().nextElement();
PrivateKey pk = (PrivateKey) ks.getKey(alias, pts.getRandom());
Certificate[] chain = ks.getCertificateChain(alias);
现在,pk
中是我的私钥,chain
中是证书链。
我不知道为什么在 BC 不起作用。我有其他证书并且 BC 提供商可以正常工作。
关于java - BouncyCaSTLeProvider 未从 PKCS#12 文件获取私钥和证书链,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17486819/
我是一名优秀的程序员,十分优秀!