3.3.3 AES

2025-06-16 22:14:56 更新

(一)发展史

1997年,NIST(美国国家标准与技术研究院)发起征集AES( Advanced Encryption Standard)算法的活动,目的是确定一个非保密的、公开的、全球免费使用的分组密码算法,用于保护政府的敏感信息。

比利时科学家Vincent Rijmen和Joan Daemen开发的Rijndael(莱恩戴尔)算法被选中作为AES。算法提供了安全性、软件和硬件性能、低内存需求以及灵活性的最好组合。

(二)定义

AES(Advanced Encryption Standard,高级加密标准)是一种对称密钥加密算法,用于加密和解密数据。是目前广泛应用的密码学标准之一,被用于保护敏感信息,如网络通信、文件加密和数据库加密等领域。

(1)分组密码

将明文数据分成固定长度的数据块(128 位),然后对每个数据块进行加密。

(2)分组长度

支持128 位、192 位和 256 位三种分组长度。长度决定了密钥长度,从而影响加密安全性。

(3)轮数:取决于密钥长度

128 位密钥使用10轮,192 位密钥使用12轮,256 位密钥使用14轮。

(4)替代、置换和混淆

AES加密过程包括替代字节(非线性)、行移位、列混淆和轮密钥加。

(三)WIFI加密方式


加密方式

说明

1

WEP

很容易被破解,使用RC4流密码算法实现随机加密

2

WPA-PSK(TKIP)

安全性较高,但也可以被破解

3

WPA2-PSK(AES)

安全性较高,破解难度有所增加

(四)RC系列


算法

描述

说明

应用场景

1

RC2

对称分组加密算法

替代DES算法

输入输出都是64bit,秘钥长度是1byte到128byte,速度比DES快。

普通数据加密

2

RC4

对称流密码算法

存在安全漏洞

使用伪随机数发生器(PRNG)生成密钥流,将明文与密钥流进行异或运算得到密文

用于https/WEP/WPA

3

RC5

参数可变的、对称分组加密算法

可变参数为分组大小、秘钥大小和加密轮数

处理大量数据

4

RC6

分组密码算法

AES候选

可抵抗所有已知攻击,能提供AES所要求的安全性

高强度数据加密