首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  程序员

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

  •  
  •   BinRelay · 263 天前 · 1174 次点击
    这是一个创建于 263 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

    第 1 条附言  ·  263 天前
    明白了 向前安全才是正解。
    图中的情况。只要 rsa 私钥被破解了,就可以解开以前的信息的对称密钥,然后就破解了以前的信息。
    而 DH 是当时 client 和 server 共同算出的对称密钥,即时 rsa 私钥被破解,以往的信息仍然是安全的。
        1
    cydian   263 天前 via Android
    似乎?
        2
    cydian   263 天前 via Android
    是不是你破解知识太单薄了?
    苹果系统也似乎看起来无懈可击,然后年年爆重大漏洞。
        3
    parametrix   263 天前 via Android   ♥ 2
    向前安全
        4
    Trim21   263 天前 via Android   ♥ 2
    我的理解是这样的
    如果是对称加密,私钥泄漏之后之前的通信就全都可以被解密了。但如果再非对称加密一次,即使私钥泄漏,之前进行的通信仍然是安全的…
    但我没理解的是,ecdh 好像本身就可以保证不被中间人窃听了,为什么还要,为什么外面还要套一层…
        5
    66450146   263 天前   ♥ 2
    DH 自带 forward secrecy
        6
    lhx2008   263 天前
    前几天问了面试官,面试官说最大的原因是,RSA 太!慢!了!
        7
    BinRelay   263 天前   ♥ 4
    @lhx2008 明白了 向前安全才是正解。
    图中的情况。只要 rsa 私钥被破解了,就可以解开以前的信息的对称密钥,然后就破解了以前的信息。
    而 DH 是当时 client 和 server 共同算出的对称密钥,即时 rsa 私钥被破解,以往的信息仍然是安全的。
    rsa 太慢应该是回答为什么要用混合加密。而图中仅仅用 rsa 加密一个私钥是不会有太慢的问题的。
        8
    bumz   263 天前
    forward secrecy
        9
    yzwduck   263 天前
    我觉得 RSA 的慢可能是指密钥生成的速度。
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1319 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 22ms · UTC 17:35 · PVG 01:35 · LAX 10:35 · JFK 13:35
    ♥ Do have faith in what you're doing.