?

一種基于區塊鏈的保密文件同城寄遞自適應路徑規劃算法

2022-12-13 05:43張添龍吳加洋韓忠旭
數據采集與處理 2022年6期
關鍵詞:同態保密站點

周 倩,張添龍,吳加洋,韓忠旭,戴 華

(1.南京郵電大學現代郵政學院,南京 210003;2.南京郵電大學計算機學院,南京 210023)

引 言

近年來,一些黨政機關或涉密單位通過普通郵政傳遞國家保密文件,可能存在可靠性差、可控性差且擴大知悉范圍等危害。中華人民共和國保守國家秘密法第3章第25條指出:不得通過普通郵政、快遞等無保密措施的渠道傳遞國家秘密[1]。但是,目前郵政企業并沒有對寄遞的機要文件有嚴格的監管措施。對于企業(如會計、法律、研究所和券商等)而言,合同、資質、發票、報告和證件等重要商務文件的運輸過程,需要較高的機密性、快速性與動態性,訂單信息需要具備防篡改、防冒充的能力?,F有的方案為一個訂單由一個專人配送或通過機要文件交換站進行交換,所有信息由單個云系統維護,成本高昂,難以持續發展[2]。與城市間的主干道相比,同城配送中道路交通更為復雜。出于對寄遞效率與服務質量的考慮,無論是郵政企業,還是普通物流企業,同城配送背景下保密文件的寄遞效率與安全都迫切需要提升,保密文件的寄遞問題迫切需要一種解決方案。

全同態加密的概念于1978年首次被Rivest等[3]提出,它允許直接對密文進行運算處理,其輸出結果與對明文進行同樣的運算處理再將結果進行加密相同。同年,Rivest等[4]提出了RSA(Rivest?Shamir?Adleman)算法,其安全性依賴于數論中大數分解的困難性,密鑰越長安全性越高,因此,它的計算量大,加密速度比較慢,作為一個同態加密算法,其僅具有乘法同態性,并不具有加法同態性。1999年,Paillier[5]基于復合剩余類的困難問題發明了Paillier加密算法,其僅滿足加法同態,并不滿足乘法同態。Gentry等[6?8]于2009年基于理想格數學結構第1次提出了全同態加密算法,從此全同態加密被重視起來?;谌瑧B加密算法運算復雜和效率較低等特點,國內外的學者都提出了自己的改進方案。全同態加密算法可以對密文直接進行運算,得到的結果與明文運算效果一樣。

近年來,區塊鏈技術因其分布式記賬和去中心化、不可纂改等特點,被許多領域看好。區塊鏈采用了Hash算法、公鑰密鑰密碼學以及零身份證明等相關密碼學技術[9],鏈上存儲結構Merkle哈希樹可以驗證數據完整性,因此它在物流行業保護信息的完整性、機密性和隱私性有著廣泛的應用。譬如,京東全球購的全鏈條采用區塊鏈溯源技術,顧客可以查看到寄遞的時間、運輸路線和方式等信息。為了加強寄遞的機密性,需要對寄遞信息進行進一步機密性處理,確保在整個寄遞過程中的安全性。車輛只有在配送的過程中才具備的屬性信息叫車輛上下文信息(Contextual information),比如車輛的速度、車輛抵達的時間、站點位置等[10?11]。利用車輛的上下文信息將下一條站點的信息進行屬性加密,可以抵御車輛被冒充非法取得保密文件,即使快遞員(車輛)被捕獲,攻擊者無法獲得正確的身份信息、合法位置、合法時間等屬性解密下一跳站點。

從同城寄遞行業發展的視角來看,快遞路徑一次性規劃難以適應同城配送中道路交通復雜的情況,此外,車輛、站點和快遞員之間互相不信任導致的矛盾也與日俱增,隱私泄露問題頻出[12]。針對以上現狀,本文設計了一種基于區塊鏈的保密文件同城寄遞自適應路徑規劃算法,實時生成一條保護位置隱私的最短路徑,滿足當前同城保密文件寄遞響應敏捷、保護安全隱私的要求。最后通過原型系統的測試,對智能合約同態計算結果、上下文屬性個數和站點個數對路徑規劃計算代價影響進行了分析,實驗結果表明保密文件同城寄遞系統具備寄遞信息的機密性、完整性和防纂改的功能,保證了寄遞的高效率。

1 保密文件同城寄遞系統架構

