首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带报头的RSA私钥和OPENSSH私钥有什么区别?

带报头的RSA私钥和OPENSSH私钥有什么区别?
EN

Stack Overflow用户
提问于 2019-04-18 01:56:06
回答 1查看 2.1K关注 0票数 2

我正在使用mac上的ssh-keygen生成的公钥/私钥设置SFTP将文件传送到服务器。我生成的私钥看起来与代码库中已有的其他私钥不同(它没有头,它是"OPENSSH private KEY“而不是"RSA private KEY”。

我的java FtpUtil抛出了invalid privatekey错误。

这是因为我生成的键在某种程度上没有正确格式化吗?有没有办法将这个私钥更改为使用头部?

代码库中的其他私钥如下所示:

代码语言:javascript
复制
-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: AES-128-CBC,E26BE59A622AEDE6A899FE18AD369AA0

<key text>

-----END RSA PRIVATE KEY-----

我的私钥是这样的:

代码语言:javascript
复制
-----BEGIN OPENSSH PRIVATE KEY-----

<key text>

-----END OPENSSH PRIVATE KEY-----

我抛出了以下异常:

代码语言:javascript
复制
Caused by: com.jcraft.jsch.JSchException: invalid privatekey: [B@5c0f79f0
    at com.jcraft.jsch.KeyPair.load(KeyPair.java:664)
    at com.jcraft.jsch.IdentityFile.newInstance(IdentityFile.java:46)
    at com.jcraft.jsch.JSch.addIdentity(JSch.java:442)
    at org.springframework.integration.sftp.session.DefaultSftpSessionFactory.initJschSession(DefaultSftpSessionFactory.java:410)
    at org.springframework.integration.sftp.session.DefaultSftpSessionFactory.getSession(DefaultSftpSessionFactory.java:385)
    ... 46 more
EN

回答 1

Stack Overflow用户

发布于 2019-04-18 03:04:13

看起来这个私钥的格式确实不正确。也许更好的描述一下你是如何生成私钥的,以及它是如何在代码中被处理的?

无论如何,如果可能,您可以尝试使用以下命令生成加密的RSA私钥:

代码语言:javascript
复制
openssl genrsa -des3 -out private_key.pem 2048
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55733451

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档