【问题标题】:Is this SSH RSA key correctly entered?此 SSH RSA 密钥是否正确输入?
【发布时间】:2021-06-03 22:39:36
【问题描述】:

this question about SSH public key使用多个Github帐户有关,我有点担心我在Github中注册的SSH公钥可能是我错误粘贴的那个。 我在SSH公钥表单中粘贴的文本格式是这样的:

ssh-rsa [Many characters 1]/[Many characters 2]/[Many characters 3]/[Many Characters 4]/[Many characters 5] myUsername@DESKTOP-XXXXXXX

上面的文字恐怕是我电脑的目录名myUsername@DESKTOP-XXXXXXX 在末尾。 SSH公钥的格式是否正确? 我对 SSH 一无所知,但我只是觉得有点奇怪,安全密钥最后有用户计算机的目录名称。 我猜我必须在[Many characters 5] 之后修剪目录名称。

【问题讨论】:

  • 当您粘贴密钥并确认添加它时,Github 应该检查它是否是有效的密钥。
  • RSA Public Key format。 (这是一个重复的问题吗?我很犹豫是否建议将其关闭)编辑:另见How to store/retrieve RSA public/private key(忽略已接受的答案,向下滚动到投票率较高的答案)

标签: git github ssh https ssh-keys


【解决方案1】:

我的 id_rsa.pub 键的“/”比您上面显示的要多。您似乎关心的最后一个字段只是帮助您识别密钥的注释。 ssh-keygen -C ... 默认为 user@host。如果您担心复制/粘贴错误,请比较两者的校验和(在 linux sum、md5sum 等上)。

【讨论】:

    【解决方案2】:

    OpenSSH 密钥不包含有关您计算机目录的任何信息。格式如下:

    keytype base64-data optional-comment
    

    密钥类型指定密钥的类型。在您的情况下,它是一个 RSA 密钥。第二个块是使用 Base64 编码的密钥的实际内容。这意味着它可能包含大小写字母、数字和字符+/,可能以一个或多个= 字符结尾。最后一部分是可选注释,默认格式为user@host

    第二部分中编码的数据取决于密钥类型,但在 RSA 密钥中,它包含密钥的类型、模数 N 和指数 E,每个前面都有一个四字节长度。后两个分量是本质上不能识别的大整数。

    当您将此密钥发送给某人或将其添加到 GitHub 时,您必须完全保留密钥类型和 Base64 编码的数据,而不对其进行修改。 Base64 数据只是底层原始数据的编码,它可以有任意数量的斜线,包括零。注释不必包含,可以随意修改,但其他部分不得修改。因此,如果您不想包含您的计算机名称,只需在复制时省略该部分即可。

    【讨论】:

      猜你喜欢
      • 2021-12-05
      • 1970-01-01
      • 2015-09-08
      • 2011-02-17
      • 1970-01-01
      • 1970-01-01
      • 2015-04-09
      • 2020-07-21
      • 2017-07-24
      相关资源
      最近更新 更多