SharpSSH无效的私钥。

19

我使用SharpSSH连接到一个sftp服务器。

为此,我需要像这样添加私钥文件:

sftp.AddIdentityFile(KeyFilePath);

但是这会抛出异常:

invaid privatekey: C:\KeyFile\privatekey_2.ppk

该文件是使用puttygen创建的,并可与filezilla一起使用。 私钥类型不重要(SSH-1 RSA,SSH-2 RSA,SSH-2 DSA)。 每次结果都相同。

您知道如何处理此问题吗?


3
我不喜欢你提到的那个库,但 Putty 密钥格式只是他们自己的格式。你试过使用用 ssh-keygen 生成的普通密钥文件吗? - Jack
1
您还可以选择从puttygen以标准格式导出密钥,在“转换->导出OpenSSH密钥”中进行操作。 - onon15
请注意 - SSH密钥没有“标准”格式 - 不同的软件使用不同的格式。 OpenSSH格式是其中一个流行的格式,但并非标准格式,因为它在任何标准规范中都没有定义。 - Eugene Mayevski 'Callback
1个回答

27
你需要将你的密钥转换为OpenSSH格式:
使用PuttyGen生成并转换密钥(转换 -> 导出OpenSSH密钥)。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接