加密模式、哈希算法与随机数生成器详解
1. 加密模式
1.1 CFB 模式
CFB(Cipher Feedback)模式以 s 位为一组输出,s 需介于 1 和块大小之间。其工作流程如下:
1. 用密钥对输入块(首个为 IV)进行加密。
2. 从加密输出中提取最高 s 位,与明文的下 s 位进行异或操作,生成密文。
3. 将密文发送给接收方。
4. 把密文反馈到输入块,输入块左移 s 位,将密文置于右侧(最低有效位)。然后使用新的输入块重复上述过程。
1.2 OFB 模式
OFB(Output Feedback)模式与 CFB 模式相似,但存在关键差异。初始步骤和 CFB 一样,使用 IV 作为输入块并加密,再用最高有效位与待输出位异或得到密文。不同之处在于,OFB 反馈的是加密的输出位(在与明文异或之前),通过右移输入块并移入新位实现反馈。
- CFB 生成密钥流依赖明文,而 OFB 的密钥流仅依赖 IV 和密钥。
- OFB 的优势在于,若发生传输错误,错误不会超出受损块传播,接收方能够恢复;而 CFB 由于密文直接进入输入块,接收端的错误密文值会影响后续解密位。
1.3 计数器模式
计数器模式(CTR)可将块密码转换为流密码。使用一系列计数器(如 C0、C1 等),通常是依次递增的,C0 应是难以猜测的数。获取给定明文位的密文步骤如下:
1. 用密钥加密下一个计数器。
2. 提取所需位数,优先使用最高有效位,至少提取 1 位,最多可提取全部位。
3. 将所选位与明文位进行异或操作,结果即为密文位。对下一批明文位,加密下一个计数器,依此
超级会员免费看
订阅专栏 解锁全文
46

被折叠的 条评论
为什么被折叠?



