计算机网络安全技术第三章精选PPT.ppt

上传人:石*** 文档编号:42767862 上传时间:2022-09-16 格式:PPT 页数:70 大小:2.88MB
返回 下载 相关 举报
计算机网络安全技术第三章精选PPT.ppt_第1页
第1页 / 共70页
计算机网络安全技术第三章精选PPT.ppt_第2页
第2页 / 共70页
点击查看更多>>
资源描述

《计算机网络安全技术第三章精选PPT.ppt》由会员分享,可在线阅读,更多相关《计算机网络安全技术第三章精选PPT.ppt(70页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、计算机网络安全技术第三章第1页,此课件共70页哦密码按目的来分,可分为密码编码学和密码分析学。密码分析学的基本任务是研究如何破译加密的消息或者伪造消息;密码编码学的基本目的就是要伪装消息,就是要对给定的有意义的数据进行可逆的数学变换,将其变为表面上杂乱无章的数据,使得只有合法的接收者才能恢复原来有意义的数据,而其余任何人都不能恢复原来的数据。变换前有意义的数据称为明文,所有可能的明文组成的集合称为明文空间。变换后的数据称为密文,所有可能的密文组成的集合称为密文空间。对明文数据进行可逆变换的过程称为加密过程,其变换称为加密变换,加密由一个参数k1控制,这个参数称为加密密钥。恢复明文的过程称为解密

2、过程,其变换称为解密变换,它由一个参数k2控制,这个参数称为解密密钥。如果加密密钥k1与解密密钥k2是相同的(或者从k1很容易推导出k2),统称为k,这种密码体制称为对称密码体制,这是传统的加密体制。如果加密密钥k1与解密密钥k2不相同,则称为非对称密码体制,非对称密码体制也就是公开密钥密码体制。第2页,此课件共70页哦32保密系统的Shannon模型1保密系统的Shannon模型图3.1是保密系统的Shannon模型,n元数组xn=(x1,x2,xn)是明文,n元数组yn=(y1,y2,yn)是在公开信道上传送的密文,也就说任何人都可得到这些密文,n元数组kn=(k1,k2,kn)是通过安全

3、信道传送给接收者的密钥,敌方密码分析者无法获得该密钥。加密器的任务就是对明文m施以加密变换得到密文cc=Ek(m)解密器的任务就是对所接受到的密文实行解密变换获得明文m=Dk(c)=Dk(Ek(m)由于加密变换、解密变换是依赖于密钥k的一对可逆的数学变换,因此m=m从而完成保密通信。第3页,此课件共70页哦密码分析者发送者加密器EK解密器DK接收者密钥源图3.1保密系统的Shannon模型第4页,此课件共70页哦例31一次一密密码体制。设明文是一串二进制数据:m=(0110010011)2,设k也是一串同样长度的二进制数据:k=(0111001001)2。在A,B两方通信前,A首先通过安全信道

4、(比如信使)把密钥送给B,现在A要把明文m通过公开信道送给B,A先对m施行加密变换c=Ek(m)=mk=(0110010011)2(0111001001)2=(0001011010)2向量的模2加是指每个向量的分量进行模2加。B收到c后,用事先A传送给它的密钥k进行解密。m=Dk(c)=ck=(0001011010)2(0111001001)2=(0110010011)2=m从而B获得明文m。而任何获得密文c的密码分析者由于没有密钥k,因此也就无法获得正确的明文。第5页,此课件共70页哦1理想保密与完善保密从上面Shannon模型可以看出,保密的关键是密钥。任何人只要获得通信密钥,就能正确地恢

5、复明文。设明文xn=(x1,x2,xn),密文为yn=(y1,y2,yn),密钥为k,如果对所有的n有I(xn;yn)=0,即对所有n,xn与yn统计独立,从yn得不到任何关于xn的信息,这种密码体制是完善保密的。前面介绍的一次一密的密码体制由于每一次的密文与其他密钥无关,以而任何时候得到yn与其他xn无关,所以是完善保密的。如果0I(xn;yn)H(xn)即yn包含有xn的信息,这时可以推得H(kyn)0,即无论n有多大,已知密文yn,k还是不确定的。没有确定的密钥就不能正确地解密,恢复明文。这种密码体制称为理想保密。第6页,此课件共70页哦3.3 古典加密技术虽然按照近代密码学的观点来看,

6、许多传统古典密码很不安全,或者说很容易破译。由于编制古典密码的基本方法对于编制近代密码仍然有效。本节将介绍几种著名的古典密码。几乎所有的传统加密用到两种基本技巧:代换和置换。代换法是将明文字母替换成其他字母、数字和符号的方法。若把明文看作是二进制序列,则代换就是用密文位串来代替明文位串。下面分别介绍则两种密码。第7页,此课件共70页哦1 1 代换密码代换密码11)凯撒(Caesar)密码这是最早的代换密码。凯撒密码是每一字母向前推移k位。例如k5便有明文和密文对应关系如下:明文:a bc d e f g h I j k l m n o密文:F GH I J K L M N O P Q R S

7、T明文:p qr s tu v wx y z密文:U VW X Y Z A B C D E例如:明文:day after day密文:IFD FKYJW IFD不同的k可以得到不同的密文。如果让每一个字母等价一个数字,如下所示:第8页,此课件共70页哦abcdefghijklm123456789101112 13nopqrstuvwxyz14 15 16 17 18 19 20 21 22 23 24 25 26则凯撒密码变换实际上是c(m+k)mod(26)其中m是明文对应的数据,c是与明文对应的密文数据,k是加密用的参数。也称为密钥。例如network security对应于数据序列 14

8、 5 20 23 15 18 11 19 5 3 21 18 9 20 25k3时得密文序列 17 8 23 26 18 21 14 22 8 6 24 21 12 23 2对应的密文为Q H W Z R U N V H F X U L W B第9页,此课件共70页哦2)单表代换密码单表代换又称为简单代替密码。只需使用一个密文字母表,并且用密文字母表中的一个字母来代替一个明文字母表中的一个字母。设A和B分别为含n个字母的明文字母表和明文字母表:A=a0,a1,an B=b0,b1,bn 定义一个由A到B的一一映射:f:ABf(ai)=bi设明文M(a0,a1,an-1),则C=(f(a0),f

9、(a1),f(an-1)。可见,简单代替密码的密钥就是映射函数f或密文字母表B。第10页,此课件共70页哦2 置换密码把明文中的字母重新排列,字母本身不变,但其位置发生改变,这样变换的密码称为置换密码。最简单的置换密码是把明文中的字母顺序倒过来,然后截成固定长度的字母组作为密文。例:明文:NETWORK SECURITY密文:YTIRUCES KROWTEN仅仅采用倒序的方法,其抗攻击性的能力显得很弱。另一种方法是将明文按某一顺序排成一个矩阵,然后按另一顺序选出矩阵中的字母以形成密文,最后分成固定长度的字母组作为密文。第11页,此课件共70页哦例如:明文:CRYPTOGRAPHY AND NE

10、TWORK SECURITY矩阵:CRYPTO 选出顺序:按列选出 GRAPHY ANDNET WORKSE CURITY密文:CGAWC RRNNOU YADRR PPNKI THEST OYTEY如果矩阵的行列数量或者选出列的顺序发生变换,则密文将发生改变。如果将选出列的顺序作为密钥,则密文将随着密钥的改变而发生变化。置换密码比较简单,对于已知明文攻击,很容易被攻破。但是,将置换技术同其他的技术结合起来,便能产生抗攻击性能非常好的密码算法。当前的许多密码算法都采用了置换技术。第12页,此课件共70页哦34序列密码密码按加密方式不同可以分为序列密码与分组密码,序列密码是逐个字加密的,而分组密

11、码是按字块加密的。1序列密码的工作原理序列密码的工作原理非常直观。假设m=m0m1m2是一个待加密的明文序列(一般是二进制0,1序列),k=k0k1k2是一个与明文序列等长的二元(伪)随机序列,称为密钥序列,收发两端都事先知道密钥序列的内容,于是在序列密码中,用密钥序列k对明文序列m进行加密的过程是将k和m对应的分量进行简单的模2加,得到加密后的密文序列c=c0c1c2即ci(ki+mi)(mod2)。在接收端,合法的接收者的解密过程就是将密文序列c和密钥序列的对应分量进行简单的模2加。于是原来的明文序列就恢复出来了,因为mi(ki+ci)(mod2)第13页,此课件共70页哦其原理如图3.2

12、和3.3所示。明文序列m=m0m1m2密文序列c=c0c1c2密钥序列k=k0k1k2图3.2序列密码的加密过程第14页,此课件共70页哦密文序列c=c0c1c2明文序列m=m0m1m2密钥序列k=k0k1k2图3.3序列密码的解密过程第15页,此课件共70页哦2线性位移寄存器(LFSR)从保密系统的Shannon理论和序列密码的工作原理可知,序列密码保密的关键是如何高效地产生可靠的二元随机序列作为密钥序列,由于目前还没有有效地产生二元随机序列的实用方法,于是,一般都用伪随机二元序列作为密钥序列。所谓伪随机序列就是貌似随机序列的序列,或者说很像随机序列的序列。线性移位寄存器就是能过产生一种伪随

13、机序列的逻辑电路,它的工作原理如图3.4所示。图3.4中,f(aj-n,aj-n+1,aj-1)=c0aj-1c1aj-1cn-1aj-n是线性移位寄存器的反馈函数,或称反馈逻辑。下面的小方框代表寄存器,每个寄存器有两个状态:0或1。N称为线性移位寄存器的级数。当一个时间脉冲来临时,最左边一个寄存器的值输出,其余依次往左移动一位,最右边的寄存器则接收反馈函数计算得到的值。当不断的有时间脉冲来临时,最左边输出一串二元伪随机序列a0a1a2。第16页,此课件共70页哦f(aj-n,aj-n+1,aj-1)输出aj-1aj-2aj-3aj-n+1aj-n时间脉冲第17页,此课件共70页哦例32考虑图

14、3.5的三级线性反馈移位寄存器。f(aj-3,aj-2,aj-1)=c0aj-3c1aj-2c2aj-1=aj-1aj-1f(aj-3,aj-2,aj-1)c0=1c1=0c2=1aj-3aj-2aj-1时间脉冲图3.53级线性移位寄存器第18页,此课件共70页哦当j=3时,取初值a0=0,a1=0,a2=1;当j=4时,一个时间脉冲到来,a0=0输出,a1=0移到最左边一个寄存器,a2=1移到第二寄存器,a3=f(a0,a1,a2)=a0a2=1送到第三个寄存器;当j=5,6,即不断的有时间脉冲来临时,最左边就输出一串伪随机序列:001110100。第19页,此课件共70页哦3序列码的设计虽

15、然线性移位寄存器能够快速产生伪随机特性比较好的二元随机序列,但在实用中它还不能直接用作序列密码密钥序列,这主要是因为它的高度可以预测。因此,必须对线性移位寄存器输出序列进行适当的处理,这就是序列密码的设计问题。1)非线性组合序列密码非线性组合序列密码的工作原理如图3.6所示。图3.6中左边的n个小方框代表n个线性反馈移位寄存器,分别输出序列a1i,ani。右边大方框代表一个n元变量的非线性组合函数f(x1,x2,xn),它以n个线性反馈移位寄存器的输出序列为变量bi=f(a1i,a2i,ani),i=1,2,这时序列bi就可作为密钥序列了。第20页,此课件共70页哦a1iLFSR1非a1i线L

