我正在使用 SSHJ 执行远程命令,当主机在 SSHknown_hosts
文件中时,我可以成功执行该命令。但是,如果主机不在此文件中,那么我希望用户可以选择添加它。
我相信这样做的方法是创建一个自定义HostKeyVerifier
(如下所示的模板)。但是,我正在努力将其转换PublicKey
为AAAAB3Nz...cTqGvaDhgtAhw==
格式以使我能够将主机附加到known_hosts
文件中。谁能指出我正确的方向?
public class CustomVerifier implements HostKeyVerifier {
public boolean verify(String hostname, int port, PublicKey key) {
System.out.println(key);
System.out.println(KeyType.fromKey(key));
System.out.println(key.getAlgorithm());
System.out.println(key.getEncoded());
System.out.println(key.getFormat());
return true;
}
}