近期,流行加密算法频现漏洞,一系列针对加密算法的成功攻击,不禁让人期望公司企业都能理解敏捷加密的重要性。
我们的世界依赖安全的数字加密。安全不意味着永远不会被破解。任何严谨的密码学家都不会宣称哪种加密算法是什么牢不可破的。事实上,密码学家总是假定每种加密算法都终将被破解。加密专家能对你说的,顶多是要破解某种加密算法“并不容易”,也就是没有明显的、容易实现的攻击。所有加密算法都经不住时间的侵蚀。这一结论比备受推崇的摩尔定律更真实可信。
敏捷加密是什么?
最近一波对加密算法的破解十分令人震惊,加密算法看起来似乎一个接一个被攻破,而且这仅仅是在最近几个月里发生的。所以,公司企业必须做到敏捷加密,时刻准备着从一种加密标准切换到另一种加密标准。现实就是如此,我们只能适应。
敏捷加密是加密社区长久以来的一个概念,甚至广为使用的 x.509 数字证书标准(1988年发布)也是内置了敏捷加密思想的。你可以使用任何符合标准的密码来创建非对称密钥和证书——只需事先指定证书中采用哪种密码(以及密码的长度),以便“消费者”可以恰当地读取并使用之。
至少自2010年起,包括微软在内的很多公司就在讨论敏捷加密了。但随着最近加密算法被攻破事件的爆发,确保公司加密系统的敏捷性,变得比以往任何时候都更加重要。然而不幸的是,不敏捷的加密系统到处都是。
加密算法每天都在被削弱
事实上,最近几年,很难举出哪个加密算法是没被攻陷的。不仅仅是应用广泛的安全散列算法(SHA-1),几乎所有流行的早期散列算法,包括MD4和MD5,都被黑客攻克。甚至受推荐的SHA-1继任者——SHA-2,也含有与SHA-1同样的加密缺陷,只是它增加了散列值长度,至少现在还不能轻易破解。
如今,大家都应该用SHA-3来替代SHA-1和SHA-2,但几乎没有硬件或软件产品支持这个散列算法。几年之内,我们大概就会转向SHA-3了。但问题是,我们会在它也被曝漏洞之前换用吗?
广为使用的RSA非对称加密算法自1977年诞生起就经常遭到攻击。这么多年来,该算法不断被挖出漏洞,又不断做出改进。2017年10月发现的ROCA漏洞,存在于英飞凌可信平台模块(TPM)的RSA密钥对生成实现中,影响到几十亿安全设备,包括智能卡。
该漏洞将世界上几乎所有大公司打了个措手不及,他们不得不在非常短的时间里分析曾经信赖的加密系统,并替换掉有漏洞的智能卡。不熟悉ROCA问题也无妨,你只需要知道:这是一个很严重的问题,当前可能有几十亿设备和智能卡对此几乎毫无防护。
2017年12月,ROBOT攻击紧跟ROCA的脚步而来。该攻击利用的是RSA的另一个漏洞,影响绝大部分的HTTPS/TLS网站,世界上超过1/3的主流网站均受影响,比如Facebook和PayPal。ROBOT攻击针对多种网络安全设备和负载均衡器。被动监听者可通过ROBOT和ROCA攻击捕获广泛分发的公钥,以解密加密流量及确定本应秘密的私钥。
由于RSA及其前辈Diffie–Hellman加密算法都年纪太大了,而且很可能已经被NSA和其他民族国家破解,加密管理员们希望能在未来转向更安全的算法。除了NSA原因不明地建议大家不要使用椭圆曲线加密(ECC),很多加密系统(包括比特币)都在用这个算法。
NSA建议采用量子加密以确保长期安全。这当然是个不错的建议,只除了量子加密并不多见,且目前大多数场景应用价值有限这个事实。再过个十年或许量子加密就遍地开花了,谁知道呢?目前的话,还是建议大家采用被认可的标准,并使用更长的密钥。
WPA2
2017年11月,KRACK攻击横空出世,就连我们的无线网络都没以前那么安全了。多年来,我们一直接受的理念是,使用WPA2协议可以保护我们无线通信的安全。KRACK改变了这一普遍看法。该攻击的作者发现了WPA2协议的致命重传漏洞,无需破解WiFi“口令”即可解密WPA2流量,向其中注入恶意软件。
他在攻击介绍部分写道:“本攻击对所有受保护的现代WiFi网络有效。只要你的设备支持WiFi,就有可能受到影响。”说的再清楚不过了。最近的黑帽大会演讲中,这位作者详细阐述了该漏洞及相应的解决方案。
加密问题不仅仅影响到公司企业和各种产品,甚至国家主权都会受到影响。就像安全大师布鲁斯·施奈尔最近提醒我们的:整个国家都在从不够敏捷的错误中汲取教训。
你敏捷加密了吗?
无论作为普通用户/管理员,还是作为开发人员,都必须敏捷加密。敏捷加密就是准备好从一种加密实现转向另一种加密实现,且转移过程无需重做或重写全部事务。某些情况下,你甚至可以保留同一套加密密钥,仅需迁移到更安全的相关加密算法上即可。
大多数人都是加密产品的用户/管理员,得要理解敏捷加密的重要性,并开始向自己的加密产品供应商要求敏捷加密。那么,在你购买加密产品的时候,你的供应商真的了解并实践敏捷加密了吗?
你得紧跟加密方面的最新消息。但你知道上面讲到的所有问题吗?你应用了所需的补丁和缓解措施吗?你更新了自己的WiFi路由器、负载均衡器、网站、监控摄像头、固件和TPM芯片了吗?你停止使用那些无法修复的东西了吗?想必很多公司都还继续沿用之前就在用的加密方法,丝毫没察觉自己的数据早就对黑客透明了。
如果你的开发人员用到了加密算法,他们能确保所采用的加密算法可以按需替换而不用全部推倒重来?很多开发人员都苦于不知道如何在基础层面上恰当地实现加密流程。他们真的知道敏捷加密这个概念,知道为什么需要敏捷加密吗?
现在大多数公司都还没有实现敏捷加密,是时候开始将这一概念纳入教育培训中了。长远来看,理解并贯彻敏捷加密的公司企业将会更高效,也更安全。