- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
现代密码学小论文
目录
现代密码学的认识与应用 1
一、密码学的发展历程 1
二、应用场景 1
2.1 Hash函数 1
2.2应用场景分析 2
2.2.1 Base64 2
2.2.2 加“盐” 2
2.2.3 MD5加密 2
2.3参照改进 3
2.3.1 MD5+“盐” 3
2.3.2 MD5+HMAC 3
2.3.3 MD5 +HMAC+“盐” 3
三、总结 4
现代密码学的认识与应用
一、密码学的发展历程密码学的起源的确要追溯到人类刚刚出现,并且尝试去学习如何通信的时候,为了确保他们的通信的机密,最先是有意识的使用一些简单的方法来加密信息,通过一些(密码)象形文字相互传达信息。接着由于文字的出现和使用,确保通信的机密性就成为一种艺术,古代发明了不少加密信息和传达信息的方法。
事实上,密码学真正成为科学是在19世纪末和20世纪初期,由于军事、数学、通讯等相关技术的发展,特别是两次世界大战中对军事信息保密传递和破获敌方信息的需求,密码学得到了空前的发展,并广泛的用于军事情报部门的决策。
2060年代计算机与通信系统的迅猛发展,促使人们开始考虑如何通过计算机和通信网络安全地完成各项事务,从而使得密码技术开始广泛应用于民间,也进一步促进了密码技术的迅猛发展。
二、应用场景
2.1 Hash函数
Hash函数(也称杂凑函数、散列函数)就是把任意长的输入消息串变化成固定长度的输出“0”、“1”串的函数,输出“0”、“1”串被称为该消息的Hash值(或杂凑值)。一个比较安全的Hash函数应该至少满足以下几个条件:
输出串长度至少为128比特,以抵抗攻击。对每一个给定的输入,计算Hash值很容易(Hash算法的运行效率通常都很高)。
对给定的Hash函数,已知Hash值,得到相应的输入消息串(求逆)是计算上不可行的。
对给定的Hash函数和一个随机选择的消息,找到另一个与该消息不同的消息使得它们Hash值相同(第二原像攻击)是计算上不可行的。
对给定的Hash函数,找到两个不同的输入消息串使得它们的Hash值相同(即碰撞攻击)实际计算上是不可行的Hash函数主要用于消息认证算法构造、口令保护、比特承诺协议、随机数生成和数字签名算法中。
Hash函数算法有很多,最著名的主要有MD系列和SHA系列,一直以来,对于这些算法的安全性分析结果没有很大突破,这给了人们足够的信心相信它们是足够安全的,并被广泛应用于网络通信协议当中。
2004年,中国密码学家王小云教授和她的团队将MD4的碰撞攻击复杂度时间降到手工可计算;并将寻找MD5算法实际碰撞的复杂度和SHA-1算法碰撞的理论复杂度分别降为239和263。NESSIE工程推荐使用的Hash算法有SHA-256/384/512和Whirlpool,日本密码研究与评估委员会推荐使用的算法有SHA-1/256/384/512、RIPEMD-160。ECRYPT也在Hash算法研究方面举办了一系列活动。
2.2应用场景分析
随着计算机技术的飞速发展,计算机系统已经深入到社会的各个角落,极大的满足了用户的需求,提高了用户的办公效率,同时,也给用户信息安全提出了新的挑战。在实际应用开发中,最直接的最基础的安全问题就是用户密码等信息的保存与保密。
常用的加密手段
2.2.1 Base64
Base64加密算法是网络上使用最广泛的一种编码格式其编码原则为将明文ASCII码转换为二进制以后9和
上面刚刚提到的Base64编码中由于其可逆性导致在密码传递过程中的低可靠性因此出现一个补救措施加盐2.2.3 MD5加密
MD5加密5对用户重要信息加密5加密的健壮性相对较高所以该方法被认定为有效可靠的最近学习过程中发现一个网站5.com),该网站收录了160T的MD5特征码5特征码的破纪录可以达到5加密已经无法满足信息保密的需求还有一种常用的加密方法就是SHA算法他与MD5算法具有同样的问题在此不做赘述2.3参照
2.3.1 MD5+“盐”
上面已经提到,一个比较常用加密手段就是加“盐”,同时要求盐的复杂度和长度要达到一定的要求。对于一般的应用场景,该方法已经基本可以胜任,国内一些公司就是才用的这种方法进行加密。不过,我注意到在网站中也提供了对
2.3.2 MD5+HMAC
HMAC本身也是一种加密算法他是基于SHA算法实现的单纯的使用HMAC也可以通过上进行解密因此使用MD5HMAC方法进行加密2.3.3 MD5 +HMAC+“盐”
该方法是一种大杂烩形式的解决方法但个人感觉应该是一种比较靠谱的解决方法
对于进一步的安全措施,我们可以采用一些辅助手段,在上图中也写到了,如:ip记录、短信验证等。不做赘述,一般的应用中,上面第三种方法已经可以胜任。而至于辅助手段,不可以说没有意义,但是在一定程度上,是对用户个人信息的采集(如手机验证,
文档评论(0)