透过 MPC-TLS 和信号量证明实现隐私保护的 Sybil 防御

本文为机器翻译
展示原文

我们提出了一种解决方案,允许互联网用户使用MPC-TLS私密地证明对真实网络账户(如Uber或GitHub)的控制权,而不泄露任何个人数据。通过将这些凭证转换为不可链接的零知识群体证明,我们可以在不损害用户隐私的情况下解锁防女巫攻击的空投、治理和访问控制。

协议概述:

┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐│ 用户浏览器 │ │ TLS公证人 │ │ 网络服务 ││ 扩展 │ │ │ │ (如Uber) │└─────────────────┘ └─────────────────┘ └─────────────────┘│ │ ││←──── MPC协议 ───→│ ││ │ ││←──────── MPC-TLS会话─────────────────────→││ (联合客户端) ││ │ ││──── 加密TLS ───→│ ││ 传输记录 │ ││ │ ││←─── 证明 ─────┤ ││ (混淆电路) │ ││ │ │▼┌─────────────────┐│ 信号量 ││ 群组 ││ 承诺 │└─────────────────┘

该协议工作原理如下(为清晰起见已简化):

阶段1:私密凭证验证

  1. 用户的浏览器扩展和TLS公证人协作与网络服务建立MPC-TLS会话
  2. 公证人使用混淆电路验证密文完整性,对承诺字段签名
  3. 公证人仅看到加密数据,永不看到明文账户信息
  4. 用户获得凭证的加密证明,无需暴露账户详情

阶段2:不可链接的承诺生成

承诺 = 哈希(主密钥 || 凭证群组ID || 账户ID哈希)
  1. 用户使用私密主密钥生成不可链接的身份承诺
  2. 承诺发布到对应的信号量群组(GitHub凭证 → GitHub群组,以此类推)
  3. 每种凭证类型映射到单独群组,实现精细的证明定位

阶段3:提供零知识群体证明

  1. 为验证,用户生成信号量群组成员身份的零知识证明
  2. 证明确认凭证拥有权,不泄露具体账户
  3. 验证方可组合多个群组证明以构建可组合的信任评分

隐私保证:

  • 不可链接:无法将不同网络账户连接到同一用户
  • 群组匿名:单个验证不会泄露凭证群组中具体哪个成员正在生成证明
  • 不可追踪:无法跨不同应用追踪用户
  • 可组合:可同时证明多个群组的成员资格

实施

我们正在构建BringID以在实践中验证这些加密技术。该实施利用现有基础设施(TLSN用于MPC-TLS,信号量用于零知识群体证明)以最大限度地减少新的加密假设。

当前设计假设有一个可信的TLS公证人进行证明验证。我们正在探索各种去中心化方法,以在未来最大限度地减少这种信任要求,包括可信执行环境(TEE)支持的基础设施和分布式验证器网络。

经济安全模型

我们的方法并不从密码学上阻止女巫攻击,而是使其在经济上变得不可行。安全假设是:

每个已验证账户的奖励价值 < 生成一个女巫身份的成本

网络账户需要真实世界活动(Uber乘车、GitHub提交、Airbnb住宿),时间投入(账户陈化、声誉建立),并且通常还有金钱成本(服务使用费)。应用程序可以组合多个凭证群组并应用时间限制验证,以进一步提高伪造成本。


技术规范草案白皮书
相关工作TLSN | 信号量


来源
免责声明:以上内容仅为作者观点,不代表Followin的任何立场,不构成与Followin相关的任何投资建议。
喜欢
收藏
评论