【问题标题】:Does ECDHE-RSA relate to the basic DH scheme?ECDHE-RSA 是否与基本 DH 方案相关?
【发布时间】:2016-10-26 16:13:42
【问题描述】:

在仔细阅读该主题后,我知道 ECDHE-RSA 如何通过为每个会话创建一组新的私钥和公钥来提供 PFS。

但我无法理解的是,这个方案与基本的 DH 方案有什么关系?与使用颜色解释的相同。

在我看来,我所知道的用于密钥交换的基本 DH 方案并未发生在 ECDHE-RSA 上,而是为每个连接生成新的私钥和公钥。

我的问题是, ECDHE-RSA 方案与安全密钥交换的基本 DH 方案有什么关系?看起来 ECDHE-RSA 就像使用 AES-RSA 一样,每个连接都有一组新的密钥。看起来 Diffie-Hellman 本身实际上是如何参与到这个过程中的。

【问题讨论】:

  • 我投票结束这个问题,因为这不是一个编程问题。

标签: cryptography rsa public-key-encryption diffie-hellman public-key-exchange


【解决方案1】:

这里发生了一些事情,其中​​一些可能取决于实现。让我们从 ECDHE-RSA 的长首字母缩写词的含义开始。

ECDHE 表示椭圆曲线 Diffie-Hellman Ephemeral。第一部分,椭圆曲线,讨论了密码学背后的肮脏数学。出于实现目的,这基本上意味着您可以使用更短的密钥长度而不会影响安全性。

Diffie-Hellman 是密钥交换协议。它是一种通过不安全的通信线路导出密钥的方法。但是,标准的 DH 协议会受到中间人攻击。这意味着攻击者可以截获一些消息,如果他愿意,可以更改它们,然后将它们转发给接收者,而没有人是不明智的。标准 DH 不提供身份验证。这就是 RSA 位稍后会派上用场的地方。

Ephemeral 表示我们正在进行临时密钥交换,生成的密钥将仅用于此通信会话。这就是提供完美前向保密性的原因。

现在回到 RSA 位:RSA 可以通过非对称加密提供身份验证。通过使用私钥和公钥来保护 DH 协议中的消息,您可以防止这些 MITM 攻击。

那为什么没有到处使用 RSA 和非对称加密呢?非对称 crpto 函数的计算成本很高。使用非对称加密来协商共享秘密并使用对称加密进行重命名交易更有效。

【讨论】:

  • 嘿,谢谢@CoconutBandit 非常详细的回答。然而我的问题仍未解决。简单地用颜色解释的基本 DH 密钥交换具有特定的方案和流程,这在 ECDHE-RSA 上不会发生。我愿意了解link 中描述的基本 DH 方案是否甚至用于 ECDHE-RSA。似乎 ECDHE-RSA 就像 AES-RSA 一样,但为每个连接生成一个新的密钥对。
  • 此外,如果生成的秘密是使用服务器的公钥加密的,为什么我们需要像 DH 这样的密钥交换机制?
【解决方案2】:

是的,椭圆曲线 Diffie-Hellman 与 Diffie-Hellman 非常相似,但它对相同的“使用绘画”算法使用不同的数学基础。

经典 Diffie-Hellman 是基于有限域密码术 (FFC) 的算法,其公式为 s = mod(exp(mod(exp(g, a), p), b), p)(如果 a 和 b 翻转,则产生相同的值)。这是一个相当不友好的公式。

EC Diffie-Hellman 基于椭圆曲线密码学 (ECC),公式为s = a*b*G,只需要相信乘法的交换性即可理解其工作原理(最后只使用 X 坐标,以及...当然,乘以G 的实际数学运算非常难看;但ab 都只是(大)整数。

使用经典 DH 的油漆颜色类比:

  • 双方使用共同的曲线。 ECC 中的每条“曲线”都有一个既定的起点(G=generator);与维基百科的图片进行比较,称之为黄色。
  • Alice 有一个私钥a,它表示让 Press Your Luck 游戏板围绕色轮前进多少次。所选颜色与 G 结合产生桃色。
  • Bob 有一个私钥b。使用 Press Your Luck 的比喻,在与 G 结合后,他会变成浅蓝色。

就像经典的 DH 图片一样,将 Alice 的桃红色与 Bob 的秘密 Press Your Luck 颜色合并产生的颜色与将 Bob 的浅蓝色与 Alice 的秘密 Press Your Luck 颜色合并产生的颜色相同。

出于数学原因,ECC 密钥更“安全”。因此,160 位 ECC DH 密钥与 1024 位 FFC DH 密钥一样安全。因此,它可以让相同的安全性更快地进行,这就是 ECDH 正在取代 DH 而 ECDSA 正在取代 DSA 的原因。使用更常见的 secp256r1 曲线(使用 256 位 ECC 密钥),它获得了相当于 3072 位 FFC DH 密钥的效果。

【讨论】:

    猜你喜欢
    • 2018-12-01
    • 2012-12-11
    • 2023-04-06
    • 2013-05-17
    • 2022-10-24
    • 1970-01-01
    • 2012-03-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多