萬維鏈李尼副總裁受邀與公有鏈技術聯盟大佬齊聚賀新春,在聯盟社區裏,萬維鏈全球副總裁李尼李總與大家分享跨鏈的技術發展與未來。
《禮記 . 中庸》有云,「今天下車同軌,書同文,行同倫。」講的是天下車軌統一後,車才能在整個華夏大地上行駛。那麼這個道理,也可以用來部分理解跨鏈。目前所有的區塊鏈項目都是各自獨立,沒有鏈接在一起,而萬維鏈要做的是將這些孤立的項目,通過一種協議、協定或者是機制鏈接在一起。「跨鏈」的另外一種說法就是「Interoperability」, 中文可以解釋爲「互操作性」。「跨鏈」或者說是「互操作性」概念的流行,可以說部分源於 2016 年以太坊的創始人 Vitalik Buterin 發表的一篇題爲 《Chain Interoperability》 論文,中文翻譯過來就是區塊鏈互操作性。這篇文章解釋了區塊鏈互操作性的不同方法,包括多重簽名、側鏈、哈希鎖定(Hash locking)等來觸發各鏈間 Token 的流轉。
究竟什麼是「跨鏈」?
「互操作性」並不是區塊鏈獨有的概念,在數據庫或者是在平臺語言中都有這種概念。是指一種能力,使得分佈的控制系統設備通過相關信息的數字交換,能夠協調工作,從而達到一個共同的目標。而區塊鏈的互操作性,可以理解爲將隸屬於不同鏈上的資產,通過某種機制可以進行自主流轉。達到互操作性有很多種方法。
現在也有很多朋友問我類似的問題,我們的資產也可在一些錢包、交易所裏面進行自主交換,那是不是意味着這些錢包和交易所都具有互操作性呢?關於這個問題呢,我覺得可以從不同的維度進行理解。我們可以說交易所或者錢包可以幫大家完成跨鏈或者互操作性,但是它並不是以一種分佈式的方式去實現。所以如果大家要理解「跨鏈」或者「互操作性」還需要明確兩個重要的知識點,一是「同構」和「異構」,二是中心化和去中心化(分佈式)之間的不同。
「同構」比較容易理解,舉個例子。安卓手機中有很多 Apps,這些應用都是基於安卓的編程語言進行編寫,所以具有互操作性。但同樣一個 App,可能有安卓版本也可能有 IOS 版本,但是因爲編程語言環境腳本的不同,所以開發者不可能將基於安卓版本直接部署在 IOS 上,,所以說這兩個版本間就不具有互操作性。目前的 Layer 2 的解決方案,從某種方面來說也屬於同構的跨鏈。
換作區塊鏈行業來說,基於 BTC 比特幣鏈上的項目或者 BTC 側鏈的所有的項目,就具有天然的同構的互操作性。而其他的如 ETH、EOS、Tron 等上面的項目間就不具有這種互操作性,因爲不是同構的鏈,這是屬於一種異構的區塊鏈模式。
另外一個就是中心化和分佈式的區別。剛纔有提到,其實交易所就是以一種中心化的方式去實現這種互操作性。而另外一種,就是完全分佈式或者說是去中心化的方式去實現。上圖中給大家舉了幾個簡單的例子。比如傳統的互聯網,之前是一些門戶網站,用戶是被動接受一些信息,或者只能看到推動的信息,這就是典型的中心化案例,而到了互聯網 2.0 和 3.0 階段,隨着自媒體等各類社交媒體的興起,讀者可以自主選擇性感興趣的內容,而不只侷限於一個門戶網站,這就是分佈式的特點。同樣,在區塊鏈行業來說,如果要實現跨鏈,我們也可以重新換個方式,比如交易所和錢包等也可以通過去中心化的方式實現跨鏈。
目前市面上主流的跨鏈解決方案和不同方案實現的原理又是什麼?
1)跨鏈爲什麼難?核心是兩個
結合以上兩點,我們來看現在行業的一些解決的探索和別的跨鏈項目的設計思想:
首先是「Relay」中繼方案
但是這個方案會驗證 BTC 的 header,需要消耗比較多的 gas 費用;同時呢,根據 btc 的特性,出塊比較慢,所以等待驗證的時間會比較長,所以一般需要 10 分鐘左右的時間等待塊的確認。這個方案解決了難點α,但是關於 Beta 的交易的原子性並沒有得到解決。但是這個方案可以說是對於跨鏈方案中一個非常有益的嘗試,是比較有名的一種方案。
下一個是側鏈 Sidechain 的思路
這個方案不錯,但是不是所有鏈都包含 SPV,簡單驗證的設計。所以也存在一定的弊端,當然這種 two way peg 的方式很好的解決了難點 2,也就是交易的原子性問題。
以上兩種是不同的技術的思路,揉合到現有跨鏈的一些項目,我們舉最有影響力的兩個(Polkadot 和 Cosmos)來分析一下其設計思路,首先是 Polkadot。
這個是根據 polkadot 的白皮書和新的動向總結的。理論設計上很好,能夠很好解決難點 1 和 2。Gavin 對鏈上治理機制讓我們受益匪淺!所以具體的 Polkadot 的技術細節可能要等到主網上線後才能具體分析看到。
再者是 Cosmos
也是明星級項目。基本思路和 polkadot 比較類似,cosmos 是用 hub 來實現。兩個項目都考慮到了異構情況下的跨鏈,也都考慮到了同時要解決難點 1 和 2。
總結一下,各個研究團隊,項目團隊都對如何更好實現跨鏈的技術路線做了很多探索,不過很多還是停留在理論設計階段。遺憾的是並沒有可供驗證的主網供大家更加詳細的瞭解一下工程實現的細節。區塊鏈其實分理論設計和工程實現兩部分,所以只能等到各類型項目主網 launch 以後再和大家更加細緻的進行分析。
然後再介紹一下 Wanchain。
Wanchain 利用多方計算和門限密鑰共享方案進行聯合錨定,在不改變原有鏈機制的基礎上通過跨鏈通信協議實現最小代價接入。Wanchain 與其他項目相比,我不認爲我們在理論上創造了什麼特殊的特別之處,理論上創造的基礎是密碼學,都源於姚期智院士,美國 Micali 教授這些圖靈獎神人的理論基礎,特別之處在於我們在工程上實現了理論。
Wanchain 3.0 的發佈,意味着 Wanchain 打通了比特幣、以太坊和 ERC20 通證之間的跨鏈交易。這將對任何基於以太坊開發的項目在跨鏈應用上起到示範作用。通過 Wanchain 跨鏈機制,任何基於以太坊的應用、協議和去中心化交易都將打破壁壘,實現互聯互通。例如,原本基於以太坊創建的去中心化交易所或者直接在 Wanchain 上創建的去中心化交易所都將能夠利用 Wanchain3.0 的跨鏈技術實現現有代幣與比特幣的交易對。支持與比特幣的交易會極大提升去中心化交易的資產流動性。此外,跨鏈技術還能極大拓展資產借貸、代幣支付等領域的業務場景。任何目前受限於以太坊單一網絡的應用,都將能夠連入比特幣生態。實現跨鏈比特幣、以太坊和 ERC20 (如 LINK,MKR,Dai,LRC, GUSD),將會給萬維鏈甚至全行業帶來深刻的影響。
Wanchain 通過 Storeman 的跨鏈節點來完成跨鏈的完成,利用多方安全計算和門限密鑰的原理保證跨鏈交易的安全性。現在採用的是 PPOW 共識機制,爲了在跨鏈協議設計完成之前保證節點的可靠性,同時要準備切換到 POS,爭取在 2019 年年底主網切換到 POS (根據白皮書項目 roadmap 的設計)。跨鏈的共識在上面已經提到了,就是通過 sMPC 和門限將一組 21 個的 storeman 節點內形成一個小的共識(至少 16 個節點)參與的情況下。
跨鏈的具體應用?
這是一些我們自己設想的場景,也歡迎大家一起幫助利用跨鏈的機制來實現多種應用場景。
這是目前 Wanchain 薄弱的生態,作爲一個跨鏈的項目方,Wanchain 和目前市場上大多數的項目都不是競爭關係。未來,我們希望利用萬維鏈的跨鏈技術去幫助一些更多的應用和項目,這纔是跨鏈技術意義所在。我們剛加入公鏈聯盟,認識了很多新的合作伙伴,希望 2019 年將這個生態圖進一步擴張,幫助聯盟做一些真正有意義的事情。
關於 Wanchain 的 POS 機制
最近關於共識機制大家討論的很多,目前也越來越多的人關注到這個方面。由於時間有限,最後講一點 POS 的東西。Wanchain 的 POS 和 casper 完全不一樣。
更多是採用 Ouroboros,2 月底我們會準備發佈關於 Wanchain 的 PoS 論文,屆時再和大家進行詳細探討。