如何在Github中查看我的公共和私有SSH密钥?

时间:2012-07-23 14:32:11

标签: git github ssh-keys

我是Github的新人。我已经生成了SSH密钥,现在可以在 SSH密钥中看到它。是公钥还是私钥?

我已将SSH密钥(我在 SSH密钥下看到)发送给我的客户端。他问是否公开?他想要我的私钥。

是否需要私有SSH密钥?如果是这样,我该如何检索它?

1 个答案:

答案 0 :(得分:5)

TL; DR

您无法从GitHub 帐户检索私钥,但是如果您明确将密钥文件添加到已发布的存储库,则可以。 GitHub还将您限制为附加到帐户的seeing the fingerprint个公钥;据我所知,你不能在GitHub上查看帐户的公钥。

私人与公钥

SSH公钥存储在一行中,并以密钥类型字段开头,例如ssh-rsaecdsa-sha2-nistp256。私钥具有多行,以及标识密钥块的标题。例如:

  

-----开始RSA私钥-----

GitHub仅接受公钥

无论如何,您无法将有效的私钥添加到GitHub帐户。目前,GitHub仅接受RSA和DSA公钥。如果您尝试添加其他键类型或任何类型的无效公钥,则会收到如下错误:

  

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

私钥在GitHub帐户中不存储服务器端

所有这一切的结果是 - 除了你永远不会存储你的私钥服务器端这一事实 - 它不是可能将私钥附加到GitHub帐户。因此,无法从GitHub帐户中检索密钥对的私有部分。

当然,虽然您无法将SSH私钥添加到GitHub帐户,但可以将它们添加到已发布的存储库中。举个例子,Vagrant项目publishes a full key-pair,但这是一个特例。

发布您的密钥本质上是不安全的。除非你理解其含义,否则不要这样做。