- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PAGE
编号
基于C++的DES算法实现
Implementation of DES?algorithm based on C++
学 生 姓 名
专 业
学 号
指 导 教 师
学 院
二〇一四年七月
摘 要: 在对DES分组密码算法详细介绍的基础上,用MFC实现了DES算法的可视化演示平台。该平台动态DES加密过程中每一阶段密文和密钥的变换情况,通过再现DES加/解密过程的途径,实现使用DES算法加密解密文件的方式。
关键词: MFC, DES,加密解密,文件, 密钥
DES算法介绍
随着计算机和Internet技术的普及,网络通信已经渗透到社会的各个方面,信息安全问题已受到人们极大的关注。如何保证信息在传送时不会被窃密者窃取并破译,是网络技术人员以及密码学家们所面临的问题。要想使信息可靠传输,发信者必须对所发的数据(即明文)通过加密系统变成密文,收信者收到密文后再用相应的解密系统对密文解密恢复成明文。而《密码学新动向》的发表和美国数据加密标准DES的颁布实施标志着密码学的诞生,密码学在网络安全方面发挥着越来越重要的作用。?
?密码学是一门古老的学科,在密码学发展的历史上,出现了多种加密方法,又很早的古典加密算法,后来又出现了更成熟的分组密码,公钥密码及流密码等,因为我只涉及了分组公钥密码,所以在这篇文章中就暂且先介绍分组密码,在说分组密码之前要说的就是密码学中常见的两种体制,一种是对称密码体制,一种是非对称密码体制,也叫公钥密码体制。? ? 对称密码体制是指如果一个加密系统的加密密钥和解密密钥相同,或者虽然不同,但是由其中的任意一个可以很容易地推导出另一个,即密钥是双方共享的。
目前常用的密码系统根据其加密方式,可分为基于信息理论的密码系统和基于复杂性理论的密码系统,前者是以香农定理为理论依据,后者则是通过复杂算法来实现,主要有RSA公钥密码算法和DES分组密码算法. 在国内,随着三金工程(金桥工程、金关工程和金卡工程)、尤其是金卡工程的启动,DES算法在Pos、ATM、磁卡及智能卡(IC卡)、加油站、高速公路收费站等领域被广泛使用,以此来实现关键数据的保密。如信用卡持卡人的PIN加密传输、IC卡与Pos间的双向认证、金融交易数据包的MAC校验等均用到DES算法。本文将详细介绍DES分组密码算法,并且设计实现基于MFC的DES算法可视化演示平台。该平台的设计与实现能方便观测DES算法加/解密过程中密文和密钥在各阶段的变化过程,形象地再现了DES算法加/解密的迭代过程。?
1 DES分组密码算法?
DES (Data Encryption Standard )算法是1977年由美国国家标准局NBS(National Bureau of Standard)颁布的标准,用于商业和非机密的政府应用领域的加密,是在IBM的Lucifer算法的基础上设计的,后被国家标准局采用[2]。?
简单地说,密码算法只不过是两种基本加密技术——混乱和扩散的组合。DES基本分组也是这些技术的组合(先代替后置换),它基于密钥作用于明文。DES有16轮,这意味着要在明文分组上16次实施相同的组合技术,如图1所示。?
?
DES算法的入口参数有Key、Data、Mode三个,其中Key为8 B,共64 bit,是DES算法的工作密钥;Data是8 B、64 bit的被加/解密的数据;Mode为工作方式,有解密和加密两种。 ?
在通信网络的两端,双方约定一致的Key,在通信的源点用Key对核心数据进行加密,然后以密文形式在公共通信网(如电话网)中传输到目的地后,用同样的Key对密文进行解密,便再现了明文形式的核心数据。这样就保证了核心数据在公共网络中传输的安全性和可靠性。通过定期同时更新通信网络中源端和目的端的Key,便能提高数据的保密性。?
1.1? DES算法概述?
DES是一个分组加密算法,一次加密64 bit的明文分组,输出是64 bit的密文分组。DES对64 bit的明文分组进行操作,首先通过一个初始置换,将明文分成左半部分和右半部分,各长32 bit,然后进行16轮完全相同的运算。经过16轮后,左、右半部分合在一起经过一个末置换(初始置换的逆过程),这样就完成了该算法。?
??? 其中Bi是第i次迭代结果,Li和Ri是Bi的左半部分和右半部分,Ki是第i轮的密钥,F是实现代替、置换及密钥异或等运算的函数。 ?
如图2所示,从密钥的56 bit中选出48 bit,通过一个扩展置换将数据的右半部分扩展成48 bit,并通过一个异或操作与48 bit密钥结合;通过8个S盒将48 bit替代成新的32 bit数据,再将其置换一次,这
您可能关注的文档
- CAD2008标注教程-进阶版.ppt
- bizhub -MFP网络功能(初级).ppt
- C3 高强、高性能混凝土材料.ppt
- CE-007-0标签使用说明.doc
- cell line 一个流生产的八大要点.docx
- CET-4,6级考试学生培训幻灯片(2012年12月).ppt
- CFG试桩方案 新孔.doc
- CFG桩Ⅳ桩处理方案.doc
- CAD基础绘图知识应用.ppt
- Ch03网页的基本组成元素——XHTML和CSS.ppt
- 2025年房车露营消费者满意度与体验提升报告.docx
- 张北公务员考试试题及答案.doc
- 卫生专业技术资格考试中医针灸学主治医师(相关专业知识)模拟练习题及答案解析(2026年湖南岳阳市).docx
- 食品饮料行业智慧工厂MES解决方案.pptx
- 医院传染病疑似或确诊病例应急处置预案.docx
- 2025广东潮州饶平县钱东镇人民政府招聘机关后勤服务人员3人备考题库附答案.docx
- 工程项目管理案例及心得体会范本.docx
- 2025广东清远英德市大湾镇招聘生态专职护林员2人(公共基础知识)综合能力测试题附答案.docx
- 2025广东清远英德市大湾镇招聘生态专职护林员2人(公共基础知识)综合能力测试题附答案.docx
- 医院疼痛科治疗风险防范与处置应急预案.docx
原创力文档


文档评论(0)