第13讲-序列密码2
合集下载
序列密码讲解及事例

5.1.4 伪随机数的评价标准
(1)看起来是随机的,表明它可以通过所有随机性统计检验。 现在的许多统计测试。它们采用了各种形式,但共同思路是它们 全都以统计方式检查来自发生器的数据流,尝试发现数据是否是随 机的。 确 保 数 据 流 随 机 性 的 最 广 为 人 知 的 测 试 套 件 就 是 George Marsaglia 的 DIEHARD 软件包(请参阅 / pub/diehard/)。另一个适合此类测试的合理软件包是 pLab(请参 阅http://random.mat.sbg.ac.at/tests/)。 (2)它是不可预测的。即使给出产生序列的算法或硬件和所有以 前产生的比特流的全部知识,也不可能通过计算来预测下一个随机 比特应是什么。 (3)它不能可靠地重复产生。如果用完全同样的输入对序列产生 7 器操作两次将得到两个不相关的随机序列。
21
反馈函数f(a1,a2,…,an)是n元布尔函数,即n个变元a1,a2,…,an 可以 独立地取0和1两个可能的值,函数中的运算有逻辑与、逻辑或、逻 辑补等运算,最后的函数值也为0或1。
9
这就是为什么所有序列密码也有密钥的原因。密钥流发生器的 输出是密钥的函数。 这样,Alice有一个明文/密文对,但她只能读到用特定密钥加 密的消息。 更换密钥,攻击者就不得不重新分析。 流密码是将明文划分成字符(如单个字母),或其编码的基本单 元(如0, 1数字),字符分别与密钥流作用进行加密,解密时以同步 产生的同样的密钥流实现。 • 流密码强度完全依赖于密钥序列的随机性(Randomness)和不
13
自同步序列密码举例
例 假设种子密钥为k=h,之后的密钥是上一个密文。采用移位密 码,明文为cryptography,列表给出它的加密和解密过程。
【安全课件】第14讲—序列密码

,其中 ci G F(q),1in,则称其为线性反馈寄存 器;否则称其为非线性反馈移为寄存器。
其中 cn 0 ,若 cn 0 我们说该寄存器是退化 的,否则是非退化的。
4
移位寄存器序列空间
符号说明:G(f)表示以f(x)为联结多项式的n级线 性移位寄存器序列构成的空间
定理1:G(f)是GF(q)上的一个n维线性空间。 证明:只需证明G(f)中的任意两个序列的任意线
状态转移矩阵: 满足:st+1=stTf 称st=(at,at+1,at+2,…,at+n-1)为n维状态
2
实例(画出移存器的逻辑框图,写出相应的线性
递推式)
多项式
f(x)x4 x3 x2 1
答案: 线性递推式: at=at-4+at-3+at-2
x1
x2
x3
x4
3
非退化的移位寄存器
若反馈函数形如:f( x 1 ,x 2 ,,x n ) c n x 1 c n 1 x 2 c 1 x n
称f(x)是可约多项式;否则,称其为不可约多 项式。
6
定理2:若f(x)|h(x),则G(f) G(h).
例1:联结多项式为
f(x)=x4+x3+x+1=(x+1)2(x2+x+1)
线性递推式:at=at-4+at-3+at-1 输出序列:000111//000111//…… 周期为6
011//011//……
12
m序列的游程分布规律
性质2:将r级m序列的一个周期段首尾相接,其游程 总数为N=2r-1;其中没有长度大于r的游程;有1个长 度为r的1游程,没有长度为r的0游程;没有长度为
其中 cn 0 ,若 cn 0 我们说该寄存器是退化 的,否则是非退化的。
4
移位寄存器序列空间
符号说明:G(f)表示以f(x)为联结多项式的n级线 性移位寄存器序列构成的空间
定理1:G(f)是GF(q)上的一个n维线性空间。 证明:只需证明G(f)中的任意两个序列的任意线
状态转移矩阵: 满足:st+1=stTf 称st=(at,at+1,at+2,…,at+n-1)为n维状态
2
实例(画出移存器的逻辑框图,写出相应的线性
递推式)
多项式
f(x)x4 x3 x2 1
答案: 线性递推式: at=at-4+at-3+at-2
x1
x2
x3
x4
3
非退化的移位寄存器
若反馈函数形如:f( x 1 ,x 2 ,,x n ) c n x 1 c n 1 x 2 c 1 x n
称f(x)是可约多项式;否则,称其为不可约多 项式。
6
定理2:若f(x)|h(x),则G(f) G(h).
例1:联结多项式为
f(x)=x4+x3+x+1=(x+1)2(x2+x+1)
线性递推式:at=at-4+at-3+at-1 输出序列:000111//000111//…… 周期为6
011//011//……
12
m序列的游程分布规律
性质2:将r级m序列的一个周期段首尾相接,其游程 总数为N=2r-1;其中没有长度大于r的游程;有1个长 度为r的1游程,没有长度为r的0游程;没有长度为
上海交大密码学课件--第二讲:序列密码45页PPT

:序列 密码
1、纪律是管理关系的形式。——阿法 纳西耶 夫 2、改革如果不讲纪律,就难以成功。
3、道德行为训练,不是通过语言影响 ,而是 让儿童 练习良 好道德 行为, 克服懒 惰、轻 率、不 守纪律 、颓废 等不良 行为。 4、学校没有纪律便如磨房里没有水。 ——夸 美纽斯
5、教导儿童服从真理、服从集体,养 成儿童 自觉的 纪律性 ,这是 儿童道 德教育 最重要 的部分 。—— 陈鹤琴
1、最灵繁的人也看不见自己的背脊。——非洲 2、最困难的事情就是认识自己。——希腊 3、有勇气承担命运这才是英雄好汉。——黑塞 4、与肝胆人共事,无字句处读书。——周恩来 5、阅读使人充实,会谈使人敏捷,写作使人精确。——培根
1、纪律是管理关系的形式。——阿法 纳西耶 夫 2、改革如果不讲纪律,就难以成功。
3、道德行为训练,不是通过语言影响 ,而是 让儿童 练习良 好道德 行为, 克服懒 惰、轻 率、不 守纪律 、颓废 等不良 行为。 4、学校没有纪律便如磨房里没有水。 ——夸 美纽斯
5、教导儿童服从真理、服从集体,养 成儿童 自觉的 纪律性 ,这是 儿童道 德教育 最重要 的部分 。—— 陈鹤琴
1、最灵繁的人也看不见自己的背脊。——非洲 2、最困难的事情就是认识自己。——希腊 3、有勇气承担命运这才是英雄好汉。——黑塞 4、与肝胆人共事,无字句处读书。——周恩来 5、阅读使人充实,会谈使人敏捷,写作使人精确。——培根
现代密码学之03序列密码

反馈移存器是序列密码设计中常用的一种初始乱源, 其目的是:
(1)以种子密钥为移存器的初态,按照确定的递推关 系,产生周期长、统计特性好的初始乱源序列。
(2)继而利用非线性函数、有记忆变换、采样变换等 手段,产生抗破译能力强的乱数序列。
在序列密码设计中,大多使用周期达到最大的那些 序列,包括:
(1)二元域GF(2)上的线性递归序列 (2)2n元域GF(2n)上的线性递归序列 (3)剩余类环Z/(2n)上的线性递归序列 (4)非线性递归序列
3.2.2 线性反馈移存器(LFSR)简介
c0=1
c1
c2 …
…
x1
x2
am-1
am-2
cn-2 xn-1
cn-1
cn
xn am-n
一、当ci=1时,开关闭合,否则断开;c0=1表示总有 反馈;一般cn=1,否则退化。
二、反馈逻辑函数
f(x1, x2, …, xn)=c1x1+c2x2+…+cnxn 三、线性递推式
= c0am+c1Dam+c2D2am+…+cnDnam) = (c0+c1D+c2D2+…+cnDn)am 因此反馈多项式(也称特征多项式)为:
g(x)= c0+c1x+c2x2+…+cnxn
五、状态转移矩阵
给定两个相邻状态:
则有
Sm=(am+n-1,…,am+1,am) Sm+1=(am+n,…,am+2,am+1)
管理问题!
因而人们设想使用少量的真随机数(种子密钥) 按一定的固定规则生成的“伪随机”的密钥序 列代替真正的随机序列ki,这就产生了序列密 码。
(1)以种子密钥为移存器的初态,按照确定的递推关 系,产生周期长、统计特性好的初始乱源序列。
(2)继而利用非线性函数、有记忆变换、采样变换等 手段,产生抗破译能力强的乱数序列。
在序列密码设计中,大多使用周期达到最大的那些 序列,包括:
(1)二元域GF(2)上的线性递归序列 (2)2n元域GF(2n)上的线性递归序列 (3)剩余类环Z/(2n)上的线性递归序列 (4)非线性递归序列
3.2.2 线性反馈移存器(LFSR)简介
c0=1
c1
c2 …
…
x1
x2
am-1
am-2
cn-2 xn-1
cn-1
cn
xn am-n
一、当ci=1时,开关闭合,否则断开;c0=1表示总有 反馈;一般cn=1,否则退化。
二、反馈逻辑函数
f(x1, x2, …, xn)=c1x1+c2x2+…+cnxn 三、线性递推式
= c0am+c1Dam+c2D2am+…+cnDnam) = (c0+c1D+c2D2+…+cnDn)am 因此反馈多项式(也称特征多项式)为:
g(x)= c0+c1x+c2x2+…+cnxn
五、状态转移矩阵
给定两个相邻状态:
则有
Sm=(am+n-1,…,am+1,am) Sm+1=(am+n,…,am+2,am+1)
管理问题!
因而人们设想使用少量的真随机数(种子密钥) 按一定的固定规则生成的“伪随机”的密钥序 列代替真正的随机序列ki,这就产生了序列密 码。
第4章(序列密码)

