厌倦了被狙击?来试试这个 Commit-Reveal 修复方案

  • shutter
  • 发布于 2025-06-06 21:13
  • 阅读 10

本文深入探讨了 Commit-Reveal 机制及其在去中心化应用(dApps)中解决信任问题的应用。文章还介绍了 Shutter 网络如何通过阈值加密技术改进 Commit-Reveal 机制,从而在 DEX、DAO 治理和 Web3 游戏中确保公平性、隐私性和防篡改性。文章还讨论了阈值加密的优势、权衡以及未来发展。

抢先交易、投票操纵和泄露的操作正在扼杀人们对 dApp 的信任。这篇文章分析了 commit-reveal 如何解决这个问题 - 以及 Shutter 如何通过阈值加密来升级它,以保持 dApp 的公平、私密和防篡改。

理解 Commit-reveal:就像石头、剪刀、布一样简单

想象一下和朋友玩石头剪刀布游戏。只有当你们同时展示你们的选择时,这个游戏才好玩。如果你的对手在你出招之前哪怕只提前一秒看到你的手势,他们总是会赢 - 这太不公平了,对吧?

不幸的是,这种不公平的优势不仅仅是假设。在加密货币领域,每天都会发生类似的事情。

  • DEXs 上,机器人可以在你的挂单被确认之前看到它,然后抢先提交他们自己的交易 - 在机器人获利的同时,给你一个更差的价格。
  • DAO 治理 中,你的投票通常在你投出后立即可见,这意味着其他人在投票期结束前可以看到并对你的投票做出反应 - 这为影响和胁迫打开了大门。
  • Web3 游戏和博彩 中,即使平台声称你的行动是隐藏的,但区块链的透明性意味着你无法真正确定是否有人在幕后窥视并获得优势。

这破坏了信任,并造成了实际的金钱损失。

那么,我们该如何解决这个问题呢?这就是 commit-reveal 方案发挥作用的地方。

Commit-Reveal:确保每个人都公平竞争

commit-reveal 方案的核心思想很简单:首先让每个人都提交他们的选择,这些选择是保密的,然后这些选择在同一时间被揭示出来。

让我们回到石头剪刀布的例子 - 但这一次,你正在和一个陌生人在线玩,赌注是 100 美元。你们都想确保这是一个公平的游戏。这意味着你们任何人都不能在锁定自己的选择之前看到对方的行动。

以下是 commit-reveal 方案如何确保公平性:

  • 加密阶段: 你们都秘密地选择你们的行动 - 比如,一个人选择石头,另一个人选择剪刀。但是,你们不是立即揭示它,而是对你们的选择进行加密,并将这个加密后的版本发布到一个公共空间,比如区块链。没有人能知道你选择了什么 - 它看起来只是一些随机数据。
  • 提交阶段: 加密的行动被“提交”给你们,作为玩家,或者提交给游戏协调员/服务器。这意味着现在任何人都不能反悔了。
  • 揭示阶段: 双方的行动(或者更准确地说,是这些行动的解密密钥)现在被自动揭示,并且可以推断出游戏结果。

这就像你们都把你们的选择锁定在一个数字保险箱里 - 并且只同意在你们都提交之后才打开它们。

Commit-reveal 方案不仅提供公平性,还提供透明性。因为一切都是公开和可验证的,所以很容易检查每个人是否都公平竞争。

这种方法不仅仅适用于游戏。Commit-reveal 方案被用于密封投标拍卖、私密投票、随机抽奖以及任何你需要人们做出诚实、秘密的选择并在稍后揭示的地方。

然而,传统 commit-reveal 系统的问题在于,你总是需要一个中心化的机构来管理揭示和加密/解密。这就是 Shutter 的用武之地,它将这个中心化的组件去中心化。

阈值加密:Shutter 对 Commit-Reveal 的下一级改进

Shutter 使用阈值加密,以更安全、去中心化和自动化的方式改进了经典的 commit-reveal 方案。

Shutter 没有依赖一方来运行 commit-reveal 方案,而是将这个责任交给了一个由节点(参与方)组成的分布式网络,称为 Keypers。这些 Keypers 协同工作来解锁数据 - 但没有一个 Keyper 可以单独完成。只有当足够多的 Keypers(一个“阈值”)同意时,才能解密任何内容。

这确保了没有任何一方可以为了自己的利益而操纵这个过程,并且消除了可能导致结果无法揭示的人为错误。

以下是它的工作原理 - 让我们继续用石头剪刀布的例子:

  • 你和你的对手像以前一样选择你们的行动。但现在你的行动是使用一个特殊的公钥加密的,这个公钥与一个特定的时间窗口(称为 epoch)相关联。
  • 你们双方的加密行动都被发送到区块链或存储在链下。在这一点上,任何人看到的都只是乱码数据 - 你的选择是完全隐藏的。
  • 然后,当时间窗口结束时,Keypers 自动协同工作,同时解密和揭示双方的行动。

这解决了传统 commit-reveal 的一个大问题:如果有人忘记揭示怎么办?或者一方试图操纵结果怎么办?有了阈值加密,揭示就不依赖于一方,也不依赖于他们是否遵守规则。它是内置在系统中的。即使有少数 Keypers 离线或不合作,该协议仍然可以安全和公平地工作。

Commit-Reveal 和阈值加密的优势

  • 公平性和安全性:在你的数据应该被揭示之前,没有人可以查看或篡改你的数据。
  • 隐私:在合适的时机之前,保持敏感操作(如投票或交易)的机密性。
  • 透明度:一旦揭示,任何人都可以验证和审计数据。
  • 弹性:通过让一组人(Keypers)而不是单个实体参与揭示过程,Shutter 减轻了操纵或失败的风险。

权衡

  • 复杂性:设置 Keypers 并进行协调需要付出努力。
  • 延迟:在交易被揭示和处理之前,会有一个短暂的延迟。
  • 信任模型:假设大多数 Keypers 会诚实地行事。

展望未来

Shutter 符合以太坊关于私密、抗审查交易的愿景。随着全同态加密(FHE)和零知识虚拟机等新技术变得更加实用,Shutter 的方法将变得更加强大 - 但它今天已经提供了价值。

无论你是在 DAO 中投票、交易资产还是构建 dApp,Shutter 都可以保护你的行动不被看到或利用,确保交易保持私密和防篡改,直到需要揭示的那一刻。

Commit-reveal 是基础,Shutter 通过阈值加密对其进行增强,因此你不必依赖信任或时机。

对你的 dApp 的阈值加密保护感兴趣吗?

  • 原文链接: blog.shutter.network/tir...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
shutter
shutter
江湖只有他的大名,没有他的介绍。