Eric Zhang

Architect @DoraFactory @DoraHacks

DAOrayaki 是一个去中心化的研究者组织和去中心化媒体,通过 DAO的形式去中心化地资助世界各地的研究者进行研究、翻译、分析等工作。DAOrayaki 由早期的 DAO 组织 DAOONE 核心成员发起,得到了Dora Factory基础设施的支持。欢迎通过文末方式提交DAO的研究,瓜分10000USDC赏金池!了解去中心化自治组织(DAO),探讨最新治理话题,关注DAO的发展趋势,欢迎加入DAOrayaki社区!

关于这篇文章的背景,请参考《二次方投票和二次方资助》(https://matataki.io/p/6113 )。在这篇文章发布后的一个月,BSC基金会在DoraHacks开发者平台HackerLink上运行了BSC生态第一轮二次方资助(https://hackerlink.io/grant ),并在其后的15天中收到了全球超过60个开发者团队提交的项目。

在《二次方投票和二次方资助》中,我介绍了Vitalik的博客《Quadratic Payments》所提到的三个问题:身份伪造攻击(Identity Bribery)、勾结(Collusion)、理性忽视问题(Rational Ignorance)。这三个问题其实不限于二次方投票,而是链上治理机制所遇到的通用问题。因此,这些问题的解决方案不仅可以使得二次方投票更规模化和更安全,还可以惠及更多链上治理的机制。

这篇文章的目标是为设计一种“非合作二次方投票”,或“抗勾结二次方投票”的机制做准备。在这种场景下,投票者无法相互之间合作,因此就没有了勾结的可能性。这种机制一个基础框架是,Vitalik Buterin在Ethresear上发表的文章《Minimal anti-collusion infrastructure》[1] (MACI)。因此,我们先解释MACI的机制,从而为进一步探讨如何使用MACI改进二次方投票,消除勾结(Collusion)的可能性。

MACI: Minimal Anti-Collusion Infrastructure

MACI是“最小化抗勾结框架”。背景材料参考Vitalik Buterin 的博客https://ethresear.ch/t/minimal-anti-collusion-infrastructure/5413 ,以及《On Collusion》 https://vitalik.ca/general/2019/04/03/collusion.html

很多的链上治理应用需要“抗勾结”这个特性,但同时又需要区块链对交易执行以及抗审查、保护隐私的保证。投票是有这种需求的一个重要场景,因为很明显在投票中,抗勾结是必须的,同时对执行结果的正确性的要求是很高的,需要保护计票过程,最后,还需要防止对投票者的审查。

设置

假设有一个智能合约\(R\),包含一个公钥的列表 \(K_1 ... K_n\), 以及一些必要的函数,可以把这些公钥注册到智能合约中。另外,只有符合以下两个条件验证身份的参与者的公钥可以进入到R中:

账户属于一个“合法”的参与者(一个独立的人,某个社区的成员,比如拥有某个国家的国籍、在一个论坛上有足够高的声誉、持有不少于某个数量的Token…)

账户持有人个人控制密钥(例如,如果需要的话,可以打印出来以证明)

每一个用户需要stake一笔钱: 如果任何人泄漏了自己的私钥,那么得到私钥的人可以直接取走这笔钱,从而这个账户就会从列表中被移除。这个机制抑制了任何人把私钥交给别人。

另外,假设有一个操作员(\(operator\)),他有一个私钥\(k_\omega\), 和一个对应的公钥\(K_\omega\).

最后,假设有一个机制 \(M\), 它是一个函数 \(action^n \rightarrow Outputs\), 其中,函数的输入是\(n\)个参与者的行为,输出是这个函数定义的某种输出结果。例如,一个简单的投票机制是一个函数,根据输入的值,输出出现次数最多的那个值。

执行

在起始时间\(T_{start}\),\(operator\)开始一个其实状态\(S_{start} = {i: (key=K_i, action = \phi)}, i \in 1...n\).

在起始时间\(T_{start}\)和结束时间\(T_{end}\)之间,任何注册的参与者可以向R发送消息,消息用参与者自己的私钥\(k\)加密。有两种消息:

约定行为: 例如投票。参与者需要发送加密过的消息 \(enc(msg = (i, sign(msg = action, key = k_i)), pubkey = K_\omega)\), 其中\(k_i\)是这个参与者当前的私钥,\(i\)是参与者在\(R\)中的id

更新密钥: 参与者需要发送加密过的消息\(enc(msg = (i, sign(msg = NewK_i, key = k_i)), pubkey = K_\omega)\), 其中\(NewK_i\)是参与者要变更的公钥, \(k_i\)是这个参与者当前的私钥

这时,操作员的工作是按照消息上链的先后顺序处理每一个消息。具体的处理过程:

使用操作员私钥解密消息。如果解密失败,或者解密对应的信息无法解码成为以上的两类信息,则直接跳过这条信息

使用\(state[i].key\)验证消息的签名

如果解码后的消息是约定的行为(\(action\)),那么设置\(state[i] = action\), 如果解码后的消息是一个新的公钥,那么设置\(state[i].key = NewK_i\)

在\(T_{end}\)之后,操作员必须公布输出状态 \(M(state[1].action, ... , state[n].action)\), 同时给出一个ZK-SNARK,证明这个输出是正确的结果。

为什么这个机制是抗勾结的

假设一个参与者想要证明他做过什么,例如做过\(action\) \(A\),他可以引用一个链上的交易\(enc(msg = (i, sign(msg = A, key = k_i)), pubkey = K_\omega)\),并且提供一个零知识证明,验证这笔交易的确是包含\(A\)的加密信息。但是,他无法证明他没有发出别的交易,例如他可能发出过一笔更早的交易,把公钥换成了一个新的\(NewK_i\),因此前面的证明也就变得没有意义了,因为如果他更换过密钥的话,他可能已经做了别的动作。

参与者还可能把私钥给其他人,但是这样做的话那个人拿到私钥后就可以立即试图修改密钥。这样的话 1) 有50%的成功率,2) 会导致拿到密钥的人直接拿走之前stake的存款。

MACI未解决的问题

接收方在可信硬件环境中,或者接收方在可信多签的情况下,卖出私钥

原有的私钥在一个可信的硬件环境中的攻击,这个环境可以防止私钥变更为任何攻击者们不事先知道的私钥

第一种情况,可以通过特别设计的复杂签名机制,而这种设计对可信硬件和多签不友好。不过这种设计需要确保验证函数对ZKP友好。

第二种情况可以通过“面对面零知识证明”解决,例如,参与者可以把私钥拆解为\(x + y = k_i\),公布\(X = x*G\) 和 \(Y = y*G\), 并且给验证者展示两个信封,分别包含\(x\)和\(y\); 验证者打开一个,检查公布的\(Y\)是正确的,然后检查\(X + Y = K_i\)。

非合作二次方投票

这种机制可以用来改进包括投票在内的多种链上治理机制。在二次方资助中,当资金池规模非常大的时候,或者当二次方资助被用于更大的场景时(例如大选、国会审批预算等场景),勾结就会成为一个必须被解决的问题。因此,设计一个抗勾结二次方投票(Anti-collusion quadratic funding)机制,可以规模化二次方资助。

[1]Vitalik Buterin, Minimal anti-collusion infrastructure,

https://ethresear.ch/t/minimal-anti-collusion-infrastructure/5413


通过 DAO,研究组织和媒体可以打破地域的限制,以社区的方式资助和生产内容。DAOrayaki将会通过DAO的形式,构建一个满足人们需求,一个民主治理和所有人都可以利用的公共媒体系统,从而实现真正意义上的去中心化。欢迎通过以下方式提交DAO的研究,瓜分10000USDC赏金池!了解去中心化自治组织(DAO),探讨最新治理话题,关注DAO的发展趋势,欢迎加入DAOrayaki社区!

欢迎加入DAOrayaki社区!

官方网站:daorayaki.org

Discord server: https://discord.gg/2UjpmPH9

Medium: https://medium.com/@daorayaki

Email: daorayaki@dorafactory.org

微信助手:DAOrayaki-Media

详情请参考:

Dora Factory支持去中心化DAO研究组织DAOrayaki

历史文章:

DAO的构建与设计

DAO治理中的同构性

什么是社区贡献机会(CCO)?

DAOrayaki解读|8步实现去中心化

DAOrayaki|GitcoinDAO 群体思维正在崛起

DAOs的设计再思考:信任与决策权、风险、剩余索取权的分配

如何DAO化|基于社区贡献机会(CCO)机制的去中心化治理

通证工程共享(Token Engineering Commons):分析权益持有者、通证和治理过程

DAO 治理策略

DAOrayaki | Gas成本和选民参与

DAOrayaki|PoolHAUS与去中心化流动性供应

API3 DAO | DAO和质押的意义

Part 1D2D:面向去中心化的谈判协议

联合曲线设计脑洞大全及参数大典

Synthetix:去中心化治理结构

DAO 联盟|Open DeFi DAO 治理结构

DAO 投票治理

DAOrayaki|Vitalik Buterin:超越代币投票的治理

可选用的DAOs投票机制汇总

DAOrayaki解读|价格敞口和投票权

DAOrayaki | 去中心化仲裁:Kleros、Aragon、Jur

DAO代币治理

DAOrayaki|如何利用社交代币实现长期增长

DAOrayaki |代币经济学导论

Farming机制是否代表着代币分配的进步?

DAOrayaki|DAO 国库多元化的范围代币

DAOrayaki|DAO 通过财政多元化为下一个加密冬天做准备

DAOrayaki| DAO:扩展资本协调能力

Social token与DAO思潮下微观经济体的崛起

$WORK 奖励、利益相关者经济学和就业共享的代币化

海外最新研讨:数字货币与货币体系的未来

DAO治理攻击

DAOrayaki|DAO 的漏洞:自治的假想与治理弹性评估模型

DAOrayaki|公地弹性:去中心化技术社区治理中的“弹性”

DAOrayaki|算法治理实验:DAO治理动态、韧性及崩溃

DAOrayaki |加密市场操纵:威科夫方法及模式

DAOrayaki |加密货币里的吸血鬼攻击

DAOrayaki |依靠钱包追踪鲸鱼活动

DAOrayaki|全面综述:女巫攻击和防御方法

二次方融资(Quadratic Funding)的攻击与防守

一份前瞻性暂停使用The DAO的呼吁(2016.5.27)

二次方投票、融资资助

DAOrayaki|二次方投票与公共物品

DAOrayaki|二次方投票和区块链治理

DAOrayaki|关于改善配对协调补贴的一个方法探讨

DAOrayaki|二次方投票:机制设计如何使民主激进化

「激进市场」和二次方投票 | 用市场本身去监管市场

二次方资助V2协议: 抗女巫攻击、公平和规模化的链上二次方投票累进税系统提高二次方资助的公平性

二次方融资(Quadratic Funding)的攻击与防守

预测市场

预测市场的力量

万字解读| Upshot One 对等预测协议

买单投票:一种新型的混合代币投票/Futarchy

DAOrayaki|针对高度不可能事件押注的预测市场设计

Futarchy | 价值投票,对赌信仰,用钱说话,口说无凭

基于 Futarchy治理的案例:Amoveo、Tezos、Gnosis

罗宾·汉森经典论文(一)|Futarchy:我们应该价值投票、对赌信仰吗?

罗宾·汉森经典论文(二)|Futarchy:我们应该价值投票、对赌信仰吗?

罗宾·汉森经典论文(三)|Futarchy:工程设计25个问题

罗宾·汉森经典论文(四)|Futarchy:工程设计25个问题

公共物品、奥斯特罗姆

DAOrayaki|连续性公共物品资助

DAOrayaki|可追溯公共物品融资

DAOrayaki|二次方投票与公共物品

DAOrayaki|“可追溯公共物品融资”进展分析

DAOrayaki|公地弹性:去中心化技术社区治理中的“弹性”

自动化奥斯特罗姆(Ostrom)以实现有效的DAO管理

DAOrayaki 解读|奥斯特罗姆:公共事务的治理之道

NFT、NFT DAO

极客与画家 | 开源项目、NFT和简化的哈伯格税

DAOrayaki|全面概述NFT DAOs 的出现

价格发现的艺术,嵌套的策展市场,当联合曲线遇到NFT

策展市场|一种构建联合关注网络的机制

DAOrayaki|NFT 市场:去中心化的创造力还是 1990 年代的电子商务?

DAO 行业发展

加密技术的全面论述—开放金融系统

DAOrayaki解读|DAO与全球经济秩序-新自由主义的黄昏(一)

DAOrayaki首发| SEC.gov代币安全港提案2.0

DAOrayaki|DAO:可能的演变路径

DAOrayaki|去中心化自治组织(DAO)行业发展月报(2021.6)

DAOrayaki | DAO 行业9月上旬发展一览

DAO 媒体

DAOrayaki|Web3 中的声誉:乘风破浪

DAOrayaki|新媒体结构:所有权经济

DAOrayaki|文艺复兴时期的创造者和下一个媒体模式的崛起

DAOrayaki|去中心化媒体:web 3.0时代民主、隐私与价值共享的机遇

DAOrayaki|打破媒体第四面墙:观众和创作者的融合

DAOrayaki 生态合作

Muse Museum率先加入DAOrayaki Funders MolochDAO并开展联合研究