您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 【安全课件】第13讲—序列密码
序列密码量子密码研究室王滨2005年3月28日主要内容•序列密码概述•布尔函数•线性反馈移存器序列密码概述•序列密码的起源•序列密码的加解密思想•序列密码的基本原理序列密码的基本原理由少量的随机密钥,通过移位寄存器以及非线性变换等多层编码环节,产生变化量大、复杂度高、随机性好的伪随机乱数,利用简单的密码法把它与明文数据串进行结合,从而实现对明文数据的加密。预备知识:布尔函数一般地,我们把n元布尔函数定义为如下映射:记为,其中22:FFfn)(xf1,0,)(,),,,(22221FFxfFxxxxnn布尔函数是研究数字逻辑电路的重要数学工具,在序列密码、分组密码和公钥密码中,布尔函数都有重要的应用。特别在序列密码中,布尔函数是重要的数学工具之一。1、真值表例如),()(21xxfxfxf(x)001101010110小项表示实际上是布尔代数表达方式,即逻辑表达方式,此方法常用于布尔函数的设计实现。2、小项表示上例的小项表示为1212()fxxxxx3、多项式表示因为,将小项表示中的逻辑非的形式换掉即得多项式表示。xx112()fxxx§5.1线性反馈移存器一、线性反馈移存器简介(一)基本概念定义:反馈移存器的反馈逻辑电路可用一布尔函数来表示,若对应的布尔函数是线性函数,则称该反馈移存器为线性反馈移存器,否则称为非线性反馈移存器。1342123图1、线性反馈移位寄存器图2、非线性反馈移位寄存器(二)、工作原理假设在j时刻其内部状态为:),,,(21rjjjaaa在j+1时刻其内部状态变为:),,,(11rjjjaaa其中:),,,(21rjjjjaaafa此时的输出为j时刻的最高级:rja132第7时刻001第0时刻001第1时刻100第2时刻110第3时刻111第4时刻011第5时刻101第6时刻010产生序列为:1001110……和一个全零序列。(三)、表示方法1、线性递推式表示一个r级线性移存器的线性递推式表示为:)(2211rnacacacarnrnnn)4(432naaaannnnan-1an-2an-3an-4an2、反馈多项式表示x1x2x3x4一个r级线性移存器的反馈多项式表示为:1)(111xcxcxcxfrrrr1)(234xxxxf(四)、序列和周期一般地,一个移存器序列表示为:iaaaaa210对于序列,若存在整数p使得对任意正整数k有成立,称满足该式的最小正整数p为序列的周期。iaaaaa210pkkaar级线性反馈移存器的最长周期:,能达到最长周期的线性移存器序列称为m序列。12r在密码学中,我们希望参与变换的序列周期越长越好,因此对线性反馈移存器我们更感兴趣的是能达到最长周期的序列,即m序列。(五)、实例(画出下列个移存器的逻辑框图,写出相应的线性递推式,并讨论由它们所产生的序列)1、不可约多项式2、可约多项式3、本原多项式4、环式移存器1)(234xxxxxf)1)(1(1)(334xxxxxxf1)(4xxxf1)(4xxf答案:1、该移存器产生三类周期相同(全为5)的序列及一个全零序列。2、该移存器产生五类周期分别为6、3、3、2、1的序列及一个全零序列。3、该移存器产生周期为15的m序列及一个全零序列。(六)、反馈多项式的含义一个r级线性移存器的线性递推式表示为:)(2211rnacacacarnrnnn引进迟延算子D:IDaaDaDaikkikk01,,递推式可改写为:02210nrrnnnaDcaDcDacIac将上式中的D用符号x代替,引入多项式:1)(111xcxcxcxfrrrr从而有:)(,0)(rnaDfn那么对于序列a,0)(aDf即:0)(2210nrraDcDcDcc10c集合1:;是以为反馈多项式的移存器产生的所有可能序列的集合。}0)(|{)(aDfafG)(xf集合2:;是所有能产生序列的多项式的集合。}0)(|)({)(aDfxfaA对于该集合有以下性质:(1)若,则)()(),(aAxgxf)(),()()(gfaAxgxf(2)若,则][)(),()(xFxgaAxf)()()(aAxgxf(七)、移存器的计数1、r次本原多项式:2、r次不可约多项式:3、r次非本原不可约多项式:4、r次可约多项式:rJrr/)12(rddrdrrI|)/(21rrrJIKrrrIL12
本文标题:【安全课件】第13讲—序列密码
链接地址:https://www.777doc.com/doc-1251419 .html