傳統經濟不景氣,最近身邊很多互聯網朋友都在諮詢我關於Web3的情況,試圖找到一個合適的切入口,當然我的建議是自己公鏈,這樣靈活性更高,也方便業務的開展,不受限於其他公鏈的瓶頸。
同時,這也引發我一個思考,如果企業要自己開發公鏈,那麼選擇現有的開發框架如Cosmos SDK、StarStack、Substrate進行開發無疑是最簡單和省事的,或者用OP Stack、Polgon CDK等技術做一條L2也是很方便,但我的問題是應該選擇EVM虛擬機,還是Move呢?
EVM是第一個爲區塊鏈行業創建的虛擬機,也是目前使用範圍和兼容生態最多的虛擬機,而Move作爲第二代開發語言,在安全性和功能方面更強大,同時也是Meta這種大廠開發出來的,孰優孰劣真的不是很好選擇,於是我諮詢了公司的開發人員,也與行業內的技術大牛溝通後,通過對安全性、兼容型、開發友好、穩定性等角度進行了比較全面的比較,希望能給行業內正在從事公鏈開發,或者即將從事公鏈開發的朋友一些參考。
1. 定義公鏈類型
在決定公鏈開發之前,首先要確定自己的公鏈的類型,行業內對公鏈類型的劃分主要去中心化程度進行,如公有鏈、聯盟鏈、私有鏈。但這裏的類型是隻對公鏈的定位,先要問自己幾個問題:
是要做一個開發平臺,構建很多生態應用?如以太坊、Solana
還是要做一個獨立的區塊鏈,滿足自身的業務發展需求?如Uniswap Chain、dYdX Chain
或者是做一個區塊鏈集合平臺,基於你的平臺可以構建很多其他公鏈,最終形成一個多鏈宇宙?如Polygon、Optimism
公鏈開發是一件極其複雜,費時費力的事情,不但開發工程量巨大,並且後期運營維護成本也很高。所以,弄清楚自己對公鏈的定位是選擇公鏈開發的第一步,這決定了後續工作的難易程度。
如果要做類似以太坊這種擁有龐大生態的區塊鏈,那麼道阻且長。而如果要做一條類似dYdX Chain這種應用級別的鏈,那麼開發難度或許比你想象的還容易些,目前已經非常成熟的框架如Starcoin的StarStack、Cosmos SDK等Layer1框架,可以快速幫助你實現獨立區塊鏈的開發。
2. EVM和Move VM的不同
EVM是以太坊虛擬機,兼容整個以太坊生態,而Move VM則是不兼容以太坊。舉例來說,兩者就像是不同操作系統的手機,我們把EVM比作安卓系統,而Move則是iOS系統,基於安卓系統開發的應用包是無法在iOS系統上運行的,同樣基於iOS系統的應用也無法在安卓上運行,也無法上線安卓的應用市場。
所以,在選擇虛擬機的時候就很重要,基於EVM開發的公鏈可以與以太坊生態,包括其二層網絡兼容,但無法與Move生態兼容。目前,知名的 EVM 鏈包括Ethereum、Bsc、Arbitrum、Polygon、Avalanche 等,而Move生態的知名公鏈包括Starcoin、Aptos、Sui、Movement等。
3. 虛擬機選擇EVM還是Move VM?
確定好公鏈類型後,就是站隊環節了,選擇EVM生態或是Move生態。EVM是目前應用最廣的虛擬機,有其長期發展帶來的羣體效應。而Move是一種全新的開發語言,擁有自己的生態,如Sui、Aptos、Starcoin等都是其生態的明星項目,並且Move也是大部分開發者認爲更安全和先進的開發語言。
3.1 EVM(以太坊虛擬機)
EVM是以太坊的虛擬機,兼容EVM本質上是兼容以太坊生態,因爲以太坊生態基本佔據了行業生態的大半半壁江山,所以兼容EVM是爲了更好的獲得用戶和資源,而很多公鏈開發則直接選擇基於EVM進行開發。EVM的優勢如下:
成熟的生態:EVM是目前最廣泛使用的區塊鏈虛擬機標準,兼容以太坊生態,擁有龐大的開發者社區和豐富的工具(如Truffle、Hardhat)。使用EVM意味着可以輕鬆接入現有的DeFi、NFT和其他DApp生態。
廣泛的兼容性:許多主流公鏈(如BNB Chain、Polygon、Avalanche)都採用了EVM,開發者遷移項目或技術合作時難度較小。
開發者友好:由於EVM的普及,大量開發文檔、教程和模板已經存在,開發者學習成本較低,工具鏈完善。
網絡效應:基於EVM的鏈更容易吸引已有的區塊鏈用戶和項目,並且能快速匹配用戶使用習慣,快速獲得生態流量。
當然也存在一些不足:
技術侷限性:EVM存在一定的架構瓶頸,如Gas機制的複雜性和靈活性較低,限制了某些場景的創新,這也是如dYdX這類應用出逃選擇自己構建獨立區塊鏈的主要原因之一。
安全問題:Solidity合約的開發難以避免漏洞問題,尤其是對初學者來說更容易出錯。
擁堵與高費用:在主流EVM鏈中,隨着用戶量的增加,容易出現擁堵,Gas費用也隨之上升。在之前以太坊擁堵的情況下,進行一筆交易的gas一般要超過上百美金,包括現在在以太坊上進行交易,也要20多美金手續費,這對於需要高頻交互場景的應用來說是不可接受的。
除此之外,EVM生態還存在許多侷限性,導致用戶體量無法進行擴大。這些侷限性從近兩年生態發展可以看出,Solana憑藉優異的網絡性能和低成本優勢,快速搶佔市場,到目前爲止,活躍地址數已經完全反超以太坊生態。據defilama數據顯示,以太坊活躍地址僅爲41.96萬,而Solana活躍地址爲568萬,已經超過10倍。
3.2 Move VM(Move虛擬機)
Move VM是基於Move語言開發的虛擬機,主要作用於Move生態。但目前Move生態各自爲政,生態內的項目並不能實現互通,不過值得注意的是Move生態項目Starcoin近期推出的Move v7升級,將實現Move生態主流應用的無縫遷移,這或許對於打通Move生態,實現流量和資源的共享有幫助。
安全性更強:Move語言從設計上就引入了“資源安全”的概念,避免了許多傳統智能合約中的漏洞。例如,它能更好地管理資產的唯一性和所有權,極大降低了出錯的概率。
面向資源的編程:MoveVM 將資產視爲有形的、不可複製的資源,從而確保了資產管理的更高程度的安全性和完整性。
創新的技術設計:Move的生態目前主要集中在新興的鏈(如Aptos、Sui、Starcoin等)上,這些鏈在性能、用戶體驗和開發模式上往往具有更高的創新性。尤其是Starcoin,它將並行化技術和DAG技術結合,在試運行環境下TPS達到13萬,網絡性能表現非常亮眼。
發展潛力:Move生態目前處於早期階段,對於想要引領技術方向或開發新標準的團隊,Move鏈可能提供更多發展和差異化空間。
Move VM的不足:
生態不夠成熟:相較於EVM,Move的生態規模較小,開發者社區和工具鏈還在不斷完善中,對於想要快速獲取生態用戶的項目來說,需要通過自身建設來完成。
存在不確定性:Move生態仍處於早期階段,未來是否能達到EVM生態的影響力尚不確定。作爲公鏈,可能面臨吸引開發者和用戶的難題。
開發者稀缺:Move語言的開發者目前相對較少,培養人才需要時間和資源。
但值得一提的是Move生態項目Starcoin推出了StarStack,它是一個區塊鏈開發框架和工具箱,對於不熟悉Move語言或者需要定製化開發Move區塊鏈的開發者來說,可以用StarStack進行快速構建Move區塊鏈。簡單來說,它類似Optimism的Stack,Cosmos SDK這些公鏈開發工具,上手容易,開發進度快。
4. 公鏈開發如何進行選擇?
通過以上對比可以看出,EVM雖然生態最大,但近期很多用戶已經被Solana搶佔,並且競爭巨大,各類Layer2和兼容鏈讓市場競爭白熱化,基於EVM開發公鏈屬於在確定性種找不確定性。而Move生態目前仍處於早期,知名項目並不多,並且發展潛力較大,市場競爭壓力小,屬於在不確定性中找確定性。
但歸根到底,進行公鏈開發還是要結合自身需求,以下是預設情況:
短期目標:如果你的目標是快速上線並吸引用戶,EVM可能是更好的選擇,尤其是你希望快速整合DeFi或NFT應用時。
長期創新:如果你計劃構建一個創新性強、以安全和高性能爲核心的公鏈,Move是值得投資的方向。
生態策略:如果你選擇Move技術,也可以兼容EVM(如通過橋接或雙虛擬機方案),實現兩者的優勢互補。如今年上線的Movement就是致力於將Move引入EVM生態,來提升以太坊的安全性,補其短板。