现代密码学 第2讲流密码

合集下载

现代密码学第02讲

现代密码学第02讲
2014-1-20 19
密码可能经受的攻击
攻击类型
惟密文攻击 已知明文攻 击 选择明文攻 击 选择密文攻 击
2014-1-20
攻击者拥有的资源
加密算法 截获的部分密文 加密算法, 截获的部分密文和相应的明文

加密算法 加密黑盒子,可加密任意明文得到相应的密文

加密算法 解密黑盒子,可解密任意密文得到相应的明文

Yj=f 1(sj ,Xj) Sj+1 =f 2(sj ,Xj) Y
第j时刻输入Xj X ,输出Yj
2014-1-20
27
例2-1

S={s1,s2,s3},X={x1, x2,x3},Y=(y1,y2,y3) 转移函数
x1 y1 y2 y3 x2 y3 y1 y2 X3 y2 y3 y1 f2 s1 s2 s3 x1 s2 s3 s1 x2 s1 s2 s3 X3 s3 s1 s2
2014-1-20
14
公钥体制的主要特点

加密和解密能力分开 可以实现多个用户加密的消息只能由一个用户 解读(用于公共网络中实现保密通信) 只能由一个用户加密消息而使多个用户可以解 读(可用于认证系统中对消息进行数字签字)。


无需事先分配密钥。
2014-1-20
15
三、密码分析
截收者在不知道解密密钥及通信者所采用的加 密体制的细节条件下,对密文进行分析,试图 获取机密信息。研究分析解密规律的科学称作 密码分析学。 密码分析在外交、军事、公安、商业等方面都 具有重要作用,也是研究历史、考古、古语言 学和古乐理论的重要手段之一。
2014-1-20 4
几个概念(三)
密码分析(Cryptanalysis):截收者试图通过分析从 截获的密文推断出原来的明文或密钥。 密码分析员(Cryptanalyst):从事密码分析的人。 被动攻击 (Passive attack):对一个保密系统采取截 获密文进行分析的攻击。 主动攻击 (Active attack):非法入侵者 (Tamper)、 攻击者(Attcker)或黑客(Hacker)主动向系统窜扰,采用 删除、增添、重放、伪造等窜改手段向系统注入假消息 ,达到利已害人的目的。

现代密码学PPT课件

现代密码学PPT课件
因此要了解信息安全,首先应该知道信息安全面临 哪些威胁。
信息安全所面临的威胁来自很多方面,并且随着时 间的变化而变化。这些威胁可以宏观地分为人为威 胁和自然威胁。
自然威胁可能来自于各种自然灾害、恶劣的场地环 境、电磁辐射和电磁干扰、网络设备自然老化等。 这些事件有时会直接威胁信息的安全,影响信息的 存储媒质。
3. 完整性业务
和保密业务一样,完整性业务也能应用于消息流、 单个消息或一个消息的某一选定域。用于消息流的 完整性业务目的在于保证所接收的消息未经复制、 插入、篡改、重排或重放,即保证接收的消息和所 发出的消息完全一样;这种服务还能对已毁坏的数 据进行恢复,所以这种业务主要是针对对消息流的 篡改和业务拒绝的。应用于单个消息或一个消息某 一选定域的完整性业务仅用来防止对消息的篡改。
2. 认证业务
用于保证通信的真实性。在单向通信的情况下,认 证业务的功能是使接收者相信消息确实是由它自己 所声称的那个信源发出的。在双向通信的情况下, 例如计算机终端和主机的连接,在连接开始时,认 证服务则使通信双方都相信对方是真实的(即的确 是它所声称的实体);其次,认证业务还保证通信 双方的通信连接不能被第三方介入,以假冒其中的 一方而进行非授权的传输或接收。
恶意软件指病毒、蠕虫等恶意程序,可分为两类, 如图1.2所示,一类需要主程序,另一类不需要。前 者是某个程序中的一段,不能独立于实际的应用程 序或系统程序;后者是能被操作系统调度和运行的 独立程序。来自图1.2 恶意程序分类
对恶意软件也可根据其能否自我复制来进行分类。 不能自我复制的一般是程序段,这种程序段在主程 序被调用执行时就可激活。能够自我复制的或者是 程序段(病毒)或者是独立的程序(蠕虫、细菌 等),当这种程序段或独立的程序被执行时,可能 复制一个或多个自己的副本,以后这些副本可在这 一系统或其他系统中被激活。以上仅是大致分类, 因为逻辑炸弹或特洛伊木马可能是病毒或蠕虫的一 部分。

