资本宠儿、创始团队自带光环、继承 Facebook 的 Diem 项目的技术遗产——新编程语言 Move···这些关键词都来自于近期吸引了不少目光的两条新公链:Aptos、Sui。
作为区块链 Layer1 的后起之秀,Aptos&Sui 已然在区块链赛道的版图上开启了新的“厂牌”——即 Move&Diem 匪帮。
目前,两条公链在紧锣密鼓开放测试网的过程中,陆续披露了各自的白皮书,我们也得此渐窥见这两条公链的部分全貌。虽然两条公链核心成员都出身于 Facebook 技术团队,且都继承此前的技术成果,但两个团队在解决区块链可扩展性问题上有着截然不同的方法。
事实上,这也是 Move 编程语言在设计上的优势。在 TinTinland 之前的《开发者时薪高达 1200 美元?一文带你走近 Move 语言的编程魅力!》一文中就提到,在开发之初,Move 开发团队就有意将其设计为跨平台、而并非特定于任何区块链的核心语言。它有诸如 strux、布尔值、整数和地址之类的东西,但却没有账户、交易、给定平台使用的密码学或给定平台使用的共识的概念——所有这些东西都被抽象出来了。
当前,除了 Aptos、Sui,目前在使用 Move 编程语言的其他几条区块链(Starcoin、Linera、0L Network 等)在如何设置交易、如何进行存储、如何进行账户结构以及共识如何运作方面看起来都大不相同。
本文将主要聚焦 Aptos 与 Sui ,先对两者背景做一个简单介绍,再重点分析两条公链基于 Move 编程语言所做的创新异同。
Aptos
今年 3 月,Aptos 完成 2 亿美元融资,由 a16z 领投。参投方包括 Tiger Global、Multicoin Capital、FTX Ventures、Coinbase Ventures、Binance Labs 等顶级机构。今年 7 月 25 日, Aptos 又完成了 1.5 亿美元融资,FTX Ventures 和 Jump Crypto 领投,a16z、Multicoin Capital 和 Circle Ventures 等参投,不到半年,Aptos 筹集了 3.5 亿美元。
今年 3 月 15 日,Aptos 发布了开发者测试网;5 月,启动了激励测试网(AIT1),为开发人员和合作伙伴提供了类似于主网的测试平台,目前即将开始第三轮测试网。
Aptos 团队成员包括:
联创及 CEO Mohammad Shaikh:此前在 Meta 负责战略合作伙伴关系,早年从事咨询和投资,历任 KPMG、RBC(加拿大皇家银行)、BlackRock(贝莱德)、BCG 的分析师。
联创及 CTO Avery Ching:前 Novi (Meta 的先进加密技术研发团队)首席软件工程师,此前在雅虎任软件工程师 4 年,随后在 Meta 度过了 10 年职业生涯。
Sui
Sui 于 2021 年 12 月宣布完成3600 万美元A 轮融资,该轮融资由 a16z 领投,Coinbase Ventures、NFX、Slow Ventures、Scribble Ventures、Samsung NEXT、Lux Capital 等参投。今年 7 月,Mysten Labs 以 20 亿美元估值寻求至少 2 亿美元的 B 轮融资,本轮融资预计由 FTX Ventures 领投,目前项目方已在该轮融资中获得1.4 亿美元的资金支持。
今年 5 月,Sui 公开发布 DevNet,今年 8 月启动测试网。
Sui 创始团队为之前在 Novi Research 工作的研究人员团队另立门户成立的 Mysten Labs。
团队成员包括:
Evan Cheng,首席执行官:前 Novi 研发主管和 Meta 工程总监(编程、语言和运行时);之前在苹果工作了 10 年;
Sam Blackshear,首席技术官:前 Novi 首席工程师,专注于 Move 编程语言;
Adeniyi Abiodun,CPO:曾任 Meta Novi 产品负责人;以前在 VMware、甲骨文、PeerNova、汇丰银行、摩根大通工作过;
George Danezis,首席科学家:前 Novi, Meta 研究科学家;以前在 Chainspace,微软工作过;
Kostas (Konstantinos) Chalkias:曾任 Novi 首席密码学家;以前在 R3、Erybo、Safemarket、NewCrypt 工作过。
两者比较
经整理,Aptos 与 Sui 在编程语言改进、共识算法、可扩展性、开发者工具以及生态进展上都有所差异。其中最主要的区别还是:Sui 在 Move 语言上进行了改良,对 Move 编写的代码施加了额外限制;Aptos 采用 Move 语言探索高性能的并行执行。
编程语言的改进
两者虽沿用了同样的技术核心,但基于 Move 的“魔改”力度却有所差异。
首先需要厘清 Move 的一个核心技术概念。即 Move 是一种可执行的字节码语言,用于在区块链上创建智能合约以及自定义交易。根据 Diem 关于 Move 的白皮书,Move 专注于资产的两大特性:稀缺性和访问控制。稀缺性对资产创建施加了限制,防止了任何双重支出,而访问控制则对资产的所有权和特权有所管理。
它与 Solidity 等其他编程语言的不同之处在于它对资源的使用源自线性逻辑的数学概念。在 Move 的情况下,“资源永远不能被复制或隐式丢弃,只能在程序存储位置之间移动”,该机制旨在最大限度地提高安全性,同时不增加交易的复杂性,降低 gas 费用。
Aptos 基本上遵循 Diem 白皮书的教科书设计。
另一方面,Sui 做了三方面的改进:
1、资产的访问控制
最初,Diem 应该是一个受监管的支付网络,它执行任意智能合约,对可以存在的账户、这些账户中可以存在的对象类型以及在账户之间移动东西的规则有非常严格的限制。比如,未经账户 A 的许可,账户 B 不能向他们发送资产,这一点非常重要。
但是在开放的 Web3 世界中,这些规则就变得非常古板了。很多空投的情况下,项目方都希望在对方无权限的情况下随机空投,对此,Sui 做出了改进,举例来说:是否需要账户 A 的许可,这一规则不是强势存在,而是作为 native function,即账户 A 可以在这个功能上进行选择——别人发送资产是一定要通过自己的许可或者不需要、可以直接发送。
如果你有一个 NFT 并且你想有一个受限制的转移政策,你只能在某个日期之后转移它以避免投机,或者你可能希望在转移时支付版税。但默认情况下,一切都可以自由传输,这使得构建开放平台比 Diem 和其他使用 Diem 样式实例化的平台更为容易。
2、与 Aptos 略有不同,Sui 是把 Object 而非 Account 作为基本单位。Sui 的 Move 编程语言版本清楚地表明了对象是拥有、共享、可变还是不可变的,而 Aptos 则没有。
3、在 Move 语言的使用上,Sui 进行了升级调整,让该语言既能编写同质化加密资产( FT )的智能合约,也能编写非同质化( NFT )资产的智能合约。
共识算法
Aptos 和 Sui 都使用 PoS 作为他们的共识机制,其背后的共识算法并不一样。
Aptos 采用的 AptosBFT 共识算法是对 DiemBFT 共识进行的第 4 次迭代。迭代体现在:添加了一个主动起搏器,可以使用超时来同步验证器,远快于等待增加的超时,区块只需两次网络往返就可以提交,可使用亚秒级的最终确定性;并且 Aptos 添加了一个信誉系统,可通过检查链上数据并自动更改领导者轮换以解决无响应的验证者。
为了执行这个算法,Aptos 设计了一个高效、多线程、内存中的并行执行引擎Block-STM。与预先识别要读取/写入的数据且破坏交易原子性的并行执行引擎不同,Block-STM 使开发人员能够不受限地进行编码,并为实际用例实现更高的吞吐量和更低的延迟。STM 也是继承自 Diem 的设计,官方博客称这是让 TPS 达到 160k 的关键。
总而言之,AptosBFT,Block-STM 和 Move 语言从不同的角度提高了执行速度。该系统的主要目的是通过共识(AptosBFT),执行(Block-STM)和环境(Move)并行优化交易,以提高速度并降低成本。
Sui 采用的共识算法同样也是采用 BFT 协议的变体。但Sui 将事务分为两种,独立的交易与具有从属关系的交易。
独立的交易是指交易彼此没有因果关系,例如,通常用户只是想把资产转移给接收者,其中唯一需要的数据就是发送者的账户,并且与区块链状态的其他任意部分没有相互依赖关系。独立交易采用拜占庭式一致广播达成共识。
从属交易则采用 BFT 协议的变体,要求明确说明交易的从属关系,以实现并行处理。实现方式为 Narwhal 和 Tusk 两种协议。
Narwhal(内存池协议):在被共识协议验证前,所有未确认的链上交易都需存储在内存池。Narwhal 的任务是在保持数据可用性的同时广播交易以达成共识。Narwhal 独立于共识协议,能够容忍故障形式的异步或间歇性活力损失。
Tusk(异步共识协议):负责交易的排序。Tusk 使用共享随机性来消除节点之间的额外通信,并允许每个节点确定交易的总顺序。当与 Narwhal 组合时,可确保发生故障时的高性能。
异步共识协议的设定使得Sui 的安全属性能够抵御恶劣的网络条件、网络分区或对验证者的 DoS 攻击,因为它不会对网络施加任何同步假设。相比之下,对同步区块链(即大多数基于工作量证明的区块链)的持续网络攻击则可能导致资源的双花和死锁。
可扩展性
Aptos 和 Sui 的目标不是通过家庭验证器案例或大规模去中心化,而是通过最大化网络容量来优化可扩展性,类似于 Solana。然而,瓶颈很可能是生态系统中的状态增长。
为了解决状态增长瓶颈,Aptos 优先考虑异构验证器,而 Sui 计划有效地对数据存储进行分片,并横向扩展其资源。
开发者工具
目前两大公链还处于发展的初级阶段,在开发者工具上都有所重视但方向并不一样。
Sui 的 SDK 在连接其他生态系统和非加密用例方面做出了有趣的尝试。
游戏 API:将游戏开发人员直接连接到通用 L1,而不是侧链或专注于游戏的 L2。然后,游戏开发人员将能够与 Sui 的生态系统(用户、其他 dApp、资产)和 Move 语言无缝交互。
“SuiEcho”:允许 dApp 开发人员通过促进数字资产从其他生态系统到 Sui 的可移植性来引导社区。例如,基于以太坊的 Bored Ape Yacht Club NFT 持有者可以使用他们的 ETH 原生 PFP 作为所有权证明,通过 SuiEcho 铸造基于 Sui 的等价物。虽然 Sui 铸造的 NFT 是独立资产,但他们的头像可以在 Sui 的网络中使用。同样,它允许 Sui dApps 进入其他网络中的社区。虽然高价值的 NFT 可以在其他地方桥接,但价值最终会累积到原始链上。然而,这种方法允许 Sui 和更新的 L1 从另一个 L1 中的现有社区中受益。Aptos SDK 也具有 NFT 功能,但目前仅限于 Aptos 原生功能。
“Handshake”:前端工具,作为用户向加密和非加密用户分发、领取/赎回 Sui 数字资产(例如支付、商户优惠券)的渠道。对于非加密用户,不需要预先创建帐户,也不需要与底层区块链交互。Handshake 的路线图包括非加密用户的进入。
Aptos 对于开发者的核心功能主要是频繁更新,可在不干扰用户的情况下无缝进行升级。开发者在更新功能时不需要部署一版新的合约,也能够让开发人员专注于构建,让用户享受流畅的体验。
此外,Aptos 也在今年 7 月宣布推出 Aptos 生态系统资助计划,为团队、个人和创作者提供资金加速 Aptos 生态发展。资助类别包括:开发人员工具、SDK、库、文档、指南及教程;用于开发、治理、DeFi 和 NFT 的工具和框架;核心协议贡献:代币标准、库、协议升级等;开源和公共产品;教育举措;应用程序。Aptos 称,赠款资金将以美元分配,未来可能会选择分发代币,以帮助激励各方的长期生态系统增长。
生态进展
两者在生态方面的进展也有所差异。
Aptos 最引人注目的就是其生态系统。其中以 Defi 为最多,涵盖了 DEX、借贷、衍生品、聚合器等多种品类;基础设施中,钱包赛道最拥挤,已经涌现 10 个项目;其余品类也大多已有项目覆盖,包括域名、 DAO、 支付等;在 NFT/游戏领域,也已经至少产生 2 个可公开测试的商城和多个 NFT/游戏项目。
图片来源:AptosEcosystem(截止 8/21)
而 Sui 在生态上的进展则更缓慢一些。虽然团队构想的公链 4 个关键应用为游戏、DeFi、商业和社交,但目前由于推出进度本就比 Aptos 慢几个月,目前生态仍然有待开垦。
总结
Aptos 与 Sui 在技术上都有所创新,从以上总结来看,Aptos 与 Sui 的区别较为明显的是,由于创始团队风格的差异,Sui 更偏技术流,Aptos 则更强调生态驱动。
不过从现在就开始分析两者之间的优势还为时过早,目前两者均还在测试网阶段,白皮书撰写的技术优势只能算是纸上谈兵,新的叙事故事固然具有吸引力,实践过程仍然需要观察。
至于到底谁能在后续的发展中拔得头筹,我们也拭目以待。
参考资料:
Aptos & Sui 白皮书
Recap Sui AMA: Move Programming Language with Mysten Dev Team
https://sui.io/resources-move/recap-sui-mysten-dev-team/
Aptos vs Sui Blockchain: Similarities and Differences
Aptos Wiki
https://wiki.aptos.movemove.org/ji-chu/jie-dian-wang-luo-he-tong-bu
《万字解读公链 Aptos :先发优势下的机遇与挑战》
https://foresightnews.pro/article/h5Detail/10958
公链赛道烽烟再起–Move 系新公链崭露头角
https://mp.weixin.qq.com/s/EZYFXx1XPBXNt0jMx0KoGg
关于我们
ABOUT US
TinTinLand 是赋能下一代开发者的技术社区,通过聚集、培育、输送开发者到各开放网络,共同定义并构建未来。
Discord:https://discord.gg/kmPnTDSFu8
Twitter:https://twitter.com/Tintinland2021
Bilibili:https://space.bilibili.com/1152852334
Medium:https://medium.com/@tintin.land2021
YouTube:https://www.youtube.com/channel/UCfHiMcFt-4btbC75FsReQh