说起对称加密算法,DES和AES总是绕不开的,它们作为对称加密算法中的佼佼者,都曾经或者正在被广泛使用。那么它们之间有什么区别呢?下面,我们就通过本文,一起来了解一下DES和AES的区别有哪些?
DES简介
DES也被称为“数据加密标准”,1977年被美国联邦政府的国家标准局确定为联邦资料处理标准,并授权在非密级政府通信中使用,随后该算法在国际上流传开来,并广泛使用于各种场景。
AES简介
AES也就是“高级加密标准”,在DES服役20年之后,它已经不再安全。于是NIST在1997年发布了取代DES的高级加密标准的研发计划,并在全球征集算法。经过五年的层层筛选,Rijndael算法最终当选为高级加密标准,并在2002年成为有效的标准,目前已经是使用最为广泛的对称加密算法之一。
DES和AES的区别
算法结构区别
DES结构则基于feistal网络;而AES结构则基于置换排列网络。
密钥长度区别
DES的密钥长度则为56位;而AES的密钥长度是可变的,可以为128位、192位和256位。
算法轮数区别
DES算法的整个加密过程涉及16轮相同的操作;而AES轮数取决于密钥长度,分别为10(128位)、12(192位) 或14(256位)。
算法回合区别
DES的回合为扩展、带回合键的XOR操作、替换和置换;AES的回合为字节替换、移位行、混合列和键添加。
加密文本区别
DES可以加密64位纯文;而AES则可以加密128位纯文本。
安全性区别
我们知道密钥的长度在一定程度上决定着算法的安全性,而DES密钥长度过短,也就导致了它的安全性较低;而AES则更加安全,这也是AES能够取代DES的重要原因之一。
并且已知的针对DES算法的攻击包括蛮力攻击、线性密码分析和差分密码分析等;而目前没有已知的针对AES的加密分析攻击,并且Biclique攻击比蛮力攻击更复杂,但依旧无效。
灵活性区别
DES的密钥长度是固定的,没有办法自行更改;而AES在面对不同机密级别的信息时,可采用不同长度的密钥,执行灵活度较高。
免责声明:素材源于网络,如有侵权,请联系删稿。