基于區塊鏈去中心化、分布式節點間互相平等的特點和同城寄遞場景下站點之間不區分上下級的現實情況,區塊鏈技術在同城寄遞場景下具有天生的優勢,減輕了消息傳遞至云端的通信成本。本系統利用分布式運算、實時動態生成快遞運輸路徑,假設載有保密文件的車輛此時到達站點Si,站點Si需要從多個可能的下一跳站點中選擇一個距離終點Sd最近的站點,為了防止站點位置隱私的泄露,對所有可能的下一跳站點與終點Sd進行同態加密F()后進行運算,得各站點與終點之間的距離Distance。求下一跳站點即求滿足以下要求的站點Si+1。

當前Si站點抵達終點Sd最短路徑為(Si,Si+1,…,Sd)。系統感知數據主要來源于車輛采集、站點實時生成的數據。為了保障數據安全性以及提高數據計算效率,基于同態加密的站點位置需要從分布式數據庫映射至區塊鏈數據庫,系統架構模型如圖1(a)所示,從上至下依次分為應用層、存儲層、網絡與共識層、數據層和感知層。圖1(b)是鏈上數據的存儲結構,系統產生的交易記錄會經過一系列哈希計算,最終以Merkle樹這種數據結構進行鏈式存儲,為了保證各節點間數據網絡傳輸以及鏈上數據的容錯和恢復,設計了傳輸網絡與共識機制,通過鏈下存儲鏈上維護的方式可以做到去中心化管理,因為智能合約是一個可根據觸發條件來判斷是否執行的程序[13],將其部署在區塊鏈上,既可以實現動態同城寄遞路徑規劃、基于上下文加解密下一跳站點信息以及計算下一跳同城站點的功能,又可以讓合約具備不可篡改的特點,提高了系統的可靠性。

圖1 系統架構模型Fig.1 System architecture model

在系統架構模型中,感知層用于獲取保密文件的寄遞信息,為系統提供數據保障,該層利用定位系統、傳感器技術、射頻識別技術(Radio frequency identification,RFID)、快速反應(Quick response,QR)碼等技術收集實體的信息,包括車輛位置、車輛牌照、車輛到達時間和車輛圖形數據等信息,為整體系統的完成打下良好基礎。數據層分為感知數據和區塊數據,感知數據從感知層中獲取,經過處理后成為可識別的上下文數據,存入傳統的分布式數據庫中?;谕瑧B加密的站點位置從鏈下數據庫同步到鏈上后,經過哈希運算后得到的Hash值作為交易記錄,再將交易記錄加上時間戳并通過公鑰進行數字簽名,形成了區塊數據,區塊數據根據Merkle樹這種數據結構進行鏈式存儲,形成了區塊鏈。在網絡與共識層,感知數據通過由5G、物聯網(Internet of things,IoT)形成的傳輸網絡進行傳輸,實用拜占庭容錯共識機制(Practical Byzantine fault tolerance,PBFT)保證著系統的容錯和恢復,并確保所有區塊節點的數據一致性[14]。存儲層分為鏈上數據庫和鏈下數據庫;鏈下數據庫為傳統的分布式架構數據庫,存儲各自節點感知數據。對于站點而言,各站點數據庫存儲車輛進出站的具體信息以及保密文件寄遞過程信息,包括車輛位置、車輛牌照、車輛到達時間和保密文件分揀狀況等。對于車輛而言,鏈下數據庫存儲車輛接受任務、完成任務的時間節點以及任務信息。鏈上數據庫為每個區塊節點存儲區塊鏈數據,在鏈上記錄交易信息以及智能合約的處理結果,如計算出的下一跳站點、寄遞任務指派的車輛。鏈上數據和鏈下數據實時同步,利用鏈下存儲鏈上維護的方式和分布式記賬的手段可以做到去中心化管理。應用層服務于車輛與站點,利用部署在區塊鏈上的智能合約提供了動態同城寄遞路徑規劃、基于上下文加解密下一跳站點信息以及計算下一跳同城站點的功能,當車輛在規定時間到達規定站點,系統將自動調用合約實現相應的功能,最終實現數據的精準控制訪問與隱私保護。

2 保密文件同城寄遞自適應路徑規劃算法

保密文件同城寄遞自適應路徑規劃算法包括基于區塊鏈的動態同城寄遞路徑規劃算法和基于上下文的加解密算法。其中,前者是一種根據貪婪法則運作的、在所有站點和終點位置被加密保護的情況下、動態實時尋找下一跳站點的路徑規劃算法,后者確保規劃好的路徑僅能被在正確時間到達正確位置的車輛獲取。

2.1 基于區塊鏈的動態同城寄遞路徑規劃算法

