INK的愿景在于鏈接全球不同文化圈,為原創內容行業塑造分布式解決方案與基礎設施。為了讓這樣的大生態不只停留在愿景層面,而從實踐意義上真正落地,則需要穩定、多維度、貼合商業模型的底層技術作為支撐。從該角度出發,本文將梳理INK已完成和正在規劃中的底層技術實現與創新。
INK所面向的跨地域不同文化圈原創內容生態場景十分復雜,既要考慮不同地域法律、監管、文化的差異,也要權衡系統治理方式、可擴展性、安全、性能方面的多樣化需求。目前,單一類型的區塊鏈技術架構顯然無法滿足INK的生態建設需求。
對此,INK采用的戰略可以用“全球本地化(Glocalization)”來概括,即“全球化(Globalization)”和“本地化(Localization)”的結合。在這一架構下,INK將為全球多個不同文化圈定制、部署并運維多個INK聯盟鏈。每個INK聯盟鏈將成為當地原創內容產業的分布式基礎設施,專注實現的“本地化”的商業網絡。同時,為了鏈接這些分散在不同主權框架下的本地化網絡,INK跨鏈協議將為所有INK聯盟鏈與公有鏈Qtum提供互操作性,實現價值和信息在鏈與鏈之間的流轉,最終以Qtum為橋梁實現“全球化”的價值網絡。
本地化:面向不同文化圈,可定制的INK聯盟鏈
INK聯盟鏈參與方
除了公平與自由,IP產業由于涉及所有權的確認和管理,同時也注重系統的權威性,這是目前大部分公有鏈底層難以提供的。INK在本地化戰略中采用聯盟鏈作為技術基本架構,基于商業環境下應用最為廣泛的區塊鏈框架Hyperledger Fabric 1.0進行一系列自主改造,繼承其插件化、可配置的設計風格,并擴展其作為價值流通媒介的能力。為了真正實現商業價值,INK聯盟鏈引入內容平臺、科研院校等組織作為核心節點,版權機構等作為背書節點,共同打造可靠、可信、權威的原創內容產業分布式基礎設施。
區塊鏈式結構中,每個新生成的區塊用于記錄一段時間內發生的所有交易和狀態結果,是對當前賬本狀態的一次共識。Fabric中的交易通常是對智能合約的一次調用,并可能改變當前的世界狀態。基于將節點的交易執行與交易排序功能解耦的設計,Fabric中的背書節點以讀寫集作為模擬執行交易的結果,由排序節點匯總、排序近期的交易并打包區塊,確認節點仍然需要逐個驗證其中交易的讀寫集,將可能引發不一致的并行操作進行串行化。其帶來的問題是,如果一個交易在驗證環節進行了狀態寫操作,則對應讀集合中所有狀態的當前版本必須要跟執行背書時一致,否則,該交易會被標記為不合法。這是可用性向一致性的妥協,使得這種類似多版本并發控制(MVCC)的狀態讀寫機制難以適應高頻、高并發的價值傳輸場景。一個典型的影響是,對于基本的轉賬操作,一個賬戶在同一個區塊中只能被操作一次。
讀寫集與轉移集
INK在Fabric現有的技術基礎上,改造其區塊結構,新增交易類型和狀態存儲結構,新增賬戶相關功能接口,并新增轉移集(Transfer Set)作為Fabric中讀寫集(Read-Write Set)結構的補充,用于記錄賬戶轉賬等相關操作。對于以轉移集為載體的轉賬或智能合約調用,由于只涉及賬戶余額的讀取或增減,確認節點采用相對寬松的驗證機制,使得INK支持了在同一區塊的交易批次中,同一個賬戶的多筆轉入或轉出交易都能夠同時生效。同時,轉移集與讀寫集可以完美共存于同一筆交易當中。對轉移集的驗證機制配合INK賬戶體系,也同時保證了一致性、確定性、抗重放攻擊等。
INK底層所支持的上述創新特性將成為未來高效價值流轉,以及內容分發、知識付費等文創應用的必要底層支撐。
另一方面,INK為聯盟鏈開發實現了INK賬戶模塊。INK賬戶是天然支持可配置化的多資產系統,不需要額外通過智能合約實現,極大降低了資產發行和容錯的成本,并完全兼容已有的安全和校驗設置,使得其完美契合INK所構想的IP資產管理與流通平臺。
INK賬戶體系能夠滿足數量龐大的匿名用戶與區塊鏈直接交互的需求。默認情況下,用戶可自行使用橢圓曲線secp256k1生成密鑰對,并由公鑰單向推導出INK賬戶地址。INK同時針對賬戶體系開發了可配置的手續費模塊,以滿足網絡運維者和應用開發者的必要需求。
基于上述基礎能力,INK在合約的GetState和PutState等基礎接口之外,實現了GetAccount、Transfer等接口,供智能合約開發者靈活使用。
INK 聯盟鏈架構
值得強調的是,INK聯盟鏈在設計上遵循插件化風格,賬戶、轉移集、手續費、共識機制等模塊均可任意插拔和高度定制,為支持面向不同應用場景的延伸提供了支撐。
INK聯盟鏈的初衷是作為技術支撐來為各地方提供完整的原創內容產業分布式解決方案,需要適應復雜的傳統業務系統,同時也帶來了大量的開發運維工作。結合INK模塊化設計的特點,INK使用容器化技術來簡化工作內容和流程。容器化為INK帶來的優勢包括:1)快速交付和部署,使用鏡像來快速構建一套標準的開發環境,之后測試和運維人員可以直接使用相同的環境來測試和部署代碼;2)秒級啟動INK服務;3)隔離不同應用,提高安全性與穩定性;4)易于遷移和擴展。在實際生產環境中,INK使用Kubernetes實現自動化部署,實現對INK聯盟鏈和跨鏈組件的管理、監控以及規模上的橫向擴容。Kubernetes作為現今最流行的分布式應用容器管理系統,在擴展性、運維工具支持、API支持,以及對虛擬機、裸機、常見云平臺等多種環境支持上具有優勢,可以實現與INK系統的完美融合,并方便實現在線集群擴容,使系統能夠承受大量用戶并發訪問帶來的巨大壓力。
全球化:基于Qtum的全球化IP資產平臺與INK跨鏈交互協議
INK初期將以登記在各個INK聯盟鏈上的原創內容為載體推出IP資產平臺,涉及IP資產的登記、保護、孵化、交易等。后期將基于Qtum實現基于智能合約的去中心化IP資產交易平臺。
作為IP資產的價值載體,IP Token標準繼承自QST(Qtum Standard Token),在兼容其所有標準功能基礎上提供更多與IP內容和跨鏈支持相關的接口與能力。
INK 將打造基于Qtum的全球去中心化IP資產交易平臺。設想,現有的中心化交易平臺無法保證完全的公正、公開和安全,可能存在賬號被盜、操縱交易、代幣超發、系統崩潰、平臺誤操作等問題,導致投資者與IP所有者的利益受損。此外,中心化交易平臺為了保證自身的合規性和可操作性,往往會要求用戶注冊并提供身份驗證文件,并將用戶賬戶的私鑰存儲在服務器端,無法保證匿名性,對用戶而言具有重大安全隱患。鑒于此,INK將基于Qtum底層,使用智能合約實現交易平臺基本功能,完全去中心化操作,確保透明、公正與公開。用戶可以自行調用接口進行交易操作,也可以使用INK開源的前端工具進行交互,私鑰存儲在用戶本地,無需注冊和身份認證,沒有第三方參與,不受平臺限制,能夠以最大程度保證使用者的隱私與利益。
INK 跨鏈模型
為了解決各個INK聯盟鏈相對封閉和孤立的問題,作為實現鏈接全球不同文化圈的技術重點,INK創新性地提出了聯盟鏈與公鏈的跨鏈協議,并首先為INK聯盟鏈和Qtum公有鏈提供互操作性。
互操作性的實現將充分得益于以下兩點:其一,作為通用性強的智能合約平臺,無論Qtum支持的EVM或x86虛擬機還是INK聯盟鏈支持的鏈碼都擁有靈活和強大的表達能力;其二,INK聯盟鏈自身提供、也依賴于成員身份管理和權限策略機制,使得跨鏈操作的校驗和執行也可以像鏈內交易一樣依賴于多個獨立、可信的背書者,同時不為聯盟系統增加額外的信任假設。
跨鏈協議需要聯盟鏈和公有鏈兩側的配合實現。在聯盟鏈側,參與整個共識流程的節點的職能解耦為背書、排序和驗證。我們將背書職能進一步分為交易背書和跨鏈中繼背書。負責跨鏈中繼背書的功能節點需要獨立讀取和驗證公有鏈側的跨鏈操作事件及相應狀態值,并保證公允的最終性,也需要為聯盟鏈側的合法跨鏈操作請求進行數字簽名。如同在實例化智能合約時所設定的交易背書策略一樣,也需要為中繼背書組合的有效性設置策略。具體,有效的中繼背書組合可以采用INK聯盟鏈的SignaturePolicy結構進行指定,構建任意復雜的簽名校驗組合。例如,“OR(‘Org1.member’, AND(‘Org2.member’, ‘Org3. admin’)”表示要么組織Org1的成員簽了名,或者Org2的成員和Org3的管理員同時簽了名,才滿足中繼背書策略。公有鏈側,通過智能合約注冊聯盟鏈以及背書節點和策略信息,并實現跨鏈處理邏輯。智能合約將借助成熟的密碼學庫方法實現對背書節點簽名的驗證。在整個跨鏈過程中,智能合約和中繼背書節點起到了中介的重要角色,而區塊鏈網絡則確保最終的跨鏈結果被確認。
INK跨鏈協議帶來的能力將包括INK和IP Token的跨鏈流通、智能合約跨鏈互操作等。舉例來講,用戶可以將持有的Qtum上的全部或部分INK或IP Token轉移到某個INK聯盟鏈上進行流通,使用其所在地域的特有應用和服務,并享受聯盟鏈的可信性與高性能;INK聯盟鏈上的Token也可安全轉移回Qtum公鏈,整個過程保證轉出鏈上的相應資產被可靠鎖定,所有鏈上的流通資產總額不變。進一步,INK聯盟鏈將可以與公鏈合約實現互操作,其中一方發生的事件在經過確認后可以觸發另一方的合約條款。
開發者支持:普及INK應用生態,構建零門檻開發者平臺
INK將為生態應用開發者提供盡可能多的支持。首先,INK將持續維護軟件開發套件SDK。通過封裝與INK網絡交互的各種功能,SDK可以訪問多種資源,包括賬戶、交易、賬本、智能合約、監聽(由智能合約發送或區塊生成的)事件等;SDK同時會對INK跨鏈操作流程做出抽象,為開發者屏蔽底層細節,而又能享受到跨鏈帶來的優越性。基于SDK,社區開發者可以順利開發出IP資產錢包、瀏覽器,以及各式各樣的原創內容產業應用。
INK BaaS架構
然而,對于社區應用的開發和測試者,構建一套分布式的區塊鏈方案仍非易事,既需要一定經濟成本的投入,也需要全方位的開發和運營管理。INK也將上線完全公開的區塊鏈服務(BaaS)平臺,提供一站式的測試網絡搭建、分布式賬本內容可視化呈現、智能合約開發與測試、網絡監控與分析等功能。INK BaaS平臺將相繼支持INK聯盟鏈集群、Qtum集群、跨鏈交互集群等開發環境,上述開發環境將貼近實際應用場景,使開發者可以將經過檢驗的業務模型很容易地遷移發布到INK聯盟鏈和Qtum公鏈。
結語
基于Ink底層技術的創新和“全球本地化”策略,未來,Ink將能為創作者提供這樣一幅使用圖景:
一位英國作家使用INK英國主權聯盟鏈對他的新小說進行版權登記,通過跨鏈協議,同時在所有INK主權聯盟鏈內進行對比,確定了這部小說在鏈上是“首發”,因此在Ink所有的主權聯盟鏈上進行了版權登記;之后,借助INK體系內的IP監測鏈,作家可以方便的了解這部小說的流通與侵權數據,如果出現侵權情況,侵權存證鏈將對侵權頁面進行區塊鏈存證;監測鏈、存證鏈的數據將跨鏈支持這部小說token的數量與項目保險金額。
跨鏈協議還將可以支持這部小說在不同主權聯盟鏈上的IP權益轉換。比如該IP項目想要進入海外市場,在其他國家都可以方便的享受該國的INK聯盟鏈生態,如保險、代理、基于該國的主權鏈權益買賣等。
評論