新一轮公链叙事中有两个亮眼趋势:
一是以Move编程语言为核心的高性能新公链,
二是以Celestia为代表的模块化区块链。
借助本文,我们简单聊一聊最新崛起的Move语言系公链三巨头,以及从技术视角出发,他们背后的Move语言究竟好在哪里。
全文5288字,预计阅读时间13分钟
文章速览:
01/Move语言系公链三巨头的崛起
02/当前赛道霸主:Aptos
03/Resource特性:Move真正实现了数字资产化
04/技术差异总结:Solidityv.s.Move
05/Move未来展望与课程学习
1.Move语言系公链三巨头的崛起
2019年,Meta全球流通的超主权数字货币项目Libra问世,谁料想出道即巅峰,随后因监管限制被迫转型Diem无疾而终。今年?1月底,Diem以约1.82亿美元的价格被Meta出售。Libra与Diem团队在这一过程中,留下了宝贵的遗产——弥补了Solidity及EVM缺陷的Move语言以及衍生出的公链团队,比如最具代表性的Aptos、Sui和Linera。
2021年12月,起步最早的Sui公布了3600万美金的A轮融资,资方包括a16z与NFX、ScribbleVentures、Redpoint、Lightspeed、ElectricCapital、SamsungNEXT、SlowVentures、StandardCrypto、CoinbaseVentures等。
2022年3月,Aptos完成2亿美元融资,同样由a16z领投。
2022年6月,Linera宣布完成600万美元种子轮融资,本轮融资的领投机构还是a16z,参投机构包括CygniCapital、KimaVentures和TribeCapital等。
2022年7月,Aptos完成1.5亿美元融资,FTXVentures和JumpCrypto领投,a16z、MulticoinCapital和CircleVentures等参投;同时Sui爆出正在寻求2亿美元B轮融资,估值已经达到20亿美元。
2022年8月,Aptos宣布将于8月30日启动激励测试网3,项目方宣布AIT2非常成功,有超过225个社区节点参与测试,分布于全球44个国家和110个城市。按照项目路线图,主网将于该测试网结束后上线。
不难发现,a16z刻意押注“Move语言系公链赛道”,希望三条公链跑出下个周期龙头。Move语言的三足鼎立态势也在形成。
三条公链当中,开发和生态进展最快的无疑是Aptos。截至目前,它有着相比较更强大的社区、更活跃的开发人员和更健全的dApp生态系统,我们在本文第三部分详细拆解。
排在第二位的Sui已经发布了自己的Tokenomics白皮书。其经济模型有一个独特特点:计算费与存储费分开支付。当用户提交链上数据时,他们会同时支付存储费与计算费。计算费会进入Stakerewards完成分配,部分转移至StorageFund;存储费直接转入StorageFund,随着网络的增长和成熟,该基金用于补贴未来存储成本的增加。这一设计将链上数据的存储权回归用户,用户可以选择删除链上的数据来取消存储费。此外,Sui的开发工具包尝试连接其他生态系统和非加密应用,包括GamingAPIs、SuiEcho、Handshake等有特色的SDKs。但其生态应用布局与Aptos相比非常寒酸,公开报道中仅有数个钱包相关的生态项目。
相较于Aptos与Sui,Linera显得起步较晚且更加低调,在今年6月18日发布的官方推特中仅展示了官网链接及使命。参考蜂巢Tech《新生代公链再攻不可能三角》中的研究:Linera致力于能将这两个支付系统的速率引入到应用型的区块链网络中,使链上用户的操作在几分之一秒内就能得到确认。在网络性能方面,Linera提出了「线性扩展」的概念——通过增加机器数量来使系统容量加倍。目前,区块链优先考虑「顺序」执行的模型允许账户和智能合约在一系列交易中进行交互,但阻止了线性扩展。在Linera的线性扩展模型中,不同用户帐户的操作可在不同的执行线程中同时运行。
2.当前赛道霸主:Aptos
根据蜂巢Tech的报道,今年3月Aptos启动了开发者测试网,5月Aptos启动激励测试网注册,并将激励测试网分为4轮:「去中心化启动」、「质押」、「治理和升级」以及「动态验证器拓扑」。当前其测试网络已经达到了2万多个节点,使其成为当今最大的已知权益证明节点社区。Aptos直言,社区的发展远远超出了他们此前最疯狂的预期。而根据计划,Aptos激励测试网的剩余两个阶段预计会在接下来两个月间完成,到了9月底,Aptos就将启动主网。
虽然长期来看,新公链最后赢家尚不明确;但是短期来看Aptos无疑占据着“Move语言系公链赛道”王者地位,这由其开发速率和生态建构共同奠定。
Aptos的明星团队让其在创立初期就收到众多明星资本加持。根据ForesightNews报道,其联合创始人兼首席技术官AveryChing曾在Facebook担任首席软件工程师超过10年,并且是原Meta旗下加密平台Novi团队的技术负责人;AldenHu、DavidWolinsky等大部分开发团队都参与了Diem、Novi的开发。其设计重点是绝对安全、可扩展性和可信的中立性,最终目标是能够在一秒钟内处理10万甚至16万笔交易。在这样的强技术团队下,Aptos也充分展现了自己研发战斗力,打造了如下突出的边际优势:
Aptos团队对其共识机制-拜占庭容错进行了四次迭代,以实现高事务吞吐量、低延迟与高稳定性,在三分之一的验证节点故障时,仍能保证稳定运行。
有望比老牌公链有更快的交易处理速度,根据Aptos测试网数据,当前该网络每秒可处理1万笔以上的交易,理想状态下,Aptos主网每秒可处理16万笔交易。公开资料表明,近期有机构对各大公链的速度进行了测试,AptosMaxTPS远超包括Solana在内的老牌公链。
Aptos在7月正式公布30余个生态项目,虽然众多处于测试网和开发阶段,可交互的只有钱包和DEX,但是相比较于其他Move语言生态公链遥遥领先。如今公布的生态项目类型包括钱包、DEX、流动性协议、NFT、浏览器及数据分析工具等主流dApp赛道。
充分利用Move开发语言与当前主流公链Solidity语言差异化竞争。我们接下来从技术视角详细解读Move语言关键优势。
3.Resource特性:Move真正实现了数字资产化
Move语言被誉为最适合编写区块链智能合约的语言之一,并且多次被拿来与目前主流的Solidity进行比较并力压其一头,主要原因是Move对于区块链最核心的Token资产进行了更为贴合的处理,弥补了Solidity在直观性和安全性的缺陷,这里我们单独将其最具有特色的Resource类型进行重点讲解。
因资产上链使得安全问题成为了区块链核心要解决的问题。在Web2中如果产品Bug或者数据泄露,难以导致用户资产损失,最多引发产品崩坏或个人信息泄漏、黑市贩卖,但是因为资产上链使得智能合约一旦出现了Bug就会直接导致背后无数的用户资产外流或者被锁死。我们也可以经常从新闻看到黑客对某些交易平台或跨链桥进行攻击产生了数以亿计的资产损失,BuidlerDAO之前也产出过大量的研报对这些事件进行研究,大部分都是因为合约出现了比较低级的问题被黑客盯上所导致的。这引发了一个需要读者注意的关键属性:Solidity是面向区块链智能合约的编程语言,但不是面向区块链链上资产的编程语言。
为什么这样说呢?举个例子,Solidity和绝大多数编程语言一样将Token作为数值变量处理,就是将Token的转移过程是进行加减法操作的,即张三要给李四转10块钱,于是则先将张三的余额-10,再将李四的余额+10。
所以在Solidity中资产就是一个可以被加减的数字,那么这里面就需要合约代码非常严谨,比如在进行加减法操作时出现了一些问题,给张三-10,李四+20,或者张三-0,李四+10呢?因为这个过程就是通过很多代码逻辑去来回在若干个钱包中进行加减操作,很难保证不会出现一些问题。
究其原因是资产在Solidity中没有被特殊定义,只是将其看作和年龄、电话等一样的变量。而资产的定义本就应该是独一无二的,就像是在物理世界中,我手里有一块金条,我要将它给某个人,不论给予中间的过程是怎么样的,这个金条不会从1根变成2根。所以我们常说的数字资产,在Solidity中只可称之为可以被加减的数字,而谈不上资产。
Move的可编程Resource是其变得安全且强大的核心,实现了真正意义上的数字资产化。Resource是一种数据类型。数据类型即定义一种数据结构的方式:
字符:比如姓名、住址,是String类型;
数字:比如年龄、电话,可以是Int类型;
是否、对错:一些对立,则可以用Boolean的Ture和False来表示。
Move认为Token资产是一种很特殊且重要的数据,不应该用普通的数值类型来定义和表示,所以单独创建了Resource来定义链上资产。这种方式呈现出三个特性:
Resource在Move中依然是以一个数值的形式存在,可以作为数据结构被储存,也可以作为参数被传递和返回。
Resource可以安全的表示数字资产,它的特殊在于不能被复制,丢弃或重用,但是它却可以被安全地存储和转移,并且Resource类型的值只能由定义该类型的模块创建和销毁,所以其实现了资产的含义而非数字。
Resource适配了区块链应用特性,如与账户进行绑定。Resource数据必须要存储在账户下面,所以只有分配了账户后才会存在对应的Resource资产,以及Resource只要取出后就必须被“使用”,用内置的Move_form方法将资产从账户中取出后,要么将其作为返回值传递即必须要流向一个地方,要么直接将其销毁,这意味着资产取多少就用多少。还记得Solidity是如何操作的吗?它将一个地址的余额减少,再去另外一个地址增加,然后通过代码使得减少和增加的数字是一致的,所以在Solidity是完全靠代码逻辑强硬的实现了资产使用,但是Resource则是在底层将资产的概念进行了封装而非加减法,避免了资产凭空产生和随意访问,极大的提高了安全性,可以将Move的Token移动看作是搬砖,从一个地方搬到另一处,而Solidity则是加减法,一处减了,另一处加上。
综上所述,Move是一种更加原生且贴合的专用于发行数字资产的编程语言,它实现了程序与数字资产的直接集成。
4.技术差异总结:Solidityv.s.Move
从Bitcoin的Script过渡到Ethereum的Solidity,经历了DeFi的洗礼,Solidity无疑是成功的。但是分析最近半年那些历历在目的安全漏洞,例如PolyNetwork、Horizon、Nomad、Solana等等,让人不寒而栗。对比不可能三角,如何保障链上资产的安全,已经成了整个行业急需面对的主要问题,a16z正是看中了这一潜在的刚需,一口气领投了Move的三大公链。
未来拥抱Web3时代,在这些漏洞的背后,VM也在不断的查缺补漏,例如修复原来的溢出问题,但是底层设计上的缺陷很难有质的改进。不同于以往的开发经验,DeFi应用本质上是开源、透明的金融系统,对于安全性有极高的要求。所以针对金融场景,设计更安全可靠、低门槛的智能合约语言也许不失于更好的选择。这里我们深入对比一下Solidity和Move:
从上面可以看出,Move在Solidity的基础上,增加了很多的特性,具备极好的安全性和工程能力。Move从Solidity真实的安全漏洞中吸取宝贵的经验教训,在底层的安全设计上有重大的创新,在保证语言表达能力和灵活性的同时,也让开源系统更加安全可靠。
举个栗子,假设有100个Token,在Solidity中,黑客能够轻易的将100个Token复制成更多的Token。但是在Move中,只要将Token定义成Resource类型,从虚拟机层面保证Token是不可以复制和修改的,黑客绝对不能通过复制来盗取Token。
对Move来说,类似的优点很多:
面向资源编程
Move专门针对金融场景进行了增强,引入了面向资源编程。对于FT和NFT等常用场景,Move将数据定义成资源,能够从虚拟机层面保障了数据的安全。
纯静态语言
动态调用是Solidity的基石,所有的跨合约调用都要通过动态调用来实现,例如DelegateCall,但是也是大部分安全漏洞的入口,例如TheDAO攻击、PolyNetwork跨链攻击等等。鉴于Solidity的真实经验,Move采用了完全纯静态的实现,更好的保障链上资产安全。
形式化验证
形式化验证是FV(formalverification)是指使用数学工具分析设计可能行为的空间,而不是计算特定值的结果。也就是说,通过数学的手段证明程序的安全性。Move自带形式化验证的工具,我们可以使用数学的手段来测试和证明合约的可靠性,这是Solidity不可比拟的优势。
分散存储
Web3时代,用户掌握数据是所有权。Solidity是通过Map的形式,集中存储合约数据,在合约出现漏洞的时候,例如获取到了合约Owner权限,所有用户数据都将遭受攻击。Move巧用Resource,能够将数据分散的存储到每个用户自己的Account下,既保证了数据的安全,又真正的做到了数据的所有权归用户所有,合约的Owner没有修改数据的权限。
面向泛型编程
出于安全的考虑,Move设计成了纯静态语言,但是灵活性并没有因此而减少,Move通过面向泛型编程,保障了合约的扩展性,增加了代码的复用能力。
5.Move未来展望与课程学习
从Script到Solidity是合约表达能力的变革,从Solidity到Move是合约安全能力的变革。
Move是对开发者友好的。Move语言的宗旨就是,降低开发者的安全门槛。合约开发者可以专注于业务逻辑,无需在代码安全上面花费很多的心思。只有让合约开发者在无感的情况下写出高安全性的代码,远离那些低级Bug导致的安全漏洞,才能让DeFi更安全,才能让用户更放心。Move还有很多优良特性我们未在本文展开说明,但是非常值得探索的方向。
在研究新公链这一火热话题中,我们研究员不约而同发现理解本轮新公链叙事,必须懂得Move技术细节与公链技术创新。
因此BuidlerDAO联合3NJOYLab团队Move语言资深布道师,打造一款纯公益技术系列课。我们希望借助新公链这一趋势,继续为业内扎实Buidl,向行业提供一款全新课程——从Move语法开始,由浅入深,逐步深入到Move的高级特性,手把手教学,适合各种学习Move的朋友,敬请期待。
作者:
Jason|@Jason_chen998|BuidlerDAO研究员
Frank|@MonolithMatrix|BuidlerDAO研究员
Move小王子|知乎:手把手写Move智能合约
来源:BuidlerDAO
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。