16、FSR2性组密a1i合钥LFSRn器流bi明文密文图3.6非线性组合序列密码第21页,此课件共70页哦2)馈序列密码和钟控序列密码除了前面介绍的非线性组合序列密码外,还有前馈序列密码和钟控序列密码,他们的工作原理同非线性组合密码比较类似,这里仅列出其工作原理框图,如图3.7和图3.8所示。LFSR2bi-cn-cn-1-c1LFSR1采样函数Saiai+1ai+n-1密钥序列ui非线性前馈函数f明文m密文c密钥序列bi图3.8中控序列密码明文序列m密文序列c图3.7前馈序列密码第22页,此课件共70页哦1分组密码的工作原理分组密码的工作原理不像序列密码那用直观,它首先将明文分成相同长度的比特块

17、,然后分别对每个比特块加密产生一串密文块。解密时,对每个密文块进行解密得到相应的明文比特块,将所有的明文块合并起来即得到明文。如图3.9所示。1)数据加密标准数据加密标准,DES(DataEncryptionStandard),它是分组密码的一个典型代表。1974年,美国国家标准局(NBS)向全社会公开征集一种用于政府非机密数据的加密算法。IBM公司提出了一种称为LUCIFER的算法,在此基础上,经过一段时间的修改与简化,美国国家标准局于1977年正式颁布了这个算法,称为数据加密算法DES,用作政府及商业部门的非机密数据加密标准。第23页,此课件共70页哦密钥k明文m=m0m1m2密文c=c0

