Move双雄:Sui和Aptos如何重塑区块链

时间:2024-08-24  分类:电子


目录

前言


近期市场日渐停滞,许多行业内的资深人士开始质疑这个行业的真正目的。我想分享一些个人的看法。我一直相信,许多过去的宏大愿景之所以被揭开真正的面纱,是因为它们从一开始就缺乏逻辑上的连贯性。非金融类Dapp常常通过强调去中心化价值来掩盖自身的不足。但现实是,他们要求我相信他们的多重签名钱包和单节点服务器比Google、Twitter或YouTube更安全,声称它们足够安全。许多愿景并未被揭开真正的面纱,只是从未真正经过考验。我依然相信,即使这些愿景没有最初想象中的那么宏大,它们依然具有意义只不过需要一个强健的基础来支撑。至少,它们应会提供去中心化或接近Web2的体验。


以TON和Solana为例;它们曾经被低估,但现在在各方面逐渐追赶行业领军者。支持应用程序的区块链需要创新,而每一个周期的创新推动行业前进。今天,我们将探讨一种长期被忽视的区块链基于Move的区块链。


1.Move


Move编程语言最初是为Meta废弃的项目Diem(原名Libra)开发的。Diem旨在创建一种更稳定、更受监管的稳定币,作为Meta元宇宙愿景的基础。然而,该项目遭遇了全球监管机构的强烈反对并不断受到压力。监管机构担心,Diem的规模结合Facebook的庞大用户基础可能对金融稳定、货币政策和数据隐私构成威胁。在尤其是来自拜登政府的压力下,Meta最终不得不放弃Diem项目。


幸运的是,Diem的核心并没有完全被抛弃。各种从原始团队分裂出来的势力继续探索并开发Move,这一编程语言随后演变成了广为人知的Move双雄:Sui和Aptos。除此之外,还有像Linera(一个基于Rust的受Move启发的区块链)和最近被大力推广的Movement等新兴项目。


那么,为什么一个一分为二的项目的遗产会有如此持久的影响?Move作为由顶级Web2公司为区块链开发的编程语言,具有高度的复杂性。它在设计时充分考虑了现有区块链编程语言,尤其是Solidity的性能和安全问题。其设计目标是创建一个专门针对资产管理和访问控制的类型系统。我将其优势总结为三点:


 安全性:Move语言的主要设计原则是安全性。它使用静态类型检查和资源管理来防止常见的安全漏洞,如溢出错误和重入攻击。与其他语言虚拟机相比,Move支持多种安全功能,详见下方的Nansen比较图。


 可组合性:Move支持模块化和可组合性,允许开发者轻松创建和组合不同的智能合约,从而构建更复杂的应用程序。


 性能:Move语言的虚拟机经过优化(支持并行处理、内存管理和编译器优化),使其能够高效执行智能合约,从而提高交易速度和吞吐量。


在充斥着模块化EVM区块链的市场中,Move代表了一种大胆的实验。虽然上述几点可能在其他区块链项目的描述中也有所提及,但我强烈建议亲自体验这些特性,如此才能充分理解它们带来的实际好处。


2.Sui


2.1架构


作为双雄之一,Sui自推出以来就面临了一些批评,特别是在空投和代币分配方法方面。然而,抛开这些问题,专注于项目本身,Sui在性能和用户体验方面表现出色,尤其是在游戏领域。这一成功在很大程度上归功于其创新的架构,该架构已经优化,可适应主流应用。以下简要概述了Sui架构创新:



Sui的架构设计使其能够处理大量并发事务,同时提供高速、低费用和安全性。此外,SuiMove语言和Sui框架为开发者提供了强大的工具,以构建安全、可扩展和用户友好的应用程序。


2.2共识机制


Sui区块链使用了一种名为Mysticeti的共识机制,这是一种基于拜占庭容错(BFT)的共识机制,旨在优化低延迟和高吞吐量。


Mysticeti允许多个验证者并行提议区块,从而最大化网络带宽并提供抗审查能力。此外,该协议仅需三轮消息交换即可从有向无环图(DAG)中提交区块,符合理论上的最小要求,并且与pBFT相当。提交规则允许并行投票和区块领导者认证,进一步减少了中位数和尾部延迟。它还容忍不可用的领导者,而不会显著增加提交延迟。


在Sui主网发布之前,Mysticeti在测试网运行了三个月,取得了显著成果,其中将延迟减少了80%。现在,Sui网络能够处理每秒数万笔交易,端到端延迟远低于一秒钟。


Sui区块链还采用了一种特殊类型的权益证明共识,称为委托权益证明(DPoS)。当发生涉及共享对象的复杂交易时,Sui使用Narwhal和Bullshark共识引擎对这些交易进行排序。与区块链使用的其他BFT共识机制相比,Sui的共识机制具有以下优缺点:


优点:



缺点:



2.3账户抽象


Sui的账户抽象模型是一种机制,使用户可以以更简单、更安全的方式管理其账户和交易。它将账户和交易逻辑从底层区块链协议中抽象出来,实现了更高层次的账户管理和交易处理。


在Sui的账户抽象模型中,账户不再仅仅是简单的公钥和私钥对,而是具有更丰富属性和行为的对象。每个账户都有一个唯一的标识符,称为账户ID,该ID与账户的公钥和私钥对相关联。


Sui账户抽象模型的关键组件包括:



Sui的账户抽象模型通过以下步骤处理交易: