使用 "SSH2 PUBLIC KEY" 格式的 public 密钥验证 JSch 中的主机密钥 (RFC 4716)

Verify host key in JSch with public key in "SSH2 PUBLIC KEY" format (RFC 4716)

我在尝试使用

验证主机密钥时遇到 UnknownHostKey: servername 问题
jsch.setKnownHosts("target/hostname_keys");

是否可以使用如下所示的 SSH2 格式的主机密钥文件

---- BEGIN SSH2 PUBLIC KEY ----
AAAAB3NzaC1kc3MAAACBAKKQ7hwq7
.....
w5Uw==
---- END SSH2 PUBLIC KEY ----

与 JSch 一起?

是否有一些可以使用 SSH2 密钥的好库?

JSch 不支持这种格式的 public 键。

但很容易将其转换为 known_hosts 格式。

基本上,只需将这些行合并为一行并在前面加上一个主机名:

example.com AAAAB3NzaC1kc3MAAACBAKKQ7hwq7...w5Uw==