首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SSH中的非对称加密

SSH中的非对称加密
EN

Stack Overflow用户
提问于 2021-02-03 21:53:25
回答 1查看 209关注 0票数 0

我读过关于SSH协议的这篇文章,有些东西我不太明白。作者解释说,会话期间的所有通信基本上都是用对称加密加密的,即双方都建立共享秘密(使用diffie-hellman等适当的算法)。所有这些都发生在身份验证阶段之前。

对于身份验证,可以使用不同的方法。其中之一是公钥身份验证,这意味着服务器在authorized_keys文件(在用户的.ssh目录中)中持有公钥列表,而持有相应私钥的客户端被授权登录。因此,这种非对称加密只用于身份验证。一旦对客户端进行了身份验证,我们就完成了该操作,会话的其余部分仍然使用共享的秘密进行加密。

我不明白的是这篇文章的这一段:

SSH在几个不同的地方使用非对称加密。在用于设置对称加密(用于加密会话)的初始密钥交换过程中,使用非对称加密。在此阶段,双方产生临时密钥对并交换公钥,以产生用于对称加密的共享秘密。

“双方产生临时密钥对和交换等”的程序是什么?这是否指我上面描述的过程,即使用diffie-hellman算法生成共享秘密?或者是别的什么东西?如果是,它是什么,为什么需要它?

EN

回答 1

Stack Overflow用户

发布于 2021-02-04 02:25:23

是的,短暂的Diffie-Hellman (这是这里使用的)需要双方生成临时密钥对并交换它们以创建一个共享的秘密。这可以使用有限域(整数) DH ( diffie-hellman-*算法)或椭圆曲线变量(ecdh-*curve*)来完成。两者都是安全的,有足够的密钥大小。

之所以需要这样做,是因为客户机和服务器没有任何其他方法来生成加密密钥。事实上,它们以前可能连在一起都没有。使用Diffie-Hellman协商一个攻击者不知道的共享秘密,允许他们安全地获得一组只有他们知道的密钥。此外,如果他们在完成后丢弃所有的关键材料,那么连接就有了我们所说的完美的前向保密;也就是说,没有人能够比蛮力更快地恢复数据,即使是被迫的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66036262

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档