为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用JSch库将PEM文件转换为ssh到ec2的字符串

如何使用JSch库将PEM文件转换为ssh到ec2的字符串

千万里不及你 2021-03-29 17:09:28
我正在尝试使用Java代码中的JSch库将SSH SSH到EC2。我在SO中提到了此链接。如何使用JSch库在ec2连接中将.pem文件内容用作字符串,并尝试了下面提到的几件事,但没有成功。有人可以指导我如何实现我的目标吗?客观的我有一个像这样的PEM文件。我不想将我的PEM文件存储在AWS的任何位置,因此我的方法是提取一个等效字符串,我可以对其进行编码和存储在数据库中,然后从Java对其进行解码,以将参数传递给addIdentity采用这些参数的方法:addIdentity(String name, byte[] prvkey, byte[] pubkey, byte[] passphrase)    throws JSchException-----BEGIN RSA PRIVATE KEY-----MIIepsdfAIBAAKCAQEAtBk068z...xVNdhlDy6asdk9wsdQ==-----END RSA PRIVATE KEY-----为了我的目标,我addIdentity相信我的方法是这样的:addIdentity ("username","{privatekey string converted to byte array}",null, null)我试图了解如何形成字符串?我对密码学非常陌生,但是在此过程中,我了解到由于PEM具有BEGIN RSA PRIVATE KEY,它是PKCS1格式。JSch是否支持PKCS1格式,或者需要将其转换为PKSC8?其次,我了解到主体是使用Base64编码的,因此我什至在剥离所有回车符,页眉和页脚后甚至尝试使用Base64解码字符串,这给了我这样的错误线程“主”中的异常java.security.spec.InvalidKeySpecException:java.security.InvalidKeyException:IOException:algid解析错误,而不是序列
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 274 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信