1.\tJohn使用750SNX铸造100sUSD。2.\tJill也使用750SNX铸造100sUSD3.\t该网络现在有200sUSD的债务,其中John和Jill分别占债务的50%4.\tJohn决定一把,用他抵押合成的sUSD购买了100sLINK,并为此支付交易费。5.\t现在sLINK的价格上涨到了4美元一个,因此John的100sLINK代表价值$400。而Jill的手里的价值仍为$1006.\t该网络的债务总额现在总计为500美元。由于John和Jill分别承担债务的50%,因此John欠Synthetix网络250美元的债务,Jill同样也欠Synthetix网络250美元的债务。7.\tJohn和Jill之间的区别是,John从价格上涨中赚了300美元,因此他赚了150美元,而Jill则下跌到250美元。这样看,Synthetix的Staking奖励其实会产生一定误导,因为它实际上只是激励人们不只要承担债务累积风险,同时还要积极开启交易头寸。正所谓,这世上没有免费的午餐。注意:你可以在不持有SNX或质押权益(Staking)的情况下交易合成资产。接下来,让我们来看看Synthetix在各种状况下的表现:所有权架构和管理密钥
Synthetix是迄今为止我遇到过最复杂的DeFi架构之一,从头至尾它大量使用Proxies(直译为“代理”)。Proxies是某人指向一个地址,但从另一个合约执行代码的一种方式。可以将其视为能替其他人执行代码的一个“代理人”。以下是Synthetix的智能合约和所有权架构的高级架构概述。
接下来将是又臭又长的内容阐述,不过别担心,我尽量把它们掰开揉碎了逐一进行说明。首先,与Synthetix系统的每次交互都是调用Proxy.sol这个合约,合约地址为:0xC011A72400E58ecD99Ee497CF89E3775d4bd732F。这个合约的两个关键属性是targetAddress和owner。owner就是简单字面意思:所有者。但是target实质上是把所有调用都转发到智能合约。在这个例子中,target就是Synthetix.sol,您可以将其视为整个系统的核心。owner是一个大脑,它负责协调系统内部的所有交互,它有以下几个职责:-\t跟踪所有合成资产代币余额-\t列出系统内所有有效的合成资产地址-\t获取生态系统中任何合约地址的解析器本合约和proxy.sol合约的owner相同,但是它有一个特殊的变量叫做selfDestructBeneficiary。当前部署在:0xde910777c787903f78c89e7a0bf7f4c435cbb1fe合约里。但有一件事特别奇怪,在收款人收到所有资产之前还有28天的时间延迟期。而且,前面这个0xde9只是一个普通的以太坊地址,没有多重签名,基本上可以认为是某个人的钱包。我认为,在这里最重要的问题就是“谁是Owner?”它到底是如何运作的?Owner的地址是:0xeb3107117fead7de89cd14d463d340a2e6917769,它是另一个Proxy合约。由于这层代理合约的原因,我无法直接在Etherscan上直接查看,所以我编写了一些代码来直接获取结果。
结果如下:
好消息是,需要4个地址才可以对主合约进行更改。坏消息是,没有时间锁,所以如果这四个人都做了签名,他们就可以立即进行更改。代码质量
结构
我个人很喜欢类似在链上注册地址这种小操作,但我非常不喜欢复杂的升级控制代理引入到智能合约系统中。Synthetix的整个架构严重依赖于代理。从集成的角度来看,这意味着你在一个区块上和Synthetix进行的交互,可能和下一个区块上与Synthetix进行的交互,是完全不同的。其他协议可能已经实现了控制升级,因为你使用的合约永远不会更改,有更改也只会是其中的一小部分,所以你会知道系统的哪些特定部分可以升级,哪些是不会更改升级的。这时,可以实现代码高度模块化,管理员可以替换系统中的不同模块,而不是替换整个系统。但使用代理体系架构可以通过完全的控制权使你实现缓慢决策,快速部署的效果。甚至代币也有自己的代理,它们被部署在后面。我很理解Synthetix想要完整迭代升级的意图,但是如果每一个合约都有一个代理,那在我看来可能会有人过度使用权利。将来,我还会介绍一些其他的体系架构,这些架构可通过一个更好、更简单、无代理的结构同样实现那些升级的好处。文档
Synthetix的文档给我留下了深刻的印象。他们的图表展示了集成架构,便于访问合约地址和很多DeFi团队通常不会发现的东西。在撰写本指南时,他们的文档能够帮助我理解他们的系统是如何工作的。单元测试
仔细阅读他们的代码的话,可以发现他们确实进行了测试。但是有一点很值得注意,那就是他们采用的测试方式是集成测试,而不是单元测试。这两个的区别在于,他们的测试检查可以确保一切正常,但并不能保障系统可以针对恶意或意外的输入进行防御。Synthetix可以对主要部署的合约进行审计,但我个人认为,审计公司效率最高也只能达到80%。因此我认为可能还是会存在部分漏洞。你可以给我看一个智能合约的漏洞,我就能告诉你是哪家审计公司做的审计。综合评价
这部分我有点自以为是。但我发现Synthetix的开发工具基本还算不错。他们的Javascript库依赖于即将更新的JSONABI文件,而不是使用提供集成保证的Typescript类型。Set,dYdX和0x都是使用Typescript类型并受益匪浅。他们的Javascript库没有进行大范围测试来确保任何ABI更改都不会破坏整个系统。这不是什么大不了的事情,但它告诉我的更多信息是,团队对开发人员经验的关心程度,以及将智能合约集成到外部系统中的难易程度。流动性分析
当前Uniswap最大的两个流动性池是ETH/sETH和ETH/SNX。ETH/sETH的规模主要是来自于Synthetix的通胀设计,它奖励给在Uniswap上提供流动性的抵押用户更多的SNX代币。
然而,我从这一点意识到,长远来看,如果他们不能攻克真正困难的挑战,Synthetix的模型并不是可持续的。1.如前所述,合成资产是一种有担保的抵押品。并且他们声称没有清算机制,只有需要偿还的债务。该系统面临潜在的抵押担保不足问题,但仍然有待观察。2.合成资产的持有者所持有的资产并不能完全用稳定的抵押品赎回。如果SNX的价格迅速下跌,那么许多头寸将开始变得抵押不足,即使可以赎回SNX,也将面临挤兑的情况。由于采取了Staking的激励措施,只有20%的SNX供应没有主动抵押,这就引发了一个问题:如果大部分的真实的、健康的流动性都被吸走了,那么如何从其他地方再产生?请记住,你需要激励机制是为了对SNX的健康需求,而不是为了让合成资产拥有真正价值。
我和很多人一样都讨厌CoinMarketCap,即便如此,我还是展示一下CMC提供的以下关于Synthetix在Uniswap之外的流动性数据。
我想表达的不是Synthetix注定要失败,而是它要想成为一个成功的合成资产协议:还需要一些额外的东西:1.只有当SNX在Uniswap或激励机制之外的其他市场中价格提升才能获得流动性;2.只有当SNX能够产生足够多交易费,多到足以让人们引起关注时,它才能获得价值/需求;3.只有当人们打开合成资产头寸,进行交易,并实际将合成资产用于预期用途时,才会产生交易费;4.只有当人们持有拥有某种合成资产或者认为某种合成资产具有价值的时候,才会将其视为MoE。5.在SNX获得流动性之前,人们不会有信心持有合成资产,其他生态系统参与者也不会在其他交易所上市。这本质上是一个棘手的问题,需要两者以上才能获得成功。Maker使用ETH作为整个系统的基础抵押品,避免了这一系列问题。Synthetix正在通过引入ETH抵押品来获取解决方案,但这一系列问题仍然始终存在,即代币持有者想要的SNX数量要比ETH多,以确保SNX变得更像有价值的代币。Oracle分析在Synthetix的早期,一个预言机出现过故障,有人用它造了3700万个SNX。人们的信心遭到重创,这是对人们信心的一次大动摇。不过团队果断地改成使用Chainlink预言机。https://www.theblockcrypto.com/linked/我也想对Chainlink进行分析,但这超出了本文的范围。该团队确实运行了一些自己的Oracle,可以在此处直接查看这些Oracle:https://developer.synthetix.io/tokens/从本质上讲,这只是一个将价格发布到智能合约并进行更新的地址。我不确定opsec是否会出现在这些文件上,但我可以确定它可以连接到钱包。在Synthetix的例子中,内部有多个连接到Internet的私钥,其实这是一个非常危险的行为。我曾经在前公司担任开发人员的时候遇到过这种问题,但不幸的是,目前没有解决方案。我向团队提出的唯一建议是,放慢脚步,并且研发一个更强大的opsec程序。否则只能在网络中添加另外10个中心化的预言机喂价,然后慢慢变成一个中心化交易所并乐在其中。该团队确实有一个积极的路线图并努力实现。希望他们能循序渐进,专注于基础架构的建设。保险流动性
目前,NexusMutual和Opyn保险业务都不涵盖Synthetix的合约。如果在出现违约的情况下,通胀奖励的一部分可以用来为Synthetix用户提供保险来进一步产生流动性,还是很不错的。这可能会让用户对持有SNX或合成资产更有信心。结尾
到这,我对Synthetix深入研究基本就结束了。总体而言,Synthetix显然是DeFi领域的先驱,它采用了一些非常独特且有效的策略来确保代币能够在获取价值的同时成为生态系统的组成部分。而未来面临的主要挑战是,该系统能否成功激励人们创建想要持有的合成资产、用于商业的合成资产或其他非投机用途的合成资产。到目前为止,这个团队已经做出了一些令人印象深刻的转变(从Havven)成为现在的经济模型。我会持续关注这个项目,尽管我想说他们今后面临的挑战并不容易解决。这篇评测我最喜欢的部分就是看到了大量来自第三方的文档和教程来帮助我理解整个系统是如何工作和运行的。假设他们能解决其他大部分的问题,我相信其他开发者们也会感激这点。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。