V神新作,含沙射影剑指EOS治理?

转载
2055 天前
14401

来源:链闻Chain News


文章来源:Vitalik Buterin,

个人博客翻译:岛娘、Aaryn、May、Joanna,SmartSignature 社区Vitalik Buterin,以太坊创始人


在过去几年中,人们越来越关注使用刻意设计的经济激励(Economic Incentives)和机制设计(Mechanism Design)来协调各种情况下参与者的行为。在区块链世界里,机制设计最早为区块链本身提供安全保障,鼓励工作量证明中的矿工(Miner)或权益证明中的验证者(Validator)诚实的参与,但最近它也被应用于诸如预测市场(Prediction Markets),通证精选注册表(Token-Curated Registries) 和许多其他的场景中。新兴的激进市场运动(RadicalXChange Movement)运动同时产生了哈伯格税(Harberger Taxes),二次投票(Quadratic Voting),二次融资(Quadratic Financing)等实验。最近,人们越来越关注使用基于通证的激励措施来鼓励社交媒体上的高质量帖子。然而,随着这些系统的发展从理论到实践越来越接近,有许多我认为尚未被充分审视的挑战亟待解决。

最近一个从理论到实践的例子,币乎是一个来自中国的社交平台,最近发布了一个基于通证的机制,鼓励人们写帖子。基本机制(参见币乎 KEY 中文白皮书)是:

如果平台的用户持有 KEY 通证,他们就能够将这些 KEY 通证放在文章上 ;每个用户每天可以进行 k 次投票,并且每次投票的 「权重」 与进行投票的用户总投票数成比例。拥有更多票数的文章显得越来越突出,文章的作者得到的 KEY 通证的奖励数量大致与该文章获得的 KEY 投票数量成正比;这里我们作了一定的简化,实际的机制有一些非线性的成分,但它们对机制的基本功能并不重要。KEY 具有价值,因为它可以在平台内以各种方式使用,特别是所有广告收入的一部分用于回购和销毁 KEY。(是的,要向它们的这种设计竖起大拇指,而不是另一个 交换媒介通证)。

这种设计并非独一无二。激励在线内容创作是许多人关心的事情,并且有许多类似的设计,以及一些相当不同的设计。在这种情况下,这个特定的平台已经被大量使用:

几个月前,Reddit 上关于以太坊交易的子板块 /r/ethtrader 引入了一个类似的实验性功能,其中向用户发出称为 「甜甜圈」 的通证,使评论得到提升,每周根据评论获得多少个赞同来按照比例向用户发送一定数量的甜甜圈。甜甜圈可用于购买在板块顶部设置横幅内容的权利,也可用于在社区民意调查中投票。

然而,与 KEY 系统中发生的情况不同,这里 B 在 A 投票给 B 时收到的奖励与 A 持有的通证不成比例 ; 取而代之的是,每个 Reddit 帐户都有相同的能力为其他 Reddit 帐户做出贡献。

这种试图以摒弃捐赠 / 小额付费的已知方式奖励高质量内容创作者的实验,是非常有价值的;用户生成的互联网内容回报不足是社会中一个非常重要的问题(参见 「自由激进主义」 和 「作为劳动结晶的数据」 ),加密社区试图利用机制设计的力量来寻找解决之道令人鼓舞。但不幸的是,这些系统依然容易遭到攻击。


01
票选自己,大户与贿选

以下是人们如何从经济上攻击上述设计。假设一些富有的用户有一定数量的 N 通证,每个用户的 k 个好评将给予接收者一个 N × q 的激励(q 在这里可能是一个非常小的数字,如:假设 q=0.000001)。这个用户可以简单的把好评投给自己的马甲号,自己将获得 N × k × q 的回报。因此,系统将得出每个用户在每个时期的「利率」为 k × q 而轻易的崩塌,这个机制没有完成任何其他的事。

