JSCH - Nieprawidłowy klucz prywatny

Używam JDK 1.7 i Windows 7 używając netbeans 7.2 Wygenerowałem parę kluczy prywatnych i publicznych SSH (SSH2-2048 bitów) używając putty-keygen. Nie mam hasła do klucza prywatnego. Próbuję teraz połączyć się z jednym z hostów za pomocą SFTP. Ale kiedy przekazuję klucz prywatny (ppk), aby ustawić Tożsamość, kod zwraca nieprawidłowy błąd klucza prywatnego. Użyłem tego samego klucza prywatnego w WinSCP, aby połączyć się z tym samym hostem i działa poprawnie. Proszę mi pomóc rozwiązać ten błąd. Oto mój kod:

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();
}

questionAnswers(4)

yourAnswerToTheQuestion