




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
信息系统安全课程设计——DES加密与解密算法实现摘要DES算法属于迭代的分组密码算法,把64位的明文输入块变为64位的密文输出块。,它是使用一个56位的密钥以及附加的8位奇偶校验位,利用16个循环、异或、置换、代换和移位操作四种基本运算产生最大64位的分组大小。关键词:DES,分组密码算法,密钥,基本运算1系统的功能对字符串加密和解密可以对输入的字符串使用特定的密钥进行DES加密生成密文,并可以对DES加密后的密文利用原始密钥实现解密功能还原成原始明文。对文件进行加密和解密在实现了DES对字符串的加解密功能后继续实现对文件的加解密功能。可以通过浏览选择文件进行DES加密生成加密文件,并可以对DES加密后的文件利用原始密钥实现解密还原成原始文件。2用户使用方法(1)对字符串加密操作:在明文对应的输入框以及密钥对应的输入框中输入所需加密的明文和密钥,点击加密按钮即可在密文的文本框中显示密文。如需对明文和密钥进行扩充只需在扩充框中输入所需扩充的位数即可。(2)对字符串解密操作:对需输入密文的文本框进行输入后,输入密钥再点击解密按钮,即可在原文文本框中显示明文。(3)对文件加密操作:点击游览,选择所需加密的文件(推荐选择文本文件)后,输入密钥点击文件加密按钮即可。(4)对文件解密操作:点击游览,选择已经进行过加密的文件,输入其所对应的密钥后点击文件解密按钮即可。3开发的算法与关键技术 3.1主流程图DES的每个分组是64位,即明文和密钥都是64位(密钥实际是56位,每字节第八位为校验位)。DES算法流程图的主流程图如下: 3.2IP转换:其功能是把输入的64位数据块按位重新组合,并把输出分为L0、R0两部分,每部分各长32位,其置换规则见下表: 58,50,42,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,即将输入的第58位换到第一位,第50位换到第2位,...,依此类推,最后一位是原来的第7位。L0、R0则是换位输出后的两部分,L0是输出的左32位,R0是右32位,例:设置换前的输入值为D1D2D3......D64,则经过初始置换后的命名为0,1、2、3行;每行有16列,命名为0、1、2、3,......,14、15列。现设输入为:D=D1D2D3D4D5D6令:列=D2D3D4D5行=D1D6然后在S1表中查得对应的数,以4位二进制表示,此即为选择函数S1的输出。3.4子密钥的生成算法从子密钥Ki的生成算法描述图中我们可以看到:初始Key值为64位,但DES算法des算法规定,其中第8、16、......64位是奇偶校验位,不参与DES运算。故Key实际可用位数便只有56位。即:经过缩小选择换位表1的变换后,Key的位数由64位变成了56位,此56位分为C0、D0两部分,各28位,然后分别进行第1次循环左移,得到C1、D1,将C1(28位)、D1(28位)合并得到56位,再经过缩小选择换位2,从而便得到了密钥K0(48位)。依此类推,便可得到K1、K2、......、K15,不过需要注意的是,16次循环左移对应的左移位数要依据下述规则进行:循环左移位数1,1,2,2,2,2,2,2,1,2,2,2,2,2,2,13.5解密过程:DES算法的解密过程与加密过程是一样的,区别仅仅在于第一次迭代时用子密钥K15,第二次K14、......,最后一次用K0,算法本身并没有任何变化。 3.5对文件进行加密的算法:文件为一连串的数据组成,对文件进行加密时,将数据每八个字节分为一组进行DES加密,然后将得到的一连串的密文进行连接,组成新的文件,即为加密后的文件。解密时也是将密文文件每八位一组进行DES解密,然后将得到的一连串的密文进行连接,即还原为原来的文件。4开发过程作为本小组的组长,因为在之前课堂上演示过AES加密和解密的算法,在本次课设中想尝试实现DES的加解密算法。组员姚峣也体现出很大的兴趣。由于上课过程中已经清楚了解DES的算法流程,在实现对字符串的加解密并不太难,只是其中出现的一些错误耗费了时间。之后考虑对文件进行加解密的算法实现,参考之前其他课设的经验,实现对文件的加解密也不算太难。因为每个组员对DES的算法都很清晰明白,在共同编写文档的时候完成自个分工的任务时效率很高。5应用过程主程序5.1明文加密过程: 5.1.1输入明文5.1.2输入密钥5.1.3显示加密结果5.2密文解密过程5.2.1输入密文5.2.2输入密钥5.2.3显示密文解密结果5.3文件加密过程 5.3.1选择文件 5.3.2输入密钥 5.3.3显示文件加密结果 5.4文
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 透析患者全周期护理要点
- 义务教育语文阅读教学心得体会
- 小学科学教研计划实施方案
- 绿色建筑施工组织设计方案的心得体会
- 手术室外科超声刀技术专题
- 电信行业员工职业健康体检计划
- 2025摄影艺术培训工作总结范文
- 小班团队协作拓展计划
- 乡村旅游与旅游规划:2025年文旅融合的发展规划报告
- 实习一年个人自评及总结
- 2024年海南省政工师理论知识考试参考题库(含答案)
- 建筑电气施工图识读
- 苏州市昆山市事业单位招聘紧缺人才考试真题2022
- 2019人教版新教材高中化学选择性必修三第一章重点知识点归纳总结(有机化合物的结构特点与研究方法)
- 县慧林养猪场生猪标准化规模养殖改扩建项目实施方案本科学位论文
- GB/T 3125-1994白铜线
- GB/T 21709.6-2008针灸技术操作规范第6部分:穴位注射
- GB/T 10045-2018非合金钢及细晶粒钢药芯焊丝
- GB 7099-2015食品安全国家标准糕点、面包
- 3C认证全套体系文件(手册+程序文件)
- 木工三级安全教育试卷
评论
0/150
提交评论