实际上币乎机制似乎预见到了这一点,设有超线性逻辑,使获得更多 KEY 的文章不按比例地获得更大的奖励,这看起来是鼓励投票给流行帖子而不是投给自己。在使用代币投票的健康系统中,一种常见的模式是加入这种超线性去防止票选自己而破坏整个系统;大部分 DPOS 机制具有有限的代表席位,对于没有足够票数加入其中席位的人来说奖励为零,效果相似。但这些机制总是会不可避免的带来两个新的弱点:

他们补贴了大户,因为大户和集团依然拥有可以自我投票的资金;用户可以通过贿赂其他用户来集中投票给他们。

贿赂攻击听起来可能有些牵强(这里有人曾经接受过现实生活中的贿赂吗?),但在成熟的生态系统中,它们会看起来更加真实。区块链世界中,大多数贿赂攻击发生的时候,运营者会使用委婉的新名词给这个概念换一个友好的新面孔:这不是贿赂,而是可以「分红」的「抵押池」。贿赂甚至可以被混淆:想象一下加密货币交易所提供零费用并花费精力来制造异常良好的用户界面,甚至不试图获取利润 ; 取而代之,它使用用户存入的代币参与各种代币投票系统。也不可避免地会有人认为群内勾结只是平常;最近涉及 EOS DPOS 的贿选丑闻可以被视作一个例子。

最后,这里有一种「消极贿选」的可能性,如勒索或胁迫,胁迫参与者以某种方式遵循机制行事 , 否则将予以伤害。

在 /r/ethtrader 的实验中,由于担心人们涌入购买甜甜圈以转变治理的民意调查,社区决定只有锁定(即:不可交易)的甜甜圈有资格用于投票。但是这里有一个比购买甜甜圈更廉价的攻击方式(这种攻击可以被认为是一种混淆的贿赂):租用它们。如果一个攻击者已经持有 ETH, 它们可以把它当做抵押品放在例如 Compound 一样的平台上,以取出某种通证的贷款,以获得使用该通证的全部权益,包括参与投票,一旦完成了投票可以轻易的把通证还回贷款合约并拿回自己的抵押品 —— 完全不需要承受一秒他们用于投票的通证的价格暴露,即使通证投票机制包含一个时间锁定(例如币乎确实如此)。在每个案例中,围绕贿赂和意外的过度授权以及大户参与者的问题都难以避免。


02
身份

一些系统试图通过利用身份系统来减轻大户对通证投票的影响。在 /r/ethtrader 甜甜圈系统的案例中,举例来说,虽然治理民意调查是通过代币投票完成,但首先决定你获得多少甜甜圈(即:代币)则是由 Reddit 账户决定的:来自 1 个 Reddit 账户的 1 次投票 = 获得 N 个甜甜圈。身份系统的理想目标是让个人相对容易的去获得一个身份,而相对困难的去获得很多个身份。在 /r/ethtrader 甜甜圈系统,是 Reddit 账号, 在 Gitcoin CLR 匹配系统,是用于相同目的的 Github 账号。但是身份,至少从迄今为止的实施上来看,仍是一个脆弱的事情 …


噢,你是否懒得自己搭建这样的手机点击架子?也许你正在寻找这个:


常见的关于粗略的网站可能或可能不会欺骗你的警告,需要你自己去做调研,等等都可以应用。

可以说,像木偶大师一样通过控制成千上万的虚假身份比贿赂别人更容易攻击这些机制。你认为应对的机制是把安全性提高到政府级身份证一样?好吧,你可以从 这里 开始探索,但请记住有一些专门的犯罪组织已经走在你的前面。即使所有地下的组织被拆除,只要我们足够愚蠢的设计出一个让此类活动有利可图的系统,敌对政府肯定会创造数百万的假护照。这甚至没有开始提到反向攻击,身份发放机构试图通过否认他们的身份证件来剥夺边缘社区的权力 …


03
共谋

很多机制都因多重身份甚至流动性市场的出现,而看起来会以类似的方式失败,人们可能会问,是否存在导致所有这些问题的一些深层次的共同点?我认为答案是肯定的,并且「共同点」是这样的:在一个参与者可以勾结的模型中建立维持理想属性的机制比在参与者不能勾结的模型中更难,更可能是完全不可能的。大多数人可能已经对此有一些直觉 ; 这一原则的具体实例背后是成熟的规范,通常是促进竞争和限制价格垄断的合作,投票买卖和贿赂的法律。但这问题更深刻,更普遍。

