目录

AES加密算法

AES 加密技术简介。

Agreement

相关术语

1. 有限域 / finite field

有限域(finite field),又叫伽罗瓦域(Galois field)。

2. lookup table(Rijndael S-box)

非线性查找表(lookup table)将8bit输入映射到8bit输出。 首先,输入和输出都被解释为基于(GF(2))

Forward S-box
000102030405060708090a0b0c0d0e0f
00637c777bf26b6fc53001672bfed7ab76
10ca82c97dfa5947f0add4a2af9ca472c0
20b7fd9326363ff7cc34a5e5f171d83115
3004c723c31896059a071280e2eb27b275
4009832c1a1b6e5aa0523bd6b329e32f84
5053d100ed20fcb15b6acbbe394a4c58cf
60d0efaafb434d338545f9027f503c9fa8
7051a3408f929d38f5bcb6da2110fff3d2
80cd0c13ec5f974417c4a77e3d645d1973
9060814fdc222a908846eeb814de5e0bdb
a0e0323a0a4906245cc2d3ac629195e479
b0e7c8376d8dd54ea96c56f4ea657aae08
c0ba78252e1ca6b4c6e8dd741f4bbd8b8a
d0703eb5664803f60e613557b986c11d9e
e0e1f8981169d98e949b1e87e9ce5528df
f08ca1890dbfe6426841992d0fb054bb16
Inverse S-box
000102030405060708090a0b0c0d0e0f
0052096ad53036a538bf40a39e81f3d7fb
107ce339829b2fff87348e4344c4dee9cb
20547b9432a6c2233dee4c950b42fac34e
30082ea16628d924b2765ba2496d8bd125
4072f8f66486689816d4a45ccc5d65b692
506c704850fdedb9da5e154657a78d9d84
6090d8ab008cbcd30af7e45805b8b34506
70d02c1e8fca3f0f02c1afbd0301138a6b
803a9111414f67dcea97f2cfcef0b4e673
9096ac7422e7ad3585e2f937e81c75df6e
a047f11a711d29c5896fb7620eaa18be1b
b0fc563e4bc6d279209adbc0fe78cd5af4
c01fdda8338807c731b11210592780ec5f
d060517fa919b54a0d2de57a9f93c99cef
e0a0e03b4dae2af5b0c8ebbb3c83539961
f0172b047eba77d626e169146355210c7d
3. KeyExpansion

轮密钥(round key)是使用密码基于密钥调度(AES key schedule)派生。

4. AddRoundKey 轮密钥加

每个待加密矩阵元素均与轮密钥对应元素进行按位异或($\oplus$)操作。

https://store.yirami.xyz/review/advanced_encryption_standard/AES-AddRoundKey.png

5. SubBytes / 字节代替

将待加密矩阵每个元素按非线性查找表进行替换操作。

https://store.yirami.xyz/review/advanced_encryption_standard/AES-SubBytes.png

6. ShiftRows / 行移位

https://store.yirami.xyz/review/advanced_encryption_standard/AES-ShiftRows.png

7. MixColumns / 列混淆

https://store.yirami.xyz/review/advanced_encryption_standard/AES-MixColumns.png

高级加密标准 / Advanced Encryption Standard(AES)

Intro

高级加密标准(Advanced Encryption Standard, AES),又称 Rijndael加密法,由美国国家标准与技术研究院(National Institute of Standards and Technology, NIST)于2001年11月26日发布用以替代原先的数据加密标准(Data Encryption Standard, DES)。

严格地说,AESRijndael加密法并不完全一样(虽然在实际应用中两者可以互换),因为Rijndael加密法可以支持更大范围的区块和密钥长度:AES的区块长度固定为128bit,密钥长度则可以是128bit192bit256bit;而Rijndael加密法使用的密钥和区块长度均可以是128bit160bit192bit224bit256bit。加密过程中使用的密钥是由Rijndael密钥生成方案产生。

Infer

Conclusion

Appendix

Reference
Archive