4.4 线性移位寄存器的一元多项式表示
设 n 级线性移位寄存器的输出序列满足递推 关系 an+k=c1an+k-1 c2an+k-2 … cnak (*) 对任何 k 1 成立。这种递推关系可用一个一 元高次多项式 P(x)=1+c1x+…+cn-1xn-1+cnxn 表示,称这个多项式为LFSR的联系多项式或 特征多项式。
初始状态由用户确定,当第i个移位时钟脉冲 到来时,每一级存储器ai都将其内容向下一级 ai-1传递,并根据寄存器此时的状态a1,a2,…,an 计算f(a1,a2,…,an),作为下一时刻的an。反馈函 数f(a1,a2,…,an)是n元布尔函数,即n个变元 a1,a2,…,an可以独立地取0和1这两个可能的值, 函数中的运算有逻辑与、逻辑或、逻辑补等运 算,最后的函数值也为0或1。
图4-4 GF(2)上的n级线性反馈移位寄存器
输出序列{at}满足 an+t=cnat cn-1at+1 … c1an+t-1 其中t为非负正整数。 线性反馈移位寄存器因其实现简单、速度快、 有较为成熟的理论等优点而成为构造密钥流生 成器的最重要的部件之一。
例4.2 图4-5是一个5级线性反馈移位寄存器, 其初始状态为(a1,a2,a3,a4,a5)=(1,0,0,1,1),可 求出输出序列为 1001101001000010101110110001111100110 … 周期为31。
即输出序列为101110111011…,周期为4。 如果移位寄存器的反馈函数f(a1,a2,…,an)是a1 ,a2,…,an的线性函数,则称之为线性反馈 移位寄存器LFSR(linear feedback shift register )。此时f可写为 f(a1,a2,…,an)=cna1 cn-1a2 … c1an 其中常数ci=0或1 2加法。ci=0或1可 用开关的断开和闭合来实现,如图4-4所示。
现代密码学第5章:序列密码

