- 1、本文档共70页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第二章流密码-zhp资料.ppt
* 钟控序列生成器 钟控生成器(Clock controlled generator)是由一个或几个FSR输出序列,控制另一个FSR的时钟。 走停生成器(Stop-and-Go generator) 当LFSR1输出1时,时钟脉冲通过与门使LFSR2进行一次移位,从而生成下一位; 当LFSR1输出0,时钟脉冲无法通过与门使LFSR2移位(走),从而LFSR2重复输出前一位(停) LFSR1 LFSR2 * 钟控序列生成器 钟控序列的周期 设LFSR1输出序列{ak}, 周期为2m-1,LFSR2输出序列{bk}, 周期为2n-1,则钟控序列{ck}的周期为: (2m-1)(2n-1). 钟控序列 {ck}的线性复杂度为:n(2m-1). * 钟控序列生成器 例2.6 设LFSR1为一个3级m-序列,其特征多项式为:f1(x)=1+x+x3,取初始值为a0=a1=a2=1, 则输出序列{ak}=1110100, 周期为23?1=7. 设LFSR2为一个3级m-序列,其特征多项式为:f1(x)=1+x2+x3,取初始值为b0=b1=b2=1, 则输出序列{bk}=1110010, 周期为23-1=7. 钟控序列: {ck}=1110 0000 1011 1111 0001 1101 1111 1001 1000 1111 0000 1001 1… 周期为:(2m?1)(2n?1)=(23?1)(23?1)=49. 线性复杂度为:n(2m?1)=3(23?1)=21. 2.6.4 钟控序列生成器 钟控序列最基本的模型是用一个LFSR控制另外一个LFSR的移位时钟脉冲,如图2.17所示。 图2.17 最简单的钟控序列生成器 假设LFSR1和LFSR2分别输出序列{ak}和{bk},其周期分别为p1和p2。当LFSR1输出1时,移位时钟脉冲通过与门使LFSR2进行一次移位,从而生成下一位。当LFSR1输出0时,移位时钟脉冲无法通过与门影响LFSR2。因此LFSR2重复输出前一位。假设钟控序列{ck}的周期为p,可得如下关系: 其中 又设{ak}和{bk}的极小特征多项式分别为GF(2)上的m和n次本原多项式f1(x)和f2(x),且m|n。 因此,p1=2m-1, p2=2n-1。又知w1=2m-1, 因此 gcd(w1, p2)=1,所以p=p1p2=(2m-1)(2n-1)。 此外,也可推导出{ck}的线性复杂度为n(2m-1),极 小特征多项式为 例2.8 设LFSR1为3级m序列生成器,其特征多项式为f1(x)=1+x+x3。设初态为a0=a1=a2=1,于是输出序列为{ak}=1,1,1,0,1,0,0,…。 又设LFSR2为3级m序列生成器,且记其状态向量为σk,则在图2.17的构造下σk的变化情况如下: {ck}的周期为(23-1)2=49,在它的一个周期内,每个σk恰好出现7次。 设f2(x)=1+x2+x3为LFSR2的特征多项式,且初态为b0=b1=b2=1,则{bk}=1,1,1,0,0,1,0,…。 由σk的变化情况得 {ck}=1,1,1,0,0,0,0,0, 1,0,1,1,1,1,1, 1,0,0,0,1,1,1, 0,1,1,1,1,1,1, 0,0,1,1,0,0,0, 1,1,1,1,0,0,0, 0,1,0,0,1,1,… {ck}的极小特征多项式为1+x14 + x21,其线性复杂度为3·(23-1)=21,图2.18是其线性等价生成器。 图2.18 一个钟控序列的线性等价生成器 设计一个性能良好的序列密码是一项十分困难的任务。最基本的设计原则是“密钥流生成器的不可预测性”,它可分解为下述基本原则: ① 长周期。 ② 高线性复杂度。 ③ 统计性能良好。 ④ 足够的“混乱”。 ⑤ 足够的“扩散”。 ⑥ 抵抗不同形式的攻击。 * 2.5 流密码算法 RC4是由麻省理工学院Ron Rivest开发的可变密钥长度的流密码,是世界上普遍使用的流密码之一,应用于Microsoft Windows,Lotus Notes SSL等。 基本思想:对n位长的字,它总共有关2n个可能的内部置换状态S。,
文档评论(0)