Ssh 只是指纹?

Ssh 只是指纹?,ssh,Ssh,我注意到,~/.ssh/authorized_keys需要添加一个完整的公钥才能工作。有没有办法只接受指纹而不是长版本的指纹?没有,这是不可能的。对于公钥身份验证,您需要使用整个公钥对从客户端接收到的数据进行公钥加密,以验证他是否拥有公钥的私有部分。你没有办法从指纹中得到这个信息。你能解释一下这个问题与编程的关系吗?也许你最好问一下、或。我还建议添加一些背景信息,说明为什么您只能使用指纹。@200_success:我认为这适合在“程序员常用的软件工具”中使用:公钥不是通过网络发送的吗?我认为~/

我注意到,
~/.ssh/authorized_keys
需要添加一个完整的公钥才能工作。有没有办法只接受指纹而不是长版本的指纹?

没有,这是不可能的。对于公钥身份验证,您需要使用整个公钥对从客户端接收到的数据进行公钥加密,以验证他是否拥有公钥的私有部分。你没有办法从指纹中得到这个信息。

你能解释一下这个问题与编程的关系吗?也许你最好问一下、或。我还建议添加一些背景信息,说明为什么您只能使用指纹。@200_success:我认为这适合在“程序员常用的软件工具”中使用:公钥不是通过网络发送的吗?我认为~/.ssh/authorized_keys部分是多余的,只用于授权。是的。它是通过网络发送的,但仅使用指纹(考虑到MD5),您将拥有128位信息,而不是来自RSA密钥(当前正常大小)的2048位完整信息,这种方法对于冲突是危险的(MD5很容易发生冲突)。目前PK暴力攻击甚至不值得尝试,但如果只有指纹验证,那么你命中某些密钥的几率就会大得多。我猜如果存在任何合理的冲突风险,那么无论如何该算法都不应该用于任何安全关键的哈希。不知何故,它的安全性足以在第一次连接时验证真实性,但不用于授权?你可以这样说。MD5在世界各地逐渐被淘汰,因为它被认为不太安全,而且上游正在使用SHA256进行指纹识别。但这不是一天的工作,因为有许多客户机和服务器运行生锈的旧软件版本。检查主机指纹的攻击面比身份验证本身小得多,所以没有太大的风险。虽然这个想法很有趣。