6
1.1 同步序列密码
根据加密器中记忆元件的存储状态σi是 否依赖于输入的明文字符,序列密码可进一 步分成同步和自同步两种。 σi独立于明文字符的叫做同步序列密码, 否则叫做自同步序列密码。由于自同步序列 密码的密钥流的产生与明文有关,因而较难 从理论上进行分析。目前大多数研究成果都 是关于同步序列密码的。
21
作为有限状态自动机的密钥流生成器
k
i
k
zi
k
22
作为有限状态自动机的密钥流生成器
这种密钥流生成器设计的关键在于找出 适当的状态转移函数φ和输出函数ψ,使得 输出序列z满足密钥流序列z应满足的几个条 件,并且要求在设备上是节省的和容易实现 的。 为了实现这一目标,必须采用非线性函 数。
3
1. 序列密码的基本概念
分组密码与序列密码的区别就在于有无 记忆性(如图)。序列密码的滚动密钥 z0=f(k,σ0)由函数f、密钥k和指定的初态σ0完 全确定。此后,由于输入加密器的明文可能 影响加密器中内部记忆元件的存储状态,因 而σi(i>0)可能依赖于k,σ0,x0,x1,…,xi-1 等参数。
序列密码的基本思想是利用密钥k产生 一个密钥流z=z0z1…,并使用如下规则对明 文串x=x0x1x2…加密: y=y0y1y2…=Ez0(x0)Ez1(x1)Ez2(x2)…。 密钥流由密钥流发生器f产生: zi=f(k,σi), 这里σi是加密器中的记忆元件(存储器)在 时刻i的状态,f是由密钥k和σi产生的函数。
28
F的设计:两种典型的基本编码手段
1. 非线性组合生成器 一个非线性组合生成器的图示如下:
F(x1 , x2 , x ) ,t
N1-LFSR
1.1 同步序列密码
根据加密器中记忆元件的存储状态σi是 否依赖于输入的明文字符,序列密码可进一 步分成同步和自同步两种。 σi独立于明文字符的叫做同步序列密码, 否则叫做自同步序列密码。由于自同步序列 密码的密钥流的产生与明文有关,因而较难 从理论上进行分析。目前大多数研究成果都 是关于同步序列密码的。
21
作为有限状态自动机的密钥流生成器
k
i
k
zi
k
22
作为有限状态自动机的密钥流生成器
这种密钥流生成器设计的关键在于找出 适当的状态转移函数φ和输出函数ψ,使得 输出序列z满足密钥流序列z应满足的几个条 件,并且要求在设备上是节省的和容易实现 的。 为了实现这一目标,必须采用非线性函 数。
3
1. 序列密码的基本概念
分组密码与序列密码的区别就在于有无 记忆性(如图)。序列密码的滚动密钥 z0=f(k,σ0)由函数f、密钥k和指定的初态σ0完 全确定。此后,由于输入加密器的明文可能 影响加密器中内部记忆元件的存储状态,因 而σi(i>0)可能依赖于k,σ0,x0,x1,…,xi-1 等参数。
序列密码的基本思想是利用密钥k产生 一个密钥流z=z0z1…,并使用如下规则对明 文串x=x0x1x2…加密: y=y0y1y2…=Ez0(x0)Ez1(x1)Ez2(x2)…。 密钥流由密钥流发生器f产生: zi=f(k,σi), 这里σi是加密器中的记忆元件(存储器)在 时刻i的状态,f是由密钥k和σi产生的函数。
28
F的设计:两种典型的基本编码手段
1. 非线性组合生成器 一个非线性组合生成器的图示如下:
F(x1 , x2 , x ) ,t
N1-LFSR
【学习课件】第14-15讲数据加密技术(序列加密)

