探索 BTC 可程式設計性的突破口,BitVM 的賦能與限制!
作者:IOSG Ventures
致謝:感謝 Momir,Xinshu 對文章提出的寶貴修改本文為 IOSG 原創內容,僅做行業學習交流之用,不構成任何投資參考。 如需引用,請註明來源,轉載請聯繫 IOSG 團隊獲取授權及轉載須知。 本文所提及所有專案均不構成推薦及投資建議。
TL; DR:
- 比特幣核心的變化通常會遭到抵制,原因包括:a)相比作為一種貨幣,人們更偏好將比特幣作為價值儲存。 b)重視穩定性和可預測性,而不是快速創新。 c)在一個多元化的社區內達成共識很困難。
- 許多項目聲稱有方法解決比特幣的可擴展性問題,並且無需對比特幣鏈本身進行更改。 最近我們目睹了比特幣「L2s」的超級通貨膨脹。
- 雖然許多聲稱僅僅是誤導性的行銷,但我們也認識到了一種新的計算範式,這種範式可以為比特幣帶來可程式設計性——BitVM。
- BitVM 能夠支援的最佳擴展解決方案接近於 OP-Rollup 類型的安全假設(儘管有一些額外的注意事項)。
- BitVM 及類似倡議的成功取決於技術的可行性、社區的支援,以及與其他 “過度行銷” 專案的區分。
比特幣被構建為一個交易區塊鏈,其腳本語言有意限製為無狀態(Stateless),以最小化攻擊面並確保網路安全。 由於缺乏圖靈完備性(Turing-completeness),沒有可能直接在區塊鏈上引入智慧合約,除非通過分叉並升級比特幣核心。 傳統的比特幣社區對變更持抵制態度,原因如下:
- 敘事上更注重價值儲存而非流通貨幣:比特幣社區有意專注於維護網路作為一個點對點支付系統,將安全性和去中心化放在快速發展之上。 正如著名的比特幣持有者 Michael Saylor 說:“沒有人試圖用他們在第五大道上一棟大樓的一小部分去買一杯咖啡。 “ 這句話反映了社區對於比特幣作為一種價值儲存工具而非日常貨幣的使用偏好。
- 系統的穩定性勝於創新:對於被視為優秀價值儲存的資產來說,可預測性至關重要。 例如,即使網路只有 10 次重大升級,而每次升級的成功率為 90%,一個失敗發生的概率大約為 65%!根據正常事故理論:“在複雜系統中,我們應該預期通常可以忽略的小因素偶爾會偶然導致重大事件”,因此比特幣社區的目標一直是減少潛在錯誤的途徑。
- 多元化的社區:許多比特幣持有者從不同的角度理解比特幣,並因不同的原因珍視它。 在一個多元化和去中心化的社區中達成共識本身就充滿挑戰,這進一步減緩了創新的步伐。 要說明比特幣社區的多樣性,可以觀察社區對銘文和 Ordinals 的反應。 當比特幣社區的一部分人慶祝序數的成功,將其視為比特幣的謎戀貓(CryptoKitties)時刻時,另一部分人則認為這是一個應該被修補的漏洞。
1. 比特幣擴容方案的快速膨脹
鑒於上述情況,為何突然之間出現了大量新的比特幣「L2」解決方案呢?最近,我們觀察到比特幣「L2」解決方案的激增(根據 https://l2.watch/,已經有超過 50 個!),然而,社區多年來一直在探索不同的可擴充性方法:
- 像 Stacks 這樣的側鏈提供了智能合約能力和廣泛的應用範圍,儘管它們擁有獨立的共識機制,但這些機制很難獲得廣泛接受。
- 像 RGB 這樣的客戶端驗證專案利用主網的 UTXO 模型進行鏈下的更複雜交易,但它們與比特幣主網的互動缺乏穩定性。
- 像閃電網路(Lightning Network)這樣的狀態通道,與核心比特幣開發者密切相關,被視為一種更正統的擴容方法。
相較於現有解決方案,最近的擴容方法帶來了哪些新穎之處?在我們看來,最令人興奮的創新來自於在比特幣上編碼程式(通過 BitVM)和無需信任地質押 BTC(例如 Babylon)。 本文將主要關注前者。
2. BitVM – 概覽
要解釋什麼是 BitVM,我們首先應該介紹賦能並激發了它的 Primitive——比特幣 Taproot 升級。
Taproot 是對比特幣協定的一次重大升級,於 2021 年 11 月啟動。 通過 Taproot,腳本的哈希預設需要在鏈上提交。 當執行腳本的某個路徑時,只需將該路徑上的腳本提交到鏈上。 這樣不僅提高了效率(交易的大小不會隨腳本的大小增長),也增強了隱私性(只會揭露作為交易的路徑,而不是整個腳本)。
認識到 Taproot 升級解鎖的巨大機遇,Robin Linus 率先推出了 BitVM,這是比特幣生態系統中的一項突破性創新。
BitVM 是一種計算範式,它利用 Taproot 升級在不改變網路共識規則的情況下,促進在比特幣上實現圖靈完備合約。 它允許對計算進行驗證(而不是執行),類似於樂觀卷積(Optimistic Rollups)。
BitVM 通過將程式提交到 Taproot 位址,同時通過啟用複雜的鏈下計算(僅在出現爭議時需要鏈上執行)來最小化鏈上足跡。
這個過程涉及到在 Taproot 位址中提交程式的二進位電路,並使用挑戰-響應機制進行驗證。 概括地說,BitVM 實現了圖靈完備的比特幣合約,最重要的是:
- BitVM 不需要分叉或任何比特幣協議的改變。
- BitVM 不會使比特幣區塊鏈擁堵,因為計算不是在比特幣上執行的,而只是在出現爭議(Dispute)時使用比特幣網路進行驗證。
在比特幣上構建二進位電路
二進位電路的構建是一種用二進位邏輯門(如 AND、OR、NOT)表示計算或程式的方法,能夠執行任何可計算的函數。
BitVM 就像是將電流通過計算機晶元的邏輯門(這些微小的結構根據電流的存在與否,決定信號是否通過,即開或關,開或閉)的複雜類比,轉化為比特幣的語言。
從本質上講,任何計算機程式,從遊戲到完整的 Linux 作業系統,都是這些邏輯門複雜排列的結果,所有的數位事物基本上都是基於二進位數位——0 和 1。 通過將這些二進位數位與邏輯門(如 AND 和 NOT 門)結合,我們創建了各種電路,包括算術邏輯單元(ALUs)和記憶體系統。 這項基礎技術使我們能夠編寫和執行程式以執行廣泛的任務。
BitVM 的前提是使用比特幣腳本(Bitcoin Script)來對鏈下計算做出承諾(提交一個計算的哈希到 Taproot 位址),通過將任何程式解構成二進位電路的組合,並啟用執行驗證,這一過程包括了比特幣腳本,但腳本本身不執行整個計算邏輯。
比特幣腳本可以實現比特值承諾(bit-value commitments),這對於能夠展示和懲罰含糊其辭(Equivocation)的行為至關重要。 它實現了不可變性,因為它允許個人提交其他人無法修改的值。
這種方法涉及使用兩個哈希來代表每個輸入位:一個哈希用於數位 0,另一個用於數位 1。 當有人希望執行程式時,他們揭示一個原像(pre-images)以指示輸入。 值將轉換為 0 還是 1,是通過將原像的哈希值與代表 0 和 1 的兩個哈希值進行比較來決定的。
如果輸入和輸出不匹配,驗證者有權通過沒收提供者的資金來懲罰提供者。
挑戰-回應機制
驗證通常在鏈下進行,樂觀地假設證明者是誠實的。 在發生爭議的情況下,過程轉移到鏈上,並啟動一輪挑戰-回應。 這種機制確保了在大多數情況下,計算和驗證可以高效且低成本地進行,而只有在出現分歧時才需要利用區塊鏈的不可篡改性和透明度進行最終裁決。
挑戰-回應機制在 BitVM 中的動態涉及一個系統,參與者(如 Vicky 和 Paul)通過區塊鏈上程式的執行進行驗證過程。 當出現爭議時,Vicky 挑戰 Paul 證明他的程式執行的正確性。
Vicky 從二進位電路中選擇一個邏輯門,Paul 通過揭示輸入和輸出來打開這個門。 直到確認了含糊其辭的情況或 Vicky 耗盡了進一步挑戰的可能性,這個過程就會重複進行。 含糊其辭意味著 Paul 聲稱某個輸入 X 在一個邏輯門被打開時是 0,但在另一個邏輯門被打開時是 1。
Paul 需要通過使用預簽名的交易向回應位址存入資金來確保他聲稱的證據。 這些交易創建了一個鏈,允許基於正在進行的互動,資金在挑戰和響應位址之間擺動。 回應位址中的資金可以根據挑戰的結果沿著多條路徑流動:
- 如果 Vicky 停止挑戰,表明接受了 Paul 的證明,Paul 最終在一定時間後重新獲得資金。
- 如果 Vicky 證明 Paul 在執行中不一致(發生了含糊其辭),她可以索取這些資金。
- 如果 Vicky 懷疑執行的另一部分有誤,她可以發起另一個挑戰,將資金移至下一個回應位址。 為此,她必須揭示特定 tapleaf 的一個原像,Paul 隨後需要使用它來解鎖資金,並在有限的時間內證明他的正確性。
這一系統為在區塊鏈上解決爭議和驗證程序執行提供了一個堅固和透明的構架。 通過結合財務激勵,它促進了執行和程序結果記錄的完整性和精確性。 最初,該設計支援兩方的挑戰-響應機制。 然而,正如我們稍後將展示的,BitVM 的貢獻者已經找到了解決方案,允許眾多參與者作為挑戰者參與。
二分法(Bisection):提高爭議解決的效率
為了提高鏈上驗證的效率,驗證者可以利用二分法(Bisection),這是一種在預先提交的邏輯門上進行高效搜索的方法,以找到應該被挑戰的邏輯門,這種方法相比隨機挑戰過程有顯著的改進。 通過將問題空間一分為二,分割法允許驗證者快速縮小潛在錯誤的範圍,從而減少了解決爭議所需的步驟和時間。 這種方法在處理複雜的驗證過程時,尤其是在需要精確確定錯誤位置的情況下,提供了一個更為高效和直接的路徑。
以下,我們通過一個簡化的例子來說明分割法是如何工作的:
Paul 和 Vicky 正在做數學題,題目是計算((1+2)+(3+4))+((5+6)+(7+8))。
正確完成這個計算的過程是((1+2)+(3+4))+((5+6)+(7+8))=(3+7)+(11+15)= 10+26 = 36。
而 Paul 給出的答案是 35,因為他計算的方式是((1+2)+(3+4))+((5+6)+(7+8))=(2+7)+(11+15)= 9+26 = 35。
當 Vicky 挑戰 Paul 時,她只需要挑戰涉及計算的第一部分的計算(即打開邏輯門),因為他們同意第二部分的計算是準確的((5+6)+(7+8))= 26。
3. 使用 BitVM 構建一個最小信任橋(Trust-Minimized Bridge)
BitVM 的第一個實際實現很可能是代表最小信任比特幣橋的程式。 通過分析橋的實現細節,我們可以更好地理解實現 BitVM 程式的額外複雜性。 以下,我們總結了 BoB 共同創始人 Alexei Zamyatin 的提案。
首先,需要創建一種讓比特幣全節點只用比特幣腳本就能操作一個側鏈橋程式的方法,包括一個側鏈輕用戶端。
然後,還需要建立一個聯盟/多簽名(federation/multi-sig)網路,以便於 BTC 的轉移並運行挑戰-回應遊戲。 聯盟必須承諾運行橋程式作為 BitVM 設置的一部分。
聯盟初始設置的複雜性隨著成員數量的增加而呈二次方增長,因為聯盟的每個成員都必須與其他每個成員互動,因此聯盟的規模有一定的上限,研究人員推測 N=100 是可行的。
與 OP Rollup 不同,後者對 N 的大小沒有限制,這種方案提供的安全保證較弱。 然而,這個提議的工作解決方案很可能會包括聯盟成員的輪換,這樣在一個較長的時間範圍內,N 會遠大於 100。 任何時候,只要這 100 名成員中有一個是誠實的,存款就會保持安全。 假設有惡意行為者,他們可以在鏈上隨時被挑戰,如果被證明作弊,他們可以被聯盟禁止。
聯盟在任何時候都有一個負責管理存款和提款以及驗證側鏈狀態的操作員(Operators)。 操作員和監視塔(Watchtowers)都需要提交抵押品,以激勵正確行為並阻止虛假挑戰。
這種方案不符合卷積最嚴格定義的另一個原因是,使用者不能單方面退出側鏈,而必須向基於 1/N 安全假設運作的聯盟請求提款。
4. BitVM v2:BitVM 能支援無需許可的驗證(Permisionless Verification)嗎?
3 月 25 日,Robin Linus 介紹了 BitVM v2。 BitVM v2 提案的關鍵變化是,證明者需要一次性提交輸出狀態和所有中間結果,而不是像 v1 那樣,在挑戰-驗證過程中逐個打開邏輯門。 有了這個改變,BitVM 確保對這些承諾的任何挑戰都必須由加密證據支援。 這種機制過濾掉了無根據的垃圾挑戰,因為挑戰者必須提供特定的加密證明來爭議證明者。
通過允許無限制地參與驗證和挑戰過程,BitVM 2 將其安全保證擴展到了多重簽名聯盟的限制之外,並使 BitVM 更加接近樂觀卷積的安全假設。
然而,橋的搭建仍然需要聯盟多重簽名來促進,這意味著聯盟成員可能會引起活性問題,在最壞的情況下,他們試圖向使用者勒索贖金以解凍他們的資金。 這是一個額外對於樂觀卷積來說不存在的安全假設,因為在樂觀卷積中,用戶可以在不獲得任何仲介批准的情況下退出到 L1。
5. BitVM 的限制
正如我們上面討論的,BitVM 能提供的最佳方案是接近樂觀卷積的安全假設。 除了管理負責保險存款的聯盟及其活性問題的複雜性外,BitVM 特有的一些額外複雜性包括:
- 雖然 BitVM 理論上能夠執行複雜的鏈下程式,但實際上,隨著這些鏈下程序複雜性的增加,執行欺詐證明在比特幣上的相關費用迅速增加。 過大的程式可能需要多個區塊來執行,進一步複雜化了這個過程。
- 擁有算力多數的礦池可以從 BitVM 中竊取(類似於閃電網路的問題),因為他們可以合謀審查挑戰者的證明,或者惡意行為者可以賄賂他們忽略挑戰者。
- 由於 BitVM 證明的互動性質,惡意證明者可能會操縱系統並從驗證者那裡進行竊取。 攻擊可以按如下的假設構建:
- 證明者通過啟動交易開始驗證序列
- 懷疑證明者行為有效性的驗證者啟動一個挑戰,挑戰中包含支付給證明者的回應費用
- 證明者選擇收集費用,同時忽略挑戰,不履行他們在驗證過程中的部分責任
- 最後,BitVM 目前還是一個概念框架和一個幾乎無法執行任何操作的虛擬電腦概念。 BitVM 的「卷積」距離應用層面還遠,樂觀估計是我們最早可能在 2025 年看到一些 BitVM 程式投入使用。 執行 BitVM 的技術風險也不容低估。
6. 結論
考慮到乙太坊擴展解決方案的估值,目前大約佔乙太坊市值的 15-20%——比特幣第二層解決方案的潛在市值可能是巨大的。
儘管 BitVM 還處於初期階段——本質上是一個未落地的虛擬電腦概念——但它已經激發了來自各個專案的大量興趣和聲明,這些專案急於利用其潛力。 許多與 BitVM 團隊無關的專案都在爭相做出宏大的公告,希望在他們看來是比特幣的一個有前途的新領域中佔據一席之地。 然而,更仔細的審查揭示了一個更加清醒的現實:BitVM 的 GitHub 帳戶只有少數貢獻者,而 BitVM Builders Telegram 群中真正參與的只有少數幾個比特幣 'L2' 專案。
比特幣任何可擴充性解決方案必須遵守的一個關鍵原則是,比特幣的核心架構應保持不變(根據可預測性原則)。 BitVM 秉承這一原則,成為首個在不改變其核心的情況下,在比特幣之上提供可程式設計層的先驅解決方案。
本文撰寫於 BitVM 發展的非常早期階段,考慮到其快速的發展,這裏的資訊很快可能會過時。 例如,直到最近,在比特幣上實現 ZK 卷積的想法看起來就像空中樓閣一樣不切實際,因為所需的基礎能力——比如比特幣驗證 ZK 證明的能力——並不存在。 然而,最近 BitVM 研究人員分享了比特幣腳本的進展,這些進展可能導致在比特幣上實現 STARK 驗證器。
比特幣擴容解決方案的實現超越了純粹的技術挑戰; 它包含了社區支援、用戶體驗和時機等因素。 雖然當前時刻為這些創新提供了一個獨特的機會視窗,但是項目數量的急速通脹以及誤導性聲明和行銷帶來的顯著風險,可能會破壞更合法專案的前景。
隨著生態系統站在這個十字路口,關於比特幣擴容解決方案是否能複製乙太坊的成功的問題不僅是技術性的,而且深深植根於區塊鏈社區更廣泛的動態之中。 畢竟,核心乙太坊社區已經選擇了 L2 作為乙太坊擴容路線圖的關鍵部分,而比特幣社區還不能這麼說。
Reference
- “Bitcoin Audible.” Accessed February 26, 2024.https://pod.link/1359544516/episode/413027f0bdb982a8593d50f4466930f5.
- “BitVM.” Accessed February 26, 2024.https://www.bitcoinrollups.io/bitvm.
- “BitVM: Uma Ferramenta Para Contratos Ainda Mais Inteligentes – Super Testnet – Satsconf 2023 – YouTube.” Accessed February 26, 2024. https://www.youtube.com/watch?v=iEM_txmJYxA.
- Linus, Robin. “BitVM: Compute Anything on Bitcoin,” n.d.
- “What Is BitVM? With Robin Linus and Super Testnet (SLP520) – YouTube.” Accessed February 26, 2024. https://www.youtube.com/watch?v=XxqQU6j6jI8.
- Deep dive into BitVM -Computing paradigm to express Turing-complete Bitcoin contracts. https://medium.com/crypto-garage/deep-dive-into-bitvm-computing-paradigm-to-express-turing-complete-bitcoin-contracts-1c6cb05edfca
- CoinEx Institution: BitVM, the Potential of Smart Contracts on the Bitcoin Mainnet https://www.business-standard.com/content/press-releases-ani/coinex-institution-bitvm-the-potential-of-smart-contracts-on-the-bitcoin-mainnet-123122500619_1.html
免責聲明:作為區塊鏈資訊平臺,本站所發佈文章僅代表作者及嘉賓個人觀點,與 Web3Caff 立場無關。 文章內的資訊僅供參考,均不構成任何投資建議及要約,並請您遵守所在國家或地區的相關法律法規。