18、c1c2Ek密钥k密文c=c0c1c2明文m=m0m1m2Dk图3.9分组密码的工作原理第24页,此课件共70页哦(1)DES的结构图DES用56位密钥加密64位明文,输出64位密文,它的加密过程如图3.10所示。设输入64比特明文,先对输入的64比特明文进入初始置换IP(见表3.1),置换后明文58比特变为第一位,第50比特变为第二位,等等,将新得到的64比特左边的32位记为L0,右边的32比特记为R0。经16圈处理后,在经逆初始置换IP-1(见表3.2)产生最后的64比特输出密文。第25页,此课件共70页哦 表表3.1 初始置换初始置换IP 表表3.2 逆初始置换逆初始置换IP-15850

19、423426181024084816562464326052443628201243974715552363316254463830221463864614542262306456484032241683754513532161295749413325179136444125220602859514335271911335343115119592761534537292113534242105018582663554739312315733141949175725第26页,此课件共70页哦加密过程可用数学公式表示如下:下面对加密过程的函数f作详细地描述。首先将Ri-1的32比特膨胀为48比特的

20、向量,膨胀方法见比特选择表E(见表3.3),然后将这48比特向量与48比特向量Ki(子密钥)进行模2加,得出一个48比特向量,将最后的48比特向量分成8部分,每组6比特分别输出到8个S盒S1,S2,S8中。每个S盒是一个4行、16列的表。盒中的每一项都是4比特的数。S盒的6比特输入确定了其对应的输出在那一行、那一列。表3.5表明了8个S盒的结构。第27页,此课件共70页哦64比特输入初始置换IPL0R0K1 fL1=R0R1=L0f(R0,K1)K2f第28页,此课件共70页哦L2=R1R2=L1f(R1,K2)L15=R14R15=L14f(R14,K15)K16fR16=L15f(R15,

21、K16)L16=R15逆初始置换IP-164比特输出图3.10DES加密算法第29页,此课件共70页哦表表3.3 比特选择表比特选择表E 表表3.4 置换置换P32123451672021456789291228178910111213115232612131415161751831101617181920212824142021222324253227392425262728291913306282930313212211425第30页,此课件共70页哦最后所有S盒输出的32比特经置换P(见表3.4)后,形成函数f(Ri-1,Ki)的32比特输出(见图3.11)。Ri-1比特选择EkiS1S

