AkaFish

Posted on Nov 29, 2021Read on Mirror.xyz

Moloch DAO研究报告

From Empower Labs

Moloch – 献祭邪神,相传古迦南人会把自己的第一个子女放入烈火中献祭给Moloch,以换取整个族群的安全。数千年后,有一群人向智能合约中贡献出自己的以太币,希望以此推动ETH 2.0的整体发展。接受献祭的是一个去中心化自治组织,它被命名为Moloch DAO。

源起的故事

Ameen Soleimani是个91年的小伙子,化学工程专业出身,在大学期间他接触到了比特币。对Ameen来说这个领域显然比化学工程有意思多了,于是毕业后他毫不犹豫的转行成为码农进入了加密领域。起初他在这个领域做了几次并不成功的尝试,靠这些尝试攒下了一点点比特币,然而这些币跟着Mt.gox平台的倒闭一起消失了。

不久后以太坊诞生了,一个能够在区块链上部署智能合约的项目。几乎是同时,Ameen读到了一篇叫《Meditations on Moloch》的文章,这篇文章思考了群体协调问题,即人类社会中人们常常为了个体利益而牺牲集体利益,而最终导致人人受损。Ameen深以为然,再关联起刚刚听说的以太坊,Ameen觉得这也许就是解决群体协调问题的答案 - 利用不可更改的代码来约束人类行为。

由此,他开始把热情投入到以太坊上,并在2016年加入了ConsenSys。这是一个位于纽约的区块链技术公司,旨在构建以太坊生态的各类基础设施以推动以太坊的发展,ConsenSys的创始人Joseph Lubin也是以太坊项目的联合创始人。毫无疑问,这是一份梦想的工作。

但很快Ameen就对ConsenSys的管理风格产生了不满,他觉得决策效率低下,限制太多。2017年4月的一天,Ameen鼓足勇气向CEO Joseph Lubin以及其他管理层做出了一个提议- 给他两百万美金外加3个工程师,他在旧金山建立一个叫Moloch Ventures的机构,一个独立于ConsenSys的前哨站,用来支持一些有意思但不适合在ConsenSys架构下进行的项目。

Ameen兴致勃勃的给大家讲了邪神的故事,并把Moloch Ventures定位为邪恶的前哨站。。但他迎来的是一盆冷水,没人支持他的想法。两年后Joseph Lubin被问及对那次会议的想法,他的回答是“那是一个不错的娱乐节目”

……

受了刺激,Ameen在一个月后提出了离职,并随后发起了一个叫SpankChain的项目。这是个相当奇特的项目,然而运营的也并不成功,此处不细讲,有兴趣的读者可以自行查资料。

时间来到2019年,Ameen重新把热情投入到以太坊本身的发展并希望使用DAO的方式来推动这个过程。彼时已经有一些DAO的底层协议被开发了很久,但Ameen觉得那些协议都太过复杂,无论是从代码层面还是从组织运行层面。Ameen想要搞一个使用最少代码,实现基础功能的一个DAO协议。简单,安全,但能用。经过Ameen与其他几个人的共同开发,Moloch V1协议诞生了。

Moloch DAO在2019年2月14日,丹佛的以太坊开发者大会上被正式启动。Ameen一共凑了21个支持者作为创始成员,每个人捐赠了100个ETH。这个启动过程还算是顺利,不过考虑当时以太坊价格只有100美元多点,总共也就是20多万美元,这也算不上多亮眼的成绩。

不过Moloch DAO的愿景和Ameen的持续努力随后获得了回报。以太坊创始人Vitalik在两个多月后决定捐赠1000个ETH。而ConsenSys的创始人JoesphLubin也并没有忘记当年他手下的这个小伙子,也捐赠了1000个ETH。ConsenSys以及以太坊基金会的其他成员也一共凑出了两千个ETH的份子捐赠给了Moloch DAO。

Moloch DAO一战成名。

Moloch DAO的运营数据 

截止到本文写作的时候,Moloch DAO的合约共接收过7718个ETH,发出过5556个ETH,工会银行中还存有2162个ETH。不过发出的五千多个以太币的大部分并非都是资助发放,相当一部分是成员的主动退出。

当前Moloch DAO的成员共有3832个Shares,而对比份额和工会银行的差额可以算出被用于项目资助发放的以太币约为1670个。考虑到大部分资助都发生在以太币价格只有几百美元的时间,按这样计算,Moloch DAO过去发出的资助额并不高,总计约折合几十万美金。

Moloch DAO共接纳过100位会员,目前依然维持着会员身份的还有63位(至少保留1票)。

共有168个提案被发起,其中资助相关的提案约70个,绝大部分获得了通过。不过查阅了其资助的项目后可以发现这些项目基本上没有成功。

DAO的再次出发

从纯粹的运营数据来看,Moloch DAO在众多DAO中只能算非常一般的一个。即使有了Vitalik和Joseph Lubin的加持,Moloch DAO的活跃度和会员的参与度也并不高,grants的项目数量以及质量也都非常一般,最近6个月甚至一个提案都没有。

但Moloch的意义早已超出了单个DAO的范畴。自2016年The DAO遭遇黑客攻击失败之后,DAO这个方向在整个加密生态中沉寂了很久。正是Moloch在2019年初重新把DAO又带回到大家的视野。由于Moloch 代码足够简单安全,有很多团队选择了fork Moloch的代码发起了自己的DAO,这其中包括著名的MetaCartel。

Moloch V1版本只适用单一的捐赠场景,在上线1年以后,Ameen又联合了几个团队共同开发了Moloch V2。V2版本的通用性更强,能够适用在风险投资、对冲基金、孵化器等多个商业场景。

当前在全世界运行的各类DAO约有30%是基于Moloch构建的。这一切,都源于2年多前的那400行代码。

Moloch V1源代码

https://github.com/MolochVentures/moloch/tree/minimal-revenue/v1_contracts

Moloch协议和Moloch DAO

讲完了故事,继续讲讲协议和DAO运行的细节。不过在进入下面的篇幅前,首先要强调两个容易弄混的概念。

Moloch是一个用于在以太坊上创建DAO的开源协议,任何人都可以基于Moloch协议发起DAO。目前Moloch协议已经发展出了多个版本,不过2019年初Moloch发布的时候只有一个版本,即Moloch V1,一个只有400行代码的协议。

而Moloch DAO是基于MolochV1版本协议发起的第一个DAO。这是一个组织,组织目标是通过捐赠推动ETH 2.0 基础设施的发展。

Ourobjective is to accelerate the development of public Ethereum infrastructurethat many teams need but don't want to pay for on their own. By pooling ourETH, teams building on Ethereum can collectively fund open-source work we decideis in our common interest.

(我们的目标是加速以太坊公共基础设施的开发,许多团队需要他们但并不想自己付费去做。通过汇集我们的ETH,以太坊上的团队可以共同为我们认为符合共同利益的开源工作提供资金。)

摘自Moloch DAO Github

Moloch V1的运行逻辑

Moloch V1 协议的基本逻辑非常简单 - 成员贡献资金(wETH),根据贡献资金的数量获得相应数量的Shares(份额)。成员贡献的资金被工会银行(Guild Bank)保管。成员可以提出提案,如果提案获得通过,智能合约则根据提案进行相应的资金分配。

提案(Proposal)是Moloch的业务核心,协议的主要工作都是围绕提案展开。提案分三类,新成员加入,项目资助以及无偿捐赠。为了尽可能减少安全风险,Moloch的合约代码写的非常简单,而具体到提案机制上,更是极度简洁。任何提案都只有三个参数:

Tribute(贡品) – 申请人投入DAO的Ether数量

Shares(份额)–申请人希望得到的份额数量,Shares由合约铸造,不可转让,可用于投票或主动销毁以便拿回对应的资产。

Applicant(申请人)– 申请人的以太坊地址,用于接收份额。

通过Tribute和Shares这两个关键参数的组合,可以得到三种不同类型的提案。

例如:

Tribute 10, Shares 10,代表新成员加入的提案。新成员投入10个以太的贡品获得10个份额。 

Tribute 0,Shares 10,则是典型的资助提案,申请者不投入贡品,但获得10个Shares,按目前的价格10个Shares对应大约为11000美元的资助。

Tribute 10, Shares 0,无偿捐赠提案,投入贡品但放弃份额。

为了避免大量低质量提案,只有DAO成员能够发起提案,并且需要存10个以太币作为保证金,当提案被处理后,无论通过还是不通过,保证金都会被退回,但如提案通过了,保证金里的0.1个以太会被扣除作为手动触发执行提案的奖励。

提案的有效期是7天,在7天内成员可以进行投票表决。Moloch DAO中的提案没有最低同意人数的限制(Quorum), 提案能否通过主要取决于同意和反对的比例。在极端情况下,只有一票同意也能通过,而这种情况确实发生过。这个设计的目的主要是考虑两点,一方面是成员参与度在大部分情况下并不够,另外并不是每个成员都有足够的知识储备对每个提案内容做出判断。而在参与度较低的情况下,这个机制保证了提案能够被有效的处理。 

如果提案获得通过,则进入7天的等待期,等待期的作用是允许对提案不满的成员在这个阶段退出DAO并拿回自己的资金。

提案通过并通过了等待期后也并不会自动执行,而是需要由一位成员去合约中手动触发执行。上文中提到保证金会被扣除0.1个以太,即为用来奖励这位触发执行的成员。

如何加入及退出

有很多团队基于Moloch协议发起了自己的DAO,不同的组织的加入有不同的流程。不过大家的基本流程,尤其是链上的部分都是相似的,这里以Moloch DAO举例。 

作为一个捐助性质的DAO,申请加入MolochDAO的第一步是要提供贡品(Tribute),贡品可以是资金(最初为100个ETH,后降低为10个ETH)或者时间(需要至少贡献一篇被认可的关于以太坊未来发展技术的研究报告)。

但仅仅提供贡品并不够,Moloch使用了许可制的成员加入机制,必须由某个现有成员发起进行提案,提案投票通过后才可以获得成员身份。

相比加入,Moloch的退出机制非常灵活。协议里设计了一个特殊的Ragequit机制(愤怒退出)。如果一个成员对于某个提案的内容不满,而这个提案又获得了通过,在提案被执行的等待期之内,可以通过Ragequit退出DAO(前提是该成员并未给该提案投赞成票)。Ragequit执行的时候,合约会收回该成员的份额,份额对应的以太币会退回给成员,同时成员身份也将会失去。但成员并不会拿回原始的贡献金额,而是根据工会银行的剩余金额按比例拿回还没花掉的部分。

由于允许愤怒退出,DAO的协调成本被大大降低,不再需要针对每个提案都过多考虑成员的想法,如成员对某个提案特别不爽而这个提案又通过了,那么直接退出就可以了,这也是Moloch DAO的提案不需要最低同意人数的原因之一。 

愤怒退出同时也充当着被资助方提取资金的作用。当一个项目申请资助成功,被资助者并不会直接获得资金,而是获得了一个DAO成员的身份以及对应的一些份额。如果被资助者想要拿到这些资金,则需要执行愤怒退出来把资金从合约中取出。这个设计同样是为了保持合约的尽可能简单。

 

Moloch DAO的资助申请

想要获得Moloch DAO的资助,需要在官网提交一个预申请表。主要是要求对申请资助的项目进行介绍。如果DAO成员喜欢这个项目,预申请通过,则会进入正式的申请阶段。在正式的申请审查阶段,申请人需要回答来自DAO成员的一些问题,如果顺利通过申请审查,则最终进入链上投票阶段。链上投票通过后,申请人获得DAO成员身份(以及一定的份额) 

资助申请分两种,项目资助和工会资助。简单来说项目申请是针对特定项目的一次性资助申请,而工会申请是针对某个特定领域的重复性资助,每个季度都可以申请。

Moloch DAO的提案信息是公开的,即使不是DAO成员也可以围观看项目介绍,投票和执行情况。

 

一个典型资助案例 

Neue UX是Moloch DAO截至目前资助的最后一个项目。提案在2021年1月13日由成员Yalda Mouasvinia发起,这是一位曾从事产品和UX工作,对于DAO和开放合作充满了热情的成员。(该成员的真实身份是一家专注做开源协作软件初创公司的CEO)

 申请者为Ape Unit团队,请求23000美元的资助(按当时的价格折合为38个Shares,对应约为21个以太币)。Ape Unit团队会使用这笔资金开发neueux.com,一个为去中心化应用提供UI/UX资源的平台。 

Ape Unit团队在申请说明上给出了详细的项目要解决的痛点,项目规划,团队背景以及具体为9周的第一阶段开发计划。尽管neueux的目标很宏大,但实际第一阶段要实现的目标并不复杂,简单说就是收集各类现有区块链应用的截图(钱包,Dapp,DeFi等),整理、归类并呈现,供未来的去中心化应用的开发者参考。 

可能是这个项目目标过于简单,这个提案只获得了三个成员的投票,两位版本各投了100票赞成,一位投了100票反对,最终200比100获得了通过。 

提案通过后Ape Unit共获得了38个Shares,他们并没有马上把资金提出,而是在近两个月后的3月11日通过销毁37个Shares获得了20.66个以太坊。团队选择保留了1个Share从而保留了DAO成员身份。由于当天以太坊的价格是1800美金,这笔资金在提取的时候已经价值37000美金。而这笔资金提取后还躺在地址上并未被使用。

现在9周的交付期早已过去了,neueux.com也已经上线,不过从目前上线的内容上看,即使是项目的目标并不复杂,真正实现的交付结果离最初的承诺还是略有些差距的。由于缺乏有效的监督机制,这种情况应该在grant里并不少见。

 

总结

总体来看,Moloch协议作为一个典型的参与性DAO的协议,比较适用在中小团体进行财务管理合作。它简洁,安全,能够满足基础功能的协议,大大降低了实施DAO的门槛,也因此激发了相当多的团队的热情。而后延伸出的Moloch v2协议由于适用性更强,更是被广泛使用,Moloch协议为推动DAO的发展做出了很大的贡献。

Moloch功能设计的核心是围绕财务管理展开的,简单的设计使得它很难承担更复杂的协作及治理。再加上Moloch DAO采用的是许可制的成员管理,这使得它更像是把传统组织的一部分财务管理进行了区块链改造,而Venture DAO, LAO这类应用了Moloch V2的投资基金更是直接绑定了有限公司的商业实体。这跟大部分朋友心中所畅想的去中心化自治组织的形态还是有一定的距离。

(全文完)