



免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
HASH算法安全性浅谈2011年12月,CSDN网站遭到黑客攻击,约600万用户的登录名、密码及邮箱遭到泄漏。随后,CSDN“密码外泄门”持续发酵,世纪佳缘、人人网、天涯社区等网站相继被曝出用户数据遭泄密,大量的用户账号和密码被公开,数量超过5000万。此次密码泄漏堪称近年来国内规模最大的网络安全事件。事后,密码明文保存被认为是此次事件的“罪魁祸首”。当前,互联网越来越进入人们的生活。用户访问各种网站,在注册的时候需要输入用户名和密码,在仅仅考虑功能的前提下,可以把用户名和密码以明文的方式存储在数据表中。当用户登录时,直接将用户输入的明文密码与数据库中的密码进行比对,如果相同则授权用户登录。明文密码保存方式在实现上非常简单,但面临的问题也很明显,那就是没有任何安全防护机制。任何有权读取或以某种方式获得数据库的人都可以获取所有用户的密码。因此我们需要一种即使数据文件被窃取,窃取者也不能获得用户密码的方式。现在网站已经基本不再使用明文密码保存的方式,而是在数据库中保存散列算法处理的结果。通过HASH散列函数的方式,可以有效的降低密码泄露的风险。HASH散列函数是把输入的密码数据通过特定的算法处理后,输出为一个固定长度的字符串。这样,当用户输入密码时,直接将该密码代入散列算法得出散列结果,再与保存的数据对比,相同则允许登录。如“abc”经过MD5散列之后,结果为“900150983CD24FB0D6963F7D28E17F72”,将这个字符串保存到数据库中替代密码明文。通过HASH函数的处理,即使密码数据库文件被窃取,窃取者也不能直观的获取到账号的密码。HASH散列函数的特点是单向性,即由输入数据可以得到确定的输出字符串,但从输出的字符串反向获取输入数据的难度很大,几乎是不可能做到的。目前常见的散列算法有MD5和SHA1。MD5的输出是128位字符串,SHA1的输出是160位字符串。还有更复杂的SHA256,SHA512,其输出分别是256位和512位。输出结果的长度越长,HASH函数的安全性就越高。当前HASH散列算法最大的安全隐患就是字典攻击。所谓字典攻击,即根据密码所使用字符范围及密码长度穷举出所有可能的密码,对这些密码进行HASH处理,把HASH值保存在数据库中,一旦获得用户密码HASH值,将其与数据库中的HASH值进行对比,就可以快速的找到明文密码。对抗字典攻击的办法主要是限制密码最短长度,扩大密码字符组成,采用更长位数的HASH散列算法。这些都可以增加攻击者生成字典的时间成本和经济成本。个人认为还可以参照3DES加密算法,采用多重HASH算法,即对HASH值再进行多次HASH处理,这样也可以增加攻击者破解难度。但在各种资料中,尚未看到有人有提到此种方法,不知何故。上述方法都是不断增加攻击者的难度,但随着现在计算机的计算速度和存储能力的不断提高,攻击者破解的时间、经济成本都在不断降低,因此这些方法都不是永久有效的。2004年,山东大学王小云教授公布了利用差分技术实现对HASH算法的碰撞攻击,随后又公布了碰撞攻击的详细原理过程。MD5、SHA-1是当前国际通行的两大密码标准。MD5由国际著名密码学家图灵奖获得者兼公钥加密算法RSA的创始人Ronald L. Rivest设计,SHA-1是由美国专门制定密码算法的标准机构美国国家标准技术研究院(NIST)与美国国家安全局(NSA)设计。两大算法是目前国际电子签名及许多其它密码应用领域的关键技术,广泛应用于金融、证券等电子商务领域。王小云教授的碰撞攻击算法,具有非常重要的理论意义,对密码学的发展具有极大的推动作用,为HASH函数的密码分析学开辟了一条新的道路。碰撞算法从理论上表明了电子签名可以伪造,必须及时添加限制条件,或者重新选用更为安全的密码标准,以保证电子商务的安全。这一成果说明了MD5和SHA1已经不能用作身份验证或数字签名,另外在理论上说明了数字摘要算法用于数据的完整性鉴别具有先天缺陷。但另一方面,由于方法上的限制,要构造具有特定语义的碰撞攻击几乎是不可能的,因此并不是所有采用MD5等算法的应用都彻底失效。在实际中,MD5和SHA1算法经常与其它算法一起使用,或者进行了很多变形,简单地找到MD5碰撞对并没有实际性的威胁。同时,她的研究成果也给其他研究者以极大的参考价值,后续研究者在其基础上,不断推出新的研究成果。2005年3月,用笔记本在几个小时内找到MD5碰撞;2006年3月,用笔记本在1分钟内找到MD5碰撞;2007年12月,用Chosen-Prefix Collision,伪造出了符合X.509标准的数字证书;2008年12月,利用MD5碰撞,创造了一个假的来自可信CA的数字证书。因此,寻找MD5 碰撞的算法的时间、空间复杂度都已降至实用水平。但从实践角度,不同信息具有相同MD5值的可能性还是非常低的,通过碰撞的方法也很难碰撞出复杂信息的MD5值。现在MD5破译技术的研究者们正重点研究MD5碰撞的实际应用。为了防止网络监听及重放攻击,在网站登录过程中,通常还使用干扰字符串,即在用户登录时,服务器随机生成一段前缀或后缀字符串,浏览器将用户的密码HASH处理后,再加上干扰字符串,再HASH处理一遍,再提交给服务器。干扰字符串是随机生成,用过一次即失效,因此即使登录过程中HASH值被截取,也无法再次使用其来登录。如果需要更安全的算法,建议使用SHA256或SHA512。目前还没有出现针对SHA256,SHA512算法的有效碰撞攻击方法。该算法可以是MD5及SHA1的不错的后继者。总之,HASH算法是在不断被破解的过程中,不断改进的。所谓“魔高一尺,道高一丈。”其安全性也是在不断提高的。当前主流的MD5和SHA1正在改为SHA256和SHA512。或许以后还会有更复杂的HASH演进算法,甚至更高级的密码处理算法,我们都拭目以待。对于碰撞攻击的实际应用研究,我们也持续关注。王小云教授的差分碰撞攻击算法,虽然里面没有太高深的数学算法,但过程还是很复杂繁琐的,有兴趣可以参考其原始论文,仔细研读分析。碰撞攻击的后续研究成果也有很大的参考价值。论文列举如下:Collisions for Hash Functions MD4, MD5, HAVAL-128 and RIPEMD;How to Break MD5 and other Hash Functions;Finding Collisions in the Full SHA-1;Finding MD5 Collisions a Toy For a Notebook;Tunnels in Hash Functions MD5 Collisions Within a Minute;Eff
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 技术部门需求调研模板技术创新引导版
- 2025资产抵押合同
- 2025浓缩混凝土购销合同
- 厂区安全知识培训心得
- 大隐静脉曲张护理查房课件
- 2025宽带互联网接入服务合同
- 2025照明设备供应合同标准范本
- 2025商铺租赁合同范本大全
- 卵巢的功能教学课件
- 营养学自考试题及答案
- 医疗责任险产品介绍
- 膝关节解剖完整版本
- 医院水、电、气故障报修、排查、处理流程
- 2024年旧钻井杆销售合同范本
- 网络安全攻防演练报告
- 2023年《安徽大学学生手册》在线考试学习通超星期末考试答案章节答案2024年
- 安全评估合同
- 《全面质量管理》习题集(含答案)
- DB21T 3947-2024 普通公路装配式混凝土桥梁下部工程施工技术规范
- DL∕T 432-2018 电力用油中颗粒度测定方法
- 《水处理生物学》课件
评论
0/150
提交评论