2.4线性反馈移位寄存器
2.4线性反馈移位寄存器
- 反馈移位寄存器
- 线性反馈移位寄存器 LFSR
反馈移位寄存器
移位寄存器是流密码产生密钥流的一个主要组成部分。
而一个n级反馈移位寄存器,又由n个二元存储器与一个反馈函数组成
状态
首先,初始状态是由用户确定。
由图可知,任意时刻,有n个a,故每次的状态有2^n个可能的状态,且可用如下n维向量表示
\[(a_1,a_2,....,a_n,....)
\]
反馈函数
其运算可以有:逻辑与、或、补
反馈函数是n元的布尔函数,输入输出都只能出现0或1。
【例】
注释:
第一次运行: 输出值=a1=1 , a1 = a2 ,a2 = a3 , a3 =f(a1,a2,a3)
线性反馈移位寄存器
实现简单、速度快、理论成熟。
a(n+i)的生成
周期
对于给定序列,当如下发生,则r为一个周期
\[a_i+_r = a_i
\]
LFSR的性质
这里去掉了全0的情况,所以要-1
选择合适的反馈函数可以使得序列的周期达到最大值(2^n) - 1, 周期达到最大值的序列称为m序列!!
例子
---------------------------
“朝着一个既定的方向去努力,就算没有天赋,在时间的积累下应该也能稍稍有点成就吧。”