公共ssh密钥无效

时间:2013-09-25 13:53:35

标签: windows git github ssh

尝试按照github上的说明获取Generating SSH Keys for windows。

我运行ssh-keygen -t rsa -C "my@email.com",输入密码,似乎正确生成了SSH密钥。

但是,当尝试在GitHub上“添加SSH密钥”时,它会给我错误

  

密钥无效。它必须以'ssh-rsa'或'ssh-dss'开头。检查您是否正在复制密钥的公共部分

Windows生成的公钥如下所示:

---- BEGIN SSH2 PUBLIC KEY ----
Comment: "2048-bit RSA, my@email.com"
*public key*
---- END SSH2 PUBLIC KEY ----

最值得注意的是,它不是以'ssh-rsa'或'ssh-dss'开头的。我试着复制*public key*部分并在其前面加上'ssh-rsa',但我在GitHub上得到了同样的错误。我有什么想法吗?

3 个答案:

答案 0 :(得分:13)

知道了。公钥应如下所示:

ssh-rsa *public key* my@email.com

那是:

ssh-rsa<space><public key ending with ==><space><email address>

答案 1 :(得分:4)

在Linux中,执行上述命令后,将在您正在处理的目录中生成(xyz.pub)文件。 然后,如果您执行“ cat xyz.pub ”,您将获得在开头有“ssh-rsa”的公钥。 This is how it looks like 现在,您需要复制粘贴GitHub帐户中显示的文本。 希望这可能会解决问题。 在Windows中,我认为你应该在NotePad ++中编辑文件

答案 2 :(得分:1)

GitHub生成两个文件:一个没有类型,一个.pub。 您需要第二个 diff-highlight扩展名,该文件已经具有以下模式:

.pub

如果没有此模式,您可能会查看错误的文件。