即使进行了零知识证明(ZK)包装,数字身份也存在风险吗?

文章探讨了零知识证明(ZK)包装的数字身份的潜在风险,尽管ZK能解决许多隐私问题,但它并不能完全消除风险。文章指出,试图维护“一人一身份”的模式会带来隐私泄露、易受胁迫和错误等问题。文章提倡一种折衷方案,即允许多个身份的存在,并提出“多元身份”的概念,包括显式的(基于社交关系)和隐式的(多种类型的ZK身份,没有哪一种占据绝对市场份额),以实现更理想的平衡。

数字身份即使经过 ZK 包装也存在风险吗?

数字身份即使经过 ZK 包装也存在风险吗?

特别感谢 Balvi 志愿者、Silviculture 成员和 World 团队成员的讨论。

在数字身份系统中使用零知识证明来保护隐私现在至少在某种程度上正在成为主流。各种 ZK-passport 项目正在创建非常用户友好的软件包,这些软件包使用零知识证明来证明用户拥有有效的 ID,而不会泄露其 ID 的任何详细信息。World ID(以前的 Worldcoin)使用生物识别技术进行验证,并使用零知识证明来保护隐私,最近用户数量超过了 1000 万台湾政府的数字身份项目使用了零知识证明,欧盟的数字身份工作也越来越重视零知识证明

从表面上看,ZK 包装的数字身份的广泛采用似乎将是d/acc的巨大胜利,可以保护我们的社交媒体、投票和各种互联网服务免受女巫和机器人的操纵,而又不会损害隐私。但这是否真的如此简单,或者 ZK 包装的 ID 是否仍然存在风险?本文将提出以下论点:

  • ZK 包装解决了许多重要问题。
  • ZK 包装的 ID 仍然存在风险。 这些风险似乎与生物识别与护照无关;大部分风险(隐私泄露、易受胁迫、错误)特别来自于试图维护一人一身份属性
  • 另一个极端,使用“财富证明”来反女巫,对于太多的用例来说是不够的,所以我们需要 某种 “类 ID”的东西。
  • 理论上的理想是介于两者之间的东西,你可以以 N² 的成本获得 N 个身份
  • 这种理想在实践中很难实现,但正确的“多元身份”接近这个理想,因此是最好的现实解决方案。多元身份可以是显式的(例如,基于社交图谱的)隐式的(多种类型的 ZK-ID,没有一种类型接近 100% 的市场份额)

ZK 包装身份的工作原理

假设你已经扫描了你的眼球以获得 World ID。或者,你可能用手机的 NFC 阅读器扫描了你的护照,以获得基于 ZK-passport 的 ID。为了本文提出的论点的目的,两者具有相同的属性(除了一些像多重国籍这样的极端情况)。

在你的手机上,你有一个秘密值 s。在链上全局注册表中,有一个公共哈希值 H(s)。要登录到应用程序,你需要生成一个特定于应用程序的用户 ID H(s, app_name),并且你需要使用零知识证明来证明这个 ID 来自与注册表中的公共哈希值相同的 s。因此,对于每个公共哈希值,你只能为每个应用程序生成一个 ID,但永远不会泄露 哪个 特定于应用程序的 ID 对应于 哪个 公共哈希值。

实际上,该设计可能会更加复杂。在 World ID 中,特定于应用程序的 ID 实际上是一个哈希值,它接受应用程序 ID 和一个 会话 ID。因此,同一应用程序中的不同操作也可以彼此解除链接。基于 ZK-passport 的设计可以用类似的方式构建。

在我们深入研究这种类型的身份的缺点之前,首先重要的是要了解它所提供的优点。在 ZKID 这个非常小的世界之外,为了向需要 ID 的服务验证你的身份,你需要实际透露你的合法身份。这是对常见计算机安全最小权限原则的严重违反:一个进程应该只获得完成其任务所需的最小权限和信息。他们需要证明你不是机器人,或者你已年满 18 岁,或者你来自某个特定国家/地区;他们会获得指向你整个身份的指针。

我们能获得的最好的改进是指向电话号码或信用卡号码之类的间接Token,其中知道你的电话或信用卡号码与你的活动(应用程序)之间链接的行为者,以及知道你的电话或信用卡号码与你的合法身份(公司或银行)之间链接的行为者是分开的。但即使这种分离也是非常脆弱的:电话号码总是会被泄露,其他一切也是如此。

通过 ZK 包装,这些问题在很大程度上消失了。 现在,让我们来讨论到目前为止讨论较少的内容:没有 消失的剩余问题,事实上,由于这些方案更强的每人一个身份的限制,这些问题甚至可能会变得更糟。

单独使用 ZK 无法实现假名性

