本文介绍了Secret Sharing with Snitching (SSS)这一密码学原语,它通过使股东共谋行为可证明和可惩罚来解决阈值密码学中的股东共谋问题。SSS通过在秘密共享过程中嵌入可识别的密码学信息,使得非法重建秘密的行为可以被追踪和证明,从而实现对恶意行为的威慑。
通过告密进行秘密共享解决了股东勾结的问题,使其可证明且可惩罚。
7 分钟阅读
阈值秘密共享是一种基本的密码学原语,用于通过将敏感信息分发给多个参与方(称为股东)来保护这些信息。只有指定数量的股东(称为“阈值”)可以协作重建秘密。如果少于阈值数量的股东试图将其拼凑起来,他们将不会了解任何关于秘密的信息。
阈值秘密共享是许多高级密码学原语的重要组成部分,包括安全多方计算(MPC)和阈值加密,这两者对于安全、去中心化应用程序的成功至关重要。展望未来,阈值全同态加密方案(threshold FHE)可以利用秘密共享来实现完全私有且无需信任,但可审计的区块链交易处理。即使在今天,Shutter 的基于阈值身份的加密方案也使用秘密共享来保护去中心化设置中的敏感信息。
然而,尽管其潜力巨大,但阈值秘密共享面临着一个重大挑战:其安全性关键在于阈值假设,即假设少于阈值数量的股东恶意行事。只要达到或超过阈值的恶意股东勾结,所有安全保证都将丧失。事实上,这种情况发生的风险确实是真实的威胁,多签名(multi-sig)桥和钱包上发生的多起备受瞩目的攻击就证明了这一点。例如,在 Ronin Bridge Attack 中,9 个参与方中有 5 个被攻破,导致约 6.25 亿美元被盗,而在 Radiant Capital Hack 中,11 个参与方中有 3 个被破坏,导致 5000 万美元被盗。虽然这些例子涉及的是多签名而不是阈值秘密共享,但它们突显了拥有超过阈值数量的恶意行为方的风险。
虽然通常无法阻止勾结,但在多签名的情况下,检测起来相对容易,因为 (1) 生成的签名通常在链上使用,因此可以作为勾结的公开证明,并且 (2) 可以唯一地识别勾结方。因此,虽然我们无法阻止勾结,但我们可以识别和惩罚恶意行为者,从而实现某种形式的经济安全。然而,对于阈值秘密共享来说,情况并非如此。在这里,重建的秘密通常不需要在链上发布,并且仅仅知道秘密并不能揭示勾结方的身份。因此,阈值秘密共享方案中现实世界的勾结案例可能已经发生,但仍未公开。
这就提出了一个问题:
我们如何使阈值秘密共享方案中的股东勾结行为可识别和可惩罚,从而确保安全性超出阈值假设?
Dziembowski 等人最近的一篇论文,该论文在 ACM CCS 2024 会议 上发表,在回答这个问题方面取得了重大进展。该论文由 Shutter 协议方案背后的两位密码学家 Stefan Dziembowski 和 Sebastian Faust 共同撰写,并引入了一种名为通过告密进行秘密共享(SSS)的创新密码学原语,该原语通过使股东勾结可证明且可惩罚来解决股东勾结问题。
Snitch(告密):告发;告状。秘密地告诉权威人士其他人做了坏事。
通过 SSS,如果一群股东勾结提前重建共享秘密,他们很有可能会被他们的合作者告发。在这种情况下,告密者可以提供恶意重建的密码学证据,可以将其提交给外部法官(如智能合约)以触发惩罚。股东可以受到经济激励向法官告密,从而创建一个自我监管的系统,其中勾结群体内部的背叛风险会阻止任何不诚实行为的尝试。
这种新颖的原语有望解决阈值密码学的根本勾结问题,从而为实践中的广泛采用铺平道路。让我们更详细地了解一下 SSS 的工作原理。
乍一看,为秘密共享构建告密机制似乎很简单:如果勾结的股东过早地重建秘密(在时间 t 而不是约定的时间 t' 时,其中 t' > t),告密者可以在时间 t' 之前向法官揭示秘密。由于告密者知道秘密,他们一定与其他股东勾结。
然而,这种幼稚的方法有三个关键缺陷:
因此,需要一种更复杂的方法来有效地检测和惩罚勾结。
SSS 的真正力量在于一系列机制,可确保勾结可证明且可惩罚。以下是它的工作原理的简述:
该论文还描述了一种复杂的攻击,SSS 方案必须能够防范:所谓的 MPC 攻击。在这里,勾结的股东运行 MPC 协议来计算秘密的任意函数,而不会互相透露他们的份额。如果没有份额,告密者就没有可识别的信息,因此无法惩罚勾结的股东。作者通过使用所谓的 MPC 困难函数来解决这个问题。这些函数很难以分布式方式计算,例如,使用 MPC 协议,但很容易在单个设备上计算。这有效地阻止了这种复杂的 MPC 攻击。
阈值信任假设一直是并且仍然是在实践中广泛采用阈值密码学方案的主要障碍。借助 SSS,可以显着降低该假设,从而显着增加 MPC 和阈值密码学用例。一个很好的例子是 Shutter 基于阈值加密的 MEV 保护,可以防止 Keyper 勾结和过早解密受保护的交易。更一般而言,SSS 使更多主动验证服务(AVS)的采用成为可能,并为 MPC 协议提供增强的安全性和完整性。
对于 Shutter 的具体案例,SSS 有可能实现完全的交易加密,同时阻止 Keyper 之间的勾结,从而消除恶意 MEV 提取的风险。回想一下,Shutter 是一种阈值加密方案,其中密钥在 Keyper 集中共享。用户可以使用 Shutter 加密他们的交易,这样只有当阈值数量的 Keyper 同意这样做时,才能解密交易。为了防止恶意 MEV 提取,至关重要的是,只有在执行顺序固定后才能进行解密;任何过早的解密都会暴露交易内容,并允许重新排序交易以进行 MEV 提取。这就是 SSS 变得至关重要的地方:如果密钥通过 SSS 方案共享,则 Keyper 在执行顺序锁定之前解密交易的任何尝试都可以被检测和惩罚,从而抑制勾结。我们目前正在探索将反勾结机制集成到 Shutter 协议中的可能性。
可信执行环境 (TEE) 通常用于缓解诸如阈值秘密共享中的信任假设。TEE 是一种硬件模块,旨在确保计算的受信任环境,即使主机受到威胁。因此,TEE 是一种强大而通用的工具,具有许多应用程序,包括许多与阈值密码学的应用程序重叠的应用程序。在这些应用程序中,不是像在阈值密码学中那样以分散的方式执行密码学任务,而是在 TEE 内部集中执行该任务。
不幸的是,众所周知,今天的 TEE 并不完全安全,过去的几次攻击就证明了这一点(例如,请参阅 Intel 的 SGX 上的 过去攻击列表)。即使除了它们的漏洞之外,还出现了另一个关键问题:TEE 的输入和输出始终由可能被破坏的主机处理。这会带来严重的审查攻击风险,其中主机可以选择不将输入转发到 TEE,或者拒绝转发 TEE 的输出。最后,TEE 的使用始终需要信任硬件制造商。
尽管存在这些问题,但在 SSS 仍在研究中时,TEE 提供了一种在不久的将来实现某种形式的反勾结的有希望的方向。TEE 可以作为一种实用的权宜之计,提供一些安全性,直到有更成熟和可扩展的 SSS 方案可用。诸如 Flashbots 和 PolyCrypt 之类的公司正在积极探索基于 TEE 的潜在解决方案。值得注意的是,PolyCrypt 目前正在 将 TEE 集成到 Shutter 中,以降低阈值信任假设,从而帮助防止股东勾结。
然而,从长远来看,我们设想将 SSS 和 TEE 结合起来,以获得针对勾结股东的最佳保证。
值得注意的是,除了 SSS 方面的工作之外,最近还出现了其他关于阈值密码学中反勾结机制的研究论文(例如,[1, 2, 3])。学术界对这一领域的关注激增凸显了该主题的重要性,并且由于许多研究人员在该领域工作,我们对在为阈值方案实现切实有效的反勾结机制方面取得重大进展感到乐观。
虽然当前的 SSS 方案更多的是可行性结果而不是完全高效、可部署的解决方案,但它们代表了朝着解决分布式密码学协议中股东勾结的关键问题迈出的重要一步。这种新颖的原语为更安全地使用阈值密码学和 MPC 铺平了道路。
使勾结可证明且可惩罚的概念是去中心化系统安全性的令人兴奋的新方向,为去中心化环境中的隐私、信息对称性和信任提供了潜在的突破。对于诸如 Shutter 之类的 MPC 和阈值密码学项目,SSS 可以让我们一窥在面对潜在勾结时可以保证密码学安全的未来。
现在是 MPC 和阈值密码学社区探索通过告密进行秘密共享的可能性的时候了。虽然尚未完全准备好部署,但 SSS 具有巨大的潜力,可以增强你的去中心化应用程序的安全性、隐私性和可信度。
在 X-Twitter 上关注我们,访问 Shutter 论坛,并加入我们在 Shutter Discord 上的社区,以了解有关 Shutter 工作原理的更多信息,并随时了解我们的进展。
分享这篇文章:
在 Twitter 上分享在 Facebook 上分享在 Linkedin 上分享通过电子邮件发送
链接已复制到剪贴板!
较新的帖子
较旧的帖子
不要错过任何内容。将所有最新帖子直接发送到你的收件箱。它是免费的!
NameEmailSubscribe
太棒了! 请检查你的收件箱并点击链接以确认你的订阅。
错误! 请输入有效的电子邮件地址!
Subscribe
- 原文链接: blog.shutter.network/sec...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!