區塊鏈和非區塊鏈領域互操作對象不同,應從技術、語義、應用、治理四個層面思考應用場景應該建立的互操作性。

撰文:曹一新,就職於 HashKey Capital Research
審覈:鄒傳偉,萬向區塊鏈首席經濟學家

近期,元宇宙概念備受關注,Facebook 創始人扎克伯格接受採訪分享了其關於元宇宙的想法及 Facebook 全力支持建設元宇宙的決心。在關於元宇宙特性的描述中,「互操作性」一詞再次被提及,並強調需要制定一些標準,幫助開發者和創作者向人們提供「前所未有的互操作」體驗,使用戶能使用他們的化身、數字產品無縫傳送到不同的體驗,並與朋友互動,在整個過程中感知不到互聯網基建的存在。

這種極爲抽象的表達雖給人以遐想,卻很難讓人理解,更別提信服了。這也是本文試圖去討論「互操作性」一詞內涵的初衷之一。

互操作性是經常被區塊鏈領域提及的概念,更耳熟能詳的用詞是跨鏈,這兩者往往被混同起來,描述兩條以上區塊鏈之間的某種交互,尤其是 DeFi 和 NFT 生態迅速發展起來之後。

隨着 DeFi 樂高可組合性蘊含的無限潛力被逐漸認可,以及以太坊 DeFi 生態出現外溢現象,跨鏈成爲了一個非常緊俏的需求;而關於 NFT 應用、元宇宙特性的討論中,也會提及互操作性。本文從討論「互操作性」的語義場景和內涵出發,拋磚引玉地分析當人們在提跨鏈或互操作性的時候,真正想表達或期望實現的目標是什麼,以及目前行業內在這些目標上走了多遠。

互操作性的定義及場景

計算機信息學領域

「互操作性」在非區塊鏈領域早有提及。IEEE 關於計算機字典標準裏對互操作性的定義是「兩個或多個系統或組件之間交換信息以及對交換後信息使用的能力」。這個定義包含兩層遞進關係的含義:

  • 語法互操作性:指能夠進行通訊和交換數據。基本要素包括數據格式標準、通訊協議、接口標準等。

  • 語義互操作性:參與互操作系統之間交換的數據能夠得到對方正確的處理和使用,也就是說使數據真正成爲有用的信息產生有用的結果,並且對有用的界定是達成共識的。

雖然上述定義與國際標準 ISO/IEC 2382-01 信息技術詞表 裏的定義相比更爲凝練和抽象,但後者補充提及了一個特點:用戶無需或僅需有限地獲得不同系統或組件特點的認知。

就軟件而言,在上述定義下的互操作性可用來描述不同程序藉助同一套交換格式交換數據、讀寫相同文件格式以及採用相同協議的能力。用戶在使用不同軟件(例如各種 PDF 閱讀器)的時候更關注的是功能體驗,而非實現功能的底層技術模塊的差異。

社會經濟政治領域

廣義上,互操作性是指不同系統和組織機構之間相互合作、協同工作的能力,雖然在技術系統和工程設計方面經常使用,還會考慮影響系統間性能的社會、政治和組織機構因素,且業務過程的互操作性可能產生具有重大影響力的經濟效果。

以下是幾個具體的例子:

  • 醫療設備的「即插即用」互操作性實現與其它設備協同工作能力;

  • 醫療數據的「可用不可見」互操作性旨在保護個人隱私的同時提高協同創新能力;

  • 電子政務互操作性旨在通過制定數據標準、語義標準來提高跨邊界、跨語言的協作能力;

  • 近期河南大學生創建的「救命文檔」也體現了在大規模緊急事件中跨越信息孤島,實現全國各地資源調度系統和檔案管理系統的互操作能力。

由歐盟委員會背書的 NIFO 就如何建立可操作的數字公共服務提供了具體指導,提出了互操作性包含的四個層面:技術互操作性、語義互操作性、機構互操作性、法律互操作性;另外包括爲這四個層面交叉構建的綜合公共服務治理層及作爲基礎支撐的互操作治理層(如圖 1 所示)。

