作者:0XNATALIE
Move 介紹
Solidity 是目前最受歡迎的智慧合約程式語言,在以太坊虛擬機器(EVM)上運作。但其設計並不完美,存在一些安全和效率的問題。 Solidity 資產通常被視為可變更的數字,有潛在的重入攻擊、雙花等安全問題,並且缺乏內建的形式化驗證(運用數學方法證明),安全依賴於開發者的實現。此外,交易通常順序執行,限制了效能和擴展性。這些問題促使了Move 語言的發展。
Move 是由Facebook 為加密貨幣專案Diem(前Libra)開發的一種新型智慧合約程式語言。 Move 強調數位資產的獨特所有權,引入了一種以「資源」為核心的程式設計模型,將數位資產視為不可複製和不可丟棄的資源,只能透過明確轉移進行處理,從而防止重入攻擊、雙花問題。 Move 透過資源導向的特性和形式化驗證,提供了一種更安全的方式來處理和管理鏈上資產。並且Move 的設計允許並行處理交易。
Move 對平行交易處理提供基礎的語言支持,並行執行的效率和可行性還是取決於底層區塊鏈如何實現Move 語言規範。例如Aptos Move 能夠在運行時推斷並行化,意味著系統可以自動推斷事務或操作之間的依賴關係,並決定哪些交易可以同時進行,以此來最大化使用可用的計算資源。而Sui Move 進行並行處理時,開發者需要預先表明資料依賴關係。
Movement Labs:建構Move 基礎設施
Movement Labs 是一家致力於透過採用和擴展Move 程式語言來推動其區塊鏈網路的發展的技術公司。上個月,Movement Labs 完成了3,800 萬美元的A 輪融資,此外還獲得了Binance Labs 的投資支持,具體金額暫未揭露。 Movement Labs 開發的產品M2,目標是為以太坊帶來並行化。
M2 以太坊上第一個Move zk L2,由Movement SDK 支援。 M2 透過將Move 程式語言的優勢帶入以太坊生態系統,實現更高的安全性和效能,它還支援與其他基於Move 的區塊鏈系統無縫互通。
Movement SDK:實現互通性
Movement Labs 開發的Movement SDK 是一個綜合性的開發工具包,推動Move 語言的應用。而Movement SDK 結合了MoveVM 的安全架構與Solidity 的適應性,創造一個能夠支援各種區塊鏈技術和應用的框架。 SDK 的核心組件包括:
- MoveVM:Move 虛擬機器(VM)是Movement SDK 的核心,提供安全且有效率的智慧合約執行環境。它遵循資源導向的運算範式,強調資產在區塊鏈生態系統中的獨特性和不可替代性。
- Fractal:Fractal 扮演了Solidity 與MoveVM 之間的橋樑。它的主要功能是允許開發者在MoveVM 上部署現有的Solidity 合約,確保這些合約在Move 生態系統中的相容性。具體來說,Fractal 解析Solidity 合約,並進行標記化處理,將Solidity 合約轉換為適合MoveVM 執行的中間語言表示。最後將中間語言表示轉換為MoveVM 可執行的字節碼。
- 自訂適配器(Custom Adaptors):這些適配器使得Movement SDK 能夠與定序器和資料可用性層無縫集成,以支援多種不同的技術堆疊和基礎設施,增強互通性。
隨著區塊鏈向高吞吐量、低延遲的互聯網級應用擴展,並行執行技術已成為區塊鏈技術開發的重要趨勢之一。 Move 語言透過其獨特的資源模型和安全機制,改善Solidity 語言的不足之處。 Movement Labs 建構M2 將Move 語言的優勢帶入以太坊生態系統,實現更安全的平行交易處理。