原文: 《Move: The Javascript of Web3?》

作者:Mustafa Yilham, Jermaine Wong , Henry Ang丨幣信錢包

要做Web3時代的Javascript?全面解析“Diem匪幫”MOVE語言

前言:

環顧Twitter 帖子和加密出版物, Sui 和Aptos 的名字總是出現。這些新的高吞吐量L1 區塊鍊是怎麼回事?為什麼它們會吸引a16z 、 FTX 、Multicoin 等公司的投資?我們發現這兩個區塊鏈都與Diem 有著深厚的歷史淵源,並且都使用一種新的編程語言——Move。

在本文中,我們將深入探討Move 的特性,並簡要介紹採用Move 的Sui、Aptos 等區塊鏈,然後回顧Solidity/EVM 的誕生,最後對比Move 和MoveVM 是否可以打造屬於自己的充滿活力的生態系統。

簡易目錄:

一、Move的起源

二、Move的優勢

三、Move的開發生態

四、Solidity/EVM:它如何成為最具活力的開發者生態系統

五、Move語言的未來

一、Move 的起源

Move 是一種基於Rust 的編程語言,它是為Meta 的Diem 區塊鏈項目而開發的。該團隊當時正在研究其他智能合約語言,但沒有一種語言具有稀缺性、確定性和可驗證性的特性,所以他們構建了Move。

現有的Move github 源碼庫目前由Mysten Labs 管理,Aptos 和Sui 的團隊組成了Move 的核心開發團隊。 Move 語言的願景就是成為Web3 中的Javascript,幫助開發人員安全、輕鬆、快速地構建區塊鏈應用程序的框架。

二、Move 的優勢

Move 與平台無關,支持跨區塊鏈的共享庫、工具和開發人員社區。 Move 語言的設計強調安全性,旨在避免許多Web3.0 用戶受害的情形,包括但不限於重入漏洞(re-entrancy vulnerabilities)、毒令牌(poison tokens)和欺騙性令牌批准(spoofed token approvals)等問題。數字資產也應該被視為資源,這意味著數字資產不能被隨意複製或意外破壞。

為了提供額外的保護,Move 可以用Move Prover 驗證工具輔助開發,該工具允許開發人員為其應用程序的關鍵特徵編寫正式規範,並使用驗證器在30 秒內檢查代碼的執行正確性。

三、Move 的開發生態

1、Mysten Labs開發的Sui

要做Web3時代的Javascript?全面解析“Diem匪幫”MOVE語言

什麼是Sui,團隊背景是怎樣的?

Mysten Labs 的Sui 是一個分散的權益證明區塊鏈,具有水平可擴展的吞吐量和存儲的特性。 Mysten Labs 背後的團隊來自Novi Research,這是Meta 內部的高級區塊鏈研發部門,致力於Diem 區塊鍊和Move 編程語言的運行和加密。創始團隊包括CEO Evan Cheng、CPO Adeniyi Abiodun、CTO Sam Blackshear(Move 的創始人)、首席科學家George Danezis 和首席密碼學家Kostas Chalkais。

融資事件

Mysten Labs 正在洽談以20 億美元的估值籌集2 億美元的B 輪融資, FTX Ventures 將領投。 Mysten Labs 2021年底在由Andressen Horowitz 領投的A 輪融資中籌集了3600 萬美元。

性能表現

Sui 處理速度預計會超過120,000 TPS,能以亞秒級的速度處理獨立事務,針對更加複雜的事務(共享對象)能以3秒的速度處理。事務的依賴關係在被執行之前被映射出來,允許通過拜占庭一致廣播處理獨立事務,而涉及共享對象的事務由另一個稱為Narwhal & Tusk 的共識協議處理。

Sui上的Move語言

Sui 在使用Move 時,它對Move 的核心功能進行了某些更改,尤其是在全局存儲運算符和關鍵能力方面。這些更改保留了Move 的安全性和靈活性,但優化了存儲和地址機制,從而提高了網絡性能並減少了交易確認時間。

要做Web3時代的Javascript?全面解析“Diem匪幫”MOVE語言

發展路線圖

Sui DevNet 自5 月以來已公開發布,而團隊已宣佈於2022 年8 月啟動激勵測試網。 Sui Hackathon 註冊也自6 月底開始開放。

生態項目

關於在Sui 上開發的項目的信息一直很少。迄今為止,Chrome 擴展自託管錢包Sui Wallet 已經推出,而第三方Ethos Wallet 已在DevNet 上使用。

2、Apots

要做Web3時代的Javascript?全面解析“Diem匪幫”MOVE語言

Aptos 是什麼,背後的人是誰?

Aptos 是第1 層區塊鏈,其使命是為數十億人創建對去中心化資產的普遍和公平的訪問。 Aptos 由CEO Mo Shaik 和前Meta 內部區塊鏈解決方案首席軟件工程師CTO Avery Ching 共同創立。在加入Meta 之前,Mo 曾在Conesnsys、BlackRock 和波士頓諮詢集團工作,而Avery 則在雅虎工作。 Aptos 團隊的其他成員由博士、研究人員、工程師、設計師和戰略家組成,他們在Meta、Novi、Amazon、VMware 等領域擁有工作經驗。

融資事件

Aptos 於3 月完成了由a16z 領投的2 億美元投資,參與方包括Tiger Global、Katie Haun、 Multicoin Capital 、3 Arrows Capital、FTX Ventures 和Coinbase Ventures,隨後又在7月25日,獲得了由FTX Ventures 領投1.5 億美元融資。

性能表現

Aptos 現在最高可以達到10,000 TPS,理論最大吞吐量為160,000 TPS。大多數交易在兩次網絡廣播後得到驗證,最終確定時間為250 毫秒。 Aptos 高吞吐量的關鍵是能夠將事務執行層與共識協議分離,通過Block-STM 實現並行執行能力,並通過狀態同步實現亞秒級延遲。共識引擎改編自Diem 的HotStuff及其團隊的第4次迭代。

Aptos上的Move語言

Aptos 通過適配器層擴展了核心MoveVM 的附加功能,其中包括通過Block-STM 實現的並行性,無需用戶輸入即可並發執行事務,用於在帳戶中大規模存儲、存儲密鑰的表,以及解耦的細粒度存儲(fine grained storage)在帳戶中的數據量會影響與帳戶相關的交易的Gas Fee。

發展路線圖

Aptos DevNet 自3 月以來已公開發布,而該團隊已經完成了4 個計劃中的激勵測試網中的第1 階段,目前正在進行第2 階段。 Aptos 還在6 月宣布了一項贈款計劃,以進一步加速Aptos 生態系統的快速發展,應用程序現已經開放且能後使用了。

生態進展

Aptos 核心存儲庫上有1,500 多個Fork,現在有超過100 個跨DeFi、 NFT 、遊戲等項目有望在主網上部署。 Pontem Network、Macalinao brothers、Nutrios、PayMagic、MartianDAO、Solrise 等團隊已經在為預計9 月底左右推出的Aptos 主網做準備。

3、其他採用Move語言的區塊鏈

0L—— 一個從Diem 創建的開源代碼庫中Fork 得到的L1 區塊鏈協議。該開源項目始於2019 年,是一項社區驅動的倡議,沒有企業贊助商、風險投資或基金會。

要做Web3時代的Javascript?全面解析“Diem匪幫”MOVE語言

Starcoin —— 一個智能合約平台,使用增強的工作證明共識和Move 語言。它通過分層和靈活的互操作性來優化DeFi、NFT、遊戲等不同生態系統的構建。

要做Web3時代的Javascript?全面解析“Diem匪幫”MOVE語言

4、Sui/Aptos 與其他區塊鏈的比較

要做Web3時代的Javascript?全面解析“Diem匪幫”MOVE語言

多維度對比四個公鏈

來源: Aptos, Solana Explorer, Etherscan, Sui Node, Aptos Node, Solana Node, ETH Node

從上面的比較來看,Sui 和Aptos 在並行執行事務方面與Solana 相似,因此具有更高的吞吐量。

然而,在運行完整的驗證節點時,Sui 和Aptos 都更接近以太坊,因為進入的門檻較低,這將有助於社區驗證網絡的更大去中心化。

有趣的是,Sui 和Aptos 的存儲需求遠低於Solana 和Ethereum。一旦兩個新生的區塊鏈上出現更多的相似的歷史狀態,那我們就需要看看是否更大的存儲空間是否有價值。