HashKey 曹一新:從互操作性定義重新理解區塊鏈跨鏈圖 1. NIFO 提出的互操作層次及其關係示意圖

  • 技術互操作性指能夠連接系統和服務的應用及基礎設施,涵蓋接口規範、互聯服務、數據集成服務、數據呈現和交換以及安全通信協議。

  • 語義互操作性指確保交換數據和信息的精確格式和含義在各方之間的交換過程中得到保留和理解,能做到「發送即理解」。

  • 機構互操作性指公共行政部門調整其業務流程、職責和期望以實現共同商定和互惠互利的目標的方式,這與在不同系統中進行的業務流程之間的協作關係有關。

  • 法律互操作性是爲了確保在不同的法律框架、政策和戰略下運營的組織能夠協同工作。

  • 綜合公共服務治理層是指爲達成上述四種互操作性提供綜合公共服務及其運營需要必要的治理組織,達成一致的運營條款和更新管理流程。

  • 操作性治理層實現關於上述互操作性框架、制度安排、組織結構、角色和責任、政策、協議以及在國家和歐盟層面確保和監控互操作性的決策過程和治理過程。

總的來說,前兩個互操作性沿用了計算機信息學領域對互操作性的定義,NIFO 在此基礎上補充強調了應用層和治理層的互操作性。這對在多鏈並存、應用和治理系統也各自獨立的區塊鏈生態實現互操作性具有一定的借鑑意義。

區塊鏈領域互操作性的內涵

在上述基礎上反觀區塊鏈裏的互操作性和跨鏈,可以認爲跨鏈是將互操作對象從來源區塊鏈系統跨越到目標區塊鏈系統行爲的描述,而互操作性是一種涵蓋範圍更廣的表達,既包括基於跨鏈行爲表現出的功能特性,也可以指代非區塊鏈系統(例如 Dapp)之間的交互。明確互操作對象是什麼以及互操作系統的類型能夠幫助我們更好地瞭解互操作性的內涵。

互操作對象

信息跨鏈(e.g. Polkadot、Cosmos)、資產跨鏈(e.g. WBTC)是目前較爲常見的應用案例,但這可能只是區塊鏈領域互操作性展露的冰山一角。區塊鏈和其它系統最大的不同在於區塊鏈上信息能夠以一種不可複製(UTXO 和餘額等模型)、不可僞造(非對稱加密)、不可篡改(共識機制)的方式流轉,使它有別於一般信息,成爲跨系統共識難度更大、互操作性更復雜的對象類型,不是簡單地規範接口、明確數據格式、統一通信協議就可以搞定。區塊鏈使信息能夠逐漸被劃分成更細粒度的表述:

  • 數字資產

  • 權屬聲明

  • 域名

  • 賬戶(公私鑰對)

  • 身份

這些細粒度的表述似乎能很好地作爲微觀結構單元或相互作用力,組合成數字世界的經濟網絡和社交系統。所以跨鏈的對象自然除了大部分案例中看到的信息和資產以外,也可以是權屬聲明、賬戶、域名或身份。而理想的互操作性指的應該是:

  • 信息在新系統能被使用;

  • 資產在新系統保有價值;

  • 域名在新系統作爲同樣的入口被訪問;

  • 權屬聲明在新系統同樣有效;

  • 賬戶或身份在新系統擁有相同的操作權限、權屬聲明或聲譽等。

將互操作對象放入明確的場景去定義和思考,能幫助用戶更清晰地瞭解各種互操性表述真正想要表達的目標。

互操作系統