李发根现代密码学2

李发根现代密码学2

ant cnat cn1at1 c1ant1, t 1,2,
线性反馈移位寄存器:实现简单、速度快、有较为成熟的理论, 成为构造密钥流生成器的最重要的部件之一。
例 下图是一个5级线性反馈移位寄存器,其初始状 态为(a1,a2,a3,a4,a5)=(1,0,0,1,1)
表2.2 一个3级反馈移位 寄存器的状态和输出
状态 (a3,a2,a1)
输出
101
1
图3 一个3级反馈移位寄存器
110 111
0 1
即输出序列为101110111011…,
011 101
1 1
周期为4。
110
0
线性反馈移位寄存器LFSR(linear feedback shift register)
可求出输出序列为 1001101001000010101110110001111100110…
周期为31。
总是假定c1,c2,…,cn中至少一个0,否则 f(a1,a2,…,an)≡0。
总是假定cn=1。
LFSR输出序列的性质:完全由其反馈函数决定。 n级LFSR状态数:最多有2n个。 n级LFSR的状态周期: 2n-1。 输出序列的周期=状态周期, 2n-1。
RC4是一种基于非线性数据表变化的流密码,它 以一个足够大的数据表S为基础,对表进行非线性 变换,产生非线性的密钥流序列。
RC4数据表的大小随着参数n的变化而变化,通 常取n=8,此时总共可以生成28个元素的数据表, 主密钥的长度至少为40比特。
RC4密钥流的每个输出都是数据表S中的一个ቤተ መጻሕፍቲ ባይዱ 机元素。
第2章 流密码
2.1 流密码的基本概念 2.2 线性反馈移位寄存器 2.3 流密码RC4

北邮精品课程-现代密码学课件 现代密码学第二讲:密码学的信息论基础共29页文档

北邮精品课程-现代密码学课件 现代密码学第二讲:密码学的信息论基础共29页文档

