线性移位寄存器
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
注:如果该算法不是在计算机上进行,则计算 起点不必从<f 起点不必从<f0(x),l0>开始,而从序列中第一个 不为零元素a 的标号n0开始 不为零元素an0的标号线性反馈移位寄存器 n 密码学补充: 密码学补充:
22
读入N;a0,…,aN-1
0 n;f0(x)=1;l0=0
wk.baidu.com
算法流程
计算dn fn+1(x)=fn(x) ln+1= ln 是 dn=0? 否 l0=l1=…=ln=0? 否 求m:lm<lm+1=…=ln n+1 n fn+1(x)=fn(x)+xn-mfm(x) ln+1=max{ln,n+1-ln} 是 fn+1(x)=1+xn+1 ln+1=n+1
级,每级有1个比特 每级有1 反馈函数
线性反馈移位寄存器(LFSR)的反馈函数是 线性反馈移位寄存器(LFSR)的反馈函数是 线性的
3
密码学补充: 密码学补充:线性反馈移位寄存器
实例实例-1
密码学补充: 密码学补充:线性反馈移位寄存器
4
实例实例-2
密码学补充: 密码学补充:线性反馈移位寄存器
5
移位寄存器移位寄存器-2
举例 (非线性) 反馈函数 非线性)
f(xi, xi+1, xi+2) = 1 ⊕ xi ⊕ xi+2 ⊕ xi+1xi+2
(非线性) 移位寄存器 非线性)
前3 bits是初态: (x0, x1, x2) bits是初态:
密码学补充: 密码学补充:线性反馈移位寄存器
6
密码学补充: 密码学补充:线性反馈移位寄存器
密码学补充: 密码学补充:线性反馈移位寄存器
18
LFSR 的综合
问题提出:对于长度为N 问题提出:对于长度为N的二元序列,求出产生 这一序列的技术最小的LFSR 这一序列的技术最小的LFSR ,即最短的线性移 位寄存器的特征多项式 思路:BCH码的译码中,从校验子求找错位多项 思路:BCH码的译码中,从校验子求找错位多项 式的迭代算法。运用归纳法求出一系列线性移位 寄存器,使每一个线性移位寄存器都产生该序列 的前n 的前n项,从而使最后得到的线性移位寄存器是 产生所给N 产生所给N长的二元序列的最短线性移位寄存器
7
移位寄存器移位寄存器-3
举例 LFSR
则对于所有的i 则对于所有的i,xi+4 = xi ⊕ xi+2 若初态 (x0,x1,x2,x3,x4) = 01110 则 (x0,x1,…,x15,…) = 0111010100001001… 对于这种LFSR,线性反馈函数通常写成多项式形态: 对于这种LFSR,线性反馈函数通常写成多项式形态: x4 + x2 + 1 也称为LFSR的连接多项式 也称为LFSR的连接多项式 8 密码学补充: 密码学补充:线性反馈移位寄存器
移位寄存器移位寄存器-4
可以把密钥作为初态使用,例如
如果初态是1001, 如果初态是1001, 生成的序列就是 1001101011110001001… 1001101011110001001… 15 bits (24-1)之后开始重复 1)之后开始重复
9
密码学补充: 密码学补充:线性反馈移位寄存器
密码学 补充: 补充:LFSR
范明钰
密码学补充:线性反馈移位寄存器
1
主要内容
移位寄存器 线性移位寄存器的综合 线性等价量的概念
密码学补充: 密码学补充:线性反馈移位寄存器
2
移位寄存器移位寄存器-1
传统的,流密码基于移位寄存器,如今也 传统的,流密码基于移位寄存器, 有更广泛的各类设计方法 移位寄存器包括
密码学补充: 密码学补充:线性反馈移位寄存器
16
序列的生成函数
给定序列s 给定序列s0, s1, s2, … 生成函数 G(x) = s0+s1x+s2x2+ s3x3+ …= Σ si xi
密码学补充: 密码学补充:线性反馈移位寄存器
17
LFSR 输出序列的特点
LFSR 的输出由特征多项式唯一确定 对于给定的多项式,有2 对于给定的多项式,有2n个不同的寄存器的 初态,包括全零 生成最大长度序列的多项式一定是本原的 本原多项式的输出是遍历的,全零除外
21
Berlekamp-Massey算法 Berlekamp-Massey算法(cntd) 算法(cntd)
若dn=0,则令:fn+1(x)=fn(x),ln+1=ln =0,则令:f (x), 若dn=1,则区分 =1,则区分
L0=l1=…=ln=0时,取: fn+1(x)=1+xn+1,ln+1=n+1 =0时,取: 当有m(0≤ 当有m(0≤m ≤n)使lm<lm+1=lm+2=…=ln,则 fn+1(x)=fn(x)+xn-mfm(x), ln+1=max{ln, n+1-ln} n+1-
密码学补充: 密码学补充:线性反馈移位寄存器
14
多项式表示
f(x)的集合 f(x)的集合 记为 (f) : | (f)|=2n (f)是 (f)是{0,1} 中的向量
密码学补充: 密码学补充:线性反馈移位寄存器
15
作业
写出下列LFSR的所有可能的输出,指出其 写出下列LFSR的所有可能的输出,指出其 周期
密码学补充: 密码学补充:线性反馈移位寄存器
25
密码学补充: 密码学补充:线性反馈移位寄存器
20
Berlekamp-Massey算法 Berlekamp-Massey算法
设:0 设:0级LFSR 是以f(x)=1的LFSR ,n=1,2,…N的 是以f(x)=1的 n=1,2,… 零级LFSR由且仅由f(x)=1产生,a 零级LFSR由且仅由f(x)=1产生,ak=0, k=0,1,2,…nk=0,1,2,… 1 对n按归纳法定义序列:<fn(x),ln>, n=1,2,…N 按归纳法定义序列:<f n=1,2,… 取初值f (x)=1, 取初值f0(x)=1,l0=0 设<fi(x),li>, i=0,1,2,…n(0≤ n≤ N)均已求得(l0≤ l1≤l2 i=0,1,2,…n(0≤ N)均已求得(l ≤… ≤ln )。记fn(x)=c0(n)+c1(n)x+…+clnxln, c0(n)=1。再 。记f x+… =1。再 计算:d 计算:dn=c0(n)an+c1(n)an-1+cln(n)an-ln,称为第n步的 ,称为第n 差值。分两种情况 :线性反馈移位寄存器 密码学补充: 密码学补充
移位寄存器移位寄存器-5 周期研究
密码学补充: 密码学补充:线性反馈移位寄存器
10
移位寄存器移位寄存器-6 周期研究
密码学补充: 密码学补充:线性反馈移位寄存器
11
举例举例-1
密码学补充: 密码学补充:线性反馈移位寄存器
12
举例举例-2
密码学补充: 密码学补充:线性反馈移位寄存器
13
一般移位寄存器
n<N-1? 是 输出 否 密码学补充: 密码学补充:线性反馈移位寄存器
23
梅森算法举例
N=7, N=7,
密码学补充: 密码学补充:线性反馈移位寄存器
24
序列的线性等价量
定义:能产生该序列的线性移位寄存器的 最小长度 多项式及其解空间的关系 极小特征多项式的唯一性 极小特征多项式的次数称为其线性等价量 或递归长度 线性等价量相同的序列,周期为多少?
密码学补充: 密码学补充:线性反馈移位寄存器
19
Berlekamp-Massey算法 Berlekamp-Massey算法
已知序列a 已知序列a = (a0,a1,a2,…,an-1) a的线性复杂度是最短的能够产生a的LFSR 的线性复杂度是最短的能够产生a a的连接多项式形如f(x) = c0 + c1x + c2x2 的连接多项式形如f(x) + … + c Lx L Berlekamp-Massey算法可以求得f(x) Berlekamp-Massey算法可以求得f(x)