JSCH - Chave privada inválida
Eu estou executando o JDK 1.7 e Windows 7 usando o NetBeans 7.2 Eu criei um par de chaves SSH privada e pública (SSH2-2048 bits) usando o putty-keygen. Eu não tenho nenhuma senha para chave privada. Agora estou tentando se conectar a uma das máquinas host usando o SFTP. Mas quando eu passar chave privada (ppk) para definir a identidade, o código está retornando erro de chave privada inválido. Eu usei a mesma chave privada no WinSCP para se conectar ao mesmo host e está funcionando bem. Por favor me ajude a resolver o erro. Aqui está o meu código:
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();
}