• 只要选择合适的连接多项式便可使线性移位寄存
器的输出序列周期达到最大值2n –1,并称此时的
输出序列为最大长度线性移位寄存器输出序列,
简称为m序列。
ppt课件
16
二、线性移位寄存器序列密码
1、线性移位寄存器
• 仅当连接多项式g(x)为本原多项式时,其线性移
• 例如,如果通信中丢失或增加了一个密文字符,则收
方的解密将一直错误。
ppt课件
4
一、序列密码的基本概念
①同步序列密码
种子密钥k
种子密钥k
密钥序列 产生算法
密钥序列 产生算法
m1,m2, …
k1,k2,… c1,c2,…
Ci = mi⊕ki
k1,k2,… m1,m2,…
设密文失步 c = c1, c3, c4, … cn-1, cn ( c2 丢失)
• 注意:错误与失步是不同的概念!
设密文错误 c = c1, c2, c3, … cn-1, cn ( c2 错) ⊕ k= k1, k2, k3, … kn-1, kn (密钥正确)
m=m1,×, m3, …ppt课m件 n-1, mn (仅 m2 错)
6
一、序列密码的基本概念
②自同步序列密码( Self- Synchronous Stream Cipher)
• 密钥流的每一位是前面固定数量密文位的函数。军方
称为密文自动密钥
• 密钥序列产生算法与明文(密文)相关,则所产生的
密钥序列与明文(密文)相关。
• 设密钥序列产生器具有 n位存储,则加密时一位密文
错误将影响后面连续 n个密文错误。在此之后恢复正 确。
• 解密时一位密文错误也将影响后面连续 n个明文错。
序列密码与移位寄存器

1. 6 线性移位寄存器序列极小多项式
定0存上的则一和项定令定一线是定一列则当定0整p定定0式上的,,(,理义在的不一元f式义理元性不理元f且∈f义数理义并的极(((xxx1可可定多11多移1多仅))1r11且本)小G.使...)都一..为..6约约5存项48项位9项1当(5称77原多设得m0设设设是定设设设多多在式式寄的式设f为多项()fffx,G是(((并项项唯存f,,,f,xxx)一的项式((FI)x))x不是且式式一器是是则都都中())=是是元是极式q,可是本满是对;。的的G)Gf是是次g多G小。(都FF上x(约原F足以任x否一非((mm数)项(多有则)qq的如是的多qhf意则元零))最序序(式项)(mfx常x果上 上 。 项(满,,)多输上上x低列列)上式,f上,(。。(,f)为数x则f的的式则(x足(并项出的的的),,x的的的并的,并x)|如则联项)称f常常。称)的(且式序一一多即即周极常且一则且称x是果任系为f数数f)周(常列m个个项(.期小数常个常为x不x这任意多1项项)()期数。周周式x存多项数周数为可里的意非为的项)为为,项,如期期称在项为项期项约m一,非零使最式11记不果序序为并式1不序不(多元如零序得小x的的的的为为f列列)且。的为列为上(项多果序列正x,,),
定理1.3 设f(x) 是GF(q) 上的一个常数项为1 的一元n 次多
项式, 则由f(x) 所确定的线性移位寄存器的序列空间G(f)
是GF(q) 上的一个n 维线性空间. 定理1.4 设f(x) 和h(x) 是GF(q) 上的两个常数项为1 的一元 多项式. 如果f(x)|h(x), 即f(x) 整除h(x), 则由f(x) 所确定的 线性移位寄存器的序列空间G(f) 是由h(x) 所确定的线性移 位寄存器的序列空间G(h) 的子空间, 即G(f) ⊆ G(h).