假设一个 ZK 身份平台完全按照预期工作,忠实地复制了上述所有逻辑,并且我们甚至找到了如何在不信任中心化权威的情况下,为非技术熟练的用户长期保证用户密钥安全的方法。但与此同时,让我们做出一个现实的假设,即 应用程序 不会合作;它们将是“务实的”,追求被证明为最大化用户便利性的设计选择,但这些选择似乎总是倾向于它们的政治和商业利益。

在这个世界中,社交媒体应用程序将不会使用某种涉及频繁轮换会话密钥的花哨设计。相反,它们将只为每个用户使用一个特定于应用程序的 ID - 并且因为 ID 系统是每人一个 ID,每个用户_只能_拥有一个帐户(而不是像今天 Google 帐户这样的“弱 ID”,普通人可以合理地获得约 5 个帐户)。在现实世界中,假名性通常需要拥有多个帐户:一个用于你的“常规身份”,另一个用于任何假名身份(参见“finsta and rinsta”)。因此,你获得的实际假名性水平可能_低于_今天的现状,因此在每人一个 ID 下,即使经过 ZK 包装,我们也有可能更接近于这样一个世界,即你所有的活动都必须事实上置于一个单一的公共身份之下。 在一个风险日益增长的世界(例如,无人机)中,取消人们通过假名性保护自己的选择会带来重大的负面影响。

单独使用 ZK 无法保护你免受胁迫

如果你不发布你的密钥 s,没有人可以看到你的各种帐户之间的公开链接。但是如果有人发布了呢?政府可以强迫某人透露他们的密钥,以便他们可以看到他们的所有活动。这并非理论上的:美国政府已经开始要求签证申请人公开他们的社交媒体帐户。此外,雇主可以很容易地将透露你的完整公开资料作为就业条件。即使是各个应用程序也可以在技术上要求透露你在 其他 应用程序上的身份,作为加入的条件(事实上,“使用[应用程序]登录”默认情况下会这样做)。

同样,在这些情况下,ZK 属性的价值会消失,但新的“每人一个帐户”属性的缺点仍然存在。

可以设计这些方案来使胁迫更加困难:例如,你可以使用多方计算来生成每个特定于应用程序的 ID,涉及用户和服务。这将使没有应用程序运营商的参与,用户无法证明其特定于应用程序的 ID。这提高了要求某人透露其整个身份的难度,但它并没有消除这种可能性,并且这种方案还有其他缺点,例如,要求应用程序开发者是一个实时运行的实体,而不是像被动的链上智能合约。

单独使用 ZK 无法解决非隐私风险,例如错误

所有形式的 ID 都有极端情况:

  • 政府主导的 ID(包括护照)不涵盖无国籍人士。它也不涵盖尚未拥有此类文件的人。
  • 另一方面,政府主导的 ID 为拥有多重国籍的人提供了独特的特权。
  • 护照签发者可能会被黑客入侵,或者敌对政府情报机构甚至可能开始印刷数百万个虚假身份(例如,操纵“游击选举”就像这个俄罗斯的,如果它们变得流行)
  • 生物识别 ID 在面对相关生物特征因某种形式的伤害而受损的人时会失败。
  • 生物识别 ID 很有可能会被复制品欺骗。如果生物识别 ID 的价值变得非常高,我们可能会看到整个身体部位被培育出来,只是为了“养殖”这样的 ID。

这些极端情况在尝试维护每人一个身份属性的系统中危害最大,并且它们与隐私无关;因此,ZK 没有帮助。

财富证明对于反女巫是不够的;因此,我们需要某种形式的身份

在纯粹的密码朋克中,一种常见的提议替代方案是完全依赖财富证明作为反女巫,而不是尝试任何类型的身份系统。你可以通过让每个帐户花费一定的金额来防止某人轻松创建大量帐户。这在互联网上有先例;例如,Somethingawful 论坛要求一次性支付 10 美元才能创建一个帐户,如果你被禁止,该费用将被没收 - 尽管这在实践中并非真正的密码经济,因为创建新帐户最困难的部分不是替换 10 美元,而是获得一张新的信用卡。

潜在地,你甚至可以使付款有条件:要获得一个帐户,你只需将资金用于抵押,并在你被禁止的罕见情况下损失资金。这理论上使得提高抵押金额变得更高。

这在许多类型的情况下都可以很好地工作。但在某些情况下,这种方法根本不适用于。我将讨论两个主要类别,我将描述为 “类 UBI”“类治理”

在类 UBI 情况中对身份的需求

通过类 UBI情况,我的意思是这样一种情况,即向非常广泛(理想情况下是普遍的)的用户群体提供一定数量的资产或服务是有价值的,而不管他们是否有支付能力。Worldcoin 系统地执行此操作:任何拥有 World ID 的人都将获得少量但定期的 WLD 代币供应。许多代币空投都以更非正式的方式执行此操作,试图将至少一些代币交到尽可能多的用户手中。

