




免费预览已结束,剩余64页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
信息保密技术,密码学中常见的两种体制:,对称密码体制(单钥密码体制)如果一个加密系统的加密密钥和解密密钥相同,或者虽然不相同,但是由其中的任意一个可以很容易地推导出另一个,即密钥是双方共享的,则该系统所采用的就是对称密码体制。非对称密码体制(公钥密码体制)在公钥体制中,加密密钥不同于解密密钥。将加密密钥公之于众,谁都可以使用;而解密密钥只有解密人自己知道。,一、对称加密算法DES,美国数据加密标准DES(DataEncryptionStandard),美国制定数据加密标准简况,目的通信与计算机相结合是人类步入信息社会的一个阶梯,它始于六十年代末,完成于90年代初。计算机通信网的形成与发展,要求信息作业标准化,安全保密亦不例外。只有标准化,才能真正实现网络的安全,才能推广使用加密手段,以便于训练、生产和降低成本。,背景,发明人:美国IBM公司W.Tuchman和C.Meyer1971-1972年研制成功基础:1967年美国HorstFeistel提出的理论产生:美国国家标准局(NBS)1973年5月到1974年8月两次发布通告,公开征求用于电子计算机的加密算法。经评选从一大批算法中采纳了IBM的LUCIFER方案标准化:DES算法1975年3月公开发表,1977年1月15日由美国国家标准局颁布为数据加密标准(DataEncryptionStandard),于1977年7月15日生效,背景,美国国家安全局(NSA,NationalSecurityAgency)参与了美国国家标准局制定数据加密标准的过程。NBS接受了NSA的某些建议,对算法做了修改,并将密钥长度从LUCIFER方案中的128位压缩到56位1979年,美国银行协会批准使用DES1980年,DES成为美国标准化协会(ANSI)标准1984年2月,ISO成立的数据加密技术委员会(SC20)在DES基础上制定数据加密的国际标准工作,DES首次被批准使用五年,并规定每隔五年由美国国家保密局作出评估,并重新批准它是否继续作为联邦加密标准。最近的一次评估是在1994年1月,美国已决定1998年12月以后将不再使用DES。因为按照现有的技术水平,采用不到几十万美元的设备,就可破开DES密码体制。目前的新标准是AES,它是由比利时的密码学家JoanDaemen和VincentRijmen设计的分组密码Rijndael(荣代尔)。,美国制定数据加密标准简况,1997年DESCHALL小组经过近4个月的努力,通过Internet搜索了31016个密钥,找出了DES的密钥,恢复出了明文。1998年5月美国EFF(electronicsfrontierfoundation)宣布,他们以一台价值20万美元的计算机改装成的专用解密机,用56小时破译了56比特密钥的DES。,美国制定数据加密标准简况,尽管如此,DES对于推动密码理论的发展和应用毕竟起了重大作用,对于掌握分组密码的基本理论、设计思想和实际应用仍然有着重要的参考价值。,DES算法,分组长度为64bits(8bytes)密文分组长度也是64bits。密钥长度为64bits,有8bits奇偶校验,有效密钥长度为56bits。算法主要包括:初始置换IP、16轮迭代的乘积变换、逆初始置换IP-1以及16个子密钥产生器。,DES加密算法框图,子密钥产生器,16轮迭代的乘积变换,DES算法框图,输入64bit明文数据初始置换IP乘积变换(16轮迭代)逆初始置换IP-164bit密文数据输出,标准数据加密算法,(a)初始置换IP,(b)逆初始置换IP-1,初始置换IP,将64bit明文的位置进行置换,得到一个乱序的64bit明文组,而后分成左右两段,每段为32bit,以L0和R0表示,IP中各列元素位置号数相差为8。逆初始置换IP-1将16轮迭代后给出的64bit组进行置换,得到输出的密文组。输出为阵中元素按行读得的结果。IP和IP-1在密码意义上作用不大,它们的作用在于打乱原来输入x的ASCII码字划分的关系。,DES加密算法的轮结构,密钥流生成器,乘积变换,它是DES算法的核心部分。将经过IP置换后的数据分成32bit的左右两组,在迭代过程中彼此左右交换位置。每次迭代时只对右边的32bit进行一系列的加密变换,在此轮迭代即将结束时,把左边的32bit与右边得到的32bit逐位模2相加,作为下一轮迭代时右边的段,并将原来右边未经变换的段直接送到左边的寄存器中作为下一轮迭代时左边的段。在每一轮迭代时,右边的段要经过选择扩展运算E、密钥加密运算、选择压缩运算S、置换运算P和左右混合运算。,选择扩展运算E,将输入的32bitRi-1扩展成48bit的输出,令s表示E原输入数据比特的原下标,则E的输出是将原下标s0或1(mod4)的各比特重复一次得到的,即对原第1,4,5,8,9,12,13,16,17,20,21,24,25,28,29,32各位都重复一次,实现数据扩展。将表中数据按行读出得到48bit输出。(表c),密钥加密运算,将子密钥产生器输出的48bit子密钥ki与选择扩展运算E输出的48bits数据按位模2相加。,选择压缩运算S。将前面送来的48bit数据自左至右分成8组,每组为6bit。而后并行送入8个S盒,每个S盒为一非线性代换网络,有4个输出,运算S的框图如下。,DES的S1-盒的输入和输出关系,x5x0 x5x4x3x2x1x010101100列号0123456789101112131415行号01441312151183106125907101574142131106121195382411481362111512973105031512824917511214100613,(y3,y2,y1,y0)=(0,0,1,0),置换运算P,对S1至S8盒输出的32bit数据进行坐标置换,置换P输出的32bit数据与左边32bit即Li-1逐位模2相加,所得到的32bit作为下一轮迭代用的右边的数字段Ri。并将Ri-1并行送到左边的寄存器,作为下一轮迭代用的左边的数字段Li。(表d),函数F(R,K)计算过程,子密钥产生器,将64bit初始密钥经过:置换选择PC-1循环移位置换选择PC-2给出每次迭代加密用的子密钥ki,,置换选择1,64比特,子密钥产生器框图,密钥(64bit),置换选择1,PC1,置换选择2,PC2,Ci(28bit),Di(28bit),循环左移ti+1bit,循环左移ti+1bit,除去第8,16,64位(8个校验位),ki,置换选择2(PC-2),置换选择1(PC-1),左循环移位位数,DES的安全性,穷举攻击分析穷举攻击就是对所有可能的密钥逐个进行脱密测试,直到找到正确密钥为止的一种攻击方法。穷举攻击判断正确密钥的方法:将利用试验密钥解密得到的可能明文与已掌握的明文的信息相比较,并将最吻合的那个试验密钥作为算法输出的正确密钥。,穷举攻击又称为穷尽攻击、强力攻击、蛮干攻击等。只要明文不是随机的,就可实施穷举攻击。,二重DES,明文为P,两个加密密钥k1和k2,密文为:C=Ek2Ek1P解密时,P=Dk1Dk2C,讨论:使用二重DES产生的映射是否等价于单重DES加密?,二重DES,用DES进行两次加密,但这是否就意味着两重DES加密的强度等价于112bit密钥的密码的强度?答案是否定的。,三重DES加密,加密:y=Ek1Dk2Ek1x解密:x=Dk1Ek2Dk1y称其为加密-解密-加密方案,简记为EDE(encrypt-decrypt-encrypt)。此方案已在ANSIX9.17和ISO8732标准中采用,并在保密增强邮递(PEM)系统中得到利用。破译它的穷举密钥搜索量为211251035量级,而用差分分析破译也要超过1052量级。此方案仍有足够的安全性。,分组密码的运行模式,分组密码在加密时,明文分组的长度固定。实际应用中待加密消息的数据长度和格式各有不同。为了能在各种应用场合使用DES,定义了DES的4种运行模式,这些模式也可用于其他分组密码。,1电码本(ECB)模式,消息分为长为64比特的分组,最后一个分组如果不够64比特,则需要填充。明文是由分组长为64比特的分组序列P1,P2,PN构成,相应的密文分组序列是C1,C2,CN。ECB的最大特性是同一明文分组在消息中重复出现的话,产生的密文分组也相同。ECB用于长消息时可能不够安全,如果消息有固定结构,密码分析者有可能找出这种关系。ECB在用于短数据(如加密密钥)时非常理想,因此如果需要安全地传递DES密钥,ECB是最合适的模式。,2密码分组链接(CBC)模式,解密时:每一个密文分组被解密后,再与前一个密文分组异或得明文,解决ECB的安全缺陷:可以让重复的明文分组产生不同的密文分组,加密时:输入是当前明文分组和前一次密文分组的异或,初始向量IV,IV应像密钥一样被保护,可使用ECB加密模式来发送IV。保护IV的原因:如果敌手篡改IV中的某些比特,则接收方收到的P1中相应的比特也发生了变化。,第一次加、解密需IV,由于CBC模式的链接机制,CBC模式对加密长消息非常合适。CBC模式除能够获得保密性外,还能用于认证。,3密码反馈(CFB)模式,加密算法的输入是64比特移位寄存器,其初值为某个初始向量IV。加密算法输出的最左(最高有效位)j比特与明文的第一个单元P1进行异或,产生出密文的第1个单元C1,并传送该单元。然后将移位寄存器的内容左移j位并将C1送入移位寄存器最右边(最低有效位)j位。这一过程继续到明文的所有单元都被加密为止。设Sj(X)是X的j个最高有限位,那么:,加密,解密,CFB特点,DES是分组长为64比特的分组密码,但利用CFB模式或OFB模式可将DES转换为流密码。如果需要发送字符流,每个字符长为8比特,就应使用8比特密钥来加密每个字符.通常取j=8流密码不需要对消息填充,而且运行是实时的,图3.13OFB模式示意图,4输出反馈(OFB)模式,OFB(outputfeedback)模式的结构类似于CFB。不同之处OFB模式是将加密算法的输出反馈到移位寄存器,CFB模式中是将密文单元反馈到移位寄存器。,OFB优点:传输过程中的比特错误不会被传播。OFB中,C1中出现1比特错误,在解密结果中只有P1受到影响,以后各明文单元则不受影响。CFB中,C1也作为移位寄存器的输入,因此它的1比特错误会影响解密结果中各明文单元的值。OFB的缺点:比CFB模式更易受到对消息流的篡改攻击。,比较和选用,ECB模式,简单、高速,但最易受重发攻击。CBC适用于文件加密,但较ECB慢。OFB和CFB较CBC慢许多。每次迭代只有少数bit完成加密。OFB用于高速同步系统,传输过程中的比特错误不会被传播.CFB多用在字符为单元的流密码中,有错误扩展,分组密码的分析方法,解密与密码分析解密是加密的逆过程,是指掌握密钥和密码算法的合法人员从密文恢复出明文的过程。密码分析则是指非法人员对密码的破译,而且破译以后不会告诉对方。,分组密码的分析方法,根据攻击者掌握的信息,可将分组密码的攻击分为以下几类:唯密文攻击:攻击者除了所截获的密文外,没有其他可利用的信息。已知明文攻击:攻击者仅知道当前密钥下的一些明密文对。选择明文攻击:攻击者能获得当前密钥下的一些特定的明文所对应的密文。选择密文攻击:攻击者能获得当前密钥下的一些特定的密文所对应的明文。,分组密码的分析方法(续),一种攻击的复杂度可以分为两部分:数据复杂度和处理复杂度。数据复杂度是实施该攻击所需输入的数据量。处理复杂度是处理这些数据所需的计算量。对某一攻击通常是以这两个方面的某一方面为主要因素,来刻画攻击复杂度。【例如】穷举攻击的复杂度实际就是考虑处理复杂度;差分密码分析其复杂度主要是由该攻击所需的明密文对的数量来确定。,几种常见的攻击方法,1.强力攻击强力攻击可用于任何分组密码,且攻击的复杂度只依赖于分组长度和密钥长度,严格地讲攻击所需的时间复杂度依赖于分组密码的工作效率(包括加解密速度、密钥扩散速度以及存储空间等)。强力攻击常见的有:穷举密钥搜索攻击、字典攻击、查表攻击和时间-存储权衡攻击等。,几种常见的攻击方法(续),2.差分密码分析基本思想通过分析明文对的差值对密文对的差值的影响来恢复某些密钥比特。若给定一个r轮的迭代密码,对已知n长明文对为和,定义其差分为式中表示集合中定义的群运算,为在群中的逆元。密码分析者可随机选择具有固定差分的一对明文(只要求它们符合特定差分条件),然后使用输出密文中的差分,按照不同的概率分配给不同的密钥。随着分析的密文对越来越多,其中最可能的一个密钥就显现出来了。这就是正确的密钥。,几种常见的攻击方法(续),3.线性密码分析本质:一种已知明文攻击方法。基本思想:通过寻找一个给定密码算法的有效的线性近似表达式来破译密码系统。对已知明文密文和特定密钥,寻求线性表示式式中,是攻击参数。对所有可能密钥,此表达式以概率成立。对给定的密码算法,使极大化。为此对每一盒的输入和输出构造统计线性路线,并最终扩展到整个算法。,二、公钥加密算法RSA,二、公钥加密算法RSA,公钥密码体制的基本原理公钥密码体制采用了两个不同的密钥,这对在公开的网络上进行保密通信、密钥分配、数字签名和认证有着深远的影响。,对称密码的不足密钥管理量的困难:两两分别用一个密钥时,则n个用户需要C(n,2)=n(n-1)/2个密钥,当用户量增大时,密钥空间急剧增大。如:n=100时,共4,995个;n=5000时增加到12,497,500个。密钥建立问题:对协商密钥的信道的安全性的要求比正常的传送消息的信道的安全性要高。数字签名的问题:传统加密算法无法实现抗抵赖的需求。,公钥密码体制的起源公钥密码又称为双钥密码和非对称密码,是1976年由Diffie和Hellman在其“密码学新方向”一文中提出的,文献:W.DiffieandM.E.Hellman,NewDirectrionsinCryptography,IEEETransactiononInformationTheory,V.IT-22.No.6,Nov1976,PP.644-654RSA公钥算法是由Rivest,Shamir和Adleman在1978年提出来的,见CommunitionsoftheACM.Vol.21.No.2.Feb.1978,PP.120-126,公钥密码体制加密框图,公钥密码体制认证框图,部分数学基础,乘法逆元费尔玛(Fermat)定理欧拉函数欧拉定理,通过三个方面研究:RSA算法描述RSA实现中的问题RSA的应用,RSA算法,RSA算法,1977年由RonRivest、AdiShamir和LenAdleman发明,1978年公布是一种分组加密算法,明文和密文在0-(n-1)之间,n是一个正整数;应用最广泛的公钥密码算法只在美国申请专利,且已于2000年9月到期。,RSA体制的安全性基于数论中的Euler定理和计算复杂性理论中的下述论断:求两个大素数的乘积是很容易计算的,但要分解两个大素数的乘积,求出它们的素因子则是非常困难的。,RSA算法描述,1、密钥生成(1)随机选取两个大素数p、q,令n=pq,随机选取两个整数e和d。使得e,d与(n)互素,且(2)公开n,e,作为E,记为E=(e,n)(3)保密p,q,d与(n),作为D,记为D=(d,n),2、加密过程,(1)在公开密钥数据库中,查得用户U的公钥:E(n,e);(2)将明文分组,使得每个n,i=1,2r(3)对每一组明文作加密变换(4)将密文传送给用户U。,3、解密过程,(1)先对每一组明文做解密变换:(2)合并分组得到明文,思考:RSA算法中如何体现安全性?,证明解密过程的正确性:,存在某个整数k,使得,设与n互素,即,讨论RSA算法的安全性:,在算法中,e和n作为公开密钥,任何人都可以用来加密消息;而p、q、d和是保密的,用来解密密文,只有私钥拥有者知道,也就是只有接收者知道。由于n为两个大素数的乘积,又n=pq,那么可以得到(n)=(p-1)(q-1)。发信者并不
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 石磨板施工方案(3篇)
- 女神节插花活动策划方案(3篇)
- 活动过程管理策划方案(3篇)
- 长治人证考试题库及答案
- 校园保安测试题目及答案
- 一年级小学生写国庆节的作文(7篇)
- 读流氓兔的故事350字13篇范文
- 四季景色描绘技巧与鉴赏教案
- 时间段与时刻的区别
- 以磨炼为话题的中考作文范文素材13篇
- 2025届中考物理全真模拟卷【云南专用】(含解析)
- 大型医院食堂管理制度
- DB62T 4248-2020 青海云杉育苗技术规程
- T/YNIA 003.1-2021面膜护肤用非织造布第1部分:水刺法
- 2025年家庭教育指导考试试卷及答案总结
- 军队文职管理学备考指南
- 胖东来考试试题及答案
- 财务国企面试题目及答案
- 电子工厂品质意识培训
- 《农村基层干部廉洁履行职责规定》知识培训
- 符合标准2025年乡村全科助理医师考试试题及答案
评论
0/150
提交评论