BitVM 白皮書意味著比特幣網絡可復現以太坊等生態的一切敘事?
作者:Haotian
一篇題為《BitVM:Compute Anything On Bitcoin》的白皮書引發了開發者熱議,似乎意味著比特幣網絡實現圖靈完備合約了,可以執行任何可計算的函數?
這意味著比特幣網絡可以復現以太坊等生態的一切敘事?而且不需要改變現有比特幣共識,甚至不需要任何升級,僅依托當下比特幣的基礎op_code就可以賦予比特幣網絡"複雜"的可編程能力,讓比特幣網絡可以圖靈完備計算一切?
Wait,先別展開美夢了,先探討下BitVM的構想路徑怎麼回事。Script空間如何執行複雜編程?Optimism Rollup思想指的是什麼?Fraud Proof欺詐證明原理是什麼?BitVM落地實現存在哪些障礙?接下來帶大家逐步分析下它的大致邏輯框架,便於大家通俗理解。(不過多探討具體技術實現細節)
如何實現複雜可編程特性?
由於,比特幣的編程能力非常有限,僅在script腳本上支持簡單的邏輯和有限的操作碼,因此無法在比特幣網絡上開發複雜的智能合約。BitVM提案腦洞大開的核心點就是,通過taproot地址矩陣或者說taptree實現了類似二進制電路的各類程序指令,組合起來就相當於完整的合約執行了。
具體而言,我們可把每一個Script腳本中的UTXO花費條件指令當成一個程序最小單元,一個腳本執行無非true和false兩種結果,若在taproot地址中輸入一定的代碼就能得到一個確定性的0或者1,若把大量的taproot地址組成矩陣就能構成一個有序的taptree,而執行的結果就有大量011001之類的二進制電路文本效果,就可以被視為一個可執行的二進制程序。程序的複雜性取決於組合的taproot地址多少,地址越多,在比特幣框架範圍下每個Script預置的指令越豐富,整個taptree可以執行的程序就越複雜。Make Sense吧?
這腦洞著實夠大。不過按照這個邏輯,最小單元指令確實由比特幣全節點完成,而且無限疊加taproot地址,無限組合的可能性可以疊加很多複雜計算。 某種程度上,說它為圖靈完備機不為過。但無限疊加taproot地址只會增加成本消耗,理論上是可以圖靈完備實現一切,但卻不切實際。
所以,白皮書中提到的圖靈完備只是極端理想情況下的說法,有點"偷換概念"之嫌,連以太坊號稱超級計算機都無法完全實現圖靈完備,何況僅依托script的比特幣網絡呢?
若干複雜概念淺析
基於上述核心框架理解,再去看白皮書中提到的Optimism Rollup和Fraud Proof以及Bit commitment,Logic Gate為何物了?由於,單個taproot空間和可執行代碼邏輯有限,在鏈下執行複雜程序,只把關鍵驗證環節放到鏈上,不就是一種Rollup的思想嗎?
而Fraud Proof可以這樣理解,Prover和verifier雙方先編譯一個巨大的二進制電路,比特幣網絡在執行電路時,有一個前提是Prover要預簽名且要質押一定的比特幣資產,若Verifier驗證出來Prover有作惡之嫌,就可以同理向鏈上發送交易以觸發鏈上taptree"程序"的UTXO解鎖條件,成功的話,verifier就可以罰沒prover的抵押資產,等於就是一次欺詐證明過程。
這個邏輯裡,我們就不難理解為啥BitVM只適用於兩個有約定共識的parties,即必須執行前共享總電路圖,必須在有效期內執行欺詐者證明程序,必須質押一定資產且預簽名。若雙方沒有在鏈下配合搞一套約定的共識,僅靠比特幣網絡有限的鏈上執行環境,很難促成一次真正的"合約"執行。
BitVM落地會存在哪些障礙?
1)BitVM目前只適合兩個約定共識的Parties之間實施鏈上操作, 鏈上環境只是公開透明化執行合同的過程。目前也僅能實現兩個約定主體之間,若實現N-N需要更複雜的技術邏輯設計。
2)BitVM如何應用單個taproot地址的腳本實施最小編程單位,不能超出比特幣的執行邏輯框架, 比如hashlock、timelock這些,不能超出限定的存儲條件,樂觀情況下一個taproot地址可以編程上百個邏輯門,更多就得組合大量地址進行taptree構建了。問題來了,taproot地址預設解鎖條件的執行需要付礦工費,地址組合越多要花費的成本也越大。未來也許靠閃電網絡的雙向通道技術可以降低成本,但總得來說要靠比特幣網絡執行邏輯門電路,不僅慢不說,想想就是個高花費的事兒。
3)BitVM理想狀況下支持的場景很有限,比較適合重鏈下計算,只有部分共識和資產轉移需要依賴鏈上的場景,比如遊戲的資產處置環節等;
總的來說,BitVM是個腦洞大開且極具創意的構想,但按照它的落地實現技術框架,就知道它短期大概率會限於白皮書構思階段了,長期的應用場景探索,落地應用還面臨極大的挑戰。用個很通俗的例子來形象說明:BitVM像是在人人可以用移動終端的時代裡,構建了一台比房間還大的巨型計算機。
Note:以上解讀只適用於理解BitVM的大致技術框架,便於大家理解背後的技術邏輯,具體實踐方式可能會有偏差,若有技術大佬有很深入的技術細節研究,可以評論中更正補充。