就个人而言,我不期望此类代币的价值足以支付一个人的生活费用。在 AI 驱动的经济体中,它可能会富裕 1000 倍,但在这样的世界中,由天然资源财富支持的政府运营的项目(如果没有其他的话)将继续在经济上更有意义。相反,我认为 这种小型 UBI 解决的现实问题是让人们获得足够数量的加密货币来进行一些基本的链上交易和在线购买。 这可能包括以下内容:

  • 获得一个 ENS 名称
  • 在链上发布一个哈希值以初始化一些 ZK 身份
  • 支付社交媒体平台的费用

如果加密货币在世界范围内得到非常广泛的采用,那么这就不再是一个问题。但是,当加密货币在世界范围内没有得到非常广泛的采用时,这可以成为人们获得链上非金融应用程序以及否则根本无法访问的在线商品和服务的生命线。

还有 另一种方法可以实现类似的事情:“普遍基本服务”。让每个拥有身份的人都能够在特定应用程序中发送有限数量的免费交易 这种方法可能更符合激励性,并且更具有资本效率,因为它可以通过每个受益于此类采用的应用程序来完成,而无需为非用户付费,尽管这会带来普遍性较低的权衡(用户只能获得保证访问参与应用程序)。** 但在这里,你也需要一个身份解决方案来保护系统免受垃圾邮件的侵害,而无需通过可能并非每个人都可以访问的付款方式进行付款的排他性。

要突出的最后一个重要类别是 “普遍基本保证金”。身份的功能之一是有一些可以作为惩罚目标的东西,而无需用户抵押与激励规模相等的资本。这也有助于使参与更少地取决于你拥有的资本量(或根本不需要任何资本)。

在类治理情况中对身份的需求

考虑一个投票系统的情况(例如,社交媒体平台上的点赞和转发)。如果用户 A 拥有的资源是用户 B 的 10 倍,那么他们就拥有 10 倍的投票权。但是,每个单位 的投票权对用户 A 的好处是用户 B 的 10 倍(以经济术语衡量),(因为 A 更大,因此 A 从所有事情中获得的或损失的经济术语更多)。因此,总的来说,A 的投票使 A 受益的程度是 B 的投票使 B 受益的程度的 100 倍。出于这个原因,我们预计 A 会投入更多的精力来参加投票,确定如何投票以最大程度地实现他们的目标,甚至可能采取策略来操纵算法。这是鲸鱼在代币投票方案中产生过大影响的基本原因。

这是一个更普遍、更深层的原因,为什么治理系统不希望给予一个人控制的 100,000 美元与 1,000 人分摊的 100,000 美元相同的权重:1,000 人分摊的 100,000 美元代表 1,000 个不同的人,因此它更有可能包含更高数量的有价值的信息,而不是以高数量爆发的较小数量的信息。来自 1,000 个不同人的信号也可能更“柔和”,因为来自不同人的不同组成信号通常会相互抵消。

这既适用于正式的投票系统,也适用于“非正式的投票系统”,例如人们通过公开发表声明来参与文化演变的能力。

这表明,治理类的系统并不会真正满足于以相同的方式对待每个大小相同的美元捆绑包,而不管其来源如何。该系统有兴趣了解美元捆绑包的 内部协调水平

请注意,如果你接受我用来描述这两种情况(类 UBI 和类治理)的方式,那么 从技术上讲,对任何类型的一人一票的明确需求都会消失。

  • 对于 类 UBI 应用程序,你真正需要的是一种身份方案,即你的第一个身份是免费的,但你可以拥有的身份数量是有限的,在你获得更多身份之前,获得更多身份的成本太高,以至于无法利用它来攻击系统。
  • 对于 类治理应用程序,你需要了解某种代理,以了解你与之交互的资源捆绑包是单个参与者,还是一些“有机的”不太协调的集合。

在这两种情况下,身份仍然非常有用 - 但它遵循任何严格的每人一个规则的要求都不再存在。

理论上的理想是以 N² 的成本获得 N 个身份

