目录
概念:
明文按一定长度分组后表示成一个序列,称为明文流。加密时,由种子密钥通过密钥流生产器产生一个密钥流序列,然后依次把明文流与密钥流中的对应项做二元加法运算(异或)
解密是将同样的密钥流与明文流中的对应项做二元加法运算
序列密码的安全性更依赖于密钥。
例子:明文10110111 密钥10110111
明文与密钥相异或,得到密文,再把密文与与密钥异或得到明文
分类:根据状态函数是否独立于明文或者密文,可以将序列密码分为同步序列密码和自同步序列密码两类。
同步序列密码:发送方和接受方用同样的密钥且该该密钥操作在同样的位置,才能保证正确的解密。一个密文字被篡改只会影响该对应的密文,不影响后续。
自同步序列密码:解密只取决于先前固定数量的密文字。自同步序列密码在同步消失后能够自动重建同步,只有固定数量的明文不能解密。若一个密文被篡改,解密时最多只影响到后续t个密文字的解密,即只发生有限的错误传播。
Vernam密码技术(序列密码的起源
设明文 m=m1m2....,密钥k=k1k2...
密文ci=mi+ki +是模2加法
加密和解密都是伪随机加密(可以通过一个比较简短的种子密钥产生伪随机序列)
伪随机数
伪随机数生成器(pseudorandom number generator,PRNG),又称为确定性随机位生成器(deterministic random bit generator,DRBG),是用来生成接近于绝对随机数序列的数字序列的算法。一般来说,PRNG 会依赖于一个初始值,也称为种子,来生成对应的伪随机数序列。只要种子确定了,PRNG 所生成的随机数就是完全确定的,因此其生成的随机数序列并不是真正随机的
线性反馈移位寄存器:
GF(2)上一个n级反馈移位寄存器由n个二元存储器与一个反馈函数组成,如下图所示。
例子:三级移位寄存器
前两个数相乘并且和第三个数异或作为新的第三个数
1*0=0 再与1异或得1做为新的a3
最后循环得到1011 1011 1011周期为4
线性反馈移位寄存器LFSR
其中ci等于0或者1,+是膜2加法
线性反馈移位寄存器:实现简单、速度快、有较为成熟的理论,成为构 造密钥流生成器的最重要的部件之一。
期末复习用,以后遇到待补充。