作者:Kris,ABCDE
Arch Network 是一個比特幣原生應用程式平台。它透過一種新穎的架構將智慧合約功能直接引入比特幣,該架構利用基於Rust 的霧知識虛擬機ArchVM,並與去中心化驗證者網路配對,統稱為Arch 網路:ArchvM 是一種受SVM 後發的虛擬機(即專為並行執行而設計)E結合了零知識證明(ZKP)進行交易驗證,在BTC上完成了原生的可編程性
Arch 在尊重比特幣建立的主權原則的同時,透過圖靈完整的可編程性增強了BTC原生一層的功能,解鎖了BTC一層的可編程性。
BTC為什麼不能運行智能合約的話題大家已經討論過很多次了,原因主要有三:
1. 有限的腳本語言:比特幣的腳本語言Script 有意限制其功能,以確保安全性和簡單性。它缺乏以太坊等平台使用的語言中的圖靈完備性,這限制了比特幣智能合約中可以執行的邏輯類型和條件。
2. 資料和狀態儲存:比特幣的區塊鏈針對儲存交易資料而不是複雜智慧合約所需的狀態資訊進行了最佳化。比特幣設計中缺乏狀態性使得實現可以根據不同條件進行互動和更新的動態智慧合約變得具有挑戰性。
3. 執行環境:比特幣沒有可以運行複雜智能合約的原生執行環境。支援高階dApp 的平台(例如以太坊)擁有虛擬機器(EVM),為執行智慧合約提供受控環境。比特幣的架構不包括用於處理複雜的去中心化應用程式的類似元件。
迄今為止,BTC生態已經有了相當多條Layer 2解決方案,試圖解決這些基礎支柱的缺失,但是這些方案都需要用戶(接收方)被單方面強迫將其資產橋接到信任環境中,這些環境通常是多重簽名帳戶。這違反了比特幣的第一個規則:不掌握私鑰,不擁有比特幣。
Arch Network 是一個比特幣原生應用程式平台。它透過一種新穎的架構將智慧合約功能直接引入比特幣,該架構利用基於Rust 的零知識虛擬機ArchVM,並與去中心化驗證者網路配對,統稱為Arch 網路。 ArchVM 是一種受SVM 啟發的虛擬機器(即專為並行執行而設計),它結合了零知識證明(ZKP) 進行交易驗證, 在BTC上完成了原生的可編程性。
接下來我們來看看具體Arch是如何賦予BTC一層可程式化的?
Arch 的結構為兩部分層,旨在增強比特幣的功能,由ZKVM 和去中心化驗證網路組成。這兩個部分一起形成了直接在比特幣上的無需信任的執行層。這種整合不僅保留了比特幣的安全性和流動性,而且還顯著增強了其功能,從而在比特幣上實現了快速、安全且完全可驗證的智慧合約。
怎麼做到的其實核心就是一句話,透過在交易中啟用附加資料的儲存。這種增加的資料可用性為直接在鏈上嵌入狀態資訊和元資料開闢了新的可能性,這對於需要可存取和可驗證狀態資料的智慧合約等應用至關重要。
Arch 網路在比特幣一層採用創新的狀態管理方法,透過獨特的「狀態鏈」流程利用ordinals,狀態變更在單筆交易中提交,從而降低費用並確保原子執行。
什麼是「狀態鏈」?
UTXO維護了智慧合約位址內的狀態,將其與執行分開以提高效率和安全性。狀態與執行的分離允許更具表現力的智能合約,促進了靈活的開發環境。
該協議實現了一個證明者-驗證者模型,其中序列化的智能合約交易在池中等待執行。證明者檢索和執行交易,產生驗證者使用的收據,驗證者使用類似權益證明模型的門檻簽章機制進行驗證。
u 狀態和執行解耦:這種設計選擇允許更具表現力的智能合約和創新的用例,促進了靈活的開發環境。
u 零知識虛擬機(ZKVM)的使用:Arch Network利用了RISC Zero,一個領先的通用ZKVM,類似於RISC-V微處理器,支援Rust、C和C++等語言。
u 合約特定金鑰:每個合約都有唯一的金鑰來防止漏洞,在部署時產生隨機金鑰對,確保合約不共用金鑰並保持其完整性。
Arch的交易過程是怎麼樣的?
Step 1:透過一個比特幣交易調用智能合約,交易包括執行所需的基本信息,如最新狀態、部分簽名的比特幣交易(PSBT)和智能合約輸入。同時有一個Arch Indexer,不斷監聽新的比特幣區塊,檢查每個新比特幣區塊中的交易,看看它是否符合這個呼叫。
Step 2: 在偵測到該交易後,Arch解析相關細節並繼續執行智能合約。隨後,智能合約產生一個結果狀態和一個未簽署的交易,反映了執行中的資產轉移,以及驗證智能合約執行的證明。
Step 3: 所有內容都傳送到驗證者網絡,特別是一個領導節點。在每個Arch紀元期間,根據股權隨機選擇一個領導者。領導節點將接收到的資訊傳播給網路中的所有其他節點。
Step 4: 每個節點對證明進行驗證,並將狀態變更合併到交易中,然後認可該交易。領導者從這些節點收集簽名,直到達到預先定義的閾值。
Step 5: 一旦交易被足夠數量的節點簽名,就可以在比特幣網路上廣播該交易。
總結來說,Arch解決了BTC layer1如何具有程式設計的兩個核心問題:
第一: 如何在比特幣第一層不透過私鑰產生簽章? (例如,以太坊的解決方案是:由合約提供支援的資產轉移,這些合約是受信任的)
-
Arch使用閾值簽名方案(TSS)使驗證網路能夠共享金鑰並代表用戶簽署交易。
第二:Indexer的實際作用其實像是負責計算的模組,而在index完成計算後,誰將要來match 整個trade?
-
一旦用戶簽署比特幣交易,它也是智能合約調用交易,比特幣交易包含了Arch虛擬機捕獲的所有信息,並將數據輸入和智能合約調用信息傳遞給zkvm進行處理,生成輸出(結果狀態、未簽名交易和有效性證明)
有了這套流程就可以在Layer 1一層實現可編程性,另外Arch實現了智能合約可以調用其他智能合約,暫時暫停調用智能合約的執行,直到被調用的智能合約完成其處理。這種機制可以實現不同智能合約之間的無縫互動和協調。
Arch生態與機會:
Arch上面已經有了相當多的生態,例如layer1 native的穩定幣、sol與btc之前的去中心化橋,layer1 native的Dex等,歡迎更多的開發者加入Arch network。
Arch目前主要著重在第1層解鎖可程式性和執行能力。 Layer2和Layer3將成為較小金額的頻繁交易的場所,而第1層將處理更昂貴的比特幣資產。一旦Arch在BTC第1層為DeFi解鎖了可編程性這一點,他們將解決可擴展性問題,無論是Layer2還是layer1.5或app chain。
同時,Arch 的目標是透過建立去中心化的驗證節點網路來擴展其網路。最初,這可能會從一組選定的受信任節點開始,以確保穩定性和安全性。隨著時間的推移,該策略涉及透過激勵更廣泛社區的參與來擴展該網絡,向完全去中心化的模式過渡。這種擴展將增強網路的彈性、去中心化和可信度,使其對開發者和使用者更具吸引力。到時候有更多的參與機會開發者可以關註一下。