java - 如何从java中的PFX文件读取公钥

标签 java public-key digital-certificate public-key-encryption

我可以从 PFX 文件中读取私钥,但不能读取公钥。我正在使用以下代码来读取公钥。

InputStream inStream = new FileInputStream(certFile); 
CertificateFactory cf = CertificateFactory.getInstance("X.509"); 
BufferedInputStream bis = new BufferedInputStream(inStream);
// if (bis.available() > 0) {
java.security.cert.Certificate cert = cf.generateCertificate(bis);
System.out.println("This part is not getting printed in case of PFX file");
// }
puk = (PublicKey) cert.getPublicKey();

当我从 .cer 文件读取时,此代码工作正常。请帮忙

最佳答案

使用KeyStore类并将该文件视为 PKCS#12 KeyStore。使用KeyStore.getInstance("PKCS12")获取 PKCS12 keystore 的实例。

KeyStore 的 Javadocs 包含示例代码。

关于java - 如何从java中的PFX文件读取公钥,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4508779/

相关文章:

Java prefixAverages/array 帮助

ssh - PSFTP.EXE 上的 StrictHostKeyChecking 配置

air - 当我已经安装了 AIR 应用程序时,为什么 AIR 徽章总是显示 'install'?

php - 如何在 PHP 中创建数字证书并导出到 .p12 文件?

web-services - 在 WCF Web 服务中使用数字证书实现消息和传输安全

java - 如何定义哪些方面应该融入到我的项目中,哪些方面不应该融入到 AspectJ 中?

java - 如何将 JButton 与卡片布局结合使用

java - java矩阵输出问题

rust - 如何从 secp256k1 中提取未压缩的公钥?

php - 防止JSON域欺骗