小编use*_*748的帖子

尝试导入使用 PKCS8Generator 生成的 pem 文件时无法加载私钥(无法识别的数据类型)

我正在使用 java(KeyPairGenerator) 创建一个具有下面提到的规范的 KeyPair

  1. OpenSSH 公钥格式
  2. Base64 编码的 DER 格式
  3. RFC4716 中指定的 SSH 公钥文件格式

公共生成的验证和私钥存储在 pem 文件中使用 PKCS8Generator 无效。下面是示例代码


KeyPairGenerator kpg = KeyPairGenerator.getInstance("RSA");
kpg.initialize(2048, new SecureRandom());
KeyPair kp = kpg.generateKeyPair();
Key publicKey =  kp.getPublic();

String publicKeyEncoded = "---- BEGIN SSH2 PUBLIC KEY ----" + "\n" +
                       new String(Base64.getEncoder().encode(publicKey.getEncoded())) + "\n"+
                           "---- END SSH2 PUBLIC KEY ----";


//Get Private Key and store to pem file.
Key privateKey = kp.getPrivate();
PKCS8Generator encryptorBuilder = new PKCS8Generator((PrivateKey) privateKey);
PEMWriter writer = new PEMWriter(new FileWriter(new …
Run Code Online (Sandbox Code Playgroud)

ssh

3
推荐指数
1
解决办法
1万
查看次数

标签 统计

ssh ×1