22、2S3S4S5S6S7S8置换Pf(Ri-1,Ki)图3.11函数f(Ri-1,Ki)的计算第31页,此课件共70页哦表3.5S盒的结构012345678910111213141501441312151183106125907S11015741421311061211953824114813621115129731050315128249175113141006301518146113497213120510S213134715281412011069115201471110413158126932153138101315421167120514901009146315511312711428

23、S3113709346102851412111512136498153011121215101473110130698741514311521207131430691012851112415S4113811561503472121101492106901211713151314528433150610113894511127214第32页,此课件共70页哦02124171011685315130149S511411212471315015103986242111101378159125630143118127114213615091045301211015926801334147511S611

24、015427129561131401138291415528123704101131163432129515101114176081304112141508133129751061S711301174911014351221586214111312371410156805923611138141079501514231201328461511110931450127S8111513810374125611014922711419121420610131535832114741081315129035611第33页,此课件共70页哦(2)子密钥的产生实际上,K是长度为64的比特串,其中56比特是

25、密钥,8比特是奇偶校验位(为了检错),奇偶校验位分布在与8、16、64位置上。56位密钥经过置换选择1、循环左移、置换选择2等变换,产生16个子密钥,子密钥产生过程见图3.12。产生每个子密钥所需的循环左移见表3.6 表表3.6 循环左移位数表循环左移位数表圈i12345678910111213141516LS(i)1122222212222221第34页,此课件共70页哦KPC-1C0D0LS(1)LS(1)C1D1PC-2K1LS(2)LS(2)C2D2PC-2K2 LS(16)LS(16)C16D16PC-2K16图3.12子密钥产生的结构图第35页,此课件共70页哦置换选择1(PC-1

26、)规定C0的各位依次为密钥的第57,49,44,36位,D0的各位依次为密钥中的第63,55,12,4位,具体见表3.7。置换选择2从Ci和Di(其56位)中选择出一个48位子密钥Ki,其中Ki中的各位依次是Ci和Di中的14,17,29,32位。具体见表3.8。表表3.7 PC-1 表表3.8 PC-2574941332517914171124151585042342618328156211010259514335272319124268191136052443616727201326355473931231541523137475576254463830223040514533481466

