3、基础密码系统:对称与非对称加密技术解析

基础密码系统:对称与非对称加密技术解析

1. AES 密钥调度

1.1 AES 密钥长度与轮数

AES 支持 128、192 或 256 位的密钥,不同的密钥长度对应不同的轮数,具体如下表所示:
| 密钥长度(位) | 密钥长度(以 32 位字计) | 轮数(初始轮之后) |
| ---- | ---- | ---- |
| 128 | 4 | 10 |
| 192 | 6 | 12 |
| 256 | 8 | 14 |

每一轮需要一个由相应数量的 32 位字组成的轮密钥数组,再加上初始轮的一个,总共需要 $l_k(l_r + 1)$ 个轮密钥字。

1.2 128 位密钥的扩展

以 128 位密钥 $K$ 为例($l_k = 4$),秘密密钥 $K$ 构成扩展密钥 $E_0, \cdots, E_{4(l_r+1)-1}$ 的前四个 4 字节字 $E_0, E_1, E_2, E_3$,其余的字通过之前的字逐个生成。对于大多数索引 $i \geq 4$,$E_i$ 是 $E_{i-1}$ 和 $E_{i-4}$ 在 $Z_{32}^2$ 中的和(按位异或):
$E_i = E_{i-1} + E_{i-4}$

如果 $i$ 是 4 的倍数,则首先对 $E_{i-1}$ 应用一个变换:
1. 将 $E_{i-1}$ 的四个字节 $(a_3, a_2, a_1, a_0)$ 循环右移得到 $(a_0, a_3, a_2, a_1)$。
2. 对每个字节分别应用 SubBytes 变换。
3. 加上一个常量轮字 $c_{i/4}$

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值