建立在互操作系統不僅侷限於區塊鏈系統的觀點之上,我們觀察下目前區塊鏈生態中已然存在的不同層面的互操作性。

  • Nervos 通過對基於密碼學的賬戶進行抽象實現了多種不同系統的賬戶(包括互聯網郵箱賬戶)都可以操作 CKB 上的狀態,從而降低 web3 的用戶准入門檻,這可以認爲是一種技術互操作性的用例,實現了賬戶模塊的「可插拔」。

  • 以太坊 DeFi 應用之間通過調用方法進行的資產兌換和流通實現了語義互操作性——有賴於 ERC20 代幣標準,它們對各種 ERC20 代幣擁有共識。閃電貸是 DeFi 可組合性的代表性案例,而可組合性的前提是互操作性。

  • 擁有不同的價值主張、多種實現方式的 Layer2 系統之間的互操作性可能不僅要從語義層面,更要從應用層面去考慮,Celer Network 在這方面提供了一些對用戶友好的解決方案。

  • Polyient Network 提出要通過打造 NFT 領域的聲譽系統和報價系統,實現 NFT 的跨鏈交易,本質上是想實現資產+身份+權屬的跨鏈可用,這可能會牽扯到應用層、治理層的互操作性。

互操作性的進展和風險

目前,區塊鏈 DeFi 生態形成以以太坊爲主、多條特色鏈競爭的格局,DeFi、NFT 生態相繼發展起來,並對互操作提出了一些具體的需求,例如可擴展性瓶頸催生的多鏈結構、資產跨鏈流動;針對流動性割裂問題的 Layer 2 跨鏈方案等等。

在互操作對象方面,有關數字資產的互操作標準在同質化資產領域已經頗爲成熟,在非同質化資產領域有實現基本功能點的雛形,但未形成針對互操作功能設計的標準共識。對於其它操作對象類型,鮮見相關嘗試。

在互操作系統方面,區塊鏈之間、Dapp 之間、Layer 2 之間、以及區塊鏈系統與互聯網之間都出現了一些互操作場景,說明生態的連接開始在更大尺度上建立。跨系統的生態應用發展離不開系統間語義互操作性的成熟建立,而應用發展起來後就得考慮更高層級的互操作性問題了。

在如何實現互操作性方面,對於具體的應用場景有諸多案例,特別是資產跨鏈的解決方案是行業內討論跨鏈話題展開較多的一個方向。本文作爲引介,暫不作深入探討。

互操作性建立的過程中,是免不了存在各種攻擊向量的,這至少分爲兩種:一種是互操作系統設計漏洞;一種是實現具體功能過程中的技術漏洞。從閃電貸攻擊案例的演化可以發現,將孤立設計而成的系統通過互操作性組合起來可能會導致出現很大的經濟漏洞,最近發生的跨鏈橋攻擊事件也暴露了互操作過程中的風險。系統本身的安全性是否會因互操作性而減弱也是值得研究的問題。

此外,在設計互操作協議的時候,也存在適配性的問題,一開始定義好功能的互操作協議可能具備更好的魯棒性,更容易做安全測試,但不一定能滿足未來的需求;具備更多靈活性的協議可能存在許多未知的風險,開發者似乎總是得在各種選擇中權衡。

總結與思考

本文從互操作性的定義和場景出發,闡釋了 IEEE 和 NIFO 對互操作性的兩種定義。基於這一闡釋,重新理解區塊鏈領域的互操作性和跨鏈,指出區塊鏈和非區塊鏈領域互操作對象的不同之處,在於區塊鏈上信息能夠以一種不可複製(UTXO 和餘額等模型)、不可僞造(非對稱加密)、不可篡改(共識機制)的方式流轉,使它有別於一般信息,成爲跨系統共識難度更大、互操作性更復雜的對象類型,不是簡單地規範接口、明確數據格式、統一通信協議就可以搞定。並強調區塊鏈使信息能夠逐漸被劃分成更細粒度的表述,在思考特定場景的互操作性時,應明確互操作的對象,及互操作系統類型,可以幫助用戶更好地理解各種互操作性表述真正想要表達的目標,並從技術、語義、應用、治理這幾個層面思考應用場景應該建立的互操作性。最後,本文簡要分析了一下當前區塊鏈領域互操作性的進展和風險點。