丹妞再次聊DeFi
这场直播是昨天晚上在微信群进行的,文字直播,原则不变在还原直播内容同时会加入我自己的一些收获。
前天的文章《CKB在DeFi这一热点下如何弯道超车,看看丹妞怎么说》是两个月前的关于DeFi的分享,时隔两个多月再次谈DeFi看看丹妞又可以给我们提供什么新的视角。
Nervos Network 是面向下一代加密经济的底层基础设施,我们的特点是分层架构,底层 CKB 是一条 public permission less 的公链,叫做 CKB,用于清算和验证以及多资产价值存储。在上层,我们支持类型丰富的 Layer 2 生态,为应用提供无限的扩展能力。
Nervos CKB 是一条通用公链,但是对 Defi 的观察,思考和更好的支持是我们发展 Nervos CKB 的一个重要目标。
我今天分享的主题是 Nervos 在 DeFi 上的思考、努力、以及成绩。
开头一通介绍,我截取了项目部分的介绍,丹妞介绍就不用多看了,通过最近我写的直播文章我发现,丹妞的直播喜欢用三段式,都分成三个板块。
丹妞对DeFi的观察和思考
第一个思考:公链作为底层支撑平台,跟上层丰富的 Defi 生态之间的关系。
观察最近大半年各种 Defi 生态产品和资产规模爆发,并且催生了 Yield Farming 这种流动性即挖矿模式。目前主流的 Defi 生态主要是基于 Ethereum 平台,不知道大家注意到没有,蓬勃发展的 Defi 生态并没有对 Ethereum 的平台价值产生直接影响。
这种情况如果长期持续下去,可能会导致长期发展的不平衡,这种不平衡产生的问题容易积累并最终产生更大的危机。
第一个问题就提到了一直谈论的问题,就是DeFi火热并不能给以太坊价格带来明显的提升。这个在之前丹妞就提过。
第二个思考:智能合约可组合性的安全问题。
智能合约本身并没有问题,但是智能合约的可组合性像是打开了一个潘多拉魔盒催生出一系列的创新产品和服务的同时,也带来了安全层面的更多不确定性。
关于合约的可组合性,你无法确保通过合约组合产生的新产品是否有漏洞,或者安全问题。这是由于当前这一代智能合约平台,这个问题是由链上计算的编程范式决定了的。
第二点就是大家都比较关注的DeFi安全问题,说到底虽然功能会越来越丰富但带来的安全问题也就越来越多。合约的安全是由链上的编程范式决定,安全问题要在链上进行解决。
第三个思考:关于原生去中心化资产的地位。
Defi的生态中,原生资产(wbtc, eth…)在Defi各个项目的的Collateral占比越来越低Stablecoin(USDT)的占比越来越高,包括USDT的高速增发让其市值稳稳占据市场第三最大部分的USDT发行在Ethereum平台上,所以Ethereum作为底层公链,已经成为事实上的 stablecoin transfer chain,无论从交易数量还是价值传输总量来看,stable coin都占据了主导。
Ethereum底层平台提供的交易带宽是非常有限的,而整个Defi生态跟stablecoin争夺有限的交易带宽,导致交易手续费长期高居不下,交易摩擦越来越高从更长远来看,这个发展趋势对 Defi 生态是非常不利的。
这个问题在最近也逐渐显现出来,手续费的提升使得一些币友在选择链时更多的选择其他公链进行转账。这就是一个不好的循环,之前丹妞就提到过。
第四个思考:技术总是不断迭代和发展,并走向成熟,这一规律不会改变。
我们不难设想,随着时间推移,Defi 的产品,服务背后的技术一定也会越来越复杂多样。但是站在用户端,复杂的产品背后的细节一定会被抽象,然后很好的隐藏掉。
举个例子,我们现有了支付宝,之后又了微信支付一开始,我们要针对不同的二维码选择不同的支付方式,但是现在有了很多 Agent 整合各种支付取代,然后给用户一个统一的支付二维码,于是用户看到二维码就掏出手机,不管是用微信还是支付宝,扫一下就都能完成支付。当有了统一支付,越来越多的用户就不爱继续用那些排它的支付方式了。
Defi 生态也一样,一定会产生很多新的聚合的机会,帮助用户把不同平台,各具特色的 Defi 产品整合起来。随便举个例子,用户用stable coin,他不关心是 USDT还是USDC,不用关心是在Ethereum平台上,还是 Nervos平台上,钱包客户端,DApp都会帮用户抽象并隐藏掉。所以越是能朝着这个方向发展的公链,在将来就越有竞争力,这就对公链的跨链和协作能力提出新的要求。
意思就是DeFi不会一直处于一个混战状态,参与的门槛也会不断的降低,最后提到了钱包,就说一下MYKEY钱包,目前的MYKEY钱包就在走理财融合之路,用户不用考虑是哪个平台,只是应用便利就好。这里可以看出他们的思路是不谋而合,顺便喊一句,胖哥什么时候MYKEY可以支持CKB呀。
Nervos在以上几个方面的努力
首先,在考量长期的发展下,我们需要关注的是底层基础设施和上层业务层同步发展,避免发展失衡,这里核心是如何让上层的 DeFi 在蓬勃发展的同时,下层的底层公链也能够捕获到价值这是我们在思考我们的经济模型的时候意识到的重要问题。
关键是协议的设计能平衡好不同层发展的同时,还要做到公平的利益分配,这就好比蛋糕(生态)能做的多大,其实取决于蛋糕怎么分。
在 Nervos 的经济模型里,我们追求的是公平和利益对齐,你的收获一定跟你的付出对等。在此之外,我们的机制设计有一个重要的核心是让上层的业务对底层的稀缺资源产生依赖,而这个稀缺资源就是状态计算/储存资源。持有多少 CKB 就能存储多少底层状态数据,业务发展越繁荣,对底层状态存储的需求越多,对 CKB 的需求也就越多。所以 CKB 很像土地,上层的 DeFi 你可以想象成商业中心,商业中心越繁荣,土地就越值钱。这个机制很好的解决了应用生态和底层公链作为支撑平台,互相促进发展的问题。
这就是用于解决上述第一个问题的方案,土地这个例子很形象,丹妞在解释CKB经济模型的过程中也经常会使用,通俗的来说就是在Nervos上运行的应用,应用发展的越好,CKB对应的价值也就越高,不用担心Nervos上DeFi发展起来后和CKB没有什么关系的问题,实现了应用和代币价值挂钩。
在合约可组合安全性方面,我们有自己的思考。
首先公链开放的生态环境和链上计算模型,决定了当前合约可组合性的风险只能通过开发者这边通过第三方安全审计,以及一系列安全制度和工具来尽量避免,这些都做完之后,剩下的风险由用户来直接承担。
这是当下主流的链上计算模型范式决定了的。从根本上解决这个问题,需要从编程范式入手,而在 Nervos 这边,我们采用的是链下计算,链上验证这一套全新的编程范式。合约的可组合性,以及最终的状态结果,是在链下,也就是链外计算的,当计算完成得到结果后,辅以密码学证据,提交到链上,由链上的密码学函数来验证结果状态和状态的密码学证据,如果通过验证后,状态才能上链。
也就是说,无论合约,或者业务的可组合性由多复杂,都可以通过密码学来确保验证的结果准确性,一致性,从而避免了链上的计算带来的一系列不确定性风险。这种新的编程范式,将把 Defi生态的安全性带到一个更新的高度。
这就是在安全方面做出的努力,证明Nervos在安全方面是一点都不含糊的,为了解决安全问题,直接从根本的编程范式入手,为DeFi安全性做了保障。
关于如何扩展带宽的问题,我们意识到,真正的应用产品的带宽需求,只会随着上层的应用生长越多而成长的越快,各种应用面对的新用户越多,对于TPS的需求也会逐渐的增加。
这个时候,只有分层才是解决扩容问题的最好方式并不是所有的交易都需要在底层全部完成,把交易更多的推向链外,推到上层 Layer2系统中去完成,然后只需要关注 layer2到 Layer2的清算这样同时可以确保上层的应用不直接和底层的原生资产进行带宽的竞争,也能够让在CKB上的应用的使用摩擦成本(手续费和交易速度)降到最低,才能解决当下的layer1公链高摩擦成本(高昂的手续费和交易延迟)的痛点。
也就是说解决了TPS需求,降低了交易的摩擦,为了不牺牲安全和去中心化,就使用了分层的办法一层解决安全问题,二层保障拓展性。
最后一个点是 Nervos 正在为接近互联网体验的 DeFi
应用产品做基础设施的准备。
CKB的虚拟机有长远的考量,并且足够的灵活,他可以接受各种的密码学原语和各种编程语言因此你不会听到 Nervos基金会为开发者设计了哪些CKB上专用的开发语言,大家要来CKB上开发,用自己常用的开发语言就好,这对于广大的互联网开发者而言是一个比其他公链都更容易进入的开发环境同时,因为各种密码学原语在 CKB-VM都可以被验证,因此CKB的DeFi开发者可以把他的产品设计的非常抽象简单,这对于使用方式实际上是对其他公链的降维打击试着想想,当用户在其他公链使用Dapp时,还要重新记一组新的助记词和地址,但CKB上的DeFi用户,却可以让区块链上的主流用户直接用他常用的以太坊地址就能够对CKB的交易做签名,甚至使用目前互联网用户常用的WebAuthn技术做为签名方式最后,未来的跨链的资产交易和协作也一定成为一种新的趋势,那么要整合跨链资源,一个重点是底层的基础设施够不够灵活,可以对于异构的跨链进行解析和验证,是个重要的点,而可以验证各种密码学原语的底层公链是做到这一切的核心。
Nervos取得的成绩
如果今天有人想要来CKB上开发一款DeFi产品,我们可以看到已经有许多的基础设施可以支援他,首先,他并不需要像在其他公链上一样,为了在CKB上开发而学一套新的编程语言,CKB-VM足够的灵活可以支持各种的语言,同时,目前CKB的核心开发团队也致力于开发各种语言的SDK,让各种语言的开发者可以很轻松的用自己喜欢的语言在CKB上做开发,像是目前已经有完善的SDK来支持Rust和JavaScript这两种受广大的开发者欢迎的语言,未来还会有跟更多语言的SDK。因为Nervos可以做到足够的抽象,因此在CKB底层的编程模型上在建立一个和以太坊一样的账户模型环境,不但是可能,而且还是目前CKB开发团队正在进行的工作。
这象征着已经习惯以太坊的编程模型的开发者,甚至可以在不更动的代码逻辑的情况下,直接在CKB上进行项目开发。
除了核心的开发团队以外,Grants的各种基础设施也逐渐的在满足DeFi的开发者的各种需求,首先,像是图形化界面的开发集成环境CKB Studio已经全面开源,开发者可以将许多平常需要自己敲代码才能完成的步骤,直接在CKB Studio上用点击几下按钮就轻易的完成。需要签署交易,我们不仅有CKB的Chrome钱包Synapes可以使用,还有利用CKB可以验证各种签名的特性而产生的PW—SDK,可以让用户连上Metamask直接做签章,未来甚至可以提供指纹等等生物辨识的签章功能,这时候用户的体验会更为丝滑,当然,如果是安全至上的用户,也别担心,因为世界上最主流的硬体钱包Ledger也即将支持CKB。
除了提供给 DeFi 开发的基础设施之外,sUDT 也就是CKB上的用户自定义的代币规范的代码,也在最后的代码审计阶段,离主网的上线也不远了,sUDT的协议规范了非常简单的代币逻辑,提供了非常大的治理空间,例如在 sUDT中,并不含有代币名称、Symbol等等的规范,这样的好处是可以避免最近在去中心化交易所上频繁出现的诈骗以及**问题,也给予CKB链上的DeFi项目有更多的治理空间和弹性。
最后,提到去中心化交易所,有我们的Grants所开发的 DEX,UDTswap近期也即将完工,现在可以看到他们的产品原型的UI/UX以及代码和使用文档,在稳定币方面,比特派和我们合作的CKB版USDT也在路上了,甚至还有其他社区的团队在申请类似Dai的智能合约稳定币。我们可以很清楚的看到,CKB上通往DeFi应用的道路正在一条一条的开通中,离DeFi应用的距离近在咫尺。
我们很欢迎各个有意愿 Nervos上做各种DeFi项目的团队来联络我,当然,我们也非常渴望能有更多开发实力硬核的开发者伙伴们加入我们,在此,我也向世界上优秀的人才发出真诚的邀请,欢迎你加入我们的团队。
最后一部分主要提到了Nervos在为了开发者更加便利做了哪些工作。
最后还有一个提问的环节,一共回答了三个问题,一遍进行整理。
Nervos 除了技术方面改良之后,公链上的DeFi应用产品相比有何特色?对未来DeFi生态的一个展望和挑战看法有哪些?
除了技术方面之外,对于DeFi生态而言,Nervos最大的一个特色,就是在底层的经济模型所能带来的价值捕获。
目前最大的DeFi平台毋庸置疑的就是以太坊,DeFi 目前的TVL已经来到了25亿美元大半都是在以太坊同时 DeFi生态上最大的稳定币USDT在以太坊上也发行了超过六十亿的美元USDT,这些锁定的资产其实是以太坊的 DeFi生态最强大的Backup但是,总市值目前大约260亿美元的以太坊,在DeFi发展的过程中,以太坊所扮演的角色是底层的运算平台,但其实除了支付手续费gas的时候上层的生态对于以太坊会有需求之外,其余的时候我们并没办法看到以太坊的原生资产能够怎么去捕获上层的价值。
这样的情形也会对底层的矿工带来不良的影响,像是上层的资产价值不断的在增加,但底层的原生代币却没有联动的影响,逐渐的可能造成价值成长过程的收益不均,甚至增加作恶所得大于挖矿/验证奖励。
在价值捕获的层面,Nervos的经济模型可以更加的确保上层价值能够与原生代币挂钩,因为任何上层Dapp的状态存储,都会需要用到原生资产Ckbytes作为存储空间这也能够真正的为DeFi上层的TVL的安全性作为保证,让DeFi资产不会因为缺乏价值捕获的环节暴露在风险之中,同时底层的矿工也能够继续的贡献算力来保证整个POW生态的安全。
这也是长期以来,DeFi生态能够长期发展的基石因为总锁定资产规模的规模越大,就代表着底层能够负担安全的能力要越强,安全的能力强弱,取决于从底层公链的模型设计的第一天开始,是否就能够去思考「蛋糕怎么分」的问题,因为这是「蛋糕能做多大」的关键。
目前拥有最多金融服务的平台是以太坊。以太坊2.0也受到了很多期待。如何将以太坊行业内的DEFI团队迁移到Nervos中呢?
技术上来说,最好的迁移方式,是打造出一个让开发者能够用接近零摩擦成本的方式进入生态但是要做到让以太坊的生态零成本的迁移其实关键在于,这个公链是不是已经打造了这么一个灵活的开发环境。
这是Nervos一直致力在做的事情。
近期我们自己的Grants项目,以及我们内部开发的基础设施上也会逐渐的看到我们在这方面的努力。同时,我们必须看到除了迁移以外,还有很大一批优秀的开发者活跃于互联网领域,能够吸引到他们,可能甚至是比迁移圈内的DeFi团队还要更重要的事情。
要让开发者能够拥有最低的成本进行开发,一个重点就是可以让他们使用自己熟悉的开发语言来开发。Nervos 最初的设计就是考量到这一点,所以采用工业级的通用指令集RISC-V去实现CKB-VM,于是我们对成熟的编译器比如GCC/LLVM支持的任何编程语言,都可以用来在Nervos上编写智能合约。试想今天全世界的主流语言,top50范围内随便挑一个,群体数量一定比Solidity还要多上几十倍。
目前我们的开发者SDK也逐渐的在完善,例如专门为 JavaScript开发者设计的Lumos,以及为Rust开发者所设计的Capsule ,都是能够让这些开发者可以直接使用他们原生的编程语言就能够在CKB上进行开发的工具,这些工具都已经是可用状态,并且我们还在不断完善。另外,因为安全等等核心问题的考量,我们的底层账本数据结构跟以太坊的账户聚合模型不同以太坊的DeFi的单一种DeFi资产都必须集中存在特定的单一合约中而在Nervos CKB上,用户的资产并不是集中存储在合约端的,相反是跟合约分离解耦合的,用户的资产存储在用户自己的状态空间中。
我们知道以太坊的这种聚合模型从开发角度相对更方便,因此我们通过一个额外的子项目帮助开发者能用面对通用账户模型的编程方式在我们的基于Cell结构的底层模型上编写应用,这个项目叫PolyJuice。注意我们说的是「通用」的账户模型,也就是说,今天不管这个账户模型是以太坊的,还是其他使用账户模型的公链的开发者,都可以轻易的在这个通用的账户模型下编写自己的应用。
DeFi目前面临的最大问题之一是在像类312黑天鹅事件发生的时候非常脆弱。很大一部分是由于预言机的问题。在预言机和治理机制上,你们会做怎样的创新?
关于312黑天鹅事件和预言机的问题,我们或许要先去辨析,是底层的带宽不足的问题,还是预言机本身的问题如果找错了出问题的点,那么就出现了底层感冒,语言机吃药的情况了。
如果是底层带宽不足,Nervos的分层架构的设计,会比以太坊具有更高带宽和吞吐量,以及近乎无限的扩展能力,但在预言机上喂价的问题上,或许仍还是一个全部区块链行业都还在摸索的问题。目前有看到的主流预言机有几种,一种是Chainlink透过特定的节点传送较可信的数据,或者像是Coinbase这种主流的预言机提供了带签名的链下API供DeFi使用,当然近期也还有NEST这种对于去中心化预言机的新尝试。
在这个层面上,我会认为,哪个方案较为成熟,还需要市场的验证。但是。这些方案中,有哪个方案是比较成熟的,我们能不能在预言机的项目方不为我们做任何开发的情况下,我们就把他们提供给以太坊的链外数据,直接拿到CKB上来使用?这完全是可能的。
Nervos CKB是一条可以接受任何密码学原语的底层公链,因此,任何一个公链的签名,要在CKB上进行验证都是可行的,那么,预言机的本质,就是一笔一笔带签名的交易数据,如果验证了他们的签名,我们就能确认这些数据确实是谁发出的。基于这个机制的预言机项目,很快的会在CKB上出现。
每天三轮KEY红包,每轮1000KEY。
第一轮红包在文中“,”处。随文章一同发出。
第二轮红包在文中“。”处。第一轮抢完即发第二轮。
第三轮红包在文中“C”处。第二轮抢完即发第三轮。