首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何实现AES-512算法?

如何实现AES-512算法?
EN

Stack Overflow用户
提问于 2009-08-26 10:08:42
回答 9查看 23.8K关注 0票数 3

有没有实现AES-512算法(即加密、解密)的javascript?我发现大多数javascripts都嵌入了AES-128、AES-192、AES-256。

EN

回答 9

Stack Overflow用户

发布于 2010-08-22 09:13:23

Rijdael密码有128、160、192、224和256位变体。128、192和256位变体被选为高级加密标准。128位对称密钥被认为与1024位RSA密钥大致相同,256位对称密钥被认为与2048位RSA密钥大致相同。实际上,没有人使用192位的AES,因为他们要么关心性能和/或导出控制,要么使用128位,或者偏执,使用256位。

在常见的公共使用中没有一个512位的对称密钥密码。whirlpool散列函数基于AES,返回512位摘要,但这与512位AES密码不同。

票数 21
EN

Stack Overflow用户

发布于 2009-08-26 10:21:01

我知道没有512位AES这样的东西。

来自wikipedia

在密码学中,高级加密标准是美国政府采用的一种加密标准。该标准包括三种分组密码,AES-128,AES-192和AES-256,取自最初发布为Rijndael的更大的集合。

票数 9
EN

Stack Overflow用户

发布于 2014-12-15 06:23:18

正如其他人提到的那样,由于“中间相遇攻击”给出的时间/空间权衡,double-AES-256没有提供512位的安全性(而是256+1位的时间复杂度)。

然而,我不相信任何人已经正确地回答了“什么”AES-512实际上会是,如果它存在。请注意,所有当前的AES变体都具有128位的固定块大小,因此AES-512如果存在,也将具有仅128位的块大小(假设模式保持),并且因此将不需要改变MixColumns或ShiftRows子例程。

如果您允许N_k>8,则AES标准在技术上支持将AES系统扩展为使用512位密钥大小。请注意,AES标准FIPS-197的设计基本上与密钥大小无关。唯一缺少的是N_k=16 (512 bit keys=16*'32 bit words')的轮数。current standard (在第14页)分别规定了N_k={4,6,8}N_r={10,12,14}轮次。下面的模式显示了N_r=N_k+6。因此N_r=22 if N_k=16...在为N_k=16定义N_r=22之后,不需要更改任何其他内容,只需使用给定的密钥预先填充密钥调度的前512位(如5.2节中所指定的),然后继续执行算法...

唯一的限制因素可能是每个N_k字的Rconi字乘以x (mod x^8+x^4+x^3+x+1),因为它的周期是51,然后开始重复。x^51=(1 mod x^8+x^4+x^3+x+1)...但是,使用的最大Rcon[i]

代码语言:javascript
复制
i=(N_r+1)*N_b/N_k  ; ((N_r+1)*N_b is the total size (in 4 octet words) of the key schedule)
i=(N_k+6+1)*N_b/N_k
i=(N_k+7)*4/N_k
i=4+28/N_k ; (correct... ignoring rounding issues (and probably an off by one error due to laziness))

所以这不是一个问题,因为随着密钥大小的增加,使用的Rcon更少了。

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

https://stackoverflow.com/questions/1333648

复制
相关文章

相似问题

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