27、153453729444939563453211352820124464250362932DES的解密与DES的加密一样,只不过是子密钥的顺序相反,:K16K1。第36页,此课件共70页哦(3)关于DES的实际应用虽然DES的描述是相当长的,但它能以硬件或软件的方式非常有效的实现。需完成的运算仍为比特异或。扩展函数E,S盒、置换IP和P以及K16K1的计算都能在一个固定的时间内通过查表(以软件或电路)来实现。DES的一个非常重要的应用是银行交易。在银行交易中使用了美国银行协会开发的标准。DES用于加密个人身份识别号(PIN)和通过自动取款机(ATM)进行的记账交易。票据交易所内部银行支付系统(

28、HIPS)用DES来鉴别每周的交易。第37页,此课件共70页哦2)DES的评价与改进(1)对DES的评价自从DES公布以来,它一直超越国界,成为国际商业保密通信和计算机通信的最常用的加密算法,二十多年以来,一直活跃在国际数据保密通信的舞台上,扮演着十分重要的角色。DES加密法的保密性到底如何,早在DES被正式公布为加密标准之前,就展开了热烈的讨论。由于目前无一个加密系统性能的统一标准和严格的理论,因此人们只能从一个加密系统抵抗现有解密手段的能力来评价他的好坏。自1975年以来,美国的许多机构、公司和学者,包括国家保密局(NSA)、NBS、IBM公司、BELL实验室和一大批著名的密码学专家都对D

29、ES进行了大量的研究和试验,对DES进行了全面考察,认为他的保密性良好。80年代中期,人们看到DES算法迭代次数少,密钥长度短,其代替函数Si中可能有不安全因素,因而曾有过不少批评。甚至有人还想取消他。第38页,此课件共70页哦1984年,美国国家安全局决定研制新的数据加密标准CCEP,但从发展趋势上来看,CCEP是按封闭原则管理的,应用范围有限,不再具有技术上的开放性和使用上的灵活性,因此受到金融界的强烈反对。由于反对呼声很高,美国政府不得不于1987年初废除了1984年签署的CCEP取代DES加密标准的命令。目前,已有DES的软件、硬件产品,他们在各种加密算法产品中占有很大比重。因而最具代

30、表性、影响力最大、应用最广泛。进入90年代以来,以色列密码学家Shamir等人提出了“差分分析法”,以后日本人提出“微分分析法”,1993和1994年的世界密码学大会又提出了“线性分析法”破译密码,使DES受到了严重的威胁。1997年6月17日晚美国盐城的MichaelSanders终于用一台速度为90MHz的奔腾机解出了DES的56位密钥,使DES算法受到历史上第一次严重打击,使它的安全性受到严重威胁。第39页,此课件共70页哦(2)DES算法的改进虽然DES算法存在一些潜在的弱点,但至今从未真正被攻克过。人们针对DES的不足对DES作了不少改进。例如增加密钥长度、扩大数据块或增多循环次数,

31、经常变换密钥等。首先,DES算法提出的几种工作模式具有不同的保密性能,使用时可以根据实际需要予以采用。DES加密时,有ECB、CBC和CFB三种工作模式。其中,ECB(ElectronieCodeBook)是数据块加密模式,每个数据块之间的加密是独立的。CBC(CipherBlockChaining)和CFB是数据流加密模式,且CBC模式采用带反馈的加密,其数据块之间的加密不再独立,加密后的密文前部分用来参与报文后面部分的加密,其保密和抗分析性能明显的优于ECB模式,应用广泛。其次,经常变换DES密钥,可以增强DES密文的保密强度。改进后的DES算法,使用公开密钥加密DES密钥,如使用RSA公

32、开密钥加密方法作为加固的工具。第40页,此课件共70页哦第三,对DES算法进行变换,例如,利用加密过程的随机因数,对DES的8个S盒进行置换;对明文按64位分组,并采用分组反馈链接式,或密码反馈模式,进行加密和解密;采用三重DES加密后解密技术等。三重DES加密是采用了把不同的DES密钥对数据连续加密三次,等于使用两个56位密钥对64位明文进行加密。密钥长度每增加一位,密钥总数就会翻一番。能有效的防止对密钥的穷尽搜索。其加密算法的具体步骤如下:(1)用密钥K1对64位明文进行DES加密。(2)对(1)加密的结果,用密钥K2进行DES解密。(3)对(2)的结果是用密钥K1,再进行DES加密。这个

33、加密过程称为EDE,即加密/解密/加密过程,其加密流程如图3.13所示。第41页,此课件共70页哦mDESDESDESccDES-1DES-1DES-1mk1k2k1k1k2k1图3.13三重DES加密算法框图图3.14三重DES解密过程三重DES加密的运算量是普通DES的3倍,加密时间也是DES的3倍,当K1=K2时,其加密效果与单次DES相同,其攻击的复杂度从O(Z56)增至O(Z112)。三重DES解密过程如图3.14所示。第42页,此课件共70页哦2IDEA数据加密DES数据加密标准的出现在近代密码学的历史上是一件大事,它即将走完自己发展历程,面临着更新与提高。近年来,分组密码新的算法

