哈尔滨工业大学(威海)__密码学应用与实践 课程报告

哈尔滨工业大学(威海)__密码学应用与实践 课程报告

ID:34204776

大小:523.00 KB

页数:23页

时间:2019-03-04

哈尔滨工业大学(威海)__密码学应用与实践 课程报告_第1页
哈尔滨工业大学(威海)__密码学应用与实践 课程报告_第2页
哈尔滨工业大学(威海)__密码学应用与实践 课程报告_第3页
哈尔滨工业大学(威海)__密码学应用与实践 课程报告_第4页
哈尔滨工业大学(威海)__密码学应用与实践 课程报告_第5页
资源描述:

《哈尔滨工业大学(威海)__密码学应用与实践 课程报告》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、.HarbinInstituteofTechnologyatWeihai密码学应用与实践课程报告专业:计算机科学与技术班级:1004101学号:100410129姓名:刘杨...题目1.密码算法原理SHA-1是一种数据加密算法,该算法的思想是接收一段明文,然后以一种不可逆的方式将它转换成一段(通常更小)密文,也可以简单的理解为取一串输入码(称为预映射或信息),并把它们转化为长度较短、位数固定的输出序列即散列值(也称为信息摘要或信息认证代码)的过程。单向散列函数的安全性在于其产生散列值的操作过程具有较强的单向性。如果在输

2、入序列中嵌入密码,那么任何人在不知道密码的情况下都不能产生正确的散列值,从而保证了其安全性。SHA将输入流按照每块512位(64个字节)进行分块,并产生20个字节的被称为信息认证代码或信息摘要的输出。该算法输入报文的长度不限,产生的输出是一个160位的报文摘要。输入是按512位的分组进行处理的。SHA-1是不可逆的、防冲突,并具有良好的雪崩效应。通过散列算法可实现数字签名实现,数字签名的原理是将要传送的明文通过一种函数运算(Hash)转换成报文摘要(不同的明文对应不同的报文摘要),报文摘要加密后与明文一起传送给接受方,

3、接受方将接受的明文产生新的报文摘要与发送方的发来报文摘要解密比较,比较结果一致表示明文未被改动,如果不一致表示明文已被篡改。MAC(信息认证代码)就是一个散列结果,其中部分输入信息是密码,只有知道这个密码的参与者才能再次计算和验证MAC码的合法性。SHA-1与MD5的比较因为二者均由MD4导出,SHA-1和MD5彼此很相似。相应的,他们的强度和其他特性也是相似,但还有以下几点不同:l对强行攻击的安全性:最显著和最重要的区别是SHA-1摘要比MD5摘要长32位。使用强行技术,产生任何一个报文使其摘要等于给定报摘要的难度对

4、MD5是2^128数量级的操作,而对SHA-1则是2^160数量级的操作。这样,SHA-1对强行攻击有更大的强度。l对密码分析的安全性:由于MD5的设计,易受密码分析的攻击,SHA-1显得不易受这样的攻击。l速度:在相同的硬件上,SHA-1的运行速度比MD5慢。原理参考:...http://baike.baidu.com/link?url=yAuIHFCY9xaXIjX7YUFuYyGejmXEzWmofS76DDpu_LPKSm71HhpnlwELzIA5ltkR2.设计思想基本设计思想:分而治之所谓“分而治之”,即

5、是把一个复杂的问题简单化为多个核心部件,首先加工各个独立部件,而后在统一合成,得到想要的结果。具体到本次设计而言,大致可把本次设计分为以下几个部分:1.输入处理:包括采用何种输入方式,是“运行后输入”,还是“运行前预先规定”;在这里,经过本人认真思考与仔细权衡,终于决定使用“运行前预先规定”,这是由于对于一个“加密算法验证程序”来说,最重要的不是“灵活界面输入性”,而是准确性,只要得到正确的结果,就是合格的验证程序,就是好的;而算错了结果,只追求“灵活的界面输入”,既违背了加密程序的后台运行本质,有可能引发不必要的错误

6、;因而必当选择“运行前预先规定”,同时,补充预先知道的正确结果进行对照,用以判断程序性能。2.数据处理过程:这是SHA-1加密算法的核心,它涉及了整个完整的SHA-1加密算法,是SHA-1加密算法的本质体现,也是所有不同SHA-1加密算法的交汇处。3.输出处理:这是人机交互的部分,设置一下问题:(1)输出是否符合人类普遍的认知,如果不符合,这样的软件,将给其他人带来阅读以及理解上的不便;为此,输出逻辑则显得很重要,所以本人特别优化了输出的逻辑,多次调整输出行间距,最终找到合适输出方法。(2)输出能否直接反映出加密算法的

7、正确与否,所以本人特别输出了“预先已知的正确结果”,方便校验与调试。(3)输出反映了版权,如果不在输出方面强调版权,将容易被其他人盗版,为此,本人特别在输出结果的上下各加了“版权所有者信息”,用以确保版权安全。4.函数调用:(1)函数如何调用,影响这函数的执行效率以及执行的结果正确与否;为此关于调用顺序,本人修改多次。(2)函数的优化,优化可以减掉冗余函数,加快效率。5.错误处理机制:主要使用以避免程序崩溃,并方便调试以及用户判断程序故障来用。...3.设计流程图4.功能实现1.跨文件调用技术:程序虽然不复杂,但由于需

8、要多个文件相互支持,所以跨文件调用的功能就是最起码应当实现的功能2.输出控制:将一连串难以比较的字符,分割成易于识别的字符组。3.错误校验:(1)输入不合要求以及违规,提示“无法应对,请检查输入是否有误”;(2)无法完成处理过程,提示“无法应对,处理发生异常”;(3)重置过程无法完成,提示“无法完成重置”。4.SHA-1加密算法的

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。