ImageVerifierCode 换一换
格式:DOCX , 页数:21 ,大小:52.05KB ,
资源ID:6157052      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6157052.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于DES的对称加密算法的设计与实现.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于DES的对称加密算法的设计与实现.docx

1、基于DES的对称加密算法的设计与实现基于DES的对称加密算法的设计与实现学校代码: 10184 学 号: 2094021629( 题 目:基于DES的对称加密算法的设计与实现 学生姓名:周莹冰 学 院:工学院 专 业:数字媒体技术 班 级:2009级 指导教师:李永珍 副教授 二 一 三 年 五 月 摘 要 延边大学本科毕业设计说明书 随着信息时代的来临,信息的安全性变得尤为重要,而对数据进行加密是行之有效的能保证信息安全性的方法。DES算法是众多数据加密算法中的一种,在过去的几十年中在数据加密领域有着举足轻重的地位,然而随着计算机技术的发展,DES算法的安全性也被大大地降低,针对DES的暴力

2、破解所用的时间在逐年减少,为了能使DES这种优秀的加密算法能够重新使用,本文将针对就DES的暴力破解提供一种有效的解决方案:基于DES算法迭代算法的改进,对DES的密钥长度进行了扩展。使DES的安全性得到了增强,同时相较于DES算法的改进算法3DES算法,效率上会比3DES高,安全性上也不会逊色于3DES。 关键词:DES;密钥扩展;迭代算法; Abstract 延边大学本科毕业设计说明书 With the coming of information age, information security has become especially important, and to encryp

3、t data is effective to ensure the security of the information. DES algorithm is one of data encryption algorithms, in the past few decades has a pivotal position in the field of data encryption. however, with the development of computer technology, the security of DES algorithm also has been greatly

4、 reduced, the time of brute force of DES has been reducing year by year, in order to make this good encryption algorithm can be used again, this article will focus on the DES of brute force to provide an effective solution: based on iterative algorithm of DES algorithm, and extended the length of DE

5、S key. To make the security of DES more enhanced, at the same time, compared with the 3 DES algorithm, the efficiency will be higher than 3 DES, and security will not inferior to 3 DES. Key word: DES; key expansion; iterative algorithm 延边大学本科毕业设计说明书 引 言 . 1 第一章 对称加密算法 . 2 1.1 对称加密算法简介 . 2 1.2 DES的历史

6、. 2 1.3 DES加密算法原理 . 4 1.3.1初始置换 . 5 1.3.2 每轮变换的详细过程 . 7 1.3.3 密钥的产生 . 10 第二章 DES算法的安全性分析及改进 . 12 2.1 DES算法基于对称加密算法的问题 . 12 2.2 DES算法的密钥 . 12 2.2.1 密钥的长度 . 12 2.2.2 存在弱密码 . 13 2.3 针对DES的一些破解方法 . 14 2.4 DES的改进算法 . 15 2.4.1 3DES算法细节 . 15 第三章 针对DES密钥长度的两个改进 . 17 3.1 基于对换迭代结果的密钥扩展 . 17 3.1.1算法的基本原理 . 17

7、3.2 基于对换迭代子密钥的密钥扩展 . 19 3.2.1算法的基本原理 . 20 第四章 两种改进方法的算法分析及与3DES的比较 . 21 4.1 两种改进的算法分析 . 21 4.1.1 算法效率 . 21 4.1.2 算法的安全性 . 21 4.2 改进算法与3DES算法的比较 . 22 第五章 与DES、3DES算法的效率实验 . 24 延边大学本科毕业设计说明书 结论 . 25 参考文献 . 26 谢 辞 . 27 延边大学本科毕业设计说明书 引 言 对称加密算法是使用比较早的一类数据加密算法,它具有加密速度快、加密效率高等优点,而数据加密标准(DES,Data Encryptio

8、n Standard)就是一种使用密钥加密的对称加密算法,1977年被美国联邦政府的国家标准局确定为联邦资料处理标准(FIPS),随后在国际上广泛流传开来。它基于使用56位密钥的对称算法。这个算法因为包含一些机密设计元素,相对短的密钥长度以及怀疑内含美国国家安全局(NSA)的后门而在开始时有争议,因此DES因此受到了强烈的学院派式的审查,并以此推动了现代的块密码及其密码分析的发展。DES是分组密码的典型代表(也是第一个被公布出来的标准算法。由于DES算法的密钥长度过短, DES算法已经不再安全,目前DES已经被AES所取代。但是,DES算法作为一种优秀的加密算法, 为了能使DES继续发挥其作用

9、,对DES的改进也是层出不穷。本次对DES算法进行密钥扩充,主要采用两种方法来进行改进,两种方法大致的思想是一致的,都是同时使用两个密钥对两段明文进行加密,同时加密过程中对两个加密过程的中的一些数据进行一些可控的交流,不同的是一种方法是基于加密算法迭代过程中的加密结果进行交换,另一种是基于迭代过程中的子密钥进行交换。理论上两种方法最终达到的效果是一致的,都是使DES算法的密钥长度得到了延长。本文将对这两种改进方法做出实现,然后对这两种方法的安全性与效率进行研究,最终得出这种改进方法的可行性结果。1 延边大学本科毕业设计说明书 第一章 对称加密算法 1.1 对称加密算法简介 对称加密算法是应用较

10、早的加密算法,技术相对来说比较成熟。在算法中,加密方需要将明文与密钥进行特殊的加密算法处理,使其变成无法辨认的密文后传送出去。接收方收到密文后,要想获得想要的明文,就必须通过相同的密钥,使用加密算法的逆运算,来对密文进行处理,从而才能得到相应的明文。在对称加密算法中,通信的双方都是使用相同的密钥来进行加密和解密操作。 对称加密算法的特点是对称加密算法的特点是算法公开、计算量小、加密速度快、加密效率高。他的缺点是通信的双方都要维护一个只有他们知道的密钥,这就造成了密钥管理的难度,尤其是在多人通信的环境中,密钥的个数急剧增加,给密钥管理带来的巨大的负担。 对称加密算法主要有以下几种算法: DES算

11、法,3DES算法,TDEA算法,Blowfish算法,RC5算法,IDEA算法。 本文中将具体对DES和3DES算法做深入的探讨。 1.2 DES的历史 DES(Data Encryption Algorithm,DEA)加密算法是使用最广泛的数据加密体制,于1977年由美国国家标准局(National Bureau of Standards,NBS),即现在的国家标准和技术协会(National Institute of Standards and Technology,NIST)采纳为联邦信息处理标准46。 我们所讲的DES其实是指数据加密算法(Data Encryption Algori

12、thm,DEA)。 年代简表 年份 日期 事件 1973 5月15日 NBS第一次征集加密算法标准 1974 8月27日 NBS第二次征集加密算法标准 1975 3月17日 DES在“联邦公报”上发布并征集意见 1976 8月 DES的第一次研讨会 1976 9月 第二次研讨会,讨论DES的数学基础 1976 11月 DES被确认为标准 2 延边大学本科毕业设计说明书 1977 1月15日 DES被作为FIPS标准FIPS PUB 46发布 1983 DES第一次延长标准期限 1986 HBO开始使用一个基于DES的电视卫星加密系统,Videocipher II 1988 1月22日 DES第

13、二次延长标准期限,称为FIPS 46-1,取代FIPS PUB 46 1990 7月 毕汉姆和萨莫尔重新发现了微分密码分析,并将之应用到了一个15位的类DES密码系统 1992 毕汉姆和萨莫尔发布了第一个复杂性小于暴力破解的理论攻击47方法:微分密码分析。然而,这种方法仍然需要不现实的2选择明文。 1993 12月30日 DES作为FIPS 46-2第三次延长标准期限 1994 试验了第一个实验性的DES密码分析,线性密码分析 1997 6月 DESCHAL计划第一次公开破解了DES加密的信息 1998 7月 EFF的DES破解器(Deep Crack)在56小时内破解了DES密钥 1999

14、1月 Deep Crack和合作在22小时15分钟内破解了一个DES密钥 1999 10月25日 DES作为FIPS46-3第四次延长标准期限,其中规定优先使用3DES,而普通DES只允许在遗留的系统中应用 2001 11月26日 AES作为FIPS 197发布 2002 5月26日 AES标准开始生效 2004 7月26日 “联邦公报”发布了FIPS 46-3以及一系列相关标准被驳回的信息 2005 5月19日 NIST拒绝了FIPS 46-3标准 2006 4月 德国鲁尔大学和基尔大学基于FPGA的价值$10,000的并行计算机COPACOBANA在9天内破解了DES在一年内,软件改进将平

15、均时间降低到了6.4天。 2008 11月 COPACOBANA的下一代,RIVYERA将平均破解时间降低到了一天内 表1.1.1 DES年代简表 DES自被确立为加密标准以来,已经过去了有30多年了,期间DES算法在未做改动的情况下标准的有效期被延期了3次,足以证明DES算法本身的有效性和安全性,但是随着电脑技术的发展和人们在加密领域研究的深入,DES算法的安全性不可避免的受到了威胁。第4次延期时被要求优先使用DES的改进算法3DES来减少DES算法安全性缺失所带来的的不良效果,同时DES的替代算法也在紧锣密鼓的筹划中,第4次延期期间AES算法被提出,自此DES退出来了历史舞台。 3 延边大

16、学本科毕业设计说明书 1.3 DES加密算法原理 DES算法是对称加密算法,加密时需要有两个输入:明文和密钥。明文的长度为64位,密钥的长度为64位(64密钥中只有56位是有效的,其他为校验位)。 64位明文置换选择1初始置换/56/64k1/48/56置换选择2循环左移第1轮/56/64k2/48/56置换选择2循环左移第2轮k16/48/56置换选择2循环左移第16轮32位互换/64逆初始置换64位密文图 1.2.1 DES算法流程示意图 上图1.2.1中表明了DES加密算法的整个加密机制。图中可以看出,DES算法的明文处理共分了3个部分:首先,64位明文经过初始值换(IP)矩阵改变排列顺

17、序,然后与右边产生的子密钥进行16轮迭代运算,对明文进行了置换和替代。16轮迭代运算结束后的结果对其左右两部分进行对换,产生一个预输-1出。最后对预输出的结果进行初始逆置换(IP)产生64位密文。 图1.2.1中,右半部分是产生每轮迭代所需的子密钥的方法,首先是64位密钥经过置换选择1,长度变为56位,然后每轮都进行循环左移并通过置换选择2产生一个48位的子密钥。 4 延边大学本科毕业设计说明书 / 32bit扩展/置换PL0(32bit)R0(32bit)/ 48bit产生子密钥KiXOR/ 48bitF函数Ki1/ 48bit代替/选择(SXOR盒)/ 32bitL1(32bit)R1(3

18、2bit)16产生子密钥F函数Ki2轮K(56bit)加Ci(28bit)Di(28bit)XOR密L2(32bit)R2(32bit)左移(S)左移(S)产生子密钥Kin置换/压缩L16(32bit)R16(32bit)/48bitECi+1Di+1图1.2.2 DES详细算法示意图 上图1.2.2,更加详尽的给出了DES算法的实现细节,下面来对DES算法分步来进行分析。 1.3.1初始置换 表1.2.1和表1.2.2分别给出了初始置换和初始逆置换。每个表中共有64个位子,对应了64位的数据,表中定义的是每一位的数据具体被哪一位的数据所置换。 5 延边大学本科毕业设计说明书 58 50 42

19、 34 26 18 10 2 60 52 44 36 28 20 12 4 62 54 46 38 30 22 14 6 64 56 48 40 32 24 16 8 57 49 41 33 25 17 9 1 59 51 43 35 27 19 11 3 61 53 45 37 29 21 13 5 63 55 47 39 31 23 15 7 表1.2.1初始置换表 40 8 48 16 56 24 64 32 39 7 47 15 55 23 63 31 38 6 46 14 54 22 62 30 37 5 45 13 53 21 61 29 36 4 44 12 52 20 60 2

20、8 35 3 43 11 51 19 59 27 34 2 42 10 50 18 58 26 33 1 41 9 49 17 57 25 表1.2.2初始逆置换表 6 延边大学本科毕业设计说明书 1.3.2 每轮变换的详细过程 Li(32bit)Ri(32bit)Ci(28bit)Di(28bit)左移(S)左移(S)/ 32bit扩展/置换/ 48bitXOR/48bit置换/压缩/ 48bit代替/选择(S盒)/ 32bitXORLi+1(32bit)Ri+1(32bit)Ci+1Di+1 图1.2.3 单轮算法示意图 将图1.2.2中中间部分抽取出来就得到了图1.2.3,其中可以看到每

21、轮运算的细节实现。 64位的明文被分成了左右两个32位的明文块L和R。过程可以用公式简单的表达为: L = R i+1i+ R = L?F(Ri,K) i+1ii+17 延边大学本科毕业设计说明书 R(32)E48位K 48位+S1S2S3S4S5S6S7S8P32位 图1.2.4 S盒示意图 上图1.2.4是具体F函数的操作细节:对右边的明文块R使用E(表1.2.3)扩展置换为48位,再与48位的子密钥进行异或,得到的结果再通过S盒还原为32位的数据,最后通过置换函数P(表1.2.4)得到F函数的输出。 32 1 2 3 4 5 4 5 6 7 8 9 8 9 10 11 12 13 12

22、13 14 15 16 17 16 17 18 19 20 21 20 21 22 23 24 25 24 25 26 27 28 29 28 29 30 31 32 1 表1.2.3(E扩展置换) 16 7 20 21 9 12 28 17 1 15 23 26 5 18 31 10 2 8 24 14 32 27 3 9 19 13 30 6 22 11 4 25 表1.2.4(P置换函数) 8 延边大学本科毕业设计说明书 如果仔细观察一下扩展置换矩阵E(表1.2.3)就会发现,他的作用其实是将32位数据块分成4位4位的8份,然后每组与前后两组的末尾和开头组成6位,形成新的一行。例如有下面这么一些数据: asdf qwer zxcv qwer 扩展置换后变为 Rasdfq fqwerz rzxcvq vqwera 在进行S盒变换的时候,每6位一组的外面2位代表着每个小S盒中4种可能中的一种,中间4位代表了这一行中具体选择哪一位来输出。8个S盒的32位输出经过置换,使得每个S盒的输出在下一轮中尽可能的影响更多的其他数据位 S1 14 4 13 1

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1