34、不断涌现,IDEA是其中的佼佼者。IDEA是InternationDataEnorypionAlgorithm的缩写,即国际数据加密算法,是由中国学者来学嘉博士与著名的密码学家JamasMassey于1990年联合提出的,后经修改于1992年完成。他的明文和密文都是64比特,但密钥长为128比特。加密和解密也是相同的,只是密钥各异。不论软件或硬件实现都不难。加密和解密速度都非常快。1)IDEA加密算法IDEA加密算法如图3.15所示。64比特的数据分成4个子块,每一字块16比特,令这4个子块为X1、X2、X3和X4作为迭代第一轮的输入,全部共8轮迭代,每轮迭代都是4个子块彼此间以16比特的子密

35、钥进行与或运算,modZ16作加法运算,mod(Z16+1)作乘法运算。任何一轮迭代第3和第4子块互换,每一轮迭代运算步骤如下:第43页,此课件共70页哦X1X2X3X4Z1(1)Z2(1)Z3(1)Z4(1)+Z5(1)+Z6(1)+Z1(9)Z2(9)+Z3(9)+Z4(9)Y1Y2Y3Y4第44页,此课件共70页哦(1)X1和第1个子密钥块作乘法运算。(2)X2和第2个子密钥块作加法运算。(3)X3和第3个子密钥块作加法运算。(4)X4和第4个子密钥块作乘法运算。(5)(1)和(3)的结果作与或运算。(6)(2)和(4)的结果作与或运算。(7)(5)的结果与第5子密钥块作乘法运算。(8)

36、(6)和(7)的结果作加法运算。(9)(8)的结果与第6个字密钥块作乘法运算。(10)(7)和(9)的结果作加法运算。(11)(1)和(9)结果作与或运算。(12)(3)和(9)的结果作与或运算。(13)(2)和(10)的结果作与或运算。(14)(4)和(10)的结果作与或运算。第45页,此课件共70页哦结果的输出为(11),(13),(12),(14)。除最后一轮外,第2和第3块交换。第8轮结束后,最后输出的变换有:(1)X1和第1子密钥块作乘法运算。(2)X2和第2子密钥块作加法运算。(3)X3和第3子密钥块作加法运算。(4)X4和第4子密钥块作乘法运算。子密钥块的产生过程也很容易,子密钥

37、块每轮6个,最后输出变换4个,共52个。首先将128比特的密钥分成8个子密钥,每个子密钥16比特,这8个子密钥正好是第一轮的6个和第2轮的前两个。将子密钥左旋转25比特,再将他们分成8个子密钥,前4个是第2轮的子密钥,后4个是第3轮的。将子密钥再旋转25比特,产生后8个子密钥。以此类推。直到算法结束。第46页,此课件共70页哦2)IDEA解密算法解密密钥和加密密钥的对应关系如表3.9所示。这里Z-1表示Zmod(Z16+1)乘法的逆。即Z Z-1=1-Z表示Zmod(Z16)加法的逆,即Z(-Z)=03)IDEA算法的保密强度IDEA的密钥长是DES的两倍,2128=340281038。而采用

