文章目录
一、一次一密(OTP)
-
特点:
- 加解密操作相同 — 逐bit异或
- 密钥流是真随机序列
-
优点:
- 加解密速度非常快。
-
缺点: 双方实现长度长且相同的真随机密钥流是非常困难的
将优点和缺点折中之后,就是序列密码
二、序列密码
2.1、实用序列密码系统模型
- 序列密码体制的安全强度完全取决于密钥流的安全性
- 实用的流密码以长度较短的初始密钥k经过密钥流生成器产生周期较长的伪随机序列
2.2、分组密码与序列密码的对比
分组密码 | 序列密码 | |
---|---|---|
密码编排(生成) | 较简单 | 复杂 |
加密/解密 | 复杂 | 非常简单 |
2.3、流密码的需求
密钥经其扩展成的密钥流序列应具有如下性质:
- 良好的统计特性
- 抗线性分析
- 极大的周期:由于密钥生成器中状态有限,密钥序 列一定是可重复的
- 不可预测性
2.4、序列密码的分类
- 同步序列密码:
- 密钥流的产生完全独立于明文和密文
- 加解密双方要求位置完全同步,如果哪位缺失,从丢失位置开始,解密出错。
- 优点:
- 对失步的敏感性,使我们能够容易检测插入、删除、 重放等主动攻击。
- 没有错误传播,当通信中某些密文字符产生了错误 (0错成1或1错成0,不是插入和删除),只影响相应 字符的解密,不影响其它字符
- 自同步序列密码:
- 密钥流的产生依赖于固定长度的明文或密文
- 优点:
- 自同步
- 错误传播有限性
- 抗统计分析
三、反馈移位寄存器FSR
设计密钥流生成方法时,需要考虑:
- 种子密钥k应该易于分配和管理:k要比较短。
- 密钥流生成方法应该易于快速实现:基本部件----反馈移位寄存器
- 安全性:非线性部件
图示:反馈移位寄存器 : 移位寄存器 + 反馈函数f。
若f为线性函数:LFSR
若f为非线性函数:NLFSR
例子:
四、线性反馈移位寄存器LFSR (重点)
4.1、优点
- 非常适合于硬件实现
- 可以产生大周期的序列
- 产生的序列具有良好的统计特性
- 在结构上具有一定的特点,便于利用代数 方法对其进行分析
4.2、表示方法(重点)
4.3、例子(重点)
4.4、游程(重点)
令 s 是一个序列,s 的一个游程是指 s 的包含连续 个 0 或连续个 1 的子序列,且其前后均为与其不 同的符号。0 游程称为沟,1 游程称为块。
4.5、序列随机性能评价:伪随机序列