作者:DaPangDun,Mirror
談到BTC生態,不可避免的要涉及BTC的“跨鏈”,與EVM生態不同,因爲BTC主網沒有圖靈完備的智能合約能力,因此暫時無法用類似於EVM生態那樣的跨鏈方案。
本文我將把BTC常見的跨鏈方式進行通俗介紹,並簡要分析其安全性。
多籤是一個需要多個人的私鑰籤名才能夠實現交易的技術形式。
一般的錢包,我們只需要使用自己的私鑰籤名就能夠實現交易,這種被稱爲1-of-1的形式。對於多籤錢包,因爲需要多個人的私鑰籤名,因此增強了安全性;同時,因爲可以採用m-of-n的形式(比如5個人,只需要其中3個人的籤名即可),降低了單點故障的風險。
多籤橋通俗理解就是我們將錢打入這樣一個多籤地址,然後在對應的鏈中生成一個映射的資產或份額證明。
注意:在做安全性分析時,我們均排除“黑客風險”“技術代碼漏洞風險”
多籤的最大風險是組成多籤的這部分人/個體/機構的風險。
MS-1:一般的多籤橋
安全分析:風險主要來源於多籤人的構成,如果多籤全部或主要由項目方相關人員把控,表面上用戶看到的是多籤,實際上跟“單籤”沒區別。
MS-2:選定有背景的個人/機構的多籤橋
安全分析:這種情況下安全性會好很多,相當於有背景的多籤,人爲作惡可能性會降低(考慮到名聲等因素),但如果可能的利潤足夠大,多方依然有聯合作惡的可能,引入受法規監管的機構會更好點。
MS-3:去中心化的多籤人+隨機選取的多籤橋
安全分析:很多人擔心多籤人的構成,那么引入足夠多的多籤人,爭取“多籤人去中心化”,然後在實際的操作過程中隨機抽取多籤人作爲驗證者,那么這種安全性又會高一些;不過我們需要觀察這個“去中心化”的程度和真實性,否則又只是表面上的東西。
這是一種使用被稱爲多方計算 (MPC) 的技術來保護交易的方案。
簡單來說,多籤方案需要多個人的私鑰籤名,而MPC方案是將一個私鑰拆分爲很多部分,加密之後分配給多個個體,當需要交易的時候,一個個體提出來,然後大家都用同樣的函數算法計算後結合在一起就可以批准交易。這個技術也可以和多籤結合起來,即使用N中的M個就可以組建有效籤名。
MPC方案相對於多籤是更新的技術,當然也有不少的爭議。比如“可問責性”,對於外人來看,MPC籤名的各個部分是無法區分到底是誰做的,所以一旦出問題如何追責是一個很大的問題。
MPC與多籤類似,但也有所不同;最大風險是組成MPC的節點的風險,還有就是計算函數參數的泄露風險。
MPC-1:一般的MPC
安全分析:組成MPC的節點都是項目方的或者是利益相關的,那么隨時都有rug的可能。
MPC-2:選用有背景的個人/機構等作爲節點
安全分析:安全性相對會好很多,但同樣的,如果可能的利潤足夠大,多方依然有聯合作惡的可能。
MPC-3:引入去中心化節點並充分採用TEE環境
安全分析:如果充分引入去中心化的見證者,然後隨機選取,在TEE內進行籤名,相對來說安全性又會高不少。
同時,可以引入隨機選取函數、隱藏見證人信息等各個方式來提升其他維度的安全性。
統一風險:TEE參數泄露
如果在生成計算函數的時候TEE參數被泄露,或者作爲節點的TEE環境被攻克或者惡意泄露,那么整個安全系統就失效了。
DLC是謹慎日志合約(Discreet Log Contracts)的簡稱。這個技術是由麻省理工學院的 Tadge Dryja 在 2018 年提出的,是一套簡潔的斷言機合約方案。
舉例來說,A和B打賭,如果明天BTC價格到100,000那么A給B 1BTC,如果沒到那么B給A 1BTC;然後他們在鏈下利用DLC生成這樣的合約並且注資籤名,但是這個交易是無效的,必須要有斷言機的籤名才能變成有效交易,斷言機就相當於我們的oracle(類似link的作用),然後當斷言機提供了信息然後籤名了之後,DLC合約就會執行,比如BTC價格達到了100,000,那么注資裏面的A 的1BTC就會轉給B。
而且,有意思的是,DLC可以讓斷言機根本不知道合約內容是什么,斷言機只需要提供數據就可以了,這樣就能一定程度上避免斷言機作惡的可能性。
DLC方案的主要風險在於斷言機。
DLC-1:一般的DLC(項目方提供斷言機)
安全分析:由項目方提供斷言機,一般來說只在測試階段使用,如果在正式網絡這樣使用的話,那么安全性完全取決於項目方的作惡意圖。
DLC-2:引入第三方斷言機
安全分析:這種情況下,安全性會提升,特別是當第三方比較知名的情況下,可能的問題是斷言機遭受攻擊報錯的風險,當然,合謀的風險也還是有的。
DLC-3:引入多個第三方斷言機
安全分析:這種情況下,安全性再得到提升,避免了單點故障的風險。
當然,我們還可以再其上加入其它的技術,比如op等來提升安全性。
DLC的方案還是比較有意思的,但是目前貌似還沒有這種專業的斷言機;並且,還有一個問題是:這種斷言機需要羅列所有的可能性預先進行籤名,從而才能在對應事件發生時觸發合約,比較繁瑣。
原則上時間鎖並不屬於“跨鏈”的範疇,它能實現的是“質押”功能,但是因爲它能實現BTC上的原生質押並且質押之後可以通過其他方式生成憑證變相“跨鏈”,因此也放在這裏一起討論。
“時間鎖” ,顧名思義,就是限定條件是與時間有關的鎖。具體來說,就是必須有一個時間事件發生後才能打开的鎖。BTC系統種有“絕對時間鎖”和“相對時間鎖”兩種,前者是規定一個具體的時間點(比如一個日期或者一個區塊高度)後解鎖,後者是規定一個時延(比如過多少個區塊的數量)後解鎖。
舉例來說,我們可以定義一筆錢必須在高度385421後才能花費,這是絕對時間鎖;我們也可以定義一筆錢必須得到6個區塊確認之後才能花費,這就是相對時間鎖。
時間鎖能實現的功能其實挺多的,比如:
1)強制存儲。有點類似於定期存款的味道,怕自己拿不住,就放在一個具有time-lock腳本的地址裏面,只有到時間才能取出來;
2)意外容災。比如自己有BTC資產,但是擔心自己出意外,可以配合多籤來設定自己的私鑰籤名可以直接花費這個BTC,但是如果一年都沒有動了,那么就可以由另外的幾個私鑰來花費這個BTC;
3)無信任的仲裁。比如爭端事件,需要仲裁機構參與,那么可以設定一個相對時間鎖的方式來提供這樣無信任的仲裁介入方案。
4)……
時間鎖因爲技術很原生,而且對於BTC“跨鏈”範疇來說主要是用於質押,而在質押上是到期解質押,控制權一直在用戶手裏,所以等同於主網安全性。
當然,有可能一些質押項目會有slash的措施,風險點就在於誤報slash造成資產損失。
BitVM技術估計很多人都聽過,簡單來說,就是利用現有的opcodes進行組合,形成足夠爲BTC主網帶來圖靈完備(其實不能完全這樣認爲,准確來說是對現有需求足夠“圖靈完備”)能力的一種技術方案。
這個方案很晦澀,而且實現和落地過程都比較復雜,但是基於其有巨大的前景,依然有很多人看好。
對應跨鏈這個方向,如果可以基於BitVM實現ZK橋或者OP橋,那么就能和EVM系相同了。
如果能實現,安全性也是毋庸置疑的,但是需要觀察落地情況,目前來說比較難。
Covenants,中文譯作「限制條款」,有時也翻譯爲「契約」,是一種能夠給未來的比特幣交易設置條件的機制。
你可以理解爲這些都是BTC系統中的操作碼,包括現有的、還在審核的、已經被棄用的等等。這些腳本操作碼是形成BTC擴展能力的關鍵。我們很自然可以想到,如果我們可以多啓用一些操作碼,是不是就可以提升擴展性從而實現比如原生的跨鏈了呢?
這個觀點是沒問題的,但是引入新的操作碼,或者是引入新的限制條款也可能會導致一些計劃外的濫用或漏洞,因此社區對此也比較謹慎。
另外,限制條款的升級也需要涉及到共識規則的軟分叉升級。鑑於 taproot 升級時的情形,限制條款相關的升級可能也需要很長時間來完成。
比如最近呼聲很高的OP_CAT一旦通過確實能夠提升BTC的擴展能力,但是其潛在的未知風險讓通過的可能性不大。
事實上,暫時無法分析這種方案的安全性,因爲暫時還是沒有方案的,只是一種可能性,不過從原理上來說,如果這種方案能夠落地,相對是比較原生的,安全性比較高。
從BTC的跨鏈方式的多樣性我們可以看出,行業內人員在通過各種各樣的方式來嘗試解決這個問題。因爲擴展能力的不足,所以很多“奇技淫巧”都在被挖掘出來。
當前主要的跨鏈是通過多籤來實現的,雖然一般的多籤方案潛藏着資產風險,也不大符合“自己掌握資產控制權”的理念,但是因爲其相對簡單,體驗方便,是很多項目的首選方式,我們也能看到一些項目基於多籤的優化方案等。
不過,可喜的是,我們也能在BTC生態發展中看到越來越多原生的跨鏈方案,它們很側重“資產安全性”,畢竟“BTC是最優質的的資產”的概念是深入人心的,安全的跨鏈才能夠讓BTC持有者放心的投入進來。
這一方面的具體項目和技術解析,可以多看看極客web3的一些推文。
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播信息之目的,不構成任何投資建議,如有侵權行為,請第一時間聯絡我們修改或刪除,多謝。
標題:BTC“跨鏈”方式及安全性分析
地址:https://www.torrentbusiness.com/article/108683.html