38、强行攻击法对付IDEA将是对付用同样方法DES的264,即1.81019。当然,有许多科研单位和军事部门对IDEA进行攻击,单独没有成功,看起来是安全的,是很有希望的一种密码体制。第47页,此课件共70页哦表表 3.9 IDEA加密与解密密钥的对应关系加密与解密密钥的对应关系轮次加密子密钥块解密子密钥块1Z1(1)Z2(1)Z3(1)Z4(1)Z5(1)Z6(1)(Z1(9)-1-Z2(9)-Z3(9)(Z4(9)-1Z5(8)Z6(8)2Z1(2)Z2(2)Z3(2)Z4(2)Z5(2)Z6(2)(Z1(8)-1-Z2(8)-Z3(8)(Z4(8)-1Z5(7)Z6(7)3Z1(3)Z2(3

39、)Z3(3)Z4(3)Z5(3)Z6(3)(Z1(7)-1-Z2(7)-Z3(7)(Z4(7)-1Z5(6)Z6(6)4Z1(4)Z2(4)Z3(4)Z4(4)Z5(4)Z6(4)(Z1(6)-1-Z2(6)-Z3(6)(Z4(6)-1Z5(5)Z6(5)5Z1(5)Z2(5)Z3(5)Z4(5)Z5(5)Z6(5)(Z1(5)-1-Z2(5)-Z3(5)(Z4(5)-1Z5(4)Z6(4)6Z1(6)Z2(6)Z3(6)Z4(6)Z5(6)Z6(6)(Z1(4)-1-Z2(4)-Z3(4)(Z4(4)-1Z5(3)Z6(3)7Z1(7)Z2(7)Z3(7)Z4(7)Z5(7)Z6(7)(Z1

40、(3)-1-Z2(3)-Z3(3)(Z4(3)-1Z5(2)Z6(2)8Z1(8)Z2(8)Z3(8)Z4(8)Z5(8)Z6(8)(Z1(2)-1-Z2(2)-Z3(2)(Z4(2)-1Z5(1)Z6(1)输出变换Z1(9)Z2(9)Z3(9)Z4(9)(Z1(1)-1-Z2(1)-Z3(1)(Z4(1)-1第48页,此课件共70页哦3基于神经网络混沌序列的对称加密方法混沌神经网络模型最早是根据生物神经元的混沌特性于上世纪90年代由K.Aihara,T.Takabe和M.Toyoda等人首次提出来的,它具有非常丰富和复杂的非线性动力学特性,特别是它的混沌动力学特性,它不仅能产生无法预料的伪随

41、机序列轨迹,而且是一个非常复杂难解的NP问题;与以寄存器为基础的序列加密法相比,混沌神经网络在序列周期、随机统计性以及线性复杂度方面均有优势,因而这种混沌加密算法的安全性比以位移寄存器为基础的序列加密算法要高。此外,由于神经网络是一个高速并行运算的网络,只要用集成电路来直接实现它的并行运算方式,其加密算法就可实现实时加密通信,可以满足现代网络实时通信的要求。第49页,此课件共70页哦1)加密方案(1)混沌神经网络密性K.Aihara,T.Takabe和M.Toyoda等人所提出的混沌神经网络第i个混沌神经元的动力学模型描述如下:以上公式中yi(t+1)为离散时刻(t+1)是第i个混沌神经元的内

42、部状态,xi(t+1)为第i个混沌神经元在离散时刻(t+1)的输出,fi为第个i神经元的连续输出函数,M为网络中混沌神经元的个数,Wij为第j个混沌神经元与第i个混沌神经元之间的连接权值,hj为第j个混沌神经元的轴突变换传输函数,N为外部输入的个数,Vij为第j个输入与第i个混沌神经元之间的连接权值,Ij(t)为离散时刻(t)时第j个外部输入的强度,gi为第个i混沌神经元的不应性函数,k为不应性衰减系数,为自反馈系数,一般为一正数,i为第个i混沌神经元的全或无激发阈值。第50页,此课件共70页哦该模型具有十分丰富而又复杂的非线性动力学特性,如在较大范围内具有复杂的混沌行为,对初始条件敏感等。为

43、了便于分析,将公式进行具体化的定义,不失一般性,对所有神经元,将函数h和g定义为h(x)=g(x)=x,函数f定义为符号函数,即:令i=0,=1则上面第一式变为:第51页,此课件共70页哦(2)加密方案 基于混沌神经网络的加密通信方案示意图如图3.16所示,在3.16(a)加密过程中要传送的明文首先被转换为二进制数字,然后分组,分组的大小与混沌神经元的数目一致,最后一组如果不够,则用1来填充;每块明文分两路,一路将该明文分组进行逆序,作为取模运算的一个输入;另一路作为混沌神经网络的外部输入,在t时刻的明文分组作为混沌神经网络的(t+1)的外部输入Ij(t+1)(t=1,2,M);混沌神经网络在

44、输入密钥后产生与明文分组等比特的随机序列,与逆序后的明文块进行逐比特取模运算,形成明文流,对密文采用安全Hash函数算法进行安全认证,然后经数字调制后在不安全的信道上传输。而在图(b)中,解密过程正好相反。第52页,此课件共70页哦明 转 分组 逆文 换 与 序 逐 填充 比 密 SHA 特 文 算法 取 认证 密钥 混沌神经网络 模 (a)信息加密流程 逐 SHA 密 比 拼接 算法 文 特 逆 与 转 明 认证 取 序 删除 换 文 混沌 模 密钥 神经 网络 (b)信息解密流程图3.16 基与混沌神经网络的加密通信方案第53页,此课件共70页哦例如以M=8为例,明文字符A转换成二进制为(

45、00100000),逆序后变为(00000100),设此时神经网络的输出为(10101010)则对应逐比特取模后变为(10101110),作为密文输出,经SHA算法认证才发出;在接受方,接受方得到密文(10101110)后,先进行SHA算法认证,如在传输中密文被篡改,则拒收此密文;若无,则进行下一步的处理,与此时的神经网络的输出(10101010)逐 比 特 取 模,变 为(00000100),再 逆 序 后 变 为(00100000),将二进制码转换成ASCII字符A,从而获得明文。将明文分组逆序的目的主要是增加密文的混乱性,使得在密文中不可能直接显示出相应的明文符号,让密文与明文之间更接近

46、是两个独立事件,以提高密文的熵,增强抗唯密文攻击力。第54页,此课件共70页哦混沌神经网络加密算法的密钥由两部分组成,一部分是浑沌神经元之间联结权矩阵Wij,另一部分是浑沌神经元的初始外部输入强度值Ii(0)和初始内部状态yi(0),(i=1,2,M)。假设连接权矩阵W是由1、0和-1所构成的,其中,若浑沌神经元i和j同时兴奋时Wij=1,同时为抑制态时Wij=-1,不直接相连接时Wij=0。以M=8为例,可以证明,W就构成对称密钥的主要部分,为15位,再加上8位的浑沌神经元初始状态和外部初始输入,就构成了23位的完整的私密钥。第55页,此课件共70页哦4)混沌神经网络加密算法的安全性混沌神经

47、网络加密算法的安全性在很大程度上依赖于神经网络所输出的序列轨迹是否具有混沌性。理论和统计分析表明:(1)浑沌神经网络输出序列没有明显的周期性,单个神经元输出序列的频谱图与随机符号函数所产生的频谱图相比,具有很大的相似性;其相应的互功率谱密度相比也具有一定的相似性。这说明混沌神经网络的输出序列貌似随机性,无周期性或周期很大。而各个神经元输出序列之间相关关系是杂乱复杂的。(2)当连接矩阵W、V和外部输入I一定,而改变参数k(从0到1)时,神经元内部状态是比较有序的,并在迭代一定次数后呈现稳定状态,呈现稳定状态所需要的迭代次数与参数k的大小有关,一般来说,当k较小时,收敛到稳定状态所需要的迭代次数少

48、。(3)当参数k、连接矩阵W和V一定,而知改变外部输入I时,其相应的输出态值(1或0)的分布呈现混乱状态。(4)当参数k连接矩阵V和外部输入I一定,而只改变连接矩阵W时,神经元输出也将呈现混乱状态。第56页,此课件共70页哦因此,混沌神经元输出序列具有随机性和无序性,它对连接矩阵W和外部输入I的改变是敏感的,即密钥只要稍加改变,则每个神经元的输出就会不同。混沌神经网络加密方案的安全性在于:(1)高强度的扩散性。在图3.16所示方案中,利用明文作为神经元的外部输入,来改变每一步I 的值,这有助于神经网络跳出局部吸引子,从而增强抗线性攻击和抗差分攻击的能力;同时外部输入还起着一种信息扩散的作用,前

49、面的明文通过它对后续的密文产生一定的影响,一旦前面的密文解密有错,则后面的密文不可能正确解密。第57页,此课件共70页哦(2)巨大的密钥数量。对称加密体制而言,系统的安全性依赖于密钥,因而密钥必须足够长,增加密钥量,增加抗穷举破译能力。在图3.16方案中密钥的长短主要取决于混沌神经元的个数M,为Log2(M!+M),其相应的密钥量则为2K个,混沌神经元的数目越多,相应的密钥量就越大,抗穷举破译能力就越强;以神经元数目为32为例,它的密钥量是DES的9.91027倍,穷举攻击法所需的时间为2.2621031MIPS Year,因而远高于一般认为是安全的可以接受的1012 MIPS Year。另外

50、,如果攻击者采用重构混沌神经网络的方法进行攻击,则他需要知道知道混沌神经网络得初始状态和连接矩阵W和V,如果采用穷举法来重构混沌神经网络,那么计算成本是相当高的。以由32个神经元组成的混沌神经网络为例,仅连接矩阵和的空间就为:6.7110796,对于这样一个大参数空间,以计算能力为10GIPS的计算机来遍历一次就需要2.110779年,这意味着采用该破译法是不可行的。第58页,此课件共70页哦4AES算法1994年1月,美国决定1998年后将不再继续批准DES为联邦标准,积极评估和制定新的数据加密标准AES(Advance Encrypion Standard)。1997年4月15日,美国国家

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 资格考试

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