java rsaprivatekey_用ssh-keygen生成的公钥和私钥如何在java中转为RSAPublicKey和RSAPrivateKey...

公钥和私钥是用"ssh-keygen -t rsa"生成的,我把生成的公钥以字符串的形式传入下面的函数(从网上找的)就会报错。

public static PublicKey string2PublicKey(String pubStr) throws Exception{

ByteBuffer byteBuffer =

ByteBuffer.wrap(Base64.getDecoder().decode(pubStr));

byte[] keyBytes = byteBuffer.array();

X509EncodedKeySpec keySpec = new X509EncodedKeySpec(keyBytes);

KeyFactory keyFactory = KeyFactory.getInstance("RSA");

PublicKey publicKey = keyFactory.generatePublic(keySpec);

return publicKey;

}

上面函数原本在提供的程序中传入的是“MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCVRiDkEKXy/KBTe+UmkA+feq1zGWIgBxkgbz7aBJGb5+eMKKoiDRoEHzlGndwFKm4mQWNftuMOfNcogzYpGKSEfC7sqfBPDHsGPZixMWzL3J10zkMTWo6MDIXKKqMG1Pgeq1wENfJjcYSU/enYSZkg3rFTOaBSFId+rrPjPo7Y4wIDAQAB”是没有问题的。

而我传入的是“AAAAB3NzaC1yc2EAAAADAQABAAABAQDVDZ+IhrOQo0ditlTlLTq7k2g1hFvw5o7TiUnkT4tKHIi2EtNloMknZgs3aBPdSb6a21ZaD0QPCRAnZ9/2Pcs4OvrRcwNzZBxLdjNGPrfitH0n62Y6HSp3LSvhRKa25AcBsgmQrAKoOveSunlZNKVCSuaBk4BayHb7QPRB8G8m9fKl3Dev9IY207kqUu6j8/iZB5hocK6rBkYlobyQcPVmBU9Y/ZcI7cnP4TiHnX7wi2KNRbm6yNYbRQzKKl6QSLpIPuRsqDmZvM0yoDJDj7Sio7f21oijosrlMvapjmGvFOn1Gcl6Sh0YYTGUXANkZqwWqkEpUs1l03s+OAEOBUQH”。请问问题在哪里,该如何将由ssh-keygen生成的密钥在java中用于加密和解密?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值