从以上论点中,我们可以看到,有两个压力从相反的两端约束了身份系统中所期望的获得多个身份的难度:

  • 对于你可以轻松获得的身份数量,不能有容易辨认的硬性限制。 如果你只能拥有一个身份,你就没有假名性,并且你可能会被迫透露它。事实上,即使是大于 1 的常数也有风险:如果每个人都拥有五个身份是众所周知的,你可能会被迫透露所有五个身份。

    支持这一点的第二个论点是 假名性是脆弱的,因此需要一个大的安全缓冲区。 借助现代 AI 工具,很容易关联多个平台之间的活动:在你使用的单词、你发布的时间、帖子之间的时间间隔、对话主题和其他公共信息之间,你只需要 33 位 信息就可以唯一地识别世界上的一个人。人们可以使用 AI 工具进行防御来对抗这种情况(例如,我已经通过以其他语言编写它们并使用本地运行的 LLM 翻译成英语来匿名发布内容),但即便如此,你也不希望一个错误成为你假名性的终结。

  • 身份不能纯粹是金融的(以 N 的成本获得 N 个身份),因为这太容易受到大规模参与者拥有过大影响的风险(因此小规模参与者根本没有影响力)。 我们在新的 Twitter Blue 中看到了一些这种情况,其中获得复选标记的每月 8 美元的成本太低了,无法认真限制任何滥用行为,并且今天用户在很大程度上忽略了复选标记。

    此外,我们可能不希望拥有 N 倍资源的参与者能够逍遥法外地进行 N 倍的不当行为。

将这些论点放在一起,我们希望尽可能容易地获得多个身份,但要受到以下约束:(i) 限制大规模参与者在类治理应用程序中的权力,(ii) 限制利用类 UBI 应用程序的能力。

如果我们直接从上一节中类治理应用程序的数学模型中汲取灵感,那么我们将得到一个非常明确的答案:如果拥有 N 个身份能给你带来 N² 的权力,那么获得 N 个身份的成本应该是 N²。 而且,碰巧的是,这也是对类 UBI 应用程序的令人满意的答案。

多元身份适应了这个理想

通过“多元身份”,我的意思是这样一种身份制度,即没有单一的主要发行机构,无论是人、机构还是平台。这可以通过两种方式实现:

  • 显式多元身份(也称为 “基于社交图谱的身份”):你通过该社区中其他人的证明来证明你是一个人(或其他一些声明,例如,你是社区成员的声明),而这些证明反过来又通过相同的机制进行验证。去中心化社会论文更详细地讨论了这些设计。Circles 是其在运行中的一个实际示例。
  • 隐式多元身份。这是今天的现状:有许多不同的身份提供商 - Google、Twitter以及它们在其他国家/地区的各种等效项、多种形式的政府 ID 等。很少有只接受其中一个的应用程序;大多数都接受多个,因为它们必须这样做才能覆盖其潜在用户。

显式多元身份自然会在假名性方面有所作为:你可以拥有一个假名身份(甚至多个),并且每个身份都可以通过他们的行为在他们的社区中建立声誉。理想的显式多元身份系统甚至可能不需要具有离散身份的概念;相反,你可能拥有可证明的过去行为的无定形云,并根据需要为每个行动以细粒度的方式证明它的不同部分。

零知识证明将使假名性更容易,因为你可以使用你的主要身份来引导一个假名,通过私下提供新假名应该被认真对待的第一个信号(例如,ZK 证明拥有一定数量的代币才能从 anon.world 发帖,或者也许可以 ZK 证明关于一个人拥有的 Twitter 关注者类型的某些声明)。很可能还有更有效的使用零知识证明的方法。

隐式多元身份具有“成本曲线”,该曲线比二次曲线更陡峭,但仍然具有大多数正确的属性。大多数人拥有我在本文中列出的一些 ID 形式,但并非所有形式的 ID。你可以通过一些努力获得另一种形式的 ID,并且你获得的 ID 形式越多,获得下一个 ID 的收益/成本比就越不利。因此,它为治理攻击和其他滥用提供了所需的制动,同时仍然确保没有一组固定的 ID 是胁迫者可以要求,并合理期望你透露的。

任何形式的多元身份(隐式或显式)自然都更具容错性:双手或眼睛畸形的人可能仍然有护照,无国籍人士可能仍然可以通过某种非国家的方式证明他们是一个人。

请注意,如果任何一种形式的 ID 接近 100% 的市场份额,并且将其作为唯一的登录选项的要求变得现实,那么这些属性就会中断。 这对我来说是身份系统试图过于“普遍”可能带来的最大风险:如果它们的市场份额太接近 100%,它们会将世界从多元身份转变为每人一个身份的模型,由于我在本文中描述的原因,该模型具有更糟糕的属性。

在我看来,今天存在的“每人一个”身份项目的理想结果是如果它们与基于社交图谱的身份合并。基于社交图谱的身份项目存在的最大问题是扩展到非常大量的用户。每人一个身份系统可以用于引导社交图谱,创建数百万个“种子”,届时将有足够的采用率可以安全地从那时起发展一个全球分布的社交图谱。

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

0 条评论

请先 登录 后评论
Vitalik Buterin
Vitalik Buterin
https://vitalik.ca/