当前位置:网站首页>《现代密码学》学习笔记——第三章 分组密码 [三]分组密码的运行模式
《现代密码学》学习笔记——第三章 分组密码 [三]分组密码的运行模式
2022-08-11 05:19:00 【Unicorn_snow】
1.分组密码的运行模式
分组密码在加密时,明文的分组长度是固定的,而实际应用中待加密消息的数据量是不定的,数据格式多种多样。
(1)为了能在各种应用场合使用DES,美国在FIPS PUS 74和81中定义了DES的4种运行模式:
ECB,CBC,CFB,OFB;(长消息加密的推荐模式)
(2)FIPS PUB 140-2 推荐了AES的另外一种运行模式:CTR(短消息加密的推荐模式)。
2.ECB模式的特点
(1)将长消息分块,若最后一个分块不足分组长度,则需要填充;
(2)加密过程和解密过程分别调用加密算法和解密算法;
(3)存在密文扩展(明文填充带来的扩展);
(4)密文块分别独立解密,无顺序要求;(很好的优点)
(5)不存在错误传播;
(6)适合一个分组长度的短数据加密。(缺点)
3.CBC模式的特点
(1)将长消息分块,若最后一个分块不足分组长度,则需要填充;
(2)加密和解密过程分别调用加密算法和解密算法;
(3)存在密文扩展(明文填充带来的扩展和IV传输的扩展);(IV长度一般与分组长度相同)
(4)密文块需按顺序逐一解密;
(5)存在错误传播(只传播下一块密文);
(6)适合大于一个分组长度的长数据加密。

4.CFB模式的特点
(1)消息作为比特流进行加密,无须分组填充;标准允许反馈任意比特 (1,8 or 64 or whatever,前几种分别记作 CFB-1, CFB-8, CFB-64);
(2)加密和解密过程只调用加密算法;
(3)存在密文扩展(IV传输的扩展);
(4)密文块需按顺序逐一解密;
(5)存在错误传播(只传播后面的几块);
(6)适合大于一个分组长度的长数据加密。

5.计数器模式
(1)消息作为比特流进行加密,无须分组填充;
(2)加密和解密过程只调用加密算法;(与CFB同理)
(3)存在密文扩展(IV传输的扩展);
(4)密文块分别独立解密,无顺序要求(可以进行并行计算);
(5)不存在错误传播;
(6)适合大于一个分组长度的长数据加密。

边栏推荐
猜你喜欢
随机推荐
标准模板题:采药
Win下安装不同版本的MinGW(g++/gcc)以及对应clion编辑器的配置
uniapp中设置tabBar及其窗口标题
C语言——动态内存分配常见的错误案例
LeetCode43.字符串相乘 (大数相乘可用此方法)
ES6 模块化
[C language from elementary to advanced] Part 1 Initial C language (1)
电脑推荐软件
无字母数字RCE
C - file operations fseek () function, ftell, rewind, rounding
生成用户的唯一标识(openId),并且加密
07-JS事件:事件类型、事件对象、事件传播、事件委托
配置@路径简化路径处理
07-nodemon安装和使用
【无标题】
写博客周志
常用的转义字符
内存泄露与内存溢出
05-Nodejs中的模块加载机制
显示桌面该有的图标设置









