密码学课程设计报告(文件加密解密系统).doc

密码学课程设计报告(文件加密解密系统).doc

  1. 1、本文档共32页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
密码学课程设计 实验报告 实验题目:文件加密/解密系统 实验任务书 课程设计题目 文件加密/解密系统 人数 1 学时 2周 设计目的、任务和要求 设计目的: 本课程设计力求为学生提供一个理论联系实际的机会。通过实践,建立密码学理论的整体思想,锻炼编写、调试程序的能力,学习文档编写规范,培养独立学习、吸取他人经验、探索前沿知识的习惯,树立团队协作精神。同时,课程设计可以充分弥补课堂教学及普通实验中知识深度与广度有限的缺陷,更好地帮助学生从全局角度把握课程体系。 设计任务: (1)在深入理解DES或AES加密/解密算法理论的基础上,设计一个DES或AES加密/解密软件系统; (2)加/解密过程可用分组密码运行模式中的任一种模式; (3)完成一个明文分组的加解密,明文和密钥可以是二进制,十六进制或者ASCII码。进行加密后,能够进行正确的解密; (4)提供良好的用户界面; (5)要求提供所设计系统的报告及完整的软件。 设计的方法和步骤 第一步:进行系统设计; 第二步:代码编码; 第三步:对实现部分的软件功能或者模块进行测试 第四步:提交完整可执行软件,准备答辩; 第五步:答辩,演示软件,教师根据实际情况提出测试用例,学生作最后的修改和完善,教师对软件运行部分进行评分; 第六步:完成课程设计报告并提交。 设计工作计划 本次课程设计的时间是2周,工作计划如下: 任务书下达,理解选题,明确软件功能,分析和设计:2天; 分析和设计报告的撰写:1天 实现部分设计及文档编写;1天; 编码及调试:4天; 报告完善及打印:1天; 成果提交和验收:1天。 主要参考资料 陈鲁生、沈世镒《现代密码学》(2) 北京:科学出版社,2008年 Michael Welschenbach编著,赵振江,连国卿等译,《编码密码学——加密方法的C与C++实现》,电子工业出版社,2003年6月; / 教研室签字: 年 月 日 学院签字: 年 月 日 第一章、AES加密解密原理 由于DES已经无法满足高保密性的要求,美国于1997年1月开始征集新一代数据加密标准(即高级数据加密标准,Advanced Encryption Standard,AES)。2000年10月2日,正式宣布选择比利时密码学家所开发的Rijndael算法成为AES的最终算法。 AES(The Advanced Encryption Standard)是美国国家标准与技术研究所用于加密电子数据的规范。它被预期能成为人们公认的加密包括金融、电信和政府数字信息的方法。AES 是一个新的可以用于保护电子数据的加密算法。明确地说,AES 是一个迭代的、对称密钥分组的密码,它可以使用128、192 和 256 位密钥,并且用 128 位(16字节)分组加密和解密数据。与公共密钥密码使用密钥对不同,对称密钥密码使用相同的密钥加密和解密数据。通过分组密码返回的加密数据的位数与输入 数据相同。迭代加密使用一个循环结构,在该循环中重复置换(permutations )和替换(substitutions)输入数据。 1.1AES算法设计及性能研究现状: 目前在理论上对于AES算法的研究主要集中在算法设计和性能分析上。 1.1.1算法设计主要研究算法设计遵循的原则和整体结构。研究算法设计的目的一方面为性能分析提供了一条途径,从算法的结构上分析算法性能是简单有效的,研究算法整体结构上的缺陷为提出新的密码分析方法提供新的手段。另一方面,研究AES的算法设计对研发新的分组密码提供了设计原则和参考。目前分组数据加密算法的整体结构有两大类:Festiel网络、非平衡网络和SP网络。作为AES选择的Rijndael算法遵循分组密码的安全性和实现性原则,在整体结构上采用的是SP网络结构。 1.1.2 性能分析主要研究算法的各项特性,主要可以分为实现分析和密码分析两类。 (1)实现分析主要研究AES算法可实现的能力,即算法的实现性分析。当前实现性分析主要集中在AES的硬、软件实现的难易度和实现算法的效率等领域中。 (2)密码分析主要研究AES算法抵抗现有己知密码攻击的能力,即算法的安全性分析。除此之外,由于S-盒是AES算法的唯一非线性变换器件,S-盒的性能在很大程度上决定了AES算法的安全性。因此,出现了许多分析和研究S-盒代数性质的研究成果。在这些成果中分析了S-盒的代数特征或是表达S-盒的线性方程组,以达到求解S-盒或是研究S-盒安全性的目的。 1.2AES算法基础: 1.2.1A 定义一 一个由b7b6b5b4b3b2b1b0组成的字节b可表示成系数为{0,1}的二进制多项式 b7x7+b6x6+b5x5+b4x4+b3x3+b

文档评论(0)

153****9595 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档