39、没有不老的誓言,没有不变的承 诺,踏 上旅途 ,义无 反顾。 40、对时间的价值没有没有深切认识 的人, 决不会 坚韧勤 勉。
谢谢你的阅读
❖ 知识就是财富 ❖ 丰富你的人生
71、既然我已经踏上这条道路,那么,任何东西都不应妨碍我沿着这条路走下去。——康德 72、家庭成为快乐的种子在外也不致成为障碍物但在旅行之际却是夜间的伴侣。——西塞罗 73、坚持意志伟大的事业需要始终不渝的精神。——伏尔泰 74、路漫漫其修道远,吾将上下而求索。——屈原 75、内外相应,言行相称。——韩非
北邮精品课程-现代密码学课件 现代 密码学第二讲:密码学的信息论基础
36、“不可能”这7、不要生气要争气,不要看破要突 破,不 要嫉妒 要欣赏 ,不要 托延要 积极, 不要心 动要行 动。 38、勤奋,机会,乐观是成功的三要 素。(注 意:传 统观念 认为勤 奋和机 会是成 功的要 素,但 是经过 统计学 和成功 人士的 分析得 出,乐 观是成 功的第 三要素 。

现代密码学第二章知识点复习题

现代密码学第二章知识点复习题

第二章流密码一、填空:1. 分组密码和流密码的根本区别在于_______________________________2. n-LFSR最大周期是 __________3. 已知一3-FSR,其反馈函数为f(a i,a2,a3)=a i 二a2a3,且当前的状态(a s,a2,a i)=(101),则其前两个状态分别是____________ ,输出序列的周期是_____________4. n级m序列的异相自相关函数值为_____________________5. 序列{a i}为m序列的充要条件是___________________________________6. 已知{a i}为m序列,且在该序列中最大0游程为4,则该序列的周期是________7. 已知p(x)=x3+x+1,贝U其产生的非0序列的异相自相关函数值是_________8. n级M序列的周期是 ______________9. 已知一钟控生成器由LFSR1控制LFSR2,极小多项式分别为f1(x)=1+x+x3和f2(X)= 1+X2+X3,则产生序列的周期为 ___________________ 线性复杂度为10. 已知LFSR1为一10级m序列,LFSR2为以5级m序列,则构成的钟控序列的周期为_______ 线性复杂度为_______________11. n级m序列中长为i的1游程有多少 ______ ,长为n的1游程有多少______ ,长为n的0游程有几个___12. 至少知道_________ 连续的密钥流bit可以破译m序列13. RC4算法的最大密钥长度是___________14. 已知某一n级LFSR其非零状态的状态转移图为一个大圈,则其产生的非0序歹U的周期是______15. eSTREAM计划候选算法Grain v1的密钥长度________ 针对硬件还是软件开发的___________二、选择:每一项有1个或多个选项是正确的1. 下面哪些多项式可以作为非退化的5-LFSR的反馈函数(状态转移函数) _____4 5 4 5A. 1+x+xB. X1 二X2二X4x5C. 1+x+xD. x +x2•对于一个n-LFSR,设其序列生成函数为A(x),特征多项式p(x),全0状态除夕卜,则下面那个要素与其它要素不是--------- 对应的__________A.①(x),满足A(x)=①(x)/p(x)B.初始状态C. p(x)D. G(p(x))中的序列3. 一个LFSR的极小多项式为p(x),其所生产的序列也都能由特征多项式为t(x)的LFSR 产生,则gcd(p(x),t(x))= _______A. p(x)B. t(x)C. 1D.次数大于1的某个g(x),且不等于p(x)和t(x)4. 下面哪个选项不是Golomb对伪随机周期序列提出的随机性公设____________A.在一个周期内0和1个数至多差1B.长为i的游程占游程总数的1/2'C.异相自相关函数为常数D.任意比特的下一比特不可预测5. 哪些组合通常作为密钥流产生器的状态转移函数和输出转移函数_________A.线性的©和线性的书B.线性的©和非线性的书C.非线性的©和线性的书D.非线性的©和非线性的书三、判断:(正确的划””,错误的划””以下同)1. 在流密码中,只要被加密的明文长度小于密钥流序列的周期,就可以达到无条件安全了( ) 2. 只要LFSR产生的序列的周期足够大,就能够达到计算上安全的,可用于作为密钥流序列( )3. 流密码中如果第i个密钥比特与前i-1个明文有关则称为同步流密码()4. LFSR的初始状态对其产生序列的周期没有任何影响()5. 序列{a'}的生成函数为A(x)=©(x)/p(x),p(x)的次数大于1,则必有G(p(x))中的一个序列,满足A(x)=x/p(x) ( )6. LFSR产生的序列中有一条序列是m序列,则所有非0序列都是m序列( )7. 钟控序列的线性复杂度是指产生钟控序列的密钥流产生器中包含的移位寄存器的总级数( )8. n级m序列中,存在两个0的n-1游程。

现代密码学第二章知识点复习题

现代密码学第二章知识点复习题

第二章流密码一、填空:1. 分组密码和流密码的根本区别在于____________________________2. n-LFSR最大周期是__________3. 已知一3-FSR,其反馈函数为f(a1,a2,a3)=a1⊕a2a3,且当前的状态(a3,a2,a1)=(101),则其前两个状态分别是____________,输出序列的周期是____________4. n级m序列的异相自相关函数值为____________________5. 序列{a i}为m序列的充要条件是_________________________________6. 已知{a i}为m序列,且在该序列中最大0游程为4,则该序列的周期是_______7. 已知p(x)=x3+x+1, 则其产生的非0序列的异相自相关函数值是________8. n级M序列的周期是____________9. 已知一钟控生成器由LFSR1控制LFSR2,极小多项式分别为f1(x)=1+x+x3和f2(x)=1+x2+x3,则产生序列的周期为___________________,线性复杂度为______________________。

