Sui 与 Aptos 区别, 及 Move 语言的特点
最近大家都在谈论两个新的L1(Aptos 与 Sui),不聊聊好像跟不上时代,要了解他们就需要了解什么是Move,弄清楚共识机制,并了解他们的价值主张。
最初 Meta(原名Facebook)建立了Diem(原名Libra),想要成为一个基于许可的区块链稳定币支付系统。从本质上讲,他们想在追求其垄断性地位的同时涉足点对点支付。但是,监管和反垄断问题一直困扰他们,他们在今年1月放弃了Diem这个项目。
不过,Diem确实留下了一些有用的财富:基于Rust的智能合约和自定义交易编程语言Move。
与Solidity相比,Move有许多好处,主要有:
我了解过的开发者,他们也提到Move的开发体验非常优越。它允许资产和合约的真正可组合性。夸张的说,在Solidity中需要3个星期的代码在Move中只需一天。
Aptos和Sui的团队都是来自Meta的原Diem团队。他们都是Layer1 层的区块链网络,使用权益 证明( proof of stake)作为他们的共识机制。然而,他们使用不同版本的Move,并且在其并行执行背后有不同的算法设计,因此他们的共识算法也是不同的。
Aptos和Sui都声称已经破解了困扰其他L1的可扩展性问题。Aptos的测试网能够处理超过 16万 TPS 和 >1s TTF (最终确定时间),Sui声称大多数交易几乎即时结算,高达12万TPS。
与以太坊最大的45 TPS 和 Solana的2.3-46s TTF 相比,很容易让人非常兴奋。这也许是为何从Web3 VC的顶级大佬们那里筹集大约6亿美元的资金。但是,加密货币领先吹牛皮吹破天太常见,会不会是另一个 EOS 呢? 所以任何有兴趣的人都应该对实际的架构差异做适当的调查,让我们深入了解一下。
大多数区块链使用顺序执行,成千上万的节点更新同一个账本,包含执行的每一笔交易的时间顺序。因为每笔交易都是一次添加的,所以有必要等待每笔新的交易被验证,限制了吞吐量,导致我们知道的高额Gas费,特别是当网络使用量激增时。
顺序执行不必要地限制了这些链上的吞吐量 -- 大多数交易是独立的。而且随着应用需求的扩大,高延迟也会成为一个问题,所以影响了dApps的响应速度。 Sui官网有很好的解释:
Sui和Aptos都使用并行执行,以便有能力随着需求和利用率的增加而无限地扩展网络吞吐量。这并不新鲜,并行执行说起来容易做起来难。如何对订单达成共识?如何区分独立和冲突的交易?
Aptos使用BFT(Byzantine Fault Tolerance,即拜占庭容错)共识算法,其中并行化是通过使用BlockSTM(HotStuff算法的演变)动态检测依赖关系和执行任务来实现的。
从本质上讲,交易被优化执行,若有冲突会被并行执行引擎中的最大一个线程检测出来,然后通过队列重新执行和重新验证,然后同步和改变最终状态。
Sui使用基于DAG的mempool(Narwhal)和Tusk共识算法,然后在执行层利用DAG进行并行化。它要求明确说明交易的依赖性,这意味着它可以并行处理大部分交易,在少数交易依赖的情况下,仍然按顺序执行。这是通过使用2种不同的共识路径来实现的:独立交易的拜占庭一致广播和依赖交易的BFT共识。它只在需要时运行共识以检查其状态,通过利用 "随意排序"放弃对大多数交易顺序的共识(与其他完全排序的区块链相比)。
这与Aptos形成鲜明对比,Aptos "等待交易尘埃落定",然后一次性验证所有链,然后重新执行失败的链,让验证过的链通过。
执行并行执行Move是很必要的。Aptos或多或少使用了Diem Move 版本,但Sui使用了一个改编的版本,使其智能合约能够接收对象作为输入,操作它们,并将它们作为输出返回,这两个版本都有以下好处:
好吧,Aptos甚至没有代币,所以暂时把它们放在一边,用Sui的彩色图表来看看:
Sui的Gas价格机制和存储基金(storage fund)激励 Sui 将交易并行化和存储任意数量的链上数据的能力,这意味着它在架构上是高度可扩展的。SUI代币(上限为100亿)可以被用来参与POS 共识,用于支付Gas费用,作为智能合约和货币政策应用的流动资产,最后用于治理/链上投票。
在主网启动时,SUI总发行量的一部分将是可流通的。存储基金创造了重要的货币动态调节:更高的链上数据要求转化为更大的储存基金,减少流通中的SUI数量。
Sui的Gas定价的作用是保持Gas定价的可预测性和尽量低的手续费。
验证者在每个epoch(epoch是一个固定的时间段,其中参与的验证者集合是固定的)开始时商定一个全网的参考价格,作为用户提交交易时的锚。
用户为执行(Gas费用)和存储(通过治理建议设定的费用)支付单独的费用。前者是通过一个在Sui epoch 中反复操作的三步程序确定的,用于激励验证者诚实地宣布他们报价,然后兑现它。
在 epoch 开始时,Gas价格调查要求验证者提交他们愿意处理交易的最低Gas价格。该协议将质押数量 2/3 认可的价格设定为该 epoch 的参考Gas价格。
随着epoch的进行,验证者会获得关于彼此的信号。
在 epoch 结束时,每个验证者提交他们对其他验证者行为的看法,这被用来确定权益奖励分配规则。那些在Gas调查期间提交低价报价的人或处理所有交易的价格高于他们的报价的人将得到奖励,反之亦然。(用于激励低报价)
Sui旨在处理任意数量的链上数据。用户为计算和存储预先支付费用(因此未来的用户不必为他们的存储而补贴部分用户)。存储费用被存入一个存储基金,用于调整未来分配给验证者的相对于SUI委托者的权益奖励份额。如果链上存储需求很高,验证者会得到补偿。
Sui的 Move以对象为中心的设计让验证者以因果排序的方式执行交易,因此独立的交易可以以任何顺序处理。 因此,每个验证器可以通过增加计算能力来增加其交易吞吐量。这意味着随着网络活动的增加,吞吐量和成本都会线性增长。
并行执行是L1的一个很有前途的机制,Sui和Aptos已经提出了有意思、可扩展的机制来维持它。我期望随着Move的好处越来越明显,更多的开发者会熟悉它。在这方面,他们的成长是相互受益的。
我相信我们会看到更多的L1(我接下来会关注Sei和Canto),肯定会有更多的应用程序被建立在它们之上,更多的资金会被投资到这些地方。在深熊的环境下,有一些非常有趣的、有差异的架构出现了,而且熊市看起来很有希望。
任何问题,反馈,批评,死亡威胁,建议--请发到我的邮箱:marthe@whitestarcapital.com
https://docs.sui.io/learn/why-move https://medium.com/mysten-labs/announcing-sui-tokenomics-9cb829086e30 https://www.theblock.co/post/114225/layer-1-platforms-a-framework-for-comparison https://twitter.com/state_xyz/status/1546533606847160320 https://mirror.xyz/contributiondaoblog.eth/dOACGWcGESEBvVyLnGz6PxQmBcbl-cr9iBb3TQ3v23o https://medium.com/mysten-labs/suiecho-bootstrapping-sui-communities-d3a59606dfcb https://decrypt.co/resources/what-is-aptos-the-solana-killer-created-by-diem-developers https://research.thetie.io/aptos-network-deep-dive/ https://twitter.com/TheBlockRes/status/1557368834373345281 https://twitter.com/cryptoalvatar/status/1551878534926401537 https://twitter.com/tracecrypto1/status/1544332560389607424 https://research.thetie.io/sui-blockchain/ https://twitter.com/0xirreducible/status/1516880152248037376 https://twitter.com/adamcader_/status/1509712927003095049 https://twitter.com/state_xyz/status/1551878856151142401 https://twitter.com/state_xyz/status/1551878856151142401 https://medium.com/@state_xyz/aptos-a-formidable-layer-1-addressing-the-blockchain-trilemma-398ff9be62d7 https://medium.com/@state_xyz/aptos-a-formidable-layer-1-addressing-the-blockchain-trilemma-398ff9be62d7
原文链接:https://medium.com/@marthenaudts1/sui-vs-aptos-2729cb304c80
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!