密码学课件第2章.ppt

  1. 1、本文档共94页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

第2章流密码2.1流密码的基本概念2.2线性反馈移位寄存器2.3线性移位寄存器的一元多项式表示2.4m序列的伪随机性2.5m序列密码的破译2.6非线性序列习题2.1流密码的基本概念流密码的基本思想:密钥:k产生一个密钥流:z=z0z1…,明文串:x=x0x1x2…加密:y=y0y1y2…=Ez0(x0)Ez1(x1)Ez2(x2)…。密钥流发生器f:zi=f(k,σi),σi是加密器中的记忆元件(存储器)在时刻i的状态,f是由密钥k和σi产生的函数。分组密码与流密码的区别就在于有无记忆性 流密码的滚动密钥z0=f(k,σ0)由函数f、密钥k和指定的初态σ0完全确定。 此后,由于输入加密器的明文可能影响加密器中内部记忆元件的存储状态,σi(i0)可能依赖于k,σ0,x0,x1,…,xi-1等参数。图2.1分组密码和流密码的比较2.1.1同步流密码流密码:同步流密码和自同步流密码 σi独立于明文字符的叫做同步流密码,否则叫做自同步流密码。 在同步流密码中,由于zi=f(k,σi)与明文字符无关,因而此时密文字符yi=Ezi(xi)也不依赖于此前的明文字符。因此,可将同步流密码的加密器分成密钥流产生器和加密变换器两个部分。图2.2同步流密码体制模型图2.3加法流密码体制模型 一次一密密码是加法流密码的原型。事实上,如果(即密钥用作滚动密钥流),则加法流密码就退化成一次一密密码。 实际使用中,密码设计者的最大愿望是设计出一个滚动密钥生成器,使得密钥经其扩展成的密钥流序列具有如下性质:极大的周期、良好的统计特性、抗线性分析、抗统计分析。2.1.2有限状态自动机 有限状态自动机是具有离散输入和输出(输入集和输出集均有限)的一种数学模型,由以下3部分组成:①有限状态集S={si|i=1,2,…,l}。②有限输入字符集A1={A(1)j|j=1,2,…,m}和有限输出字符集A2={A(2)k|k=1,2,…,n}。③转移函数A(2)k=f1(si,A(1)j),sh=f2(si,A(1)j)即在状态为si,输入为A(1)j时,输出为A(2)k,而状态转移为sh。 有限状态自动机可用有向图表示,称为转移图。 转移图的顶点对应于自动机的状态,若状态si在输入A(1)i时转为状态sj,且输出一字符A(2)j,则在转移图中,从状态si到状态sj有一条标有(A(1)i,A(2)j)的弧线图2.4有限状态自动机的转移图若输入序列为A(1)1A(1)2A(1)1A(1)3A(1)3A(1)1,初始状态为s1,则得到状态序列s1s2s2s3s2s1s2输出字符序列A(2)1A(2)1A(2)2A(2)1A(2)3A(2)12.1.3密钥流产生器密钥流产生器:参数为k的有限状态自动机,一个输出符号集Z、一个状态集∑、两个函数φ和ψ以及一个初始状态σ0组成。状态转移函数φ:σi→σi+1,将当前状态σi变为一个新状态σi+1,输出函数ψ:σi→zi,当前状态σi变为输出符号集中的一个元素zi。图2.5作为有限状态自动机的密钥流生成器 关键:φ和ψ,使得输出序列z满足密钥流序列z应满足的几个条件,并且要求在设备上是节省的和容易实现的。为了实现这一目标,必须采用非线性函数。 采用线性的φ和非线性的ψ时,将能够进行深入的分析并可以得到好的生成器。 可将这类生成器分成驱动部分和非线性组合部分. 驱动部分控制生成器的状态转移,并为非线性组合部分提供统计性能好的序列; 非线性组合部分要利用这些序列组合出满足要求的密钥流序列。图2.6密钥流生成器的分解图2.7常见的两种密钥流产生器2.2线性反馈移位寄存器移位寄存器是流密码产生密钥流的一个主要组成部分。GF(2)上一个n级反馈移位寄存器由n个二元存储器与一个反馈函数f(a1,a2,…,an)组成,如图2.8所示。图2.8GF(2)上的n级反馈移位寄存器 每一存储器称为移位寄存器的一级,在任一时刻,这些级的内容构成该反馈移位寄存器的状态,每一状态对应于GF(2)上的一个n维向量,共有2n种可能的状态。每一时刻的状态可用n长序列a1,a2,…,an或n维向量(a1,a2,…,an)表示,其中ai是第i级存储器的内容。 初始状态由用户确定, 当第i个移位时钟脉冲到来

您可能关注的文档

文档评论(0)

优美的文学 + 关注
实名认证
内容提供者

优美的文学优美的文学优美的文学优美的文学优美的文学

1亿VIP精品文档

相关文档