@atomicsxyz發布的AVM虛擬機白皮書旨在讓比特幣主網具備智慧合約系統能力,進一步管理複雜資產和狀態記錄。 AVM採用比特幣腳本模擬和沙盒運行環境,實現了圖靈完備屬性和狀態哈希驗證。理論上,AVM可以為比特幣主網提供基礎智慧合約操作功能,使比特幣具備處理複雜資產和DApp的能力。雖然AVM存在性能限制,但是作為BTC擴展能力創新的一部分,可以推動早期智能合約在BTC主網落地,並在第二層構建中發揮更大作用。建議對AVM持理性謹慎樂觀態度。
如何理解@atomicsxyz最新發表的AVM虛擬機器白皮書?簡單來說:它是透過模擬比特幣虛擬機,讓比特幣主網實現搭載智慧合約系統的能力,隱私可以完成BTC資產以外更複雜資產的狀態記錄和處理能力,類似於圖靈完備智能合約。接下來,分享下我的理解:
1)比特幣基礎設計為一套點對點的電子現金系統,有一定腳本需求能力,同時有一些基本的OP Codes操作碼,也有一套基於UTXO時間鎖和支出條件的驗證資產邏輯。
因此,比特幣網路在記錄並傳輸BTC資產時能夠實現「無效」的資產管理。由於UTXO極簡模型和預定義狀態轉換規則的限定,這種無效模型只能處理BTC單一資產的有限管理。
若嘗試在比特幣網路中新增資產,例如BRC20、ARC20、Runes等資產,就需要有一套更受歡迎的動態「狀態機」模型來記錄這些資產的儲存、交易、狀態變化等。如何實現呢?
一種方式時採用外部協定和layer2二層解決方案在鏈下建構「狀態機」模型來延展處理,像@NervosNetwork @RoochNetwork等目前優秀的二層擴充方案,甚至RGB、閃電網路等Native解決方案都屬於此類;
另一種方式是直接擴展腳本的功能,以增加新的操作嗎或承載來處理複雜資產的創建和轉移,像Covenant和OP_CAT等依賴BIP提案標準被通過的方案都適用這種;
兩種方式要么過於“主動”,要么過於“被動”,存在極大的麻煩。 AVM虛擬機分為四種,一種是較為主動的,一種是過於“被動”,一種是過於“被動”,這兩種方式都達到了共識,另一種是過於“被動”,出現了極大的麻煩。
2)如何做呢? AVM主要工作原理包含三部分:
1.比特幣腳本模擬,其實就是比特幣指令集,透過雙錢包PDA(可壓入儲存自動機)實現了圖靈完備屬性;
2、沙盒運作環境,整個模擬機處於受控的隔離環境中,使得沙盒中的執行和之外的執行不干擾;
3.狀態哈希,可以供其他人驗證其索引器的狀態是否正確同步,並防止狀態不一致所導致的攻擊。
簡單理解:AVM直接利用目前BTC限制的載入和OP Codes處理框架,然後在每筆BTC主網交易中引入一種特殊的編碼和解碼方式(沙盒環境)。
這個沙盒自備索引器、沙盒解析器(指令集),全球資料庫(資料庫)等等,可以獨立完成一套資產的儲存、交易狀態記錄等管理,等等於在BTC主網內建了一個動態的“狀態機”,而就可以實現成熟的智慧合約處理以及狀態同步和驗證。
3)擁有AVM虛擬機理論上可以為比特幣主網提供基礎智慧合約操作功能,讓比特幣具備管理複雜資產以及複雜狀態邏輯DApp落地可能性,相當於讓比特幣具備了目標建置功能。
這當然算是一次偉大的進步,至少和RGB、閃電網路以及各類優秀二層協定處理方案算同等級BTC擴充能力創新。甚至在Native方面更是優於其他方案。
不過,AVM要依賴比特幣Script腳本做編碼儲存、同時依賴OP Codes做交易執行,因此它整體限定於BTC的主網效能,例如:區塊載入大小、出快速度等。
試驗想法,一個基於AVM構建的DeFi項目,每分鐘只能處理7筆交易,兩個狀態轉換之間需要等待十分鐘,這樣的智能合約即使理論上完工,也已經被束縛住了手腳。而且依賴比特幣腳本指令集來開發流行的合約功能,要比以太坊Solidity等語言開發智能合約更複雜、更困難。
況且,AVM的白皮書只是釐清了這種方法的內建虛擬機器執行方式,其實際部署到應用環境如何運作、如何穩定運作等問題依然是未知數。
以上
整體來說,我傾向於把AVM 的開發落地視為一種基於BTC 的主腳本擴展的有益動機探索,能夠帶動一些較早的智能合約在BTC 主網落地,同時可在第二層構建BTC 主網和下網組合中發揮更大的作用和價值。
但,和其他各類BTC 擴展解決方案一樣,AVM 也取得了不錯的成績,並且得到普及後的成果讓我們看到了「正統性」的吸引力,建議保持理性謹慎樂觀的態度。
資訊來源:0x資訊編譯自網際網路。版權歸作者鏈上觀所有,未經許可,不得轉載