如何解决带有加密腻子私有 (ppk) 的 JSch 进行身份验证
我已经有一段时间无法通过 Java JSch 获得 SFTP 身份验证了。
如果 ppk 未加密,以下代码段有效:
jsch.addIdentity(username,certificateBytes,null,null);
但是,ppk 是加密的。我试图将密钥的密码传递给 jsch 为:
jsch.addIdentity(username,"password");
它不起作用,因为 jsch 似乎不支持解密 ppk。我想知道如何在 Java 中解密加密的 ppk?
谢谢
解决方法
JSch 支持加密的 .ppk 密钥文件。
但它仅支持 .ppk 格式的第 2 版。也许您的加密 .ppk 文件在新版本 3 中,该版本由 PuTTYgen 0.75 生成。这样的键是这样开始的:
PuTTY-User-Key-File-3: ssh-rsa
Encryption: aes256-cbc
...
如果是这种情况,您将不得不使用 PuTTYgen 将密钥转换为版本 2。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。