如何加载文件 privakey 文件类型是 pem

Posted

技术标签:

【中文标题】如何加载文件 privakey 文件类型是 pem【英文标题】:How to load file privakey file types is pem 【发布时间】:2012-08-10 08:17:54 【问题描述】:

我加载私有(private.pem) 我的代码是:

    FileReader fileReader = new FileReader(new File(private.pem));
    PEMReader r = new PEMReader(fileReader, new DefaultPasswordFinder("mypass".toCharArray()));
    try 
        KeyPair kp = (KeyPair) r.readObject();
     catch (IOException ex) 
        throw new IOException("The private key could not be decrypted", ex);
     finally 
        r.close();
        fileReader.close();
    

错误是: 原因:

java.io.IOException: problem creating RSA private key: java.security.NoSuchProviderException: No such provider: BC at org.bouncycastle.openssl.PEMReader.readObject(Unknown Source)

谢谢。

【问题讨论】:

【参考方案1】:

您是否尝试添加:

Security.addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider());

编辑:你可能想去Why java.security.NoSuchProviderException No such provider: BC?,这可能会导致同样的问题。

【讨论】:

以上是关于如何加载文件 privakey 文件类型是 pem的主要内容,如果未能解决你的问题,请参考以下文章

无法设置私钥文件:“./cert.pem”类型 PEM

APN 节点:加载 PEM 文件时出错

Linux 使用阿里云pem文件、key、RAS登陆连接。

什么是 .pem 文件以及如何使用它?

以编程方式从 PEM 获取 KeyStore

如何将信任证书从 .jks 转换为 .pem?