JSCH - Ungültiger privater Schlüssel

Ich verwende JDK 1.7 und Windows 7 mit NetBeans 7.2. Ich habe mit Putty-Keygen ein privates und öffentliches SSH-Schlüsselpaar (SSH2-2048-Bits) generiert. Ich habe kein Passwort für den privaten Schlüssel. Ich versuche jetzt, über SFTP eine Verbindung zu einem der Host-Computer herzustellen. Wenn ich jedoch einen privaten Schlüssel (ppk) zum Festlegen der Identität übergebe, gibt der Code einen ungültigen privaten Schlüsselfehler zurück. Ich habe denselben privaten Schlüssel in WinSCP verwendet, um eine Verbindung zu demselben Host herzustellen und es funktioniert einwandfrei. Bitte helfen Sie mir, den Fehler zu beheben. Hier ist mein Code:

JSch jsch = new JSch();

Session session = null;

try {

    jsch.addIdentity("D:\\TEMP\\key.ppk");

    session = jsch.getSession("tiabscp", "ssiw.support.qvalent.com", 22);
    session.setConfig("StrictHostKeyChecking", "no");
    //session.setPassword("");
    session.connect();
    Channel channel = session.openChannel("sftp");
    System.out.println("Getting connected");
    channel.connect();
    System.out.println("connected successfully");
    ChannelSftp sftpChannel = (ChannelSftp) channel;
    sftpChannel.get("remotefile.txt", "localfile.txt");
    sftpChannel.exit();
    session.disconnect();
}catch (JSchException e) {

    e.printStackTrace();

}catch (SftpException e) {

    e.printStackTrace();
}

Antworten auf die Frage(4)

Ihre Antwort auf die Frage