本文Hash (SHA1):35e14cfaaff32c39e94d75a88968168b13bdd3ccd0868b17bb33330fdc31c28d
编号: 链源Security Knowledge No.123
近日,ETH二层的Fuel Network推出了自己的空头方案,并准备上线自己的原生代币Fuel。那么Fuel是会成为像Base同咖位的网络,还是会像ZK那样刚上线就哀声一片?
Fuel的前世今生
Fuel,是今年最为火热的模块化公链的项目之一。是由Nick Dodson,Brandon Kite联合创立的ETH Layer2的公链。
Fuel的主要知名投资方有CoinFund,Blockchain Capital,Stratos。Fuel 的团队的背景很有意思,其联创 John Adler 也是 Celestia 的联创,CEO Dodson 也是早期以太坊生态的参与者。而在加入 Fuel Labs 之前,Arjun Kalsy 也曾在 Polygon 和 Mantle 参与生态增长相关工作,并构建出囊括 50000 多个 DApps 的生态系统。
Fuel和普通的公链有什么区别?
加密生态的发展伴随着用户与交互数的爆炸性增长,在现有的单片 Layer 1 架构中,处理大量并发交易时的掣肘也相对突出。故在 EVM 生态的发展长河中,有关扩容和效率提升的讨论不绝于耳。
在 Vitalik 提出以 Rollup s 为技术发展路线之时, Fuel 团队成为了最早在主网上部署 Optimistic Rollup 的团队,但由于他们特立独行的基于 UTXO 构建执行层部分,继而用户寥寥。
但到了模块化叙事兴起,团队开始构建他们的 V2 版本,并将其定位为模块化执行层,结合了 UTXO 模型以及继承 Rust 语法同时融合 Solidity 语言特点的 Sway 语言创新了自己的 Fuel VM ,继而构建出最大化吞吐量和最小化延迟的 Rollup OS 。这些构建使得 Fuel 成为了以太坊领域异军突起的扩容团队之一。
看到这里,你是否会感到有些奇怪,ETH明明是账本记账模式,怎么就跟BTC的UTXO搭上边了呢,还有ETH一层中不可能实现的“并行”居然在这里也实现了?这样的宣发,究竟是能解决什么问题还是噱头呢?
UTXO模型和并行化
Fuel 的并行事务执行模型是其效率和可扩展性的核心创新,专注于解决传统区块链的性能瓶颈,如吞吐量和延迟问题。传统区块链通常采用顺序执行的模式,每笔交易依赖于前一笔交易的状态更新,这种设计在高并发场景下限制了系统的处理能力。
而 Fuel 通过引入并行化模型,打破了这种顺序依赖,将任务分解为多个相对独立的子任务,并利用现代硬件的多核处理能力同时执行这些子任务。这种并行处理方式极大地提高了系统吞吐量,同时减少了交易延迟。
Fuel 的并行化还依赖精确的冲突检测机制,确保仅允许非冲突的交易并发处理,从而避免状态竞争带来的问题。在所有并行任务完成后,系统会整合结果并验证全局状态的一致性,确保区块链的安全性和完整性。
Fuel 的并行化能力很大程度上依赖于其底层的 UTXO(未花费交易输出)模型。UTXO 模型将交易的输入和输出建模为相互独立的状态单元,每个单元可单独处理且不相互依赖。这种独立性不仅简化了交易验证,还为并行化提供了天然的支持。
在 Fuel 的设计中,UTXO 模型被用来处理从简单的代币转移到复杂的智能合约调用的所有事务。每个地址持有的未花费硬币(UTXO)可以直接通过 FuelVM 消耗或转移,无需依赖全局账户状态。这种方式大幅减少了系统的全局状态更新成本,并显著提升了交易处理效率。
FuelVM 是 Fuel 的核心虚拟机,它与 UTXO 模型的结合进一步提升了 Fuel 的性能。FuelVM 可以快速验证 UTXO 的合法性并执行相应操作,从而避免传统账户模型中冗长的状态检查过程。此外,由于 UTXO 的独立性,FuelVM 能够同时处理多个交易,从而实现高度并行化。无论是简单的代币转移还是复杂的智能合约调用,这种设计都确保了 Fuel 的交易执行高效而灵活。
Fuel 的并行事务执行和 UTXO 模型相辅相成,共同构建了一个高效的交易处理体系。每笔交易仅依赖其自身的输入 UTXO,因此可以独立执行,极大地提高了交易隔离性。通过快速检测交易的输入和输出是否冲突,Fuel 能够精准地筛选出可以并行处理的交易,进一步优化性能。即使面对复杂的智能合约调用,Fuel 也能通过 UTXO 模型将合约的状态更新分解为多个独立的事务并行执行,从而在不牺牲灵活性的情况下大幅提升处理效率。
通过并行事务执行模型和 UTXO 模型的协同作用,Fuel 在吞吐量、延迟和扩展性方面均展现出了卓越的性能优势。它不仅能够处理更多的交易量,满足高并发场景的需求,还显著缩短了交易确认时间。
UTXO交易的设计
Fuel使用了UTXO 模型来处理交易,这种模型最早是比特币协议采用的,并以支持并行交易执行的优势著称。在 Fuel 中,地址可以拥有本地资产,并通过交易消费这些资产。Fuel 的交易分为五种类型,分别是Script(脚本)、Create(创建)、Mint(铸造)、Upgrade(升级)和 Upload(上传)。这种分类方式明确了Fuel 生态系统中用户可执行的不同功能。
Fuel 交易的核心组成部分包括 Inputs(输入)、Scripts(脚本)、Outputs(输出)和 Witnesses(见证)。其中,Inputs 包含用户在交易中访问的状态元素,例如 Coins(代币)、Contracts(合约)和 Messages(消息)。Fuel 支持智能合约作为输入,这些合约具有持久存储功能,能够执行复杂操作,突破比特币协议的限制。Witnesses 则为交易提供数字签名和验证信息,确保代币消费的合法性。
Fuel 的 UTXO 模型特别之处在于支持图灵完备的智能合约,这使得合约不仅可以拥有本地资产,还可以通过交易作为输入来被调用。合约的状态和余额可以在交易执行后被更新,同时这些合约输出可供后续交易使用。此外,Fuel 通过脚本实现多调用功能,使用户能够在单笔交易中与多个合约交互。
Fuel 的 Outputs 定义了交易后生成的新 UTXO,这些 UTXO 可以作为下一批交易的输入。输出类型包括 Coin(代币)、Contract(合约)、Change(找零)、Variable(变量输出)和 ContractCreated(合约创建)。Fuel进行的比较有意思的优化是,任何金额为零的输出都会被从 UTXO 集中移除,从而保持系统的高效性。
全新的语言:Sway
Sway 是Fuel专为这条链智能合约开发设计的编程语言,它结合了现代编程语言的优势,同时针对区块链环境的独特需求进行了优化。Sway的设计灵感来源于Rust,这意味着它继承了 Rust 的一些优点,比如强类型系统和安全性,但同时去除了 Rust 中一些不适合区块链开发的复杂性。
与当前区块链智能合约开发中最广泛使用的语言 — —Solidity相比,Sway 提供了更加现代的语言特性和工具支持。Solidity 长期以来受限于以太坊虚拟机(EVM)的历史设计,许多语言特性和工具都显得有些过时。比如,Solidity 的类型系统相对薄弱,且缺乏程序员常用的功能,如泛型和代数数据类型。而 Sway 则通过引入更强大的类型系统和静态分析,帮助开发者在编译时捕获潜在的错误,避免运行时出现问题。
与 Rust 的关系
虽然 Sway 的设计受到了 Rust 的启发,但它并不完全等同于 Rust。Rust 是一种强大且适用于系统编程的通用语言,它以内存安全和高性能为卖点,特别适用于需要复杂内存管理的程序。然而,区块链上的智能合约开发与传统程序不同。由于区块链的执行和部署成本非常高,过于复杂的内存管理和编译时检查(如 Rust 的借用检查器)可能反而增加开发和运行的负担。因此,Sway 摒弃了 Rust 中某些复杂的特性,专注于提供轻量级、资源高效的工具,以满足区块链开发中的特殊需求。
为什么选择 Sway
选择 Sway 而不是 Solidity 或 Rust,主要是因为它的设计更加贴合智能合约的实际需求。Sway 通过更强的类型推导和静态分析功能,能有效减少常见的编程错误,尤其是在智能合约这种关系到资金安全的环境中。此外,Sway 还提供了许多智能合约开发中必备的现代工具,比如自动化测试框架、集成化的开发工具链(包括代码补全、文档生成等),这些都极大地提高了开发效率。
总的来说,Sway 试图在 Rust 和 Solidity 之间找到一个平衡点:它继承了 Rust 的系统编程思想,保持高效和安全性,同时避免了 Rust 过于复杂的内存管理;它比 Solidity 更现代、更强大,但又不像 Solidity 那样受限于 EVM 的设计缺陷。
Fuel的空投分配
20%分配给社区— 其中包括总计 5% 用于参与平台之间的社区扩展工作,剩余 15% 用于激励、计划、活动和激活。
16%分配给贡献者,他们开发了 Fuel 技术堆栈并为 Fuel 生态系统迄今为止的发展和成功做出了贡献。
30.8%用于生态系统和研发,推动生态系统发展和未来燃料技术的研究和开发。
33.1%分配给2020 年至 2022 年期间购买的购买者。
最后
Fuel的技术设计以模块化公链为核心理念,通过创新的UTXO模型、并行化执行机制以及专属的FuelVM,突破了传统区块链在扩展性和效率上的瓶颈。同时,基于Rust优化而来的Sway编程语言,使开发者能够以更现代、更高效的方式构建智能合约。这些技术上的差异化,使Fuel在ETH生态中逐渐脱颖而出,为解决当前区块链的性能问题提供了新的路径。
从市场层面来看,Fuel的融资历程和团队背景显示出强大的资金和资源支持。尤其是其创始团队拥有深厚的技术积累,并在区块链发展历程中扮演了重要角色,这种资历为项目的长远发展奠定了坚实基础。此外,模块化公链的叙事逐渐被市场接受,Fuel作为这一赛道的领先者,无疑占据了先发优势。
然而,在看好Fuel的技术潜力和市场定位的同时,我们也需警惕其面临的挑战。一方面,模块化公链的普及需要整个生态的协作,Fuel如何吸引开发者和用户将是关键问题。另一方面,尽管并行化和UTXO模型在理论上表现优秀,但能否在主网上实现大规模应用仍需时间验证。
展望未来,Fuel的成功不仅关乎其本身,更可能为整个区块链行业的发展注入新的活力。作为读者,我们应从Fuel的实践中汲取启发,不断关注模块化叙事的发展动向。无论Fuel最终能否在竞争激烈的公链市场中站稳脚跟,其技术尝试和创新模式都值得被铭记。