五、Solidity/EVM:它如何成為最具活力的開發者生態系統

為了充分了解Move/MoveVM 構建自己的編程語言和虛擬機所採取的發展路徑,我們需要回顧Solidity/EVM 以及它們如何成為當今事實上的智能合約編程語言。

在早期,有兩種方法可以在新的區塊鏈上編寫智能合約。

a) 使用現有的編程語言並通過通用虛擬機WebAssembly (WASM) 運行它

b)從頭開始構建新的編程語言和新的虛擬機。

雖然Solidity 和EVM 走的是少有人走的路,但它似乎在2020 年的DeFi 繁榮之後取得了成果。那麼Solidity/EVM 是如何超越通用WASM VM 的呢? Starcoin 的核心開發人員@jolestar 認為有以下三個原因:

a)通用語言更適合操作系統而不是區塊鏈。如果把操作系統調用、文件I/O、硬件、網絡和並發庫等功能剝離掉,那麼智能合約和編程語言之間共享的庫是最少的。這違背了使用通用編程語言的目的,因為編程語言主要優勢是利用開發者生態系統中現有的共享庫。

b)雖然理論上WASM 可以支持不同的編程語言,但現實情況是,具有運行時系統的編程語言(例如Go、Java)並不適合區塊鏈,因為一旦編譯就會有大量的二進製文件。這有效地將編程語言限制為C、C++ 和Rust,從新開發人員的角度來看,在學習難度方面與Solidity 沒有太大區別。此外,各種編程語言可能導致開發者生態系統出現意外的碎片化。

c)鑑於每條鏈的狀態處理機制不同,即使它們運行在同一個WASM VM 上,互操作性仍然是一個問題。由於每條鏈上的智能合約無法直接遷移到不同的鏈上,因此也存在開發者生態碎片化的問題。

此外,鑑於其可複制的開源庫,Solidity 已被證明具有用戶粘性。能使用經過審計的代碼對應用程序開發人員來說是一個巨大的便利;要知道安全的智能合約都需要進行安全審計,其中每一行代碼都會產生額外的成本。

來自EVM 社區的更大的開發者生態系統為大量經過審計的代碼做出了貢獻,這將會鼓勵更多的開發者來構建EVM。

六、Move語言的未來

Move/MoveVM 現在沿著Solidity/EVM 相同的道路前進,並且有一些數據顯示確實如此。

要做Web3時代的Javascript?全面解析“Diem匪幫”MOVE語言

來源: a16z State of Crypto

Solana 也做出了類似的選擇,使用編程語言Rust 構建自己的虛擬機,並且可以看到Move鏈上大規模的開發人員活動與Solidity 早期的增長軌跡相類似。用戶方面,Solana 也將自己確立為在每日、7D 和30D 指標上擁有最多活躍賬戶數量的鏈。

鑑於FTX Ventures 是Sui 和Aptos 的投資者,我們相信他們可以幫助開發Move 生態系統,就像他們在Solana 引導階段所做的那樣。綜上所述,Sui 和Aptos 都在大力推動他們的DevNets,包括孵化獎勵和黑客馬拉松,我們預計未來幾個月開發人員的活動將會增加。

此外,為了幫助克服新編程語言最初缺乏開發人員資源,並協助從其他語言的開發人員逐步遷移到新語言,Pontem 等項目已經開發了Diem MoveVM 的一個分支,現在可以部署到其他現有鏈上,比如Polkadot 、 Cosmos 、 Avalanche 等,並且正在開發與MoveVM 兼容的新EVM。

總體而言,我們相信Move 是一種可以提供一種更安全、更快捷、更簡單的方式來編寫智能合約語言,它將成為一個強大而充滿活力的開發者生態系統的基礎層,相信會有人使用Move來構建下一代Web3 應用程序以吸引更多的Web3 用戶。

在接下來的幾週內,我們將在分享我們對Sui 和Aptos 區塊鏈更深入的發現與分析。

這篇文章的完成必須感謝Jolestar,他提供了他的技術專長和觀點。 Jolestar 是Move 的早期使用者,也是Starcoin 的核心開發人員。