新手提问,在 SSL/TLS 中,用 RSA 公钥加密传递对称密钥似乎无懈可击啊,为什么还要用 DH、ECDH 等密钥交换算法呢?

2019-01-29 22:07:21 +08:00
 BinRelay


我一直以为 https 仅仅是认证+非对称加密+对称加密的混合实现。
用 RSA 的公钥加密传递 session key 然后开始对称加密。
但没想到在 tls 里的密码套件( Cipher suite )有些方案选用了
额外的密钥交换算法,比如 DH、ECDH。
DH 确实 nb,毕竟图灵奖,但在 tls 里好像有点多此一举啊。
是仅仅为了多一种选择么??

2679 次点击
所在节点    程序员
9 条回复
cydian
2019-01-29 22:16:31 +08:00
似乎?
cydian
2019-01-29 22:17:43 +08:00
是不是你破解知识太单薄了?
苹果系统也似乎看起来无懈可击,然后年年爆重大漏洞。
parametrix
2019-01-29 22:20:47 +08:00
向前安全
Trim21
2019-01-29 22:23:04 +08:00
我的理解是这样的
如果是对称加密,私钥泄漏之后之前的通信就全都可以被解密了。但如果再非对称加密一次,即使私钥泄漏,之前进行的通信仍然是安全的…
但我没理解的是,ecdh 好像本身就可以保证不被中间人窃听了,为什么还要,为什么外面还要套一层…
66450146
2019-01-29 22:25:12 +08:00
DH 自带 forward secrecy
lhx2008
2019-01-29 22:31:15 +08:00
前几天问了面试官,面试官说最大的原因是,RSA 太!慢!了!
BinRelay
2019-01-29 22:39:14 +08:00
@lhx2008 明白了 向前安全才是正解。
图中的情况。只要 rsa 私钥被破解了,就可以解开以前的信息的对称密钥,然后就破解了以前的信息。
而 DH 是当时 client 和 server 共同算出的对称密钥,即时 rsa 私钥被破解,以往的信息仍然是安全的。
rsa 太慢应该是回答为什么要用混合加密。而图中仅仅用 rsa 加密一个私钥是不会有太慢的问题的。
bumz
2019-01-29 22:52:40 +08:00
forward secrecy
yzwduck
2019-01-29 23:01:05 +08:00
我觉得 RSA 的慢可能是指密钥生成的速度。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/531719

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX