一文读懂MakerDAO:以太坊“最疯狂”的DAPP
为什么说MakerDAO是以太坊上“最疯狂”的DAPP?
在一场对Vitalik Buterin的采访中,主持人对Vitalik Buterin提问:“What’s the craziest application of the Ethereum that you’ve come across lately?”(你最近遇到的“最疯狂”的以太坊应用是什么?),Vitalik Buterin的回答是:“I am definitely impressed by MakerDAO”(MakerDAO让我留下了深刻的印象)。
MakerDao是以太坊上第一个成立的DAO组织(按照成立时间而非产品发布时间,目前按照产品上线时间公认以太坊第一个 DAO 为 The DAO ),在整个稳定币市场上,DAI在去中心化稳定币的应用规模上是NO.1,并且在DeFi领域,MakerDao具有颠覆性作用和意义,MakerDAO的超额抵押机制消除了“凭空印钞”的风险并且是完全运行在链上的一套系统,不存在中心化托管的风险。
本文章仅为个人分析,不构成任何投资意见,如出现不正确的内容欢迎各位指出。
目录
一.MakerDAO-DeFi的王者
二.什么是去中心化稳定币-DAI?
三.如何生成DAI?DAI如何维持价格稳定?如何使用Maker协议加杠杆?
四.DAI的清算机制如何运作?
五.Maker协议真的安全吗?
六.MKR是什么?MKR可以用来做什么?
七.去中心化治理还是寡头治理的MakerDAO?
一. MakerDAO-DeFi的王者
MakerDAO是什么?
MakerDAO 是一个运行在以太坊区块链上的、集超额抵押稳定币、借贷、存储、用户共同治理和发展的项目,MakerDAO最核心的就是Maker协议,又称多担保 DAI(MCD)系统,可以让用户使用经过协议批准的资产作为担保物来生成去中心化稳定币DAI,截止至2022年7月26日,MakerDAO TVL为$8.03B稳坐DeFi王者宝座。
MakerDAO如何成立的?
Rune Christensen在2014年以太坊出现之前就一直是比特股(Bitshares)社区的活跃成员,并探索在 BitShares 平台上推出稳定币DAI,但是Rune Christensen发现比特币网络不足以支持一个复杂的金融系统,最终选择了被称为“世界计算机”的以太坊,因为与具有非常有限的脚本语言的比特币不同,以太坊是一个通用可编程区块链,运行着一个虚拟机,能够执行任意和无限复杂的代码使得在以太坊上可以实现智能合约。
MakerDAO创始人Rune Christensen在2013 年 3 月第一次通过Reddit 向世人展示了 Maker 的愿景,即创建一个由以太坊支持的美元稳定币,于2014年正式成立MakerDAO成为了以太坊上第一个去中心化自治组织(成立时间),2015年3月Maker协议雏形诞生,创始人 Rune Christensen在 Reddit 上与以太坊社区的成员包括 Vitalik Buterin 分享了协议的设计、合约代码以及测试前端,并且在2015年至2017年之间与来自全球的开发者开始了对代码、架构和文档的第一版迭代。2016年中,MakerDAO发布了以太坊上第一个去中心化交易平台:OasisDEX(现为Oasis.app)。2017年12月MakerDAO正式在以太坊上推出第一版MakerDAO白皮书向大家介绍了DAI稳定币系统。创始人Rune Christensen在 2021 年 7 月 20 日发布了一篇博客文章《MakerDAO Has Come Full Circle》宣布Maker基金会已经完成了它的使命并将会在未来几个月解散并完全交给社区管理实现了真正的去中心化。
二.什么是去中心化稳定币-DAI?
DAI是一种在MakerDAO上通过Maker协议超额抵押产生的与美元挂钩的去中心化稳定币,总供应量取决于在Maker协议上抵押物的价值,截止至2022年7月26日DAI一共被铸造了7,320,165,935枚,在所有稳定币中总市值排名第四,是目前市值最大的去中心化稳定币。
去中心化稳定币到底是什么呢?中心化稳定币和去中心化稳定币有什么区别呢?
去中心化稳定币
去中心化稳定币—一般分为算法稳定币以及超额抵押稳定币,可以理解为通过一系列算法以及代码设计的智能合约而不是中心化主体铸造出来的稳定币,超额抵押稳定币不会凭空产生出价值,因为超额抵押稳定币通常是通过锁定一定的资产铸造出来的,如需要取回锁定的资产则需要销毁相应的超额抵押稳定币,但纯算法稳定币是通过一套设计好的机制铸造的,在设计上可能会存在缺陷,最经典的案例就是LUNA崩盘事件,用UST锚定来LUNA(自己创造了自己的锚定物)。
比较有代表性的去中心化稳定币有:
中心化稳定币
中心化稳定币—具有“锚定”属性的加密Token,其目标是锚定某一链下资产,并与其保持相同的价值,为了保持价格稳定,中心化稳定币由链下资产做抵押,如发行一个USDT,Tether公司会准备一美元的储备保证金,为实现稳定币价值和支持资产数量挂钩,中心化发行人通常会聘请独立的会计师事务所或审计机构定期对托管账户中的支持资产进行验证。
比较有代表性的中心化稳定币有:
DAI属于去中心化稳定币中的超额抵押稳定币,本质上DAI的铸造并不会增加加密市场总价值,因为DAI的铸造意味着超于被铸造DAI价值的质押资产被锁定在智能合约中无法流通,但中心化稳定币的铸造可以使得加密市场的总价值增长,因为被铸造的中心化稳定币背后都映射着真正的价值物-法币。
三.如何生成DAI?DAI如何维持价格稳定?如何使用Maker协议加杠杆?
生成机制
DAI是由用户通过Maker协议超额抵押资产而铸造出来的,Maker协议则由用户通过Oasis.app来实现,原理是用户通过Oasis创建保险箱(Vault)将加密资产放进去锁起来作为抵押,然后由用户自己决定生成多少的DAI,用户只能生成少于抵押价值的DAI,在赎回质押资产时还需支付一笔稳定费,Maker 协议支持的抵押品如ETH、WBTC 等多达 20 多种,每种资产的抵押率以及稳定费都是由资产本身的风险指数以及MKR持有者治理决定的,比如,用户想质押比较主流的资产ETH,wBTC,stETH来铸造DAI,假如用户想铸造1000个DAI,用户需要质押价值1700美元的ETH、1750美元的wBTC或者1850美元的stETH来铸造DAI,稳定费分别为0.5%、0.75%和0.75%,并且产生的利息费用属于 Maker 协议,而不是 Oasis.app。
DAI如何实现价格稳定机制?
虽然DAI在设计上是与美元1:1挂钩,但是DAI还是会受市场行为影响造成一定的价差,MakerDAO社区通过DAI存款利率(Dai Savings Rate,DSR)让所有 DAI 用户可以自动获得储蓄收益来平衡市场供需 ,只需用户将他们的 DAI 锁入 Maker 协议的 DSR 合约即可,DSR 合约不对用户设置最低存款要求,用户可以随时从 DSR 合约中取出部分或全部 DAI。
当 DAI 的市场价格由于市场变化而偏离目标价格时,MKR 持有者可以通过投票更改 DSR 来维护价格的稳定性:
DAI不是凭空生成出来的,那么谁来支付这个利息呢?DAI的利息由MakerDAO稳定费的收益来支付,如果稳定费收益不能覆盖 DAI 存款利率的总支出,则差额记为坏账,并增发 MKR 以弥补差额,MKR持有者则成为了风险的承担者。
如何给DAI加杠杆?
当用户创立一个保险箱(Vault)后,用户可以在Oasis.app上通过Oasis Multiply功能支付由MRK持有人指定的利息来借入DAI在保险箱中(Vault)购买更多的抵押头寸,这使得用户可以在抵押资产价值上升中获取更多的收益,但同时在面临资产下降时也会面临更高的清算风险。
用户还可以选择将铸造的DAI和USDC放入Uniswap V3中进行流动性 Mining 并在Oasis.app上借DAI加杠杆从而达到更高的流动性 Mining 奖励。
四.DAI的清算机制如何运作?
用户在铸造DAI之后如果想取回在保险箱(Vault)中锁定的资产的话,用户需要把DAI归还才能从保险箱(Vault)中拿回被抵押的加密资产,这时被归还的DAI将会被协议自动销毁以达到抵押资产价值和DAI价值的平衡。
清算机制
当用户生成的DAI的价值始终少于抵押物允许生成的DAI的价值范围内的时候,一切都会正常运作,但是如果抵押物的价值下降导致用户生成的DAI的价值高于抵押物允许生成的DAI的价值的时候,举个例子,假设ETH铸造DAI的质押率为2:1,用户用价值4000美金的ETH铸造了1000个DAI,此时价值4000美金的ETH最高可以允许铸造2000个DAI,如果当以太坊价值跌破2000美金的时候,此时1000个被铸造的DAI的价值将会高于价值低于2000美金的以太坊允许铸造的最大价值DAI的范围,就会触发清算程序,清算意味着用户不再需要归还DAI,则用户生成的保险箱(Vault)将会被充公进行抵押品拍卖把亏欠系统的DAI补回来,同时被清算的用户还需要缴纳一笔清算罚款,Maker社区的MKR持有者们会针对不同的担保物类型设定不同的清算罚金,被拍卖的抵押物价值会加上清算罚款的金额一并进入拍卖程序。
拍卖程序分为担保品拍卖(Collateral Auction)和反向担保品竞拍(Reverse Collateral Auction)两个阶段:
担保品拍卖(Collateral Auction):在第一阶段担保品拍卖中,竞价者开始对拍卖的抵押品出价,最高价者支付 DAI来低价获取抵押品,回购的 DAI 用来弥补金库的未偿债务及清算罚金。
反向担保品竞拍(Reverse Collateral Auction):如果第一阶段拍卖上获得的 DAI 足以清偿金库内的债务,并足够支付清算罚金,拍卖就会进入第二阶段,拍卖者对固定价格的DAI竞价拿走更少的抵押物,目的是让原金库所有者可以拿回尽量多的担保物,同时保证所有 DAI 的债务得到偿付。
拍卖流程如下图:
当第一阶段拍卖足以偿还债务时,开启第二阶段。
当第一阶段拍卖不足以偿还债务时,不开启第二阶段,未偿债务由缓冲池(Maker Buffer)支付。
在这有一个陌生概念叫缓冲池(Maker Buffer),那么什么是缓冲池呢?
缓冲池(Maker Buffer)是Maker协议中的一部分,是一个不属于任何人的金库,用户使用协议时产生的稳定费以及拍卖的收益(如清算罚款)等都会流入到缓冲池,Maker协议所产生的债务(如拍卖资不抵债)由缓冲池承担,如缓冲池中没有足够的DAI来偿还Maker协议的债务时,Maker 协议就会触发债务拍卖(Debt Auction)机制。
债务拍卖(Debt Auction)机制:当缓冲池中的DAI不足以偿还Maker债务时,Maker协议将会超发MKR来启动拍卖程序,拍卖者可以使用DAI拍卖获取MKR,拍卖获取的DAI将进入缓冲池去偿还债务。
但这样的话MKR不就严重超发变得越来越没有价值了吗?
Maker协议其实还有另外一套拍卖机制来确保MKR不会严重超发,那就是盈余拍卖(Surplus Auction)机制。
盈余拍卖(Surplus Auction)机制: 当缓冲池中的DAI累积到一定金额时(Maker治理决定的值),超出的DAI就会被盈余拍卖(Surplus Auction),在盈余拍卖(Surplus Auction)时,拍卖者可以使用MKR来拍卖获取固定数量的DAI,价高者得,一旦盈余拍卖(Surplus Auction)结束,拍卖所得的MKR将会全部被协议自动销毁,从而减少MKR的总供应量。
那么看到这,你是否有一个疑问:Maker协议如何得知我的资产将面临清算?
区块链的世界与现实中的世界其实是不互通的,那么这个时候需要有一个桥梁来让两个世界产生联系,Maker协议如何获取现实世界中这些加密资产的价格呢?这需要一个叫做喂价预言机(Price Oracle)的东西来实现。
所谓预言机(Oracle)并不是用来预测未来的机器,而是区块链世界用来获取链外信息的工具,因为智能合约无法主动去获取链外数据,只能被动接受数据。
喂价预言机(Price Oracle)是由MKR 投票者选出一组可信赖的喂价节点向 Maker 系统提供价格信息,群组的节点数量也是由 MKR 投票者来控制的。为了防范攻击者控制大部分喂价机的情况,Maker 协议是通过喂价安全模块(Oracle Security Module, OSM)来获取价格信息的,并不直接通过喂价机获取。喂价安全模块是架设在喂价机节点和 Maker 协议之间的防御层,将价格更新延迟 1 小时。在此期间,如果发现有喂价机被攻击者控制,可通过紧急信息输入者或 Maker 治理投票将其冻结。紧急信息输入者以及价格输入时滞的决策权都在 MKR 持有者手里。
DAI被铸造后抵押物会被锁定在保险箱(Vault)里,喂价预言机会检测抵押物的价值是否达到DAI最大抵押率的价值,当抵押物的价值超过DAI最大抵押率的价值时就会触发清算拍卖,被清算者会被罚款,拍卖者低价拍卖获取抵押物,拍卖资不抵债时债务由协议承担。
五.Maker协议真的安全吗?
在网络世界上没有绝对安全的协议或者系统,对于一个设计复杂且承载如此庞大资金量的DeFi协议来说也是如此,难免会存在一些漏洞。
MakerDAO“零元购”?
在【312】黑天鹅事件中,由于ETH的价格出现了暴跌,Maker协议中大量的抵押物价值跌破清算门槛,从而触发了拍卖程序,但由于以太坊网络在短时间内链上事务数量剧增导致GAS费暴涨,清算机器人的清算交易请求由于GAS费设置过低无法被及时处理,导致某一清算人在没有其他拍卖竞争者的情况下以0DAI的出价赢得了拍卖,MakerDAO 因清算机制失灵而零价拍出的 ETH 抵押品价值高达 832 万美元,且Maker协议系统内出现了 567 万 DAI 的无担保坏账,缓冲池中的DAI被掏空,为了填补产生的567万DAI无担保坏账,MakerDAO 启动了首次 MKR 拍卖以填补漏洞,后续又对协议机制进行了改进以防止类似事件再次发生:
从这次事件上来看,MakerDAO的损失并不来源于协议本身的漏洞而是拍卖机制设计的缺陷。
MakerDAO的“核按钮”-紧急关停机制是什么?
对于承载着最庞大金额的DeFi协议Maker来说,准备好应对各种极端情况的紧急措施尤为重要,当发生极端情况如恶意治理行为、非法入侵、安全漏洞和长期市场非理性时,紧急关停机制(Emergency Shutdown)就是MakerDAO的最后一道防线,当紧急关停机制(Emergency Shutdown)被启动时,Maker 协议的正常功能将中止,用户将无法再存入抵押品并从Maker协议中生成 DAI,结算系统将确保任何DAI持有人能从系统赎回对应价值的抵押品,并且为了清算的顺利进行,MKR持有者将决定一个等待时间并在时间结束后才可赎回抵押品,一旦启动紧急关停,系统中所有抵押类型的喂价预言机的价格将立即被冻结,并计算抵押品是否够填补未偿付的 DAI。
启动紧急关停机制(Emergency Shutdown)的方法有两个:
紧急信息输入者(Emergency Oracle)是一个由MKR 持有者投票选出的紧急预言机,能够冻结单个喂价预言机机(例如,ETH 和 BTC 的喂价预言机),并且有权单方触发紧急关停机制(Emergency Shutdown),当极端情况发生时,MKR持有者可以授权紧急预言机启动紧急关停机制(Emergency Shutdown)。
紧急关停模块(Emergency Shutdown Module, ESM)是一个去中心化的紧急启动流程,需要MKR持有者将MKR锁定在模块中才可以启动,只有当锁定的 MKR 数量达到规定数值时才会触发紧急关停,这个数值是由 MKR 持有者投票决定,最初提议为 50,000 MKR。
紧急关停机制(Emergency Shutdown)启动后会经历三个阶段:
阶段一:Maker协议关闭
关停机制启动后,用户无法创建新的保险箱(Vault)来铸造DAI也无法操作已创建的保险箱(Vault),喂价预言机机制也会冻结,资产价格将会停止更新,冻结喂价预言机机制可以确保所有用户都能取回其应得的资产净值,并且保险箱所有者可以立即取回超过债务担保所需的担保物。
阶段二:紧急关停后的拍卖机制启动
关停机制启动后,抵押品拍卖开启,拍卖会在指定的时间内完成且比原拍卖时间期限要长,拍卖时间由MKR持有者治理决定,确保拍卖结束后所有拍卖都能顺利完成。
阶段三:DAI持有者赎回剩余的抵押品
拍卖结束后,DAI的持有者可按照固定的汇率用 DAI赎回抵押品,并由MKR持有者开始决定重新启动系统。
从目前看来,MakerDAO已经经历过一次黑天鹅事件并从中吸取教训改进了拍卖机制,并且紧急关停机制(Emergency Shutdown)的存在使得MakerDAO在面临极端情况时拥有对抗系统性风险的能力,整体上看是相对安全的。
六.MKR是什么?MKR可以用来做什么?
MKR 是 Maker 协议的治理Token和资本重组来源,在 Maker 协议开始时,总共有 1,000,000 MKR,MKR的总供应量会随着协议系统的运作而产生波动。
作为治理Token,MKR持有者可以使用MKR对关于MakerDAO的治理进行投票,投票通常被用户修改Maker协议的内部参数如:抵押物价值与DAI的生成/清算比率Liquidation Ratio、清算罚款金额比率Liquidation Penalty、DSR存款利率DAI Savings Rate、拍卖机制参数(加注额度、竞标时长、加注间隔等)、哪些加密资产可以被作为抵押物以及预言机节点的挑选等。
作为Maker协议的资本重组来源,在Maker协议缓冲池(Maker Buffer)中出现债务赤字时系统就会增发MKR来获取资金偿债,当Maker协议缓冲池(Maker Buffer)资金超过一定量时(MKR持有者制定)将会拍卖DAI回购MKR并销毁。
七.去中心化治理还是寡头治理的MakerDAO?
截止至2022年7月26日,MKR总供应量为977,631,04枚,一共有86,785个地址持有MKR。
从MKR Token分布图来看可以发现一个有趣的现象,尽管一共有86,785个地址持有了MKR,但前100名地址一共掌握了83.41%的MKR,这种财富中心化的现象并不罕见,即便是在现实世界中也是如此,少数人掌握了大量的财富,根据2018年BBC News的报道:“ World‘s richest 1% get 82% of the wealth ”-世界上1%最有钱的人掌握了世界上82%的财富。