相关疑难解决方法(0)

如何读取.pem文件以获取私钥和​​公钥

我正在编写一小段代码,用于读取存储在.pem文件中的公钥和私钥.我使用以下命令来生成密钥.

下面的命令生成一对密钥.

   $openssl genrsa -out mykey.pem 2048
Run Code Online (Sandbox Code Playgroud)

此命令用于生成私钥

$openssl pkcs8 -topk8 -inform PEM -outform PEM -in mykey.pem \
    -out private_key.pem -nocrypt
Run Code Online (Sandbox Code Playgroud)

和此命令获取公钥.

$ openssl rsa -in mykey.pem -pubout -outform DER -out public_key.der
Run Code Online (Sandbox Code Playgroud)

我写了两个分别读取私钥和公钥的方法.

   public  PrivateKey getPemPrivateKey(String filename, String algorithm) throws Exception {
      File f = new File(filename);
      FileInputStream fis = new FileInputStream(f);
      DataInputStream dis = new DataInputStream(fis);
      byte[] keyBytes = new byte[(int) f.length()];
      dis.readFully(keyBytes);
      dis.close();

      String temp = new String(keyBytes);
      String privKeyPEM = temp.replace("-----BEGIN PRIVATE KEY-----\n", "");
      privKeyPEM = privKeyPEM.replace("-----END …
Run Code Online (Sandbox Code Playgroud)

java openssl pem pkcs#8 x509

63
推荐指数
5
解决办法
15万
查看次数

标签 统计

java ×1

openssl ×1

pem ×1

pkcs#8 ×1

x509 ×1