“绝对的安全在某种程度上说难以实现。因为设计师们无法预知所有风险——计划永远赶不上变化。” Michael Hamelin,Resilence 公司首席安全工程师,在近期一次网络安全研讨会上如是说。
在此次研讨会前一个多月,继MD5(Message Digest Algorithm 5)算法后,另一被视为固若金汤的加密算法SHA -1(Secure Hash Algorithm-1 )也宣告从理论上被山东大学王小云教授及其研究小组破解。两种当前在安全领域得到普遍应用,且都曾一度被认为是难以逾越的密码标准,在不到一年的时间内被相继破译。人们在欢欣鼓舞的同时,疑问、困惑甚至恐慌也随之而来:我们在网络上的交易还安全吗?黑客是否能通过这些技术随意窃取我的信息?现有的系统是否已不安全? 不会重复的“数字指纹”? 从概率上讲,世界上不会存在两个完全相同的指纹,因此指纹已成为甄别个人身份的重要指标之一。在网络应用,尤其在电子商务和金融领域,“数字指纹”起着相同作用。以杂凑函数为基础的MD5和SHA -1两种加密算法,自诞生之日起就一直在为我们使用的文件和重要数据制造理论上不可重复的“数字指纹”(数字摘要),以此来确保信息安全。 杂凑函数的特色在于,如果任何人对文件和重要信息的明文进行任何改动,其对应的“数字指纹”都会发生变化;同时,其单向性使攻击者很难通过获得的“数字指纹”去反推被加密的信息或文件原文;此外,操作便捷,成本低廉的特性使得MD5和SHA -1在被破解前,一直是加密算法领域的宠儿。 “任何一种算法都有其漏洞和局限性。”吉大正元公司技术总监田博士表示。MD和SHA算法可以说都历经了从先天不足到茁壮成长的过程,原因在于它们都基于杂凑(HASH)函数。任何一个杂凑函数都会存在冲突(Collision )——即在一些特定情况下,两个不同的文件或信息会指向同一个“数字指纹”。在一般情况下,类似冲突只能尽可能地减少,而不能完全避免。 健壮的杂凑函数可通过设计有效的冲突处理机制,或增加“数字指纹”的位数来增加复杂度,以减少冲突出现的概率,但这并不代表冲突本身不存在(从MD2到SHA -0的先后被完全破译已充分证实了这点)。如果攻击者能够找到规律的发现冲突的方法,而发现的冲突中又包含足够的有用信息,那么人们就有可能利用这些缺陷(如尝试利用完全不同的文件或数据生成同一个“数字指纹”)展开攻击。 冲突=缺陷=安全隐患? “王教授取得的成绩令人振奋,这种方法大大缩短了寻找冲突所需要的时间,”田博士介绍,“但从我们目前掌握的信息看,理论破解离实际应用还有一段距离。”众所周知,只要有足够长的时间和良好的设备,任何密码都可通过穷举法(Brutal force)加以破解,即把所有的密码组合全试一次。但对于SHA -1算法,使用穷举法寻找它的冲突至少需要进行2^ 80次运算,这对于我们来说近乎不可能。试想我们使用一台每秒运算30亿次的计算机,运用穷举法去寻找一个冲突,到找到为止需要花费多少时间呢?大概需要1200万年以上! 王教授和研究小组正是从这个看似不可能的地方入手。研究报告显示,按照他们的计算方法,只需要2^ 69次运算,即可发现冲突所在。这比穷举法快2048倍,是一种真正意义上密码学理论上的攻击。它充分暴露了SHA-1 在冲突处理方面的脆弱性,从根本上动摇了SHA-1 的根基——虽然6000年左右的时间对我们来说同样还是个天文数字。除了运算方面的瓶颈外,杂凑函数的不可逆行决定了攻击者无法轻易得手,没有人可以保证通过此发现的每个冲突都是“可用”的冲突。在漫长的运算后,你得到的也许包含一些有价值的信息,也许就是理论上存在的单纯冲突,运算瓶颈和信息匮乏都会使黑客们的种种努力成为徒劳……据业内人士估计,在当前的技术条件下,2^ 50或2^ 60次运算量的范围内的攻击方法才会为我们带来麻烦,即引发实际意义上的攻击行为。在新研究成果发布前的一段时间那,SHA-1 算法只能被称作不完美,还是安全的。 安全与算法领域瀚如烟海,SHA -1和MD5算法既不是唯一的加密算法,也不是安全系统的全部组成。“在Resilence 公司的产品线中,只有部分使用了SHA -1加密算法,同时还有其他算法混合使用,以增强产品的安全性 ——使用我们的产品是安全的。” Michael Hamelin指出。“一种算法被破译,和整个企业的安全系统被攻破,是两个不同的概念。”田博士说,“企业的安全系统通常由多种软硬件设备组成,各种安全标准、算法和技术配套使用,协同作业。这使得企业的安全性更高,抗攻击能力更强。”不少企业的都已经或正在构建自己的PKI (Pubic Key Infrastructure,公钥加密技术)安全平台,它通过使用公开密钥技术和数字证书来确保系统信息安全,并负责验证数字证书持有者身份,在很大程度上提高了企业的安全度。同样,企业内部良好的管理模式和安全策略,也是减少问题出现的有效手段。 “一些行政手段,比如立法,”田博士说,“同样可以确保我们的信息安全。要知道任何针对安全的攻击理论上都是可追溯的。”我国已先后通过并实施了《计算机信息网络国际联网管理暂行规定》、《计算机信息系统安全保护条例》、《全国人大常委会关于维护互联网安全的决定》,对此已做出了详细阐释。在一个安全的网络环境中扮演符合自己权利和义务的角色,并自觉维护网络安全,这是从国家到每个公民必须遵守的游戏规则,也是共同需要。 存在还是灭亡,这是个问题。MD5 的被破译和SHA -1的理论上被破译,实际已经分别宣告了他们的末日和末日倒计时,即使后者在目前看来还是安全的。美国国家标准与技术研究院(NIST)近期已建议开发人员在2010年前转向使用更安全,也更复杂的SHA-256 和SHA-512 算法。新算法、新技术、新标准将为我们带来又一轮的模块升级,设备更换和方案改进,虽然软件升级理论上来说并不复杂;虽然X%硬件的内置芯片是可擦写的,而Y%是便于更换的;虽然模块化设计已经使得方案更新和实施变得更加便捷……人类的进步、科技的发展实际就体现在这不断提出问题、解决问题,自我肯定与自我否定的交互更替中。未来是难以预知,正如Michael Hamelin 在研讨会中所说, “更高级的防火墙是什么?使用IPS 或应用系统防火墙后可以给我们答案吗?我们要断开和互联网的连接吗?” 背景资料 1991年 MIT Laboratory for Computer Science和RSA Data Security Inc 的Ronald L.Rivest 共同开发出MD5 (Message-Digest Algorithm 5,信息- 摘要算法),并开始被广泛应用。 1993年 SHA-0(Secure Hash Algorithm )算法出现,并被美国标准与技术研究院(NIST)收录到美国的联邦信息处理标准(FIPS)中,成为美国国家标准。 1995年 SHA-1取代SHA-0. 2004年8 月王小云教授宣布她及研究小组近年来的研究成果——对MD5 、HAVAL -128 、MD4 、RIPEMD和SHA-0 等几种算法的破译结果,引起轰动。 2005年2 月美国国家标准技术研究院发表声明,SHA -1 没有被攻破,并且没有足够的理由怀疑它会很快被攻破。一周后,王小云教授宣布理论上破译SHA -1. 2005年3 月国际密码学家Lenstra 利用王小云提供的MD5 冲突,伪造了符合X.509 标准的数字证书 |
|