[密码学]AES

advanced encryption standard,又名rijndael密码,为两位比利时数学家的名字组合。

分组为128bit,密钥为128/192/256bit可选,对应加密轮数10/12/14轮。

基本操作为四种:

  1. 字节代换(subBytes transformation) s-box
  2. 行移位(shiftrows transformation)
  3. 列混淆(mixcolumn transformation)
  4. 轮密钥加(addroundkey)

以128bit密钥的加密过程为例:

[密码学]AES_第1张图片

s-box,替换,增加非线性

[密码学]AES_第2张图片

将128bit(16字节)的数据写成4*4大小的矩阵以方便展示和运算。

行移位,可以看成对每一行进行某种置换

从上至下,依次循环左移0,1,2,3字节

[密码学]AES_第3张图片

列混淆,我不确定混淆这个词是否恰当

**涉及伽罗瓦域的相关知识GF(2^8)

你可能感兴趣的:(密码学)