密码学家通常用来保护秘密(如密钥)的一种方法是将它们分成几个较小的部分,并将每个部分分发给不同的保管人。必须合并一些股份来彻底重建秘密。
现在,位于澳大利亚悉尼的非营利组织Tide的研究人员已经开发了一种类似的方法来保护用户名和密码。他们声称,与现有机制相比,新方法可以将密码安全性提高1400万倍。
Tide开发的这种新方法被称为“拆分”,它涉及到在认证系统中使用加密的密码,将它们分成多个小块,将这些部分存储在分布式网络中,并根据需要重新组装。
据非营利组织称,Tide的新技术使得攻击者通过逆向工程和其他技术进行暴力密码猜测攻击来重建密码极其困难。
在早些时候泄露的使用6000万个领英密码的测试中,潮汐工程师发现“分裂”密码技术将字典攻击成功的概率从100%降低到0.00072%,安全性提高了约1410万倍。为了测试这项新技术的可靠性,这家非营利组织还发起了一项挑战活动,通过这项活动,比特币奖励能够破解用户名和密码的黑客。
据报道,Tide将单个比特币的详细信息存储在“最简单的网站设置中,存储在网络服务器后面的数据库记录中”。只要黑客能输入正确的用户名和密码,他们就能成功获得这些比特币和“吹牛”的权利。然而,在迄今为止的650万次尝试中,没有黑客能够破解密码。
目前,Tide在其Tide协议中实现了一种新的“分裂”技术,这是一套旨在帮助企业更好地保护数据的开源技术。
Tide联合创始人尤瓦尔·赫索格(Yuval Hertzog)说,在Tide协议中,加密密码在Tide公共区块链的20到26个节点之间被拆分和存储。每个节点——的tide协议中的密钥协调控制器的任务是处理分配给它的“拆分”,并在收到请求时组装拆分。只有分配给splinter的节点才能解密它。
Hertzog说,每个加密密码分解成的碎片数量取决于组织所需的加密强度和冗余度。最小数量是20个节点。这些参数是可配置的,允许用户根据个人需求定制安全性和冗余性。
Tide方案的构建方式是,即使一个或多个存储拆分的节点由于某种原因变得不可用,拆分密码也可以完全恢复。事实上,该模型允许高达30%的冗余,这意味着即使由于某种原因多达6个节点变得不可用,拆分后的密码也可以完全重新组装以进行身份验证。
管理数百万个密码时,“分割”方法的可伸缩性如何?赫索格说,该方法的底层架构是基于区块链技术的改进版本,已被证明支持数百万用户。在Tide协议下的具体实现已经过负载测试,结果表明它可以在受控环境下扩展到数百万。
Tide工程师为每个身份验证请求引入了一个特别内置的300毫秒延迟,以减轻网络上的暴力破解和拒绝服务攻击(DoS)。然而,即使如此,与拆分和重新组装密码相关的延迟仍然优于现有的常用身份验证提供商。
在公开测试中,“端到端”延迟结果显示,整个基于拆分的身份验证过程只需要1,500毫秒到4,000毫秒,并在微软Azure、谷歌和亚马逊网络上提供完整的节点。“分割”技术可以以几乎与任何现有OAuth2身份验证方案相同的方式使用,并且可以集成到任何现有组织中。“潮汐”开发的“分裂”方法尚未商业化。但是,想要提前使用该技术的组织可以在GitHub上找到该技术的代码和文档,这可以在特殊的Tide开源许可证下获得。
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!