java 生成 pem 公钥_使用java将RSA公钥导出到PEM String

好的,这可能不是最聪明的方式(或者可能是?),但是在检查了PEMWriter的来源之后,这个类基本上是这样做的:

>调用writeObject时,它会创建一个MiscPEMGenerator实例

> MiscPEMGenerator然后通过检查构造函数参数的类型来创建PemObject,以下是MiscPEMGenerator源代码的摘录:

private PemObject createPemObject(Object o){

...

else if (o instanceof PublicKey)

{

type = "PUBLIC KEY";

encoding = ((PublicKey)o).getEncoded();

}

...

return new PemObject(type, encoding);

}

从MiscPEMGenerator代码可以看出,我唯一要改变的是从“RSA PUBLIC KEY”到“PUBLIC KEY”的类型参数.这是最终的代码.

PublicKey publicKey = keyPair.getPublic();

StringWriter writer = new StringWriter();

PemWriter pemWriter = new PemWriter(writer);

pemWriter.writeObject(new PemObject("PUBLIC KEY", publicKey.getEncoded()));

pemWriter.flush();

pemWriter.close();

return writer.toString();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值