public class FTP {
public static void main(String args[]){
JSch jsch = new JSch();
jsch.setKnownHosts("./known_hosts");
Path privateKeyPath = Paths.get("./id_dsa");
byte[] privateKey = Files.readAllBytes(privateKeyPath);
Path publicKeyPath = Paths.get("./id_dsa.pub");
byte[] publicKey = Files.readAllBytes(publicKeyPath);
// Either of the lines below work... Why?
// jsch.addIdentity("", privateKey, publicKey, null);
// or
jsch.addIdentity("", privateKey, null, null);
Session session = jsch.getSession("USER", "myHost.com", 22);
session.connect();
}
}
Einstellung publicKey
zu null
, macht keinen Unterschied machen, ich so oder so eine Verbindung herstellen kann. Warum das?JSch addIdentity öffentliche Schlüssel Argument macht keinen Unterschied
Es sieht so aus, als ob die publicKey
nicht verwendet wird. Warum also zuerst an addIdentity
?
@Kenster nein, id_dsa ist ein privater Schlüssel und id_dsa.pub ein öffentlicher Schlüssel. Keine Passphrasen – Kam
@Kenster meine Frage geht es nicht wirklich um die Umschreibung, es geht um den öffentlichen Schlüssel. Wenn ich null im 3. param (nicht 4.) von jsch.addIdentity überlasse, würde es immer noch funktionieren. – Kam
@kenster Ich habe den Code aktualisiert. – Kam