DES(数据加密标准)和AES(高级加密标准)之间的区别
作者:
Laura McKinney
创建日期:
1 四月 2021
更新日期:
13 可能 2024
内容
DES(数据加密标准)和AES(高级加密标准)都是对称块密码。引入AES是为了克服DES的缺点。由于DES的密钥大小较小,因此克服此三重DES的安全性降低了,但事实证明速度较慢。因此,后来的AES由美国国家标准技术研究院引入。 DES和AES之间的基本区别在于 DES 在主算法开始之前,将普通块分为两半,而在 AES 整个块被处理以获得密码。
让我们借助下面显示的比较表来讨论DES和AES之间的更多区别。
- 比较表
- 定义
- 关键差异
- 结论
比较表
比较基础 | DES(数据加密标准) | AES(高级加密标准) |
---|---|---|
基本的 | 在DES中,数据块分为两半。 | 在AES中,整个数据块都作为单个矩阵进行处理。 |
原理 | DES致力于Feistel密码结构。 | AES致力于替代和置换原则。 |
平原 | 普通为64位 | Plain可以是128,192或256位 |
密钥大小 | 与AES相比,DES具有较小的密钥大小。 | 与DES相比,AES具有更大的密钥大小。 |
回合 | 16发 | 128位算法10个回合 192位算法12轮 256位算法为14回合 |
回合名称 | 扩展排列,Xor,S盒,P盒,Xor和交换。 | 子字节,Shiftrows,Mix列,Addroundkeys。 |
安全 | DES的密钥较小,安全性较低。 | AES相对而言具有较大的秘密密钥,因此更加安全。 |
速度 | DES相对较慢。 | AES更快。 |
DES(数据加密标准)的定义
数据加密标准(DES)是 对称密钥块密码 被采纳 国立标准技术研究所 在这一年 1977。 DES基于 Feistel结构 平原分为两半。 DES将输入作为64位普通密钥和56位密钥来产生64位密码。
在下图中,您可以看到使用DES对明文进行加密。最初,64位平原进行初始置换,该置换将位重新排列以获得64位置换输入。现在,该64位排列的输入被分为两半,即32位左部分和32位右部分。这两个部分都经过十六轮,其中每一轮遵循相同的功能。完成十六轮后,完成最终置换,并获得64位密码。
每个回合包含以下功能:- 扩展排列:此处将32位右侧部分扩展为48位右侧部分。
- 异或:48位右部分是Xor,具有从56位密钥中获得的48位子密钥,从而产生48位输出。
- S盒:通过Xor步骤获得的48位输出再次降低为32位。
- P盒:此处再次对从S-box获得的32位结果进行置换,从而产生32位置换输出。
AES(高级加密标准)的定义
高级加密标准(AES)也是 对称密钥块密码。 AES发表于 2001 由 国立标准技术研究所。引入了AES来代替DES,因为DES使用非常小的密码密钥,并且算法相当慢。
AES算法采用128位普通密钥和128位秘密密钥,它们共同形成一个128位块,该块被描述为4 X 4方阵。该4 X 4正方形矩阵经历初始变换。此步骤之后是10轮。其中9轮比赛分为以下几个阶段:
- 子字节: 它使用S-box,通过它对整个块(矩阵)执行逐字节替换。
- 排班: 矩阵的行移动。
- 混合列: 矩阵的列从右到左随机排列。
- 添加圆形键: 这里, 执行当前块的Xor和扩展键。
最后的第10轮仅涉及子字节,移位行和添加轮密钥阶段,并提供16字节(128位)密码。
- DES和AES之间的基本区别在于,DES中的块在进一步处理之前被分为两半,而在AES中,整个块都经过处理以获得密码。
- DES算法基于Feistel密码原理,而AES算法则基于替换和置换原理。
- DES的密钥大小为56位,比具有128,192或256位秘密密钥的AES较小。
- DES中的回合包括扩展置换,Xor,S-box,P-box,Xor和Swap。另一方面,AES中的回合包括Subbytes,Shiftrows,Mix列,Addroundkeys。
- 由于密钥较小,因此DES不如AES安全。
- AES相对比DES快。
结论:
DES是较旧的算法,而AES是高级算法,它比DES更快,更安全。