跨鏈 該怎麼跨?
外匯天眼APP訊 : 在區塊鏈技術領域,關於跨鏈的研究從來都是熱潮迭起。其實分析起來也不奇怪。區塊鏈經過幾年的喧囂、沉澱、昇華,尤其是在國家政策的大力支援下,區塊鏈應用落地逐步成熟。落地應用的成熟發展,逐漸催生與其他應用互動的外聯需求,而跨鏈作為解決這種需求的基礎設施,自然而然會被重視起來。
1、大家是怎麼聊跨鏈的
跨鏈不是個新鮮話題,早在2016年9月, Vitalik Buterin所著的《Chain Interoperability》就對跨鏈的技術方案和應用價值進行了詳細闡述。其中提到,較為實用的三種跨鏈技術為「公證人機制」、「側鏈/中繼」、「雜湊鎖定」;幾種可能的跨鏈應用場景包括資產交換、原子交易、預言機、資訊互通等。
此後國內外討論跨鏈的各類話題,大多繞不開這三種跨鏈技術,正如同早期大家討論區塊鏈時,都在討論共識機制一樣。但其實,共識機制的先進性只是區塊鏈平臺設計的維度之一,譬如安全性、易用性、可擴充套件性等其他維度,也是區塊鏈平臺設計的考慮重點。再者,區塊鏈的效能也不單純依賴共識機制,全流程處理機制、非同步化、並行性以及其他編碼、壓縮、傳輸機制等,均對區塊鏈效能有所影響。
好比共識機制之於區塊鏈,前面所提三種技術對於跨鏈而言,只是保證跨鏈訪問安全可信的一種機制。機制固然重要,但站在應用落地的角度看,如何設計合理的跨鏈架構、如何設計簡便的適配協議、如何提供易用的跨連結口、如何保證可信的跨鏈治理等等問題,都是跨鏈設計所應考慮的。
因此,本文不再贅述跨鏈三種技術的解析,而嘗試從跨鏈的技術必要性分析切入,挖掘出跨鏈的基本訴求,進而思考跨鏈的設計理念,以及跨鏈整體解決方案的設計。
2、跨鏈是必不可少的催化劑
本文從聯盟鏈角度分析。
當下,聯盟鏈底層平臺的數量已經雙手都數不過來,這些平臺或多或少存在獨有的特性,且各自落地了多領域應用。這些基於同構平臺(通常為同一個底層平臺),或基於異構平臺(通常為不同廠商的底層平臺)構建的應用之間,要實現互聯互通,就會面臨一些技術上的挑戰。
然而,區塊鏈作為構建和傳遞信任的機器,是基礎設施層面的技術,而基礎設施就如同網路協議、儲存協議一樣,最終都將走向趨同的標準化方向。因而,聯盟鏈當前狀態是發展中的一個過渡狀態,不是最終穩定態。
隨著技術進一步發展,聯盟鏈底層平臺在基本功能、協議、介面、資料、安全機制等多方面會日漸趨同,朝標準化方向演進,但在增強功能、內部架構、效能以及技術選型等方面,仍然會呈現異彩紛呈的形態。這也符合“合久必分、分久必合”的規律,只有走向基本同構,才能進一步釋放聯盟鏈的活力,進一步推動聯盟鏈應用的發展。
在“所有的鏈會基本同構”那一天到來之前,當下最明智的策略莫過於要求同存異,尋找最優設計,推動標準化程序,儘早實現基本同構目標。
講到這裡,可能你會問,既然聯盟鏈本身發展將走向基本同構,為何還需要研究跨鏈呢?這其中,跨鏈是聯盟鏈走向基本同構的動力源泉和技術支撐,是這個過程必不可少的催化劑。
首先,聯盟鏈之所以會走向基本同構,本質上不是技術驅動,而是業務驅動。隨著應用落地數量增多,一家機構可能要面對多個底層平臺,機構與機構之間要面對更多底層平臺。
作為業務方,這些機構肯定希望低成本、便捷地接入不同底層平臺,聯通應用孤島,此時,這些機構將面臨以下幾種情形:
同一種底層平臺,同一種應用,不同鏈如何互通
同一種底層平臺,不同的應用,不同鏈如何互通
不同的底層平臺,同一種應用,不同鏈如何互通
不同的底層平臺,不同的應用,不同鏈如何互通
上述問題均需要透過跨鏈來解決,而底層異構給跨鏈帶來的效能和安全等技術挑戰,將會迫使聯盟鏈技術進行迭代升級,走向標準化。
其次,聯盟鏈走向基本同構的過程中,需要跨鏈作為技術支撐。為滿足一段時間內基本異構情況下的聯盟鏈應用互通,跨鏈方案將會先於底層平臺進行介面、協議、資料結構、基本功能的抽象整合,而這些工作將反哺各底層平臺,支撐聯盟鏈走向基本同構。
舉個例子,為了做跨鏈交易的合法性證明,需要有類似SPV的機制,包括Merkle、MPT、AVL等,可能就會促使底層平臺去支援這個功能。再比如,跨鏈為了統一訪問區塊鏈資源的方式,對訪問協議設計相關規範,可能也會激發底層平臺去調整協議,從而更好地與其他鏈互通。
3、跨鏈的核心是降低擴充套件成本
跨鏈作為聯盟鏈發展過程中必不可少的催化劑,要解決“不同鏈如何互通”的問題,本質上是要解決“聯盟鏈擴充套件”的問題。關於區塊鏈擴充套件的方案,主要有以下三種不同方向:
跨鏈是Scale Out的重要技術支撐,Scale Out依賴跨鏈才有辦法進行。
Scale Out提供可平行擴充套件、無限擴容的可能,是必不可少的擴充套件方案,事實證明,已經有越來越多的平臺支援多鏈、多通道、多群組等方式進行Scale Out擴充套件。但是,要進行這種平行擴充套件,尤其是涉及多種平臺多種鏈交錯互動的時候,這裡就給業務方帶來巨大的擴充套件成本,包括部署建設、管理管控、安全保障、信任傳遞等。
跨鏈的核心就是要降低擴充套件成本,要從東西和南北兩個方向提供低成本、快速便捷的解決方案。南北方向因部署方式、介面協議、業務模式等不同,需要給出簡化的接入和管理方案,東西方向因底層架構、安全機制、資料結構等不同,需要封裝安全可信的互通方案。
4、跨鏈方案設計需融入三個理念
圍繞降低擴充套件成本的核心訴求,跨鏈技術要在東西和南北兩個方向提供簡化的、封裝的解決方案,在跨鏈方案的設計和落地中,需融入以下三個理念:
通用化設計,提煉共識的基本同構點
先讓程式碼跑起來,快速適配主流平臺
建立開源開放的社群文化,讓協議儘早傳播開來
在通用化設計方面,跨鏈方案要承擔起“催化劑”的作用,提煉廣泛共識的基本同構需求點,在架構、協議、資源等方面進行抽象提煉。
例如,在IEEE C/BDL目前公佈的幾個跨鏈相關提案中,P3203有關資源命名和定址方式,P3204有關跨鏈交易證明的模型、互動協議,P3205涉及跨鏈訪問協議以及資料認證等,這些都是在廣泛共識的需求點上進行提煉設計。
“粗略的共識,可執行的程式碼”——這句話是TCP/IP協議工作組的座右銘,也非常適合跨鏈設計。先讓程式碼跑起來,能夠快速適配各種主流平臺,滿足跨鏈業務協作的需求,在發展中實踐,在實踐中發展,這一點很關鍵。
更重要的是,跨鏈本身涉及多條鏈,已經不是某一個平臺,或者某一個機構的事兒,其方案的建設離不開眾多平臺建設方、使用方、愛好者的參與。因而,建立一個開源開放的跨鏈協作社群就非常重要,所謂“萬人操弓,用射一招,招無不中”,透過社群的群智群策,可以讓協議儘早傳播開來。
5、案例:WeCross實踐
在這裡用一個案例來讓大家更好地理解跨鏈:WeCross是微眾銀行區塊鏈團隊打造的跨鏈協作平臺,也是針對以上理念的實現方案。WeCross在設計上屬於“通用化設計”,提煉了通用區塊連結口、異構鏈互聯協議、可信事務機制和多邊跨域治理四個核心技術。值得一提的是,相關的細節在白皮書中做了詳細闡述。
WeCross 的理念是讓“程式碼跑起來”,實現了總體跨鏈架構,提供了快速適配底層鏈的Stub擴充套件方案,目前已支援FISCO BCOS、Hyperledger Fabric等平臺,並且也是一個完全開源的社群,想體驗的小夥伴可戳:
https://github.com/WeBankFinTech/WeCro
https://github.com/WeBankFinTech/WeCross/wiki
風起於青萍之末,一場圍繞區塊鏈技術的變革正在徐徐拉開帷幕。與一個具備無限潛力的趨勢共同成長,現在,正是最好的時節。