在基于區塊鏈的動態同城寄遞路徑規劃算法中,各個站點的真實坐標都是被加密的。假設載有該保密文件的車輛此時到達站點Si,其真實坐標為(Si,x,Si,y),下一跳站點可能的選擇有n個,分別為Sk,k∈[0,n-1],真實坐標分別為(Sk,x,Sk,y),k∈[0,n-1],區塊鏈的私鑰為,以上作為算法的輸入。該算法的輸出為下一跳站點Si+1,其坐標為(Si+1,x,Si+1,y)。定義F()為全同態加密函數,F-1()為全同態解密函數。

F()加密的對象是明文轉化成的布爾值序列。對明文的第i個布爾值加密時,首先選取不同的隨機數qi和使用相同的生成零密文的方式生成一系列公鑰,對每個布爾值加密使用不同的公鑰其生成過程為

對明文第i個布爾值mi加密,生成密文ci的過程為

對于密文組成的長整數序列,通過模擬二進制補碼,可以實現整數域的四則計算。F-1()解密的對象是密文轉化成的布爾值序列。對經過計算的密文的第i個布爾值ci解密,還原明文mi的過程為

(1)各個站點在系統初始化階段,將自身的位置Sk,k∈[0,n-1]坐標(Sk,x,Sk,y),k∈[0,n-1]進行全同態加密為

(2)用戶在提交寄遞保密文件的申請時,對終點Sd坐標(Sd,x,Sd,y)進行全同態加密為

此外,如果保密文件同城寄遞的過程中遇到轉運站點狀態發生變化、終點需要修改等情況需要重新規劃路徑,則重新加密新的站點或終點位置即可。派送路徑不是提前規劃及加密的,而是在可信的前提下可以在任何寄遞階段和位置實時進行修改優化的,這體現了本方案的實時動態性。

(3)在正確時間到達正確站點的車輛觸發智能合約,在每個可能的下一跳站點分別計算其坐標加密值(F(Sk,x),F(Sk,y)),k∈[0,n-1]與終點坐標加密值(F(Sd,x),F(Sd,y))的加密近似距離F(d k)為

因為每個可能的站點都通過智能合約參與了加密距離的計算,因此不存在集中計算,實現了去中心化。這不僅減輕了單個服務器的計算開銷,也保證了計算結果的可靠性,體現了本方案分布式計算的特點。

(4)區塊鏈使用自身私鑰解密F(d k),得到每個距離的明文d k為

該近似距離的非減排列對應的站點與通過真實坐標計算得到的歐氏距離的非減排列對應的站點一致,因此,可以用于加密情況下度量兩個站點間的距離。如果d k=0,則說明當前站點就是最后一跳站點,終止運輸。

(5)區塊鏈比較d k,k∈[0,n-1],尋找最小值,則最小值對應的站點就是下一跳站點Si+1,坐標為(Si+1,x,Si+1,y)。

(6)車輛向下一跳站點Si+1進行運輸,此時Si+1成為新的Si,重復步驟(3)至步驟(6)。

由此,在沒有任何一個實體獲取終點真實坐標的情況下,區塊鏈完成了動態同城寄遞路徑規劃。計算得出的下一跳站點信息Si+1通過基于上下文加密保護傳送給車輛。

2.2 基于上下文屬性的加解密算法

基于上下文的加解密算法保證了通過基于區塊鏈的動態同城寄遞路徑規劃算法計算得出的下一跳站點信息僅能被在正確時間到達正確位置的車輛獲取?;谏舷挛牡募咏饷芩惴ㄊ且环N由發送者基于接收者屬性參數進行加密、不會直接暴露接收者屬性的一種安全通信算法。

加密算法的輸入為待加密的明文(下一跳站點信息)Si+1、接收者(車輛)的公鑰pk、接收者預期的屬性參數向量A,輸出為密文(加密的下一跳站點信息)CSi+1和基于上下文加密的密鑰CK;解密算法的輸入為CSi+1、CK,以及接收者(車輛)的私鑰sk、接收者通過傳感器實際采集到的屬性參數向量A(m),輸出為明文(下一跳站點信息)Si+1。區塊鏈基于上下文加密和車輛基于上下文解密的具體步驟如下。

(1)假設一接收者選擇的屬性參數有n個,則其預期的屬性參數向量A有n個維度,每個維度代表不同的屬性參數為

定義A中每個參數能接受的最大誤差為ω為

合法的接收者預期的n維屬性參數向量A i為

式中k0,k1,…,kn-1為偏差系數,且k0,k1,…,kn-1∈[-1,1]。所有合法的接收者預期的n維屬性參數向量構成n維子空間S。

(2)計算n維子空間S各屬性參數之和最小的點的向量A(L)為

計算接收區域內的補償偏移向量A(o)為

式中floor()為向下取整函數。接著,構造n-1個映射為

(3)生成隨機密鑰K,并使用K對稱加密Si+1,得到CSi+1。