在关注个人选择的博弈论版本中 - 即假定每个参与者独立做出决策并且不允许代理人团体为了互利而工作的可能性的版本,有 数学证明 在任何游戏中都必须存在至少一个稳定的纳什均衡,并且机制设计者有很大的自由度来「设计」游戏以实现特定的结果。但是在被称为合作博弈论允许联盟合作的可能性的博弈论版本中,有 大类游戏 没有任何稳定的结果,联盟无法有利地对结果做出偏离而获利。

大多数游戏,可以正式的描述为 N 个代理商的游戏,其中任何超过一半的代理商组合在一起,都可以获得固定的奖励并在他们中进行分配,这类似于公司治理、政治和人类生活中许多其他情况,都是 那套本质上不稳定的游戏的一部分。也就是说,如果存在一些固定的资源池和一些目前建立的分配这些资源的机制的情况,并且不可避免地有 51% 的参与者可能密谋控制资源,无论当前是什么配置,总会出现一些可能对参与者有利的阴谋。然而,这个阴谋反过来又容易受到潜在的新阴谋的影响,可能包括以前的阴谋者和受害者…等等。


事实上,合作博弈理论下的多数游戏的不稳定性,可以说是一种简化的一般数学模型,为什么政治上没有「历史终结」,也没有一个系统被证明是完全令人满意的制度 ; 我个人相信它比著名的箭头定理更有用。

有两种方法可以解决这个问题。首先是试图将自己限制于「无身份」和「共谋安全」的游戏类别,因此我们不需要担心贿选或身份。第二种是试图直接攻击身份和共谋抵抗问题,并从实际上解决它们,以便我们可以实现具有更丰富属性的非共谋安全游戏。


04
无身份和共谋安全的游戏设计

无身份和共谋安全的游戏类别很重要。即使是工作量证明也是共谋安全的,直到单个参与者具有约 23.21% 的总 Hashpower,并且通过 巧妙的工程 设计,这个界限可以增加到 50%。在达到较高的界限之前,竞争市场是共谋安全的,这个界限在某些情况下很容易达到,但在其他情况下则不然。

在 治理和内容管理 的情况下(这两者都是识别公益和公害的一般问题的特殊情况),一种主要的运作良好的机制是 futarchy - 通常被描述为「通过预测市场来治理」,虽然我也会争辩说,证券存款的使用基本上属于同一类技术。Futarchy 最基本形式的是,他们使「投票」不仅仅是一种意见的表达,而且还是一种 预测,对做出正确预测的给予奖励,并对做出错误预测的进行惩罚。例如,我的提案「内容管理 DAO 的预测市场」提出了一种半集中式设计,任何人都可以对提交的内容投出赞成和反对票,使得赞成票数越多的内容越容易被看到,还有一个「审核小组」做最终的决定。

对于每个帖子,有一个很小的概率(与该帖子的赞成 + 反对的总量成比例),将要求审核小组对帖子做出最终决定。如果审核小组批准了一个帖子,那么所有对其投了赞成票的人都会获得奖励,并且所有对其投了反对票的人都会受到处罚,如果审核小组拒绝某个帖子,则会造成相反的结果 ; 这种机制鼓励参与者通过「预测」审核小组的判断来做出赞成和反对投票。

Futarchy 的另一个可能的案例是具有通证的项目的治理,如果投票通过,任何参与投票做出决定的人都有义务以投票开始时的价格购买一定数量的通证 ; 这样可以确保为一个坏的决策的投票的成本高昂,并且如果错误的决策赢得投票,那么批准决策的每个人都必须基本上买断项目中的其他人。这确保了个人对「错误」决定的投票对于所有参与投票的人来说可能是非常昂贵的,从而排除了廉价的贿赂攻击的可能性。


