新技术“分裂”使密码破解难度提升1400万倍


来源:安知讯    2019-9-10 14:20

密码学家经常用来保护秘密(比如密钥)的一种方法就是将其分割成多个较小的份额,并将各个部分分配给各个不同的保管方,某些份额必须组合在一起才能完整地重建秘密。

分裂式密码

现在,位于澳大利亚悉尼的非营利组织Tide的研究人员已经开发出了一种类似的方法来保护用户名和密码,他们声称,与现有机制相比,新方法可以将密码安全性提升1400万倍。

Tide开发的这种新方法叫做“分裂”(splintering),涉及在认证系统中采用加密密码,将它们分成多个小块,并将这些部分存储在分散的分布式网络中,可以根据需要重新组合它们。

根据该非盈利组织的说法,Tide的新技术使得攻击者通过逆向工程和其他技术进行暴力密码猜测攻击来重构密码的实践变得异常困难。

在使用早前泄露的6000万个LinkedIn密码进行的测试活动中,Tide工程师发现,“splintering”密码技术使字典攻击成功的机率从100%降低到了0.00072%,安全性提升了大约1410万倍。为了测试这种新技术的可靠性,该非营利组织还发起了一项挑战活动,通过该活动向能够破解用户名和密码的黑客提供比特币奖励。

据悉,Tide将单个比特币的详细信息存储在“最简单的网站设置中,存储在web服务器后面的数据库记录中”,只要黑客能够使用正确的用户名和密码进入,就能够成功获取这些比特币以及“吹牛”的权力。不过,到目前为止的650万次尝试中,还没有任何一个黑客能够破解出一个密码。

目前,Tide已经在其Tide协议中实施了新的“splintering”技术,Tide协议是一组开源技术,旨在帮助企业更好地保护数据。

Tide联合创始人Yuval Hertzog表示,在Tide协议中,加密密码会被分裂并存储在Tide公共区块链上的20到26个节点之间。每个节点——Tide协议中的密钥协调控制器的任务是处理分配给它的“碎片”(splinter),并在接收到请求时组装splinter。只有分配给splinter的节点才能解密它。

可配置的安全性

Hertzog表示,每个加密密码被分解成splinter的数量取决于组织所需的加密强度和冗余要求。最小数量是20个节点。这些参数是可配置的,允许用户根据个人需求定制安全性和冗余。

Tide方案的构建方式使得即使存储splinter的一个或多个节点由于某种原因变得不可用,也可以完全恢复分裂的密码。事实上,该模型允许高达30%的冗余,这就意味着即使最多6个节点由于某种原因变得不可用,也可以完全重新组装分裂的密码,以进行身份验证。

那么在管理数百万个密码时,“splintering”方法的可扩展性又表现如何呢?Hertzog表示,该方法的底层架构是基于区块链技术的改进版本,该技术已被证明可以支持数百万用户。Tide协议下的具体实施已经过负载测试,结果显示其可在受控环境中扩展至数百万。

Tide工程师已经为每个身份验证请求引入了一个特意内置的300毫秒延迟,以缓解网络上的暴力破解和拒绝服务攻击(denial-of-service,简称DoS)。但是即便如此,与分裂和重组密码相关的延迟仍然要优于现有常用的身份验证提供程序。

在公开测试中,“端对端”延迟结果显示整个基于分裂的身份验证过程只需要1,500毫秒到4,000毫秒,并且在Microsoft Azure、Google和Amazon网络上提供完整的节点。“splintering”技术可以以与任何现有OAuth2认证方案几乎相同的方式使用,并且可以集成到任何现有组织中。

Tide开发的这种“splintering”方法目前尚未商业化。但是想要提前使用的组织可以在GitHub上找到该技术的代码和文档,它可以在特殊的Tide开源许可下获得。

关于本站联系我们手机版
Copyright © 2019 安知讯 粤ICP备11061396号-7 粤公网安备 44030602001878号