当前位置: 首页 > 知识库问答 >
问题:

找出使用 ssh-keygen 生成的密钥是 ssh-rsa 还是 rsa-sha2-256 类型

仇建茗
2023-03-14

当我使用

ssh-keygen -t ssh-rsa -m PEM -f testkey-ssh-rsa.key

密钥是使用 SSH-RSA 密钥类型生成的。如果我将类型参数 (-t) 更改为 rsa-sha2-256

ssh-keygen -t rsa-sha2-256 -m PEM -f testkey-rsa-sha2-256.key

密钥是使用 RSA-SHA2-256 密钥类型生成的。

如何追溯从生成的文件中找出用于生成文件的密钥类型?任何解决方案(编程或基于工具)都可以。我已经尝试过 ssh-keygen,但它没有显示区别。

ssh-keygen -l -f testkey-ssh-rsa.key

输出

3072 SHA256:0U8VbIePF o5BHRgVGlaBiNFT9huV7brijuKD7xpxmg simon@MB.local (RSA)

ssh-keygen -l -f 

输出

3072 SHA256:5wLSugVJTXjdS4cKeWj3tH5KqXX03VNkgaKLGpU C1A simon@MB.local (RSA)

共有1个答案

秋博容
2023-03-14

如果我了解这个超级用户的信息 Q

如果您正在生成纯密钥而不是签名证书,那么可能没有区别(我只是想解释引用的帖子 - 我在这里可能完全错误)。

 类似资料:
  • 我使用命令“ssh-keygen-t rsa”创建了一个没有密码的公钥,我打算将其用于github,但我错误地发送了公钥和私钥...... 这到底意味着什么?

  • 问题内容: 我有以下代码: 密钥如下所示: 并且有效: 但出现以下错误: 不是有效的RSA私钥文件 这是在MacOS,Python 2.7,Paramiko 2.4.2上 我究竟做错了什么? 问题答案: 对于OpenSSH 7.8或更高版本,您必须欺骗它。运行到据称变化的密码,但重新使用旧的。使用,如果你想避免的提示,如在脚本,但要注意使你的密码对其他用户可见的。作为副作用,这将以“旧”(兼容Op

  • 我用PHP OpenSSL生成了一个SSH密钥: 这导致$pem如下所示: 但是我无法使用此密钥进行身份验证。在使用它之前,我必须使用以下命令转换它: 转换的结果如下: 两者都是PEM格式,但第二个是RSA私钥。使用第二个,PHP可以登录。所以我需要一个以开头的密钥,而不仅仅是。如何使用PHP和OpenSSL PHP实现创建它?

  • 我正在尝试使用openssl生成一个安全的私钥和公钥,以便与我的云托管提供商一起使用,但当我这样做时,openssl的公钥输出未被识别。 生成RSA私钥后,2048位长模,然后 它编写了RSA公钥。输出如下所示: 这是标准格式,它非常适合其他用途,但所有云和托管服务提供商都需要这样的公钥: 这是他们识别的唯一有效格式。 我知道ssh-keygen可以轻松完成所有这些,但我正在使用当前最新的open

  • 问题内容: 我只有一个PublicKey字符串,如何获得PublicKey指纹?我有一些想法表https://go- review.googlesource.com/c/crypto/+/32814 ,但是我不知道如何 实现ssh.PublicKey接口。 问题答案: 您可能要使用ssh包中的ssh.ParseAuthorizedKey来加载密钥: https://godoc.org/golang

  • 我正在使用并且不给密码短语,然后成功生成并显示密钥指纹。 然后给然后它在提供后提示输入我的用户密码时会说明添加的密钥数:1。 现在,如果我正在执行它会再次提示输入密码。 如果我执行也是它会请求输入密码。 PS:我使用过:和每次执行时,系统提示我输入密码,似乎没有什么工作正常。 [编辑] 显示 debug1:SSH2_MSG_KEXINIT已发送 debug1:SSH2_MSG_KEXINIT已接收

  • 我正在尝试创建一个公钥以允许我推送到Git,但我的. ssh文件夹尚未创建。 以下是我运行的命令: $ssh-keygen-t rsa-Cemaill@me.com 生成公共/私有rsa密钥对 输入保存密钥的文件(/h/.ssh/id\u rsa): 这就是H:驱动器配置、数据、配置文件、配置文件中的全部内容。V2 我认为有一个问题,因为当我得到提示输入文件,其中保存密钥(/h//. ssh/id

  • 我在将包含RSA公钥的字符串转换为java.security公钥类型时遇到了麻烦,该RSA公钥是我在cygwin中使用SSh-keygen生成的。 那么,我假设我的问题是两个密钥之间有什么区别,以及我如何才能成功地将第一个转换为可用的PublicKey对象?