14流密码的基础及构造方法
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
7.5 密钥流生成器
密钥流生成器
7.6 线性移位寄存器
反馈移位寄存器
例 7.6.1 有一个三级移位寄存器如图
其中初态为 。则 此移位寄存器输出序列为 101110111011… 它是周期为4的序列。
f (a1 , a 2 ,..., a n ) = c n a1 ⊕ c n −1 a 2 ⊕ ... ⊕ c1 a n
百度文库n i
∞
i =0
i
j
i −1
i =1
i
n
i =1
n −i
n −i
i
j −1
j =1
j
定理 7.6.4 设m(x)是产生线性移位寄存器序列{ai} 的极小多项式,则{ai}的周期等于多项式m(x)的 阶。 定理 7.6.5 n级线性移位寄存器产生的状态序列有 最大周期2n-1的必要条件是其特征多项式p(x)是 不可约的。 定义7.6.3 p(x)为n次不可约多项式,若p(x)阶为 2n-1 ,称p(x)为n次本原多项式。 定理7.6.6 {ai}为n级m序列的充要条件是其特征多 项式p(x)为n次本原多项式。
n −1
7.7.2 非线性前馈序列
引理7.7.1 在图7.7.1中n级LFSR为n级m序 列生成器时,对任一组不全为0的 k ( j = 0,1,2,L,2 , 存在唯一的前馈函数f(x),使前馈序列是周 期序列 k =k k L k k k L 这里f(0)=0。
j
n
− 2)
0
1
2 n −1
0
1
0 1 N −1
7.7 非线性序列
7.7.1 非线性移位寄存器序列 定理 7.7.1 在n级M序列的一个周期内,0 与1的个数各为2n-1,在M序列的一个周期圈 中,总游程为2n-1 ,对1≤i≤n-2,长为i的 游程数为2n-1-1,其中0,1游程各半,长为 n-1的游程不存在,长为n的0游程和1游程 各1个。 定理 7.7.2 GF(2)上n级M序列的数目 为 2 2 −n 。
定义7.6.4 二元序列 a = a , a ,..., a 的线性复 杂度C(a)定义为产生该序列的级数 最少的线性移位寄存器的级数。对全零序 列a,约定C(a)=0。 定理 7.6.7 设α= {ai}是二元周期序列,且 序列{ai}的线性复杂度C(α)=L≥1,则只要 知道{ai}中任意相继的2L位就可确定整个序 列{ai}及产生{ai}的极小多项式。
i
定义7.8.1 若线性函数wx+w0使得
p( f ( x ) = wx + w0 ) ( w ∈ GF ( 2) n , w0 ∈ GF ( 2))
取最大值,则称wx+w0是f(x)的最佳线性 逼近。 定理7.8.2设f(x)是n 元布尔函数,w满足 s (w ) = a ,则 当 s (w ) > 0 时 ,wx是f(x)的最佳线性逼 近。 当 s (w ) < 0 时,wx+1是f(x)的最佳线性 逼近。 f(x)与其最佳线性逼近的符合率为(1+a)2。
⎧1, ⎪ Ra (τ ) = ⎨ 1 ⎪− T , ⎩ 当τ = 0 当0 < τ ≤ T − 1
定理 7.6.2 设线性移位寄存器的特征多项 式为 p(x ) = ∑ c x ,递推序列 {a }∈ Ω( p( x)) 。 φ ( x) A( x) = 令 A(x ) = ∑ a x ,则 p( x) , 其中 φ ( x) = ∑ c x ∑ a x 。 定义 7.6.2 设p(x)为GF(2)上的多项式,使 得p(x)|xp-1的最小p称为p(x)的周期或的 p(x)阶。 定理 7.6.3 若p(x)为GF(2)上的n次多项 式,且p(x)是序列{ai}的特征多项式,p为 p(x)的阶,则{ai}的周期r|p。
假定分析者已知如下参数: 1 非线性组合函数f(x); 2 LFSRi的级数ri(i=1,…,n) 3 明文编码及语言统计特性; 4 m比特密钥流z1z2…zm(m>2(r1+…+rn)。 ∑r 攻击的目的不是恢复原密钥流生成器,而是利用已 知信息构造一个新生成器,级数不超过 ,以此代 替原密钥流生成器,从而达到对密文的近似解密。
i i
n ri i =1
j
1
n
7.8 序列密码分析
7.8.1 二元加法非线性组合流密码的相关攻击 DC攻击的基本思想是,根据非线性组合器 的输出序列{zk}与组合函数f(x)的每个输入 i {x k } 之间的相关性,用统计方法恢复出 序列 LFSRi的初态和反馈函数。
7.8.2 二元加法非线性组合流密码的线性逼 近攻击
(f )
(f )
(f )
小结
有限域和移位寄存器序列是流密码的基础。 构作流密码的方法归纳为四种:信息论方 法、系统论方法、复杂度方法、随机化方 法。 布尔函数。 有限域与环上的序列设计。
定理7.7.2 设LFSR为n级m序列生成器, f (x ) = f (x 0 , x 1 , L , x n −1 ) 。若f(x)的次数为k,则 {kj}的线性复杂度C({kj})满足
C ({k j }) ≤ ∑ C nj
k i =1
7.7.3非线性组合序列
定理 7.7.3 设 a , k , f ( x), r , (i = 1,2,L, n) ,如前所 述。若ri两两互素,f(x)与各变元均有关,则 {kj}的周期为 ∏ (2 − 1) 线性复杂度为 C ({k }) = f (r ,L, r ) 其中 f (r1 ,L, rn ) 按实数域上运算。
s1 = (a1 , a 2 , a3 ) = (1,0,1)
状态
1 1 1 1 0 1 1 0 1 1 1 0 … … 1 1 1 0 1 0
输出
1 0 1 1 1 0 …
定义 7.6.1 当n级线性移位寄存器产生的序列{ai}的 周期为T=2n+1时,则称{ai}为n级m序列。 定理7.6.1 n级m序列{ai}具有如下性质: (i)在一个周期内,0,1出现次数分别为2n-1-1和2n1次. (ii)在一个周期圈内,总游程数为2n-1,对1≤i≤n2,长为i的游程有2n-i-1个,且0,1游程各半,长为 n-1的0游程一个,长为n的1游程1个。 (iii) {ai}的自相关函数为二值:
密钥流生成器
7.6 线性移位寄存器
反馈移位寄存器
例 7.6.1 有一个三级移位寄存器如图
其中初态为 。则 此移位寄存器输出序列为 101110111011… 它是周期为4的序列。
f (a1 , a 2 ,..., a n ) = c n a1 ⊕ c n −1 a 2 ⊕ ... ⊕ c1 a n
百度文库n i
∞
i =0
i
j
i −1
i =1
i
n
i =1
n −i
n −i
i
j −1
j =1
j
定理 7.6.4 设m(x)是产生线性移位寄存器序列{ai} 的极小多项式,则{ai}的周期等于多项式m(x)的 阶。 定理 7.6.5 n级线性移位寄存器产生的状态序列有 最大周期2n-1的必要条件是其特征多项式p(x)是 不可约的。 定义7.6.3 p(x)为n次不可约多项式,若p(x)阶为 2n-1 ,称p(x)为n次本原多项式。 定理7.6.6 {ai}为n级m序列的充要条件是其特征多 项式p(x)为n次本原多项式。
n −1
7.7.2 非线性前馈序列
引理7.7.1 在图7.7.1中n级LFSR为n级m序 列生成器时,对任一组不全为0的 k ( j = 0,1,2,L,2 , 存在唯一的前馈函数f(x),使前馈序列是周 期序列 k =k k L k k k L 这里f(0)=0。
j
n
− 2)
0
1
2 n −1
0
1
0 1 N −1
7.7 非线性序列
7.7.1 非线性移位寄存器序列 定理 7.7.1 在n级M序列的一个周期内,0 与1的个数各为2n-1,在M序列的一个周期圈 中,总游程为2n-1 ,对1≤i≤n-2,长为i的 游程数为2n-1-1,其中0,1游程各半,长为 n-1的游程不存在,长为n的0游程和1游程 各1个。 定理 7.7.2 GF(2)上n级M序列的数目 为 2 2 −n 。
定义7.6.4 二元序列 a = a , a ,..., a 的线性复 杂度C(a)定义为产生该序列的级数 最少的线性移位寄存器的级数。对全零序 列a,约定C(a)=0。 定理 7.6.7 设α= {ai}是二元周期序列,且 序列{ai}的线性复杂度C(α)=L≥1,则只要 知道{ai}中任意相继的2L位就可确定整个序 列{ai}及产生{ai}的极小多项式。
i
定义7.8.1 若线性函数wx+w0使得
p( f ( x ) = wx + w0 ) ( w ∈ GF ( 2) n , w0 ∈ GF ( 2))
取最大值,则称wx+w0是f(x)的最佳线性 逼近。 定理7.8.2设f(x)是n 元布尔函数,w满足 s (w ) = a ,则 当 s (w ) > 0 时 ,wx是f(x)的最佳线性逼 近。 当 s (w ) < 0 时,wx+1是f(x)的最佳线性 逼近。 f(x)与其最佳线性逼近的符合率为(1+a)2。
⎧1, ⎪ Ra (τ ) = ⎨ 1 ⎪− T , ⎩ 当τ = 0 当0 < τ ≤ T − 1
定理 7.6.2 设线性移位寄存器的特征多项 式为 p(x ) = ∑ c x ,递推序列 {a }∈ Ω( p( x)) 。 φ ( x) A( x) = 令 A(x ) = ∑ a x ,则 p( x) , 其中 φ ( x) = ∑ c x ∑ a x 。 定义 7.6.2 设p(x)为GF(2)上的多项式,使 得p(x)|xp-1的最小p称为p(x)的周期或的 p(x)阶。 定理 7.6.3 若p(x)为GF(2)上的n次多项 式,且p(x)是序列{ai}的特征多项式,p为 p(x)的阶,则{ai}的周期r|p。
假定分析者已知如下参数: 1 非线性组合函数f(x); 2 LFSRi的级数ri(i=1,…,n) 3 明文编码及语言统计特性; 4 m比特密钥流z1z2…zm(m>2(r1+…+rn)。 ∑r 攻击的目的不是恢复原密钥流生成器,而是利用已 知信息构造一个新生成器,级数不超过 ,以此代 替原密钥流生成器,从而达到对密文的近似解密。
i i
n ri i =1
j
1
n
7.8 序列密码分析
7.8.1 二元加法非线性组合流密码的相关攻击 DC攻击的基本思想是,根据非线性组合器 的输出序列{zk}与组合函数f(x)的每个输入 i {x k } 之间的相关性,用统计方法恢复出 序列 LFSRi的初态和反馈函数。
7.8.2 二元加法非线性组合流密码的线性逼 近攻击
(f )
(f )
(f )
小结
有限域和移位寄存器序列是流密码的基础。 构作流密码的方法归纳为四种:信息论方 法、系统论方法、复杂度方法、随机化方 法。 布尔函数。 有限域与环上的序列设计。
定理7.7.2 设LFSR为n级m序列生成器, f (x ) = f (x 0 , x 1 , L , x n −1 ) 。若f(x)的次数为k,则 {kj}的线性复杂度C({kj})满足
C ({k j }) ≤ ∑ C nj
k i =1
7.7.3非线性组合序列
定理 7.7.3 设 a , k , f ( x), r , (i = 1,2,L, n) ,如前所 述。若ri两两互素,f(x)与各变元均有关,则 {kj}的周期为 ∏ (2 − 1) 线性复杂度为 C ({k }) = f (r ,L, r ) 其中 f (r1 ,L, rn ) 按实数域上运算。
s1 = (a1 , a 2 , a3 ) = (1,0,1)
状态
1 1 1 1 0 1 1 0 1 1 1 0 … … 1 1 1 0 1 0
输出
1 0 1 1 1 0 …
定义 7.6.1 当n级线性移位寄存器产生的序列{ai}的 周期为T=2n+1时,则称{ai}为n级m序列。 定理7.6.1 n级m序列{ai}具有如下性质: (i)在一个周期内,0,1出现次数分别为2n-1-1和2n1次. (ii)在一个周期圈内,总游程数为2n-1,对1≤i≤n2,长为i的游程有2n-i-1个,且0,1游程各半,长为 n-1的0游程一个,长为n的1游程1个。 (iii) {ai}的自相关函数为二值: