本文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 參與生態成長相關工作,並建構出囊括50,000 多個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最終能否在競爭激烈的公鏈市場中站穩腳跟,其技術嘗試和創新模式都值得被記住。