10. 已知LFSR1为一10级m序列,LFSR2为以5级m序列,则构成的钟控序列的周期为______,线性复杂度为______________11. n级m序列中长为i的1游程有多少_____,长为n的1游程有多少_____,长为n的0游程有几个___12. 至少知道_________个连续的密钥流bit可以破译m序列13. RC4算法的最大密钥长度是___________14. 已知某一n级LFSR其非零状态的状态转移图为一个大圈,则其产生的非0序列的周期是________15. eSTREAM计划候选算法Grain v1的密钥长度______是针对硬件还是软件开发的__________二、选择:每一项有1个或多个选项是正确的1. 下面哪些多项式可以作为非退化的5-LFSR的反馈函数(状态转移函数)_____A. 1+x+x4B. x1⊕x2⊕x4x5C. 1+x+x5D. x4+x52.对于一个n-LFSR,设其序列生成函数为A(x),特征多项式p(x),全0状态除外,则下面那个要素与其它要素不是一一对应的________A. Ф(x),满足A(x)=Ф(x)/p(x)B. 初始状态C. p(x)D. G(p(x))中的序列3. 一个LFSR的极小多项式为p(x),其所生产的序列也都能由特征多项式为t(x)的LFSR产生,则gcd(p(x),t(x))=_________A. p(x)B. t(x)C. 1D. 次数大于1的某个g(x),且不等于p(x)和t(x)4. 下面哪个选项不是Golomb对伪随机周期序列提出的随机性公设_________A. 在一个周期内0和1个数至多差1B. 长为i的游程占游程总数的1/2iC. 异相自相关函数为常数D. 任意比特的下一比特不可预测5. 哪些组合通常作为密钥流产生器的状态转移函数和输出转移函数______A. 线性的φ和线性的ψB. 线性的φ和非线性的ψC. 非线性的φ和线性的ψD. 非线性的φ和非线性的ψ三、判断:(正确的划”√”,错误的划”⨯”,以下同)1. 在流密码中,只要被加密的明文长度小于密钥流序列的周期,就可以达到无条件安全了()2. 只要LFSR产生的序列的周期足够大,就能够达到计算上安全的,可用于作为密钥流序列()3. 流密码中如果第i个密钥比特与前i-1个明文有关则称为同步流密码( )4. LFSR的初始状态对其产生序列的周期没有任何影响( )5. 序列{a i}的生成函数为A(x)=Ф(x)/p(x),p(x)的次数大于1,则必有G(p(x))中的一个序列,满足A(x)=x/p(x) ( )6. LFSR产生的序列中有一条序列是m序列,则所有非0序列都是m序列()7. 钟控序列的线性复杂度是指产生钟控序列的密钥流产生器中包含的移位寄存器的总级数()8. n级m序列中,存在两个0的n-1游程。

现代密码学杨波课后习题讲解

现代密码学杨波课后习题讲解

,(ab mod 2n ) (abdiv2n )
1,(ab mod 2n ) (abdiv2n )
注意:(ab mod 2n)相当于 ab 的 n 个有效最低位,(ab div 2n) 是 ab 右移 n 位。
IDEA:明文、分组、密钥、8轮迭代(不是传统的feistel)、 输出变换
习题
习题
……
(1,1,0,1) (1,0,1,1) (0,1,1,1) (1,1,1,1)
输出序列为 11011 11011 …, 周期为 5。
(1,1,1,0) (1,1,0,1) ….
f(a1,a2,a3, 输出 a4)
1
1
1
1
1
0
0
1
1
1
1
1
….
….
习题
6.已知流密码的密文串1010110110和相应的明文串 0100010001,而且还已知密钥流是使用3级线性反馈移位寄 存器产生的,试破译该密码系统。
所以 gcd(4655, 12075)=35。
习题
x 2 mod 3
6.求下列同余方程组
x
1mod
5
(中国剩余定理)
x 1mod 7
习题
10. 设通信双方使用 RSA 加密体制,接收方的公钥是 (e,n)=(5,35),接收到的密文是 C=10,求明文 M
RSA?密钥产生、加密、解密
解:
习题
∵ 11*19 ≡ 1 mod 26 (说明:求模逆元可采用第 4 章的“4.1.7 欧几里得算法”
,或者直接穷举 1~25)
对密文 C 进行解密: m’=D(C)≡ 19*(c-23) (mod 26) =[19 7 4 13 0 19 8 14 13 0 11 18 4 2 20 17 8 19 24 0

第2讲:序列密码

第2讲:序列密码

现代密码学第二讲-----密码学历史、序列密码郑东2.1.古典密码密码学的历史已有4000多年 古埃及人曾把象形文字写在石碑上2.1.1Caesar Cipher-恺撒密码 2千年前,Julius Ceasar 使用了一种简单的替换密码-——后被人称为恺撒密码(Caesar cipher ) 首先被应用于军事上(cf Gallic Wars ) 替换方法,每个字母用其后的第三个字母替换eg. L FDPH L VDZ L FRQTXHUHG -> I CAME I SAW I CONQUERED Caesar cipher 可以描述如下:Plain: ABCDEFGHIJKLMNOPQRSTUVWXYZ Cipher: DEFGHIJKLMNOPQRSTUVWXYZABC 练习解密"RPQLD JDOOLD HVW GLYLVD LQ SDUWHV WUHV"2.1.2.恺撒密码的一般形式 一般形式,可以把Caesar cipher 中字母移动的位数由3变为1-25中的任何一个可以指定一个密钥字母作为字母A 的密文。

例如:密钥字母F 表示:A F,B —G, ... Y —D, Z —E 即每个字母移动5位共有26种可能的密码算法(25种可用)2.1.3.混合单码替换密码 不仅仅是移位变换每个字母可以用其它任何一个字母替换(不能重复) 每个字母可以随机的映射到其它一个 因此密钥长度是26个字母单字母替换密码(Monoalphabetic Substitution Cipher )例如:明文: ABCDEFGHIJKLMNOPQRSTUVWXYZ 密文: DKVQFIBJWPESCXHTMYAUOLRGZN Plaintext: IFWEWISHTOREPLACELETTERS Ciphertext: WIRFRWAJUHYFTSDVFSFUUFYA2.1.4.简单的单码替换密码 混合单码密码有26个字母长的密钥 需要一种简单方法指定密钥有多种方法,一种简单方法是写没有重复字母的“密钥字”,其它字母按顺序写在密钥字最后字母后面例如,给定密钥字"JULIUSCAESAR" Plain:ABCDEFGHIJKLMNOPQRSTUVWXYZ Cipher:JULISCAERTVWXYZBDFGHKMNOPQ2.1.5单码替换密码历史 不同种类的替换密码用在政府和军事上 频率攻击方法由阿拉伯科学家提出 最早的攻击描述:"A Manuscript on Deciphering Cryptographic Messages", published in the 9th century2.1.6. Vigenère Cipher Blaise de Vigen ère 发明了多字母替换密码(polyalphabetic substitution cipher ) 使用多个单字母替换表因此一个字母可以被多个字母替换 方法,用一个密钥选择对每个字母使用哪个字母表密钥的第I 个字母表示使用第ith 个字母表 依次使用每个字母表当密钥的字母使用完后,在从头开始2.1.7. Vigenère Example 例:写出明文在明文下重复写出密钥字依次使用每个字母作为caesar cipher 的密钥 加密对应的明文字母PlaintextTHISPROCESSCANALSOBEEXPRESSED Keyword CIPHERCIPHERCIPHERCIPHERCIPHE Plaintext VPXZTIQKTZWTCVPSWFDMTETIGAHLH2.1.8 Vigenère Example (续) C -> CDEFGHIJKLMNOPQRSTUVWXYZAB I -> IJKLMNOPQRSTUVWXYZABCDEFGH P -> PQRSTUVWXYZABCDEFGHIJKLMNO H -> HIJKLMNOPQRSTUVWXYZABCDEFG E -> EFGHIJKLMNOPQRSTUVWXYZABCD R -> RSTUVWXYZABCDEFGHIJKLMNOPQ ABCDEFGHIJKLMNOPQRSTUVWXYZto map the above plaintext letters. ‘T' uses key 'C' maps to 'V' ‘H' uses key 'I' maps to 'P' ‘I' ises key 'P' maps to 'X'etc2.1.9 Vigenère Cipher 的历史 可以看出,越安全的密码使用起来越复杂 因此,在有些场合还可以看到单码替换密码 使得vigen ère cipher 逐渐被各国使用 1854年,首次被Charles Babbage 攻破,但没有公开Friedrich Kasiski 于1863年攻破并发表 此密码的各种变形被沿用到20世纪2.1.10 Ciphers Machines 1--1 为了简化加密/解密过程,导致密码设备出现 Jefferson cylinder , 1790s 被研制成功,包含36个圆盘,每个圆盘有个随机字母表1920年还被美国军队使用2.1.11 Ciphers Machines 1--2 Wheatstone disc , by Wadsworth in 18172.1.12. Ciphers Machines随着密码技术的提高,要求有更高级的密码装置高级密码装置可以实现更复杂的密码这些装置在二战时期广泛使用例:the German Enigma,the Swedish Hagelin (below)and the Japanese Purple2.1.1puters and Cryptography现代电子系统与计算机能够实现更复杂的密码系统70年代中期, 首次出现了现代分组密码—DES 70年代末, 公钥密码学问世直到今天,我们使用的密码学系统参考文献:《密码传奇-从军事隐语到电子芯片》上海译文出版社2.2 序列密码流密码(也称序列密码):将被加密的消息m 分成连续的符号(一般为比特串),m=m 1m 2m 3……;然后使用密钥流k=k 1k 2k 3……中的第i 个元素k i 对m的第i 个元素m i 执行加密变换,i =1,2,3,……;所有的加密输出连接在一起就构成了对m 执行加密后的密文。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2013-8-4 5
2.2线性反馈移位寄存器
2013-8-4
6
反馈移位寄存器
状态:每一时刻的状态对应于GF(2)上的一个n维向量 (a1,a2,…,an) ,ai是第i级存储器的内容。共有2n种可能的状态。 反馈函数f(a1,a2,…,an):n元布尔函数,即n个变元a1,a2,…,an 可以独立地取0和1这两个可能的值,函数中的运算有逻辑与、 逻辑或、逻辑补等运算。 工作原理:当第i个移位时钟脉冲到来时,每一级存储器ai都将其内容 向下一级ai-1传递,并根据寄存器此时的状态计算f(a1,a2,…,an),作为 an+1。(输出-计算-移位-反馈)
2.3线性移位寄存器的特征多项式与序列周期
n级线性移位寄存器的输出序列满足递推关系
an+k=c1an+k-1 c2an+k-2 … cnak 用一个一元高次多项式表示 P(x)=1+c1x+…+cn-1xn-1+cnxn
称这个多项式为LFSR的特征多项式(连接多 项式)
2013-8-4 11
第2章 流密码
2.1 2.2 2.3 2.4 2.5 2.6 流密码的基本概念 线性反馈移位寄存器 线性移位寄存器的一元多项式表示 m序列的伪随机性 m序列密码的破译 非线性序列
1
2013-8-4
2.1 流密码的基本概念
流密码的基本思想 y=y0y1y2…=Ez0(x0)Ez1(x1)Ez2(x2)…。 密钥流z=z0z1…,明文串x=x0x1x2…: 密钥流由密钥流发生器f产生:zi=f(k,σi), σi是加密器中的记忆元件(存储器)在时刻i的状态, f是由密钥k和σi产生的函数。
2013-8-4
R(1)=R(2)=….=-1/7
15
Golomb随机性假设-PN序列
①在序列一个周期内,0与1出现个数相差至多为1; (0和1出现概率基本相同) ②长为l的游程占1/2l,在等长的游程中,“0”游 程和“1”游程个数相等或至多差一个。 (0和1在各位置上出现概率基本相同) ③异相自相关函数是常数,与白噪声的自相关函数( 函数)相近 m序列满足Golomb的三 条伪随机假设。 (序列平移不能提供更多信息) PN序列可用于通信中同步序列、码分多址(CDMA)、 导航中多基站码、雷达测距码等。PN序列虽与白噪 声序列相似,但远还不能满足密码体制要求。
线性反馈移位寄存器 实现简单、速度快、 理论成熟, 是构造密 钥流生成器的最重要 GF(2)上的n级线性反馈移位寄存器 的部件。
2013-8-4 8
例下图是一个5级线性反馈移位寄存器,其初始状态为 (a5,a4,a3, a2, a1 )=(1,1, 0,0,1)
反馈函数f(a1,a2,a3,a4,a5)=a4 + a1
(a5,a4,a3,a2,a1) 11001 01100 输出 1 0 01011 00101 10010 1 1 0
10110
0
01001
1
输出序列为满足递推关系ak+5=ak+3+ ak
周期31
1001101001000010101110110001111100110…
C2=1
C5=1
LFSR反馈函数 f(a1,a2,a3,a4,a5)=C2a4+ C5a1 定义LFSR特征多项式(连接多项式) P(x)=1+x2+x5
序列周期
a3
a2 +
a1
特征多项式
x3+x2+x+1
多项式周期 4 输出序列 ak+3=ak+ak+1+ak+2
10101010…
x3+1 3
ak+3=ak
101101… 3
序列周期
2
m序列的伪随机性
随机性:如果密钥流是周期的,要完全做到随机性是困难的。 游程:设{ai}=(a1a2a3…)为0、1序列,例如00110111, 其前两个数字是00,称为0的2游程;接着是11,是1的2游 程;再下来是0的1游程和1的3游程。 自相关函数:R(τ)=(1/T)∑k=1T-1 (-1)ak(-1)ak+τ, 序列向后 平移τ位,0≤τ≤T-1定义中的和式表示序列{ai}与{ai+τ}在 一个周期内对应位相同的位数与对应位不同的位数之差。当 τ=0时,R(τ)=1;当τ≠0时,称R(τ)为异相自相关函数。 10100111010

对线性移位寄存器序列进行非线性组合

2013-8-4
25
非线性组合
密钥流生成器
驱动子系统
一个或多个LFSR来实现
非线性组合子系统
用非线性组合函数F来实现
生成序列评价
周期极大化 线性复杂度
最短LFSR级数
极小特征多项式:最短LFSR的特征多项式
2013-8-4 26
2.6.2 J-K触发器

2013-8-4
0110011111 1101001000 1011010111

1011010111 1101001000 0110011111
4
2.1.3 密钥流产生器
状态转移函数 υ:σi→σi+1 输出函数 ψ:σi→zi,
密钥流发生器f: zi=f(k,σi)
目前最为流行和实用的密钥流产生器是线性反馈移位寄存器。
1
a6
a7 a8 a9 a10 c5 c4 c3 c2 c1
0
1 0 0 0 c5 c4 c3 c2 c1
1 1 0 1 0 1 0 1 0 0 0 1 0 0 1 1 0 0 1 0 0 0 1 0 0
0 1 c5 c4 c3 c2 c1 0 1 0 0 0 0 0 1
Sm l2 Sm1 l3 Sm 2 lm S1 0
Sm lm S1 lm1S2 l2 Sm1 l j 1Sm j
j 1 m 1
设序列{ai}满足线性递推关系:
ah1 0 1 0 0 ah ah 2 0 0 1 0 ah 1 a c c c c a 1 h n 1 h n n n 1 n 2 Sh+1=M· h S
2013-8-4
17
2.4 m序列的伪随机性
定理 m序列满足Golomb的三条伪随机假设。
m序列否满足密码要求?
① n级m序列的周期为2n-1,n大,周期指数地加大,
例如n=166时,p=1050(9.353610465 ×1049)。 ② 只要知道n次本原多项式,m序列极易生成。
③ m序列极不安全,只要泄露2n位连续数字,就可
由于X可逆
n级LFSR
cn cn 1 c1 an 1 an 2 a2 n X 1
2013-8-4
限制了其在密码学中的应用
19
序列递推关系:
ah n c1ah n1 c2 ah n2 cn ah
an1
an 2 a2 n cn cn 1 c1 a1 a2 an a2 a3 an 1 a a a n n 1 2 n 1

序列为m序列的充要条件特征多项式为本原多项式。
2013-8-4 12
初始101a3 +来自a2a1a3
a2 +
a1
特征多项式
x3+x+1 7
多项式周期
输出序列
x3+x2+1 7
ak+3=ak+ak+2
7
+
ak+3=ak+ak+1
10111001011… 7
a3 a2 a1
10100111010…101001 11010…
2013-8-4
2
加解密变换的选取

二元加法流密码 加密变换可表示为yi=zi xi。
2013-8-4
3
流加密举例
11010010000101 01100111111100
10110101111001 11010010000101 01100111111100
10110101111001
序列周期

序列周期 使对所有k,ak+r=ak 成立的的最小整数r 多项式的周期使f(x)除尽xp-1的最小整数p的取值。 序列的周期r与特征多项式的周期p密切相关。(r/p) 特征多项式是n次既约多项式周期为p ,则生成序列的 周期为p。 输出序列最大周期为2n-1。 不可约多项式最大周期达到2n-1。 m序列 本原多项式
1 0 0 1 0 0 1 0 0 0 0 1 1 0 11 0 11 0
c5
c4 c3 c2 c1 1 0 0 1 0
ak 5 c5 ak c2 ak 3 ak ak 3
2.6 非线性序列

非线性移位寄存器序列

f(a1,a2,a3)=a1a2+a3 输出序列10111011....,周期为4. 非线性移位寄存器研究困难, 对线性移位寄存器研究充分。
2013-8-4 7
线性反馈移位寄存器LFSR
线性反馈移位寄存器LFSR(linear feedback shift register):反馈函数f(a1,a2,…,an)是线性函数. f(a1,a2,…,an)=cna1cn-1a2…c1an 输出序列an+1 其中常数ci=0或1,是模2加法。 ci=0或1可用开关的断开和闭合来实现,
a1 a2 a3 a4 a 5 a2 a3 a4 a5 a3 a4 a5 a6 a4 a5 a6 a7 a5 a6 a7 a8 a6 a7 a8 a9
相关文档
最新文档