在当前以及可预见的未来,密码是主要的在线身份验证方法。密码最讨厌的特性之一就是对密码最小长度、字母大小写、数字及特殊字符的复杂性要求
在当前以及可预见的未来,密码是主要的在线身份验证方法。密码最讨厌的特性之一就是对密码最小长度、字母大小写、数字及特殊字符的复杂性要求。然而,微软研究院的一份最新研究报告显示,大部分的复杂性努力都是徒劳的。在本文中,我们将解释一下微软的研究成果,然后再看看两个最新提出的解决方案是如何达到更好的密码安全的。
密码需要足够的强度才能够抵抗尝试性攻击,即通常所说的“暴力破解”。暴力破解有两种模式:在线模式,攻击者必须使用和用户应用程序相同的登录入口;与在线模式相对的是离线模式,攻击者需要首先窃取密码文件,但能够进行不受约束的破解尝试,并且没有应用程序和网络的破解速度限制(即单位时间内允许口令输入次数的限制)。
微软研究人员发现,“应对在线攻击和离线攻击所付出的努力有着巨大的差异。在线模式下,一个可以承受100万次猜解的密码,与离线模式下能够承受100万亿次猜解的密码,其安全性是一样的。”因此,一个可以承受100万次的破解并不复杂的密码,比如“tincan24”,和一个可以承受100万亿次破解的强密码“7Qr&2M”,其实区别不大。它们都足以应对在线破解,而在离线模式下,则可能双双被破解。但后者,则要难记得多。
此外,通过分解需要离线破解保护的用例,研究人员发现,“当密码文件泄漏并未被察觉,而且密码进行过适当的SALT加密和HASH加密的情况下,离线破解才会构成威胁。但如果发现了泄漏,只需要重设系统密码,就可以将离线破解拒之门外。”
因此,将防止密码破解的层层重担放在用户身上,让用户解决应用程序的问题,是非常低效的,也是不道德的。只有通过在应用程序端解决密码文件泄漏问题,才可以解除离线破解风险,释放对用户密码复杂性的要求。
为了防止密码文件对外泄漏,需要将密码限定在应用程序环境之内。微软报告中提到,最常见的解决方案是对每个密码进行加密,并将密钥存储在硬件安全模块(HSM)中。因为硬件安全模块不为存储在里面的加密密钥提供入口,密码的解密只能在应用程序环境内进行。
最近提出的其他两个关于此问题的创新解决方案:
1、在2014年的Derbycon安全大会上,本杰明・唐纳利和蒂姆・托姆斯展示了他们的“锁链”构架。“锁链”提供了一种方法,通过它可以人为地增大密码文件大小并将密码数据安全地进行传播,使密码泄露不可能实现。例如,在常规网络条件下,一个2TB的密码文件,需要攻击者进行至少一个月的发送。除了消耗的时间长,大量数据的对外发送也为安全竖起了一道警戒线。
2、在会上,以色列的一定初创公司Dyadic也展示了他们的分布式安全模块。通过使用最先进的多方计算加密技术(MPC),DSM在多台服务器之间将每个密码密钥进行分割。攻击者要破解密码,需要攻破所有涉及到的服务器的安全机制。因为服务器可以有不同的访问凭证,乃至不同的操作系统,这就使得攻击者的任务更加艰巨。
既然“除非尝试过其他所有的认证机制,否则密码就是最糟糕的认证方式”,也了解了密码的优劣是与系统的安全性密切相关的。因此,要对付离线破解,应该通过任何前面提到的方法,使用应用程序进行解决,而不是通过“密码复杂性”将其处理成用户的额外负担。
声明:本文内容来源自网络,文字、图片等素材版权属于原作者,平台转载素材出于传递更多信息,文章内容仅供参考与学习,切勿作为商业目的使用。如果侵害了您的合法权益,请您及时与我们联系,我们会在第一时间进行处理!我们尊重版权,也致力于保护版权,站搜网感谢您的分享!