周少丹
(南方電網物資有限公司,廣東廣州 510000)
供應鏈管理系統可以對供應鏈數據進行全過程管理。但是,由于其是集中式結構,管理員可篡改數據,通常會導致信任問題。此外,集中式系統容易出現單點故障,受到內部攻擊等。
近年來,隨著區塊鏈技術的迅猛發展,利用區塊鏈技術進行電力物資供應鏈管理逐漸成為研究熱點[1]。區塊鏈技術具有分布式共享、非篡改、數據可追溯的特點,可以解決集中式電力物資供應鏈管理系統中的可信和單點故障問題。但是,在電力物資供應鏈場景中,供應鏈中的參與者或設備可以部署到不同的區塊鏈平臺,每個區塊鏈平臺都是由一個封閉的網絡構成的,各個區塊鏈之間沒有互操作性,形成了許多價值孤島。區塊鏈跨鏈技術是實現鏈間互聯互通、信息共享和價值轉移的重要技術手段[2]。針對電力物資跨鏈供應問題,本文提出了跨鏈體系架構,并設計了基于跨鏈網關的跨鏈處理流程,以及跨鏈數據管理策略,最后通過實驗驗證了本文方法的有效性。
目前主要的跨鏈技術分為3類:公證人機制、側鏈/中繼、哈希鎖定。在這些技術基礎上,Wu等人[3]提出了一個區塊鏈模型,該模型由一組私有鏈、一個中央公共鏈和一個中央服務器組成,可為私有鏈和中央開放鏈節點之間的交互提供目錄服務。為了構建產品可追溯性系統,Ding等人[4]提出了一種基于許可區塊鏈的兩層區塊鏈架構,分別使用聯盟鏈和私有鏈,以解決性能問題。Leng等人[5]為農業供應鏈管理系統設計了一個由用戶信息鏈和業務鏈組成的雙鏈模型,以解決隱私保護問題。總的來說,盡管上述方法提高了區塊鏈的可用性,但它們未對電力物資供應鏈的跨鏈應用場景進行特定設計與優化,不能直接應用。
本文提出的區塊鏈跨鏈框架如圖1所示。

圖1 體系架構圖
感知層:感知層由物聯網傳感器和物聯網代理服務器組成。物聯網傳感器連接到物聯網代理服務器。物聯網傳感器可監電力物資控供應鏈中產品的溫度、位置和其他狀態數據。
數據層:數據層使用物聯網網絡存儲物聯網數據。Tangle網絡提供了一個移動應用管理通道工具,用于加密和存儲Tangle網絡中的數據,從而提供物聯網數據的隱私保護。
擴展層:擴展層是跨鏈網關的中間件,負責連接不同區塊鏈平臺,可靠轉發不同區塊鏈之間的跨鏈交易。也就是說,擴展層不僅可以將請求從Fabric網絡路由到Tangle網絡,還可以將Tangle網絡中的請求路由到Fabric網絡。
控制層:控制層使用Fabric網絡,為應用層提供服務,并通過智能合約執行訪問控制和智能計算。對于數據查詢請求,來自數據層的產品收發請求和物流信息將通過跨鏈網關發送給最終用戶;其他請求將直接在Fabric區塊鏈網絡上交互,計算結果最終將返回到應用層。由上述特點可知,本文模型具有隱私保護、權限控制、智能合約等特點。
應用層:應用層由跨鏈架構的應用生態組成,可用于實現供應鏈、金融、智能家居等不同業務需求。
從圖1體系架構圖可以看出,跨鏈網關是連接不同區塊鏈的核心。基于跨鏈網關的跨鏈處理主要包括以下4個步驟:
步驟1:源鏈提交跨鏈事務,并在事務中設置路由的目標鏈。交易完成后,區塊鏈平臺將生成具有跨鏈身份和路由方向的跨鏈事件。
步驟2:在擴展層中,跨鏈網關節點偵聽源鏈拋出的跨鏈事件。當收到跨鏈事件時,跨鏈網關節點會將該事件放入訂閱消息隊列中。
步驟3:在擴展層中,跨鏈網關節點分析跨鏈事件,獲取生成跨鏈事件的事務ID,并使用該ID達成共識。
步驟4:系統隨機選擇跨鏈網關節點,從源鏈獲取跨鏈交易內容。然后分析跨鏈交易內容,并將其轉換為目標鏈的交易格式。最后,將轉換的事務標識為跨鏈操作,設置路由的目標鏈,并將其提交給目標鏈。
本文關注的是電力物資供應鏈管理中的多方物流場景,將經銷商、零售商、物流和最終用戶等業務角色分別抽象為賣家、物流和買家,包括以下步驟:
步驟1:在供應鏈管理應用程序中,賣方將產品運輸給買方。控制層的Fabric智能合約提供接口,賣家使用該接口生成物流訂單,并委托物流公司運輸產品。
步驟2:物流公司收到賣方授權后,對產品進行包裝和運輸,并在包裝箱中安裝產品狀態監控傳感器,允許買家和賣家實時監控產品狀態。物流公司使用控制層的Fabric智能合約接口將數據上傳到區塊鏈;同時,觸發擴展層的跨鏈網關,向數據層發送跨鏈事務,創建移動應用管理通道。
步驟3:數據層完成跨鏈事務后,觸發跨鏈網關將存儲移動應用管理通道密鑰和地址的跨鏈事務發送到控制層。
步驟4:當產品運輸到買方處后,系統觸發擴展層的跨鏈網關將跨鏈事務發送到數據層,以便獲取移動應用管理通道中的物聯網數據。
步驟5:數據層完成跨鏈事務后,觸發擴展層的跨鏈網關,將物聯網數據的跨鏈事務發送到控制層。智能合約完成物聯網數據計算后,將最終結果返回應用層。
本節對上節提出的跨鏈體系架構進行實驗驗證。本文中的區塊鏈節點和其他子系統運行在docker容器中,所有docker容器都運行在一臺Linux服務器上。本文的區塊鏈網絡由一個Fabric區塊鏈網絡、一個專用物聯網網絡、一個跨鏈網關節點和一個NATS消息隊列節點組成。在測試中,Fabric區塊鏈客戶端以60TPS(每秒事務數)的速率向Fabric網絡發送300個事務,同時監控來自物聯網的跨鏈事務確認事件數。
經測試,移動應用管理電力物資供應鏈數據通道跨鏈創建的吞吐量為9.3TPS,平均事務確認延遲為10.3s,最大事務確認延遲為19.1s,最小事務確認延遲為1.5s。可見,在該模擬環境下,本文設計的跨鏈體系框架可以有效處理管理中的相關事務。
當前的電力物資供應鏈管理存在多個區塊鏈平臺,且各區塊鏈之間沒有互操作性,形成了許多價值孤島。為了解決該問題,本文提出了一種應用于區塊鏈的跨鏈方法。首先設計了包括感知層、數據層、擴展層、控制層和應用層五層的跨鏈體系架構,在此基礎上提出了基于跨鏈網關的跨鏈處理流程,以及跨鏈數據管理策略,最后通過實驗驗證了本文方法的有效性。