(4)將隨機密鑰K與步驟(2)中對接收屬性參數向量A進行映射后所得的結果(f0(c0),f1(c1),…,fn-1(cn-1))進行異或,得到臨時密鑰Kv。

(5)使用接收者(車輛)的公鑰pk非對稱加密Kv,得到基于上下文加密的密鑰CK。

(6)假設接收者通過傳感器實際采集到的n維屬性參數向量A(m)為

(7)接收者(車輛)使用其私鑰sk非對稱解密CK,得到臨時密鑰Kv。

(8)對A(m)進行映射處理,有

式中如果A(m)∈S,也就是A(m)滿足式(17)。

(9)將A(m)的映射結果與Kv進行異或,還原隨機密鑰K。

(10)使用K對稱解密CSi+1,得到Si+1。

由區塊鏈進行基于上下文加密保護下一跳站點信息、車輛基于上下文解密獲取下一跳站點信息的過程如圖2所示。

圖2 基于上下文加密解密的流程圖Fig.2 Flow chart of context-based encryption and decryption

3 系統實現與測試

本文實現了區塊鏈的保密文件南京同城寄遞系統[15],并對基于區塊鏈的保密文件同城寄遞自適應路徑規劃算法進行了測試。實驗模擬終點位置、各個站點位置被加密保護的情況下車輛提交請求、觸發區塊鏈調用智能合約動態規劃路徑、獲取下一跳站點的過程。

智能合約同態計算結果分析在后端控制臺,部署在區塊鏈上的智能合約能夠計算處理加密過的站點位置數據,在合理的時間內得出下一跳站點位置,通過基于上下文加密后返回給車輛,實現同城配送路徑的實時動態規劃。

不同屬性個數n(即式(9~17)中各向量的維數n)對路徑規劃計算代價影響測試:對車輛進行同城寄遞的場景進行仿真,假設車輛用于密鑰生成、加密和解密的屬性參數個數n從1增至10個,屬性參數可以選擇經度、緯度、海拔、ID、時間戳、速度和方位角等能唯一標識可信車輛的參數,實驗結果如表1所示。

表1 不同屬性個數對計算代價影響Table 1 Effect of different numbers of at?tributes on calculation cost

結果顯示,屬性參數個數n從1增至10個的過程中,密鑰生成時間沒有明顯變化,加密、解密時間略有增加,但都在合理的范圍內。在本方案中,結合同城寄遞的實際場景,車輛選擇4個屬性,即n取4,分別為經度、緯度、ID和時間戳,因此計算代價可以接受。

不同站點個數對路徑規劃計算處理時間影響測試:對車輛進行同城配送的場景進行仿真,將車輛的屬性參數個數設置為4,探究鄰居站點個數的增加對于智能合約進行的全同態加密路徑規劃時間有無不可接受的影響,測試結果如表2所示。

表2 不同站點個數對路徑規劃計算處理時間影響Table 2 Effect of the number of different sta?tions on processing time of route plan?ning calculation

結果顯示,隨著站點個數的增加,路徑規劃的時間從2 144 ms開始近似指數上升,但是一般可能選擇的下一跳站點個數不會超過20個,因此路徑規劃時間均在可以接受的范圍內。

4 結束語

針對同城道路復雜保密文件寄遞效率低和隱私泄露問題,本文基于區塊鏈、全同態加密以及上下文加密等技術,提出了一種基于區塊鏈的保密文件同城寄遞自適應路徑規劃算法,解決保密文件的同城寄遞問題。系統利用區塊鏈的共識機制和智能合約算法,各分布式節點通過同態加密計算構成。車輛利用自身上下文信息才可以加解密下一條站點信息,具有防冒充的功能,也解決了車輛、站點和快遞員之間互不信任的問題,提高了同城寄遞背景下保密文件的配送效率與安全性。

另外,本文對全系統模塊方案、整體流程以及原型系統的實現,分析了智能合約同態計算結果,針對不同屬性個數、不同站點個數對路徑規劃計算代價影響進行了測試,測試結果表明保密文件同城寄遞系統中的路徑規劃算法具備機密性、完整性和防纂改的功能,該技術為解決保密文件的及時寄遞應用中的隱私泄露問題提供了有力的應用技術支撐。

猜你喜歡
同態保密站點
多措并舉筑牢安全保密防線
關于半模同態的分解*
拉回和推出的若干注記
τ-內射模的若干性質①
模的投射覆蓋、內射包絡與局部環①
基于Web站點的SQL注入分析與防范
積極開展遠程教育示范站點評比活動
首屆歐洲自行車共享站點協商會召開
怕被人認出
擴頻通信技術在NFC中的保密處理
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合