首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AES和ECDH密钥

AES和ECDH密钥
EN

Cryptography用户
提问于 2018-08-01 21:16:37
回答 2查看 10K关注 0票数 4

我在试着理解公钥加密。我在网上的一篇论文中找到了下面的表格。我很难理解这件事的意义。从阅读的零碎内容来看,我想第一列只是在安全通道上进行的加密,密钥长度是一行。前提是我和接受者能够安全地共享密钥。现在,如果我要进行同样的加密,并在一个不安全的通道上与接收者共享密钥,我必须用RSA将密钥放大到第二列中的数字,以此作为隐藏密钥的方法。欧共体的钥匙也是一样。

现在AES是一种对称密钥算法。那么这是否意味着AES-128需要256位ECDH密钥?我正试图在STM32F芯片上实现这一点。如果能帮助我更好地理解这一点,我将不胜感激。

EN

回答 2

Cryptography用户

发布于 2018-08-01 22:05:07

不,你没有正确理解这一点。该表显示了不同密码原语所需的有效密钥大小。

例如,密码原语可以是AES,这是一种对称分组密码。因此,AES密钥应该具有128位的有效密钥大小,以实现128位左右的安全性。当AES被适当使用时,攻击AES的最好方法是接近蛮力,强迫密钥。因此,AES密钥的有效大小和强度大致相同。对于任何不间断的对称密码,这都是正确的:有效密钥大小与密钥强度相同。

RSA --一种非对称算法--需要更大的密钥大小,因为数字计算是在大数字上进行的。对于RSA,攻击者可以尝试并重构模数以尝试查找私钥组件。因此,攻击2^X比尝试X-bit密钥的-bit值容易得多。在表中,您可以看到需要进行2^{128}测试才能破解3072位密钥。因此,128位的AES密钥和3072位的RSA密钥都具有128位的强度。

椭圆曲线密码允许比RSA更小的密钥大小来传递相同强度的非对称密钥对。通常,密钥对的有效密钥大小需要加倍大小,才能达到与对称密钥相同的强度。因此,我们在同一行中看到ECC的值256。列出的曲线尺寸为命名曲线首先由Certicom创建,后来由NIST标准化为P-160、P-224、P-256、P-384和P-521 (这不是一个错误,不是512)。

请注意,对于RSA,密钥大小与模数大小相同;编码RSA密钥的所有部分将导致密钥大于模数,从而导致密钥大小。ECC键也是如此:大小是曲线顺序的大小,不是编码密钥的大小。

如何使用密钥以及是否需要对称或非对称(RSA、DH或ECC)取决于您的协议。不使用RSA是因为RSA密钥更大,而是因为RSA密钥是不对称的,例如,它允许您创建公钥基础结构。AES、RSA和DH密钥都用于不同的用途。

在创建协议或配置软件时,使用相关的密钥大小确实是有意义的。因此,您可以使用128位或以上的对称密钥,3072位或以上的RSA密钥,256位或以上的ECC密钥(和哈希)来实现128位的整体强度。这就是你可以使用这张桌子的原因。

使用混合加密AES-256 (强度: 256位)与RSA密钥1024位(强度80位)没有太大的意义;对手将尝试和因素RSA密钥,因为它比蛮力AES要容易得多。因此,该协议的强度将限制在80位。

您可能想知道对称密钥的80位强度。使用80位密钥的对称密码很少。然而,有已知的三重DES的中间相会攻击。用于(两个密钥)三重DES的编码128位密钥包含在算法中使用的112位,但该密钥仅包含大约80位的安全性。

建议使用三个关键的三重DES键,或者继续使用AES。不出所料,三个关键的三重DES具有112位的密钥强度,这解释了第二行。

您的桌子可以找到在second国家统计局2016年关于keylength.com的建议表。Keylength.com还包含指向源材料的指针(这可能更难阅读)。

注意,该表中的最后一个椭圆曲线大小为512位。如前所述,NIST只指定了521位素数曲线,因此您的表可能引用P-521曲线。

票数 9
EN

Cryptography用户

发布于 2018-08-01 21:44:45

如果您包含一个指向该表源的链接,以了解该表究竟应该帮助什么,这将是有帮助的。

我猜这个表比较了算法的安全性。对于每种算法,您都可以有一个特定的密钥长度,这可以与不同算法的不同密钥长度的安全性进行比较。

从维基百科的椭圆曲线密码学来看:

256位椭圆曲线公钥应该提供与3072位RSA公钥相当的安全性.

看看对称密钥的对应值--它们的大小是椭圆曲线的一半。这是由于所谓的生日悖论。我们不要在这里讨论它--只是记下桌子的含义。如果您希望获得一定级别的安全性,则密钥中所需的位数取决于算法。

现在退后一步。这可能不是您应该了解公钥加密的基本原理的角度。从你写的东西看,我认为你需要从概念开始。要做到这一点,只需谷歌你的方式“不对称加密介绍”或"..public密钥加密“。确保你理解对称和不对称的区别。

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

https://crypto.stackexchange.com/questions/61248

复制
相关文章

相似问题

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