Futarchy 其中一种形式的图形描述,创造了代表两个「可能的未来世界」的两个市场,并选择了一个价格更优的市场。来源:ethresear.ch

然而,这种机制可以做的事情的范围是有限的。对于上面的内容管理示例,我们并未真正解决治理问题,我们只是扩展已假定受信任的治理小工具的功能。人们可以尝试用预测市场来取代审核小组 , 用通证的价格代表购买广告空间的权利,但实际上价格是一个过于嘈杂的指标,除了少数的重大决策,其它任何事情都显得具有可行性。而且,我们试图最大化的价值,通常并不是一枚通证的价值最大化所能代表的。

让我们更清楚的了解下为什么,通常情况下,我们无法通过其对于通证价格的影响轻松确定治理决策的价值。遗憾的是,识别对公共有利和有害的良好机制不能是随意身份,也无法预防共谋。如果有人试图维护游戏的随意身份化,尝试建立一个身份无关紧要,只有通证决定机制的系统,那么会出现对合法的公共有利的激励失效或对富豪统治的过度补贴的情况。

比如以下问题。假设有位创作者正输出一个公共良物(比如一系列博客)可以为 1 万人的社区中的每个人带来价值。又假设存在某种机制,这个社区的每位成员都可以做出某种行为使作者得到一美金的收入。除非这个社区的成员极其无私,或者机制中社区成员做出这种行为的成本必须远低于 1 美元,否则,支持作者的社区成员所获得的部分利益将远远低于支持作者的成本,使整个系统坍塌于 公地悲剧 , 将没有人支持作者。因此,必须有种途径,在作者获得 1 美金收入的时候产生的成本远低于 1 美金。但现在假设,如果有一个假社区,又一个富有的攻击者的 10000 个假账号组成。这个假社区除了支持创作者以外和真的社区没有两样,他们会支持另一个这位攻击者的假账号。如果一位真的社区成员可以在成本极低的情况下给予作者 1 美元,那么攻击者也可以不断重复的在成本极低的情况下给予自己 1 美元,从而消耗系统的资金。任何可以帮助协同不足方协同的机制,如果没有正确的保障措施,也可以帮助已协调的一方(如被同一人控制的许多账号)过度协同,从系统中取走资金。

当目标不是资金,而是确定哪些内容应该最容易被看到时,就会出现类似的挑战。您认为哪些内容可以获得更多的美元价值支持它:一个合法的高质量博客文章,使数千人受益,但对个人收益的影响却相对很少,或者这种?


或者这样 ?


那些一直关注近期「在现实世界中」政治的人也可能会指出一种不同类型的内容,这些内容有利于高度集中的行为者:社交媒体操纵敌对政府。最终,中心化系统和分布式系统都面临着同样的基本问题,这个问题是 「思想交易市场」(以及更普遍的公益)与经济学家通常使用这个术语「有效市场」相距甚远,这导致即使在「和平时期」公益产品的生产也不足,也容易受到主动攻击。这是一个难题。

这也是为什么基于通证的投票系统(如币乎)比基于身份的系统(如 Gitcoin CLR 或 /r/ethtrader 甜甜圈实验)具有一个重要的优势:至少购买大量的账户没有任何好处,因为你所做的一切与你拥有的通证数成正比,与通证分散到多少账户中无关。然而,不依赖任何身份模式而只依赖通证的机制从根本上无法解决集中式利益的问题,这些利益超出了试图支持公共利益的分散社区 ; 一个赋予分布式社区权力的无身份机制无法避免过度授权那些假装成分布式社区的集中式富豪。

但是,公共有益的游戏脆弱也不仅仅是身份问题 ; 这也是贿赂。要了解原因,请再次考虑上面的例子。攻击者的 10001 个马甲组成的「假社区」,攻击者只有一个身份,帐户接收资金,但是其他 10000 个帐户是真实用户。用户的确收到每个账号 0.01 美元的贿赂,会促使攻击者采取额外获得 1 美元的行动。如上所述,这些贿赂可能会被高度混淆,即使是采用方便而代表用户投票的第三方监管服务。而在用通证投票设计的情况下,混淆的贿赂甚至更容易:人们可以通过在市场上租用通证并参与投票。因此,虽然某些类型的游戏(特别是预测市场或基于证券存款的游戏)可以做到无合谋和无身份,但是对于普遍的公共物品筹款,不幸的是,无合谋和无身份没有成效。


05
抵抗共谋与身份

另一种选择是解决身份认证的问题。如前面提到的,仅仅提升到更高安全性的中心化身份认证系统(如护照和其他政府身份证)将无法大规模运作。在充分激励的背景下,他们非常不安全,容易受到颁证的政府的影响! 相反,我们在这里讨论的那种「身份」包含多种强大的多要素,一组要素确定的行为者实际上是一个独特的个体。 这种网络身份的早期原型模型可以说是 HTC 区块链手机的社交复苏:


基本想法是,你的私钥在最多五个可信联系人之间进行私密共享,以这种方式在数学上确保其中三人一起可以恢复原始私钥,但两人或更少不能。这有符合「身份系统」的资格 ——这是你的五个朋友,确定是否有人试图恢复你的帐户的确是你。然而,它是特殊用途的身份系统,试图解决个人账户安全的问题,与试图识别独特人类的问题不同(并且更容易!)。也就是说,个体互相提出主张的通用模型,很可能被引导到某种更强大的身份认证模型中。如果需要,可以使用上述「未来」机制来增强这些系统:如果某人声称某人是一个独特的人,而另一方则不同意,并且双方都愿意背负债务来起诉,那么系统可以召集陪审团来判断谁是对的。

但我们也想要另外一种至关重要的身份财产特征:出租或出售个人身份无法被信任。显然,我们不能阻止人们达成协议「你寄给我 50 美元,我会把钥匙寄给你」,但我们可以尝试做的是,让这些交易变得不可信——让卖家可以轻松欺骗买方,并给买方实际上没用的私钥。实现此目的的一种方法是建立一种机制,通过该机制,密钥的所有者可以发送撤销密钥的事务,并用所有者选择的另一个密钥替换它,所有这些都是无法证明的。也许解决这个问题的最简单方法是,使用运行计算的可信方并且仅发布结果(以及证明结果的零知识证明,因此可信方仅因隐私而信任,而不是诚信),或者通过 多方计算 实现相同的去中心化功能。这种方法不能完全解决合谋:一群朋友仍然可以聚在一起坐在同一张沙发上并协商投票,但他们至少会将其降低到一个可控制的程度,不会导致这些系统完全失败。

还有一个问题:私钥的初始分配。如果用户在第三方保管服务中创建其身份,然后存储私钥并使用它秘密地进行投票,会发生什么?这将是一种隐含的贿赂,用户用投票权换取了用户服务方的便捷的服务。而且,假设系统是安全,它通过无法证明投票而成功地尝试阻止贿赂,第三方主机的秘密投票将也是无法察觉的。解决这个问题的唯一方法似乎是亲自验证…例如,人们可以拥有一个「发行人」生态系统,每个发行人都会发放带有私钥的智能卡,用户可以立即将其下载到自己的智能手机上并发送消息,用不同的密钥替换密钥,而这些密钥不会透露给任何人。这些发行人可能是聚会和会议,也可能是某些投票机制认为值得信赖的个人。

尽可能建立抵抗共谋机制的基础设施,包括强大的去中心化的身份系统,这是一项艰巨的挑战。但如果我们想要释放这种机制的潜力,我们必须尽力尝试似乎是不可避免的。确实,当前的计算机安全教条(例如,引入在线投票)仅仅是「不」。但如果我们想拓展类似投票机制和类似金融的作用,包括更高级的形式,如二次投票 (quadratic voting)和二次金融(quadratic finance)或者更多形式。我们别无选择,只能正面迎接挑战,努力尝试,并希望至少在某些用例中能够成功地保证足够安全。

特别感谢 Glen Weyl,Phil Daian 和 Jinglan Wang 进行校对。