?

面向霧增強型工業物聯網的多維安全查詢方案

2020-09-08 11:57周由勝譚暢唐飛
通信學報 2020年8期
關鍵詞:傳感區間加密

周由勝,譚暢,唐飛

(1.重慶郵電大學計算機科學與技術學院,重慶 400065;2.重慶郵電大學網絡空間安全與信息法學院,重慶 400065)

1 引言

工業物聯網(IIoT,industrial Internet of things)是物聯網系統與工業自動化系統的融合,具有全面感知、互聯傳輸、智能處理等特點,是物聯網技術未來的主要發展方向之一。工業物聯網應用系統的重要任務之一是分析和處理物聯網設備傳感數據,如果將物聯網設備的傳感數據全部匯集到控制中心進行處理,不僅可能因網絡擁塞引起系統較高時延,而且會使系統面臨單點失效的風險。近年來興起的邊緣計算模式通過充分利用網絡邊緣側設備的算力,可有效緩解傳統集中式計算模式下存在的性能瓶頸和安全風險[1]。通過在工業物聯網邊緣部署霧設備,可以在網絡邊緣側對物聯網中傳感數據進行預處理,提高服務質量[2-3]。

物聯網設備的傳感數據保護問題是霧增強型工業物聯網系統需要考慮的重要問題之一。例如,在霧增強型工業互聯網系統中,運維人員需要實時監控系統中的物聯網設備是否正常運行,即查詢物聯網設備的傳感數據是否處于合理的范圍從而確定其運行狀態。出于安全性考慮,查詢過程中傳感數據和查詢結果均不能泄露給其他任何非授權方,因此必須設計安全的數據查詢方案。在數據安全查詢方面,目前諸多學者考慮了外包加密數據的查詢,例如,Wang 等[4]使用布魯姆過濾器構建查詢索引,實現了對加密數據的模糊多關鍵詞排序范圍查詢。Dai 等[5]針對雙層無線傳感器網絡下的數據查詢問題提出了一種融合桶分區、身份認證和校驗碼等技術的范圍查詢方法。Shen 等[6]研究了外包數據的多維度保密范圍查詢問題,提出了一種個體化的、權限靈活的查詢方案。近年來,針對非外包加密數據的范圍查詢吸引了研究人員的關注,如Lu[7]提出了一種范圍查詢矩陣化的方法,利用同態加密技術設計了單維安全范圍查詢方案?,F有支持隱私保護特性的范圍查詢的研究主要集中在查詢范圍以及滿足條件的查詢子集的保密性上,不支持多維度查詢,且通信開銷較高。

由于在工業互聯網中有些大型物聯網設備有多種不同類型的傳感器,因此對其進行狀態監控需要獲取歸屬該設備的多個傳感數據,即進行多維數據查詢,而采用傳統的數據查詢只能使用多次查詢的方式實現,增加系統計算開銷和通信開銷,因此,有必要設計針對工業物聯網的多維數據查詢方案。此外,設計方案時還需要兼顧傳感數據的機密性和用戶查詢模式保護問題?;谕瑧B加密構造面向多維數據的查詢陷門和陷門匹配是解決該問題的一個可行思路,如BGN(Boneh-Goh-Nissim)同態加密算法[8]和Paillier[9]提出的算法。用戶將查詢范圍進行保密處理形成查詢陷門,物聯網設備在收到密文形式的查詢陷門后與自身的傳感數據進行匹配,利用同態加密算法的自盲性將傳感數據形成新的密文并上報給霧設備。霧設備對其所屬的物聯網設備所提交的滿足條件的傳感數據密文進行匯集,并將匯集結果返回給查詢用戶進行計算和解密。

本文提出了一種面向霧增強型工業物聯網的具有隱私保護特性的多維度安全范圍查詢方案,該方案采用查詢區間矩陣化、基于輔助向量的矩陣分解和重構等方法降低存儲開銷和通信開銷,利用同態加密實現隱私保護。本文方案首先將涉及多個不同量綱、不同起始點的n維數據的范圍映射到一個查詢矩陣,該矩陣的大小由總的查詢區間大小而定,不受所需查詢維度量綱的影響;其次,構造多個輔助向量將該矩陣分解和重構;再次,利用BGN 同態加密設計查詢陷門生成過程和陷門匹配過程;最后,通過仿真實驗對方案的可行性和性能進行驗證分析。

2 預備知識

本節介紹本文方案使用的2 種基本數學方法,即大合數N=pq階雙線性映射e:G×G→GT和BGN同態加密算法。

2.1 大合數階雙線性映射

令p、q是2 個同長度的大素數,即其比特長度|p|=|q|。令N=pq,當在群G和GT間存在滿足如下3個屬性的可計算的映射關系e:G×G→GT時,映射e(G,GT)可被稱為合數階雙線性映射。

1) 雙線性。對任意的(g,h)∈G2,a,b∈ZN,有e(ga,hb)=e(g,h)ab。

2) 非退化性。存在g∈G,使e(g,g)在N階群GT上。

3) 可計算性。存在一種高效算法,當(g,h)∈G時,所有e(g,h)∈GT都是可計算的。

大合數階雙線性參數生成器CGen(K)是一種概率算法,其以安全參數K作為輸入值,輸出一個五元組(N,g,G,GT,e)。其中,N=pq,p和q是2 個K bit 的素數;G和GT是2 個N階的群;g∈G是群G的一個N階生成元;e:G×G→GT是一個非退化性的、可以高效計算的雙線性映射。

令g是G的一個生成元,此時由h=gq∈G可以生成一個p階子群Gp={g0,g1,…,gp?1},而g′=g∈G可以生成一個q階子群Gq=Gp={g′0,g′1,…,g′q?1}。此時,G群上的子群區分(SGD,sub-groupdecision)難題[9]可以表述為:給定五元組(N,g,G,GT,e),如果元素x是隨機從群G或其子群Gq中選取的,則確定x是否為Gq中元素是困難的。若此難題成立,則BGN 同態加密算法的安全性得到保證[9]。

2.2 BGN 同態加密算法

BGN 同態加密算法是著名的全同態加密算法,由3 個階段組成,即密鑰生成階段、加密階段和解密階段。

1) 密鑰生成階段

給定安全參數K,合數階雙線性映射參數組(N,g,G,GT,e)由生成器CGen(K)生成。此處N=pq,其中p,q是2 個K bit 的素數,G和GT是2 個N階的群,g∈G是群G的一個N階生成元。設h=gq,h是G的一個隨機p階生成元。此時,公鑰pk=(N,G,GT,e,g,h),私鑰sk=p。

2) 加密階段

3) 解密階段

給定密文c=E(m,r)=gmhr∈G,明文可用密鑰sk進行恢復。觀察可知cp=(gmhr)p=(gp)m,若要解密m,相當于求解以gp為底的cp離散對數問題,而由于0≤m≤Δ,使用Pollard lambda 算法求解這個問題的時間復雜度為。

此外,BGN 同態加密算法擁有自盲性,即,給定密文E(m,r)∈G,有E(m,r+r′)=E(m,r)hr′∈G是m的一個有效密文。

BGN 同態加密算法擁有以下同態特性。

①群G上的加法同態性。給定E(m1,r1)∈G和E(m2,r2)∈G,有

3 帶隱私保護特性的多維度查詢方案

本文方案是一種面向各類霧增強工業物聯網聚合式查詢方案,本文中的多維度是指一個物聯網設備的傳感數據由多個不同維度的數據構成,如一個物聯網設備的傳感數據包含水溫、電壓、水量、材料余量等。根據實際需求,可能需要同時對該設備不同維度的傳感數據進行查詢。例如,在某個工廠中通過統計水溫、電壓、水量、材料余量的平均值,不僅可以及時了解并預測設備運行狀態,還可以為優化生產工藝的流程提供依據。

需要說明的是,在實際的工業物聯網環境中,不同維度的數據具有不同量綱和精度,例如電力消耗數據、水量消耗數據等可能會出現小數的情況。由于每個物聯網設備在制造后不太可能通過OTA(over the air)升級等軟件手段來改變其探測精度,為了簡化計算和適應多維度查詢的需求,本文方案做如下處理。精度小于1 的傳感數據在參與計算時需要進行轉換,如電力傳感數據某個時間節點的值為10.37 W,在計算時將其乘以100,即變為1 037 再進行范圍查詢。這樣,可以在不損失精度的情況下實現多個維度的范圍查詢。事實上,某個維度的數據的擴增倍數可在物聯網設備部署時寫入設備。

3.1 系統模型

本文方案中有三類實體,即位于網絡邊緣側的霧設備、位于霧設備管轄范圍內的工業物聯網設備D={D1,D2,…,DN}以及查詢用戶,方案模型如圖1 所示。

圖1 方案模型

1) 工業物聯網設備D={D1,D2,…,DN}是一組物聯網設備的集合,其分布于各個特定的物聯網域中。每個物聯網設備不只擁有探測和收集特定數據的能力,同時其也擁有數據傳輸的能力,使每個物聯網設備Dk可以周期性地向其所屬域內的霧設備上報傳感數據。

2) 本文方案的模型中的霧設備均位于網絡邊緣,每個霧設備有自身的管轄范圍,這個管轄范圍可以根據具體應用場景而定,如一臺生產設備、一個車間,乃至一個廠區。霧設備可以在其管轄范圍內對設備的傳感數據進行收集和計算,并完成用戶發來的查詢請求。相對于物聯網設備而言,霧設備擁有更強的計算和存儲性能,并可以實時完成對物聯網設備的傳感數據收集和回應。

3) 本文方案的模型中,查詢用戶可以直接生成多個維度的范圍查詢并發送給霧設備,從霧設備上獲得所需數據。例如,用戶可能想要知曉有多少個霧設備范圍內的設備傳感數據可以同時滿足維度1,范圍[B1,T1],維度2,范圍[B2,T2],…,維度m,范圍[Bm,Tm];哪些設備的傳感數據滿足條件;滿足條件的設備在各個維度上傳感數據的均值是多少。霧設備可以收集到管轄范圍內的所有設備反饋的滿足條件的傳感數據,然后根據其反饋數據生成相關度,最后將相關度和傳感數據返回給用戶。

3.2 多區間查詢的矩陣化

本文方案在單查詢區間矩陣化算法[7]的基礎上進行了改進,使多維度范圍查詢得以矩陣化,且維持較低的通信開銷。

通過觀察可以發現,任意給定的查詢區間均可分解成2 種類型的行,分別為不完全行(PR,partial row)和連續行(CR,continuity row)。圖2 為2 個查詢區間映射后的查詢矩陣,深灰色部分為PR,淺灰色部分為CR。這種矩陣結構為進一步壓縮矩陣提供了可能。一般情況下,一個典型的查詢區間可以分解得到2 個PR 和一個CR。

圖2 2 個查詢區間映射后的查詢矩陣

設總的查詢區間數為n。首先,定義4 種特殊的輔助向量。

1)Xk=(xk1,xk2,…,xkn)。其生成規則為,當第k個矩陣中第i行元素全為1 時,設定xki=0;否則xki=1。

2)Yk=(yk1,yk2,…,ykn)。其生成規則為,當第k個矩陣中第j列元素有至少一個1 時,設定ykj=0;否則yki=1。

本文分別對矩陣中的不完全行和連續行進行處理。首先,將n個查詢區間對應的不完全行獨立拆分為多個矩陣R1,R2,…,R2n,將所有的連續行拆分成一個矩陣RC,如圖3 所示。顯然,原查詢矩陣R=R1∪R2∪…∪R2n∪RC。

圖3 查詢矩陣的拆分結果

此時,矩陣中所有元素均可通過向量運算得到。用Rk表示與不完全行相關的矩陣,用RC表示與連續行相關的矩陣,將矩陣的與運算表現為按位與運算,將矩陣的或運算表現為按位或運算,并整理為向量乘法和向量加法的形式,如式(3)所示。

經過計算可知,向量XC在重構中無作用,最終所需的向量個數為4n+1 個。

3.3 數據查詢流程

本文方案流程主要由三部分組成。首先,密鑰管理服務器生成查詢密鑰,將私鑰分發給用戶,公鑰分發給霧設備FDi。用戶進行數據范圍查詢時,使用私鑰對所查詢范圍和查詢維度進行加密生成陷門,并將其發送給霧設備FDi。然后,霧設備在收到用戶發來的查詢陷門和查詢維度密文后,將查詢陷門下發給其所管轄的物聯網設備進行查詢。物聯網設備在計算出本次查詢的結果ω后,發送給霧設備進行聚合。霧設備通過聚合和計算得到ζ并反饋給用戶。最后,用戶將收到的ζ進行計算和解密,即可得到查詢結果。整個流程如圖4 所示。下面將具體介紹本文方案的流程。

圖4 系統流程

為方便描述數據查詢流程,將流程構造中使用到的主要參數在表1中列出。

表1 主要參數及其定義

1) 密鑰生成

給定安全參數K,密鑰管理服務器由生成器CGen(K)生成合數階雙線性映射參數組(N,g,G,GT,e)。其中N=pq,p,q是2 個K bit 的隨機素數,G,GT是2 個N階的群,g∈G是群G的一個N階生成元,e:G×G→GT是大合數階雙線性映射。設h=gq,則h是G的一個隨機p階生成元。密鑰管理服務器生成公鑰pk=(N,G,GT,e,g,h),私鑰sk=p。之后,密鑰管理服務器分發私鑰sk 至查詢用戶,分發公鑰pk至全體霧設備FDi,并由霧設備下發至其管轄域上的物聯網設備。用戶設定自己的消息空間為1,…,Δ},Δ?q。

2) 查詢陷門生成

對于每個確定的使用場景,用戶每次發起的查詢涉及的維度數量和種類是確定的。本文方案中設定所查詢數據的維度數量為n,即用戶查詢的區間數量為n。需要說明的是,流程中所指的查詢區間[Bquery,Tquery]均為經過倍增處理的傳感數據區間,物聯網端也已對數據進行了相同的倍增處理,故不再贅述數據倍增過程。一次范圍查詢的陷門生成由以下幾個步驟構成。

①數據映射和轉換。將本次查詢的任一查詢維度設定為第一區間,之后按照以下規則確定每個區間在查詢序列中的開始點。其中,li為區間i的區間長度。

即任一區間i的起始點為區間i?1 的結束點后增加一個區間長度后的位置,以防止多個區間相連,形成太多CR 區塊。確定起始點后,任一區間i的結束點為

該查詢區間的數據偏移βi可以由查詢區間的開始點來確定,設偏移后該查詢區間內第k個元素為vik,則βi和vik滿足式(8)所示條件。

由最后一個查詢區間的結束點確定矩陣階數m,然后構建m階查詢矩陣R。為了將查詢區間映射到查詢矩陣R中,將vik映射到矩陣元素R(i,j),如式(9)所示。

矩陣的階數m由最后一個查詢區間的結束點而不是單個查詢區間的上界決定,故每個向量的存儲空間需求與多維度查詢的單個區間的上界無關,只與所有查詢區間長度之和有關,存儲開銷為O(m)。

② 向量生成與加密。在生成查詢矩陣R后,按照3.2 節所述方法,由查詢矩陣生成相應的向量X,Y,X′,Y′,并篩選出所需的4n+1 個向量進行存儲和加密。即

至此,查詢陷門α生成完畢。將其發送至霧設備FDi,然后下發給其物聯網域上的各物聯網設備Dk進行查詢。此外,用戶還需要生成并向霧設備FDi發送本次查詢所需的維度密文ET(n)。

3) 物聯網設備端的處理

與用戶端發送的維度標識γ相對應,每個物聯網設備Dk擁有自己的維度標識。物聯網設備依次提取用戶發送的查詢陷門α中的和其對應的哈希值Hi來進行計算和比對。首先,物聯網設備計算并比對用戶發來的Hi,若一致則從中取出這條向量內的維度標識γi與設備自身的維度標識比對。經過比對,物聯網設備篩選出符合自身維度的查詢,并將相關聯的向量一同從查詢陷門中提取出來并組成queryVector 進行下一步計算。具體流程如算法1 所示。算法1 的時間復雜度為O(n)與用戶發來查詢陷門內向量個數n有關。

獲取queryVector 后,物聯網設備首先從其中提取出本次查詢的偏移量βk對自身的傳感數據v*k進行數據偏移,得到偏移后的值v′k,并使用ElementShift 函數得到其在矩陣中的位置(i,j)。此時,物聯網設備根據(i,j)從queryVector 提取對應的向量進行計算。具體流程如算法2 所示。每個物聯網設備只需執行一次算法2,時間復雜度為O(1)。

通過執行算法1、算法2,可以將物聯網設備的傳感數據v*k轉換為查詢矩陣對應位置的值在GT群的映射ck,至此完成一次查詢。此外,還可以通過sk在查詢匹配的情況下返回物聯網設備的實際傳感數據。完成計算后,將ωk發送給物聯網設備所屬域的霧設備FDi。

4) 霧設備端的處理

霧設備FDi接收到其下屬的k個物聯網設備發來的ωk后,從中提取物聯網設備對本次n維度查詢的結果ck并進行計算。霧設備將所有維度數據ck相乘,根據BGN 算法的同態性,得到的結果即k個維度上反饋的所有結果之和,FDi本次查詢的匹配程度σi即為此和值與用戶發來的經加密的查詢維度信息ET(n)的差值。FDi將σi和所有ωk的值構建成ζi發送給用戶。具體流程如算法3 所示。算法3 的時間復雜度O(n)與霧設備FDi所屬物聯網設備個數k有關。

5) 用戶解析數據

用戶收到FDi發來的數據ζi后,首先提取查詢匹配程度值σi并解密。當且僅當σi=0 時,霧設備FDi返回的結果完全與查詢匹配。用戶對霧設備返回的完全匹配的數據分維度進行累乘,并計算完全匹配的設備個數。具體流程如算法4 所示。算法4的時間復雜度與霧設備FDi的個數n有關,為O(n)。

此時,VD 即為返回的有效數據的個數,將Sγ解密后即可得到維度γ下符合查詢條件數據之和。經過處理后,不匹配的ζi被全部置0,剩余的元素來自返回了有效數據的霧設備,即可定位返回了有效數據的具體霧設備。

4 安全性分析

本節對本文方案的安全性進行分析,包括前向安全性、后向安全性、隱私保護性、不可鏈接性等關鍵安全特性,并且介紹了近年來一些針對加密范圍查詢方案設計的攻擊模式,分析了本文方案在面對這些攻擊模式時的安全性。

1) 前向安全及后向安全

假定敵手A獲得了某次查詢中所使用的私鑰sk=p,其僅能對當次查詢的密文進行解密。由于在每次進行查詢時,用戶均會使用新生成的公鑰和私鑰進行查詢,敵手A使用私鑰sk=p僅可得知用戶生成密鑰所用的安全參數K,無法由此計算出用戶此前所生成密鑰的任何信息,從而無法解密除當次查詢數據外此前任何一次查詢的數據。由此,本文方案滿足前向安全及后向安全。

2) 查詢模式隱私保護

假定敵手A攔截了用戶U在某次查詢中使用的陷門,由于其在公開信息中僅能獲得公鑰pk=(N,G,GT,e,g,h)和對當次查詢的維度總量的加密信息ET(n),因此其無法解密出查詢陷門的具體內容,也無法獲知當次查詢的查詢維度總量。進一步地,由于BGN 算法具有語義安全性,攻擊者無法區分陷門中加密向量的內容,也無法通過多次攔截陷門分析出用戶的查詢規律。

除敵手A外,物聯網設備Dk和霧設備FDi也無法獲知查詢陷門的具體信息。由于本文方案與傳統的查詢方案不同,使用了同態加密計算來取代傳統的比對過程,Dk根據查詢偏移量β來確定自身原始傳感數據v*k并提取查詢陷門內對應的加密向量進行計算。在這個過程中,Dk并不能獲取查詢區間[Bk,Tk]的具體值。而FDi在方案中僅對運行于其所在物聯網域內的物聯網設備發來的反饋ωk進行聚合,也無法獲知各維度上具體的查詢區間。因此,本文方案的查詢陷門不會泄露任何有用的信息,如查詢模式、查詢區間等,查詢陷門的隱私得到了保護。

3) 傳感數據機密性

假定敵手A攔截了物聯網設備Dk在某次查詢中發送到霧設備FDi的消息ωk,由于其在公開信息中不能獲取除公鑰和當次查詢維度總量以外的信息,其無法解密出ωk的具體內容,無法獲知Dk是否滿足本次查詢或得到Dk的原始傳感數據v*k。由于物聯網設備向霧設備發送信息時使用了不同的隨機數,敵手A無法通過多次攔截ωk來分析出任何有用的信息。

假定敵手A攔截了霧設備FDi發往用戶的消息ζi,由于其無法獲得私鑰sk=p,其無法對ζi進行解密,無法獲知滿足查詢條件的物聯網設備及其傳感數據v*k。與前述相同,隨機數的引入使敵手無法通過多次攔截ζi來分析獲知查詢規律等有用的信息。

除敵手A外,霧設備FDi也無法獲知物聯網設備Dk的原始傳感數據v*k是否滿足查詢。FDi收到Dk的反饋ωk后,由于其僅能掌握公鑰pk,其無法解密ωk的具體內容,無法獲知Dk是否滿足本次查詢或得到Dk的原始傳感數據v*k。因此,除查詢用戶和物聯網設備外的任何一方均無法獲知物聯網設備的傳感數據v*k,傳感數據的機密性得到保證。

4) 不可鏈接性

本文方案中,由于隨機數的使用,所有由用戶U生成的查詢陷門具有隨機性,即使由同一個用戶發送的2 個或多個查詢陷門,外部攻擊者無法確定這些查詢是否來自同一個用戶,也就意味著攻擊者無法將兩次不同的查詢關聯到某一個特定用戶。因此,本文方案提供了不可鏈接性,攻擊者無法通過攔截查詢陷門的方式來關聯查詢者身份。

5) 查詢陷門完整性

為了防止數據傳輸過程中可能出現的數據完整性損壞,本文方案中,用戶U生成查詢陷門時,將成對的查詢向量進行連接并計算消息指紋,生成的哈希值被發送給各物聯網設備Dk。Dk在提取某一組加密向量內容前,首先利用哈希值對消息進行校驗,若校驗未通過,該組向量被視作已損壞向量并丟棄。通過這種方式,查詢陷門的數據完整性得到了保證。

6) 密鑰更新

本文方案中,對物聯網設備傳感數據所進行的查詢過程本質上是一個基于BGN 的同態加密計算過程,其過程中不涉及解密操作,物聯網設備和霧設備僅需獲知系統公鑰pk,而私鑰sk 僅由查詢用戶掌握。因此,密鑰管理和更新涉及實體較少,密鑰管理成本較低。

7) 對其他攻擊方式的防護

除上述常見的安全攻擊類型外,近年來,出現了多種針對加密范圍查詢的攻擊方式。其中,Islam 等[10]使用訪問模式泄露的方式對加密數據查詢進行攻擊。Naveed 等[11]對屬性加密方案中的 DTE(deterministic encryption)和OPE(oder preserving encryption)加密方式實施攻擊,并使用加密信息和公開的輔助數據完成明文恢復。Kellaris 等[12]定義了2 種基本的泄露來源,如訪問模式泄露和通信容量泄露,并開發了一種通用的、適用于任何支持范圍查詢且其訪問模式或通信容量存在泄露的系統的重放攻擊方式。Lacharité 等[13]使用范圍查詢中泄露的包括查詢模式、排序信息在內的數據,提出了一種改進的對加密數據的重放攻擊。

與文獻[10-13]討論的數據庫查詢場景有所不同,本文方案主要考慮霧增強工業物聯網中進行具有隱私保護特性的范圍查詢,是一種聚合式的隱私保護查詢。本文方案可以保護范圍查詢中的上下界與符合查詢條件的設備子集的隱私,不會泄露查詢模式及關鍵詞頻度等相關信息。此外,對于任何一次范圍查詢,本文方案返回的查詢結果的數據體積均相同,不會有流量信息被泄露。因此,本文方案可以抵抗上述幾種較為典型的對安全范圍查詢的攻擊。

5 性能分析

本節將本文方案與現有同類方案的性能進行分析比較,主要包括查詢陷門生成階段、服務器查詢階段的計算開銷和通信開銷的比較。所有仿真實驗均在一臺配置為Intel i7-9750H 2.60 GHz,內存為16 GB,運行Windows 10 1903 系統的筆記本電腦上進行,使用Java.Math 的大數計算庫和JPBC 庫[14]進行實現算法。此外,對加法運算、哈希運算等時間消耗較低的運算,在比較中忽略不計。

5.1 計算開銷

1) 各階段計算開銷

方便起見,定義Tm、To、Tp和Tem分別表示單次整數乘法、整數模冪、雙線性映射和橢圓曲線上點乘的時間開銷。設l為每個維度上查詢區間的長度,k為維度總數,q為單個查詢區間的上界。對于只支持單個維度查詢的方案,如文獻[7]方案,將一次多維度查詢視作進行多次單維度查詢來處理。各階段計算開銷對比如表2 所示。

表2 各階段計算開銷對比

本文方案和文獻[7]方案均是由物聯網設備直接在網絡邊緣側參與查詢,故傳感數據不需要加密存儲于服務器上,其加密階段不產生計算開銷。

2) 全維度查詢計算開銷

本節考慮在維度總數一定的情況下,每次查詢均對所有維度的數據進行查詢時的計算開銷。設維度總數k=10,查詢區間長度l=36,查詢區間上界q=50,則使用文獻[7]方案、文獻[15]方案、文獻[16]方案、文獻[17]方案和本文方案完成一次全維度查詢分別約需22.641 ms、15.864 ms、20.191 ms、21.638 ms 和20.360 ms。

圖5 顯示了本文方案和對比方案進行指定維度的全維度查詢計算開銷的比較結果。其中,本文方案與文獻[7]方案在查詢過程中引入了雙線性映射運算,計算開銷相較于使用整數加密運算的文獻[15]方案和文獻[16]方案更高,但是文獻[15]方案、文獻[16]方案和文獻[17]方案需預先將傳感數據加密發送到第三方數據存儲服務器,該過程必然存在時延,且產生加密開銷。本文方案與文獻[7]方案則不需要加密和發送傳感數據,支持用戶對傳感數據進行實時查詢。文獻[7]方案由于僅支持單維度查詢,在進行多維度查詢時,其整體計算開銷高于本文方案。

圖5 全維度查詢計算開銷比較

3) 部分維度查詢計算開銷

部分維度數量查詢是指在維度總數一定的情況下,每次查詢均僅對部分維度的傳感數據進行查詢。設維度總數k=10,查詢區間長度l=36,查詢區間上界q=50,分別進行維度為5、7、9 的部分維度查詢。圖6展示了本文方案與對比方案在進行部分維度查詢時的計算開銷對比結果。需要說明的是,考慮到即使進行部分維度查詢,數據存儲服務器存儲的數據數量也應與進行全維度查詢時一致,因此對于需要對傳感數據加密存儲的方案,其加密開銷仍等價于全維度查詢的計算開銷。雖然本文方案與文獻[7]方案、文獻[17]方案都因使用雙線性映射運算導致查詢階段開銷較高,但由于本文方案與文獻[7]方案是對傳感數據進行實時查詢,不需要對傳感數據進行預先加密和存儲,所以在給定維度總數的條件下進行較少維度查詢時(維度為5、7 查詢),總體計算開銷仍比需要加密存儲傳感數據類方案低。而文獻[7]方案由于僅支持單維度查詢,在進行多維度查詢時需要重復發送查詢陷門,其整體計算開銷也高于本文方案。

圖6 不同維度數量查詢計算開銷比較

4) 不同區間長度查詢計算開銷

不同區間長度的查詢是指在維度總數、查詢區間長度上限、查詢區間上界一定的情況下,每次查詢僅對有限區間長度進行查詢。設維度總數k=10,查詢區間長度上限l=100,查詢區間上界q=100,分別進行25%、50%、75%長度區間查詢時,將本文方案與對比方案在完成一次查詢時的計算開銷進行比較,結果如圖7 所示。

圖7 不同區間長度查詢的計算開銷比較

根據本文部分維度數量查詢計算開銷中分析可知,對于需要對原始傳感數據加密存儲類方案,其加密開銷與全維度查詢時計算開銷相同。除本文方案和文獻[7]方案外,其他3 個查詢方案的計算開銷均與查詢區間長度無關,而與查詢維度總數有關。但是,由于文獻[15]方案、文獻[16]方案和文獻[17]方案需要預先對原始傳感數據進行加密存儲,使其在查詢區間長度較大、維度總數較高時,總體計算開銷較高。文獻[7]方案由于不支持多維度查詢,在進行多維度查詢時重復發送單維度查詢陷門,其所使用的向量個數比本文方案多,計算開銷較高。

5.2 通信開銷

本節對本文方案和對比方案的通信開銷進行比較。設定維度總數k=10,查詢區間長度l=36,查詢區間上界q=50 的全維度查詢,對不同方案全流程的通信開銷進行比較。為了公平比較各方案的通信開銷,做以下假設。

1) 各方案安全參數(或密鑰長度)均為128 bit。

2) 各方案所用哈希算法均為SHA-1,因此,各方案的哈希摘要長度均為160 bit。

3) 各方案所用隨機數均為64 bit。

本文方案的通信過程主要在于查詢陷門發送階段、物聯網設備反饋霧設備階段和霧設備反饋查詢用戶階段。由于本文方案是將查詢矩陣向量化進行查詢,查詢陷門通信開銷較大,其余階段開銷較小。查詢陷門發送階段生成的查詢陷門通信開銷約為31 016 B,物聯網設備反饋霧設備階段通信開銷約為1 365 B,霧設備反饋查詢用戶部分通信開銷約為1 370 B,共計約33 751 B。表3 給出了本文方案和對比方案的通信開銷。

表3 通信開銷比較

文獻[15]方案使用了改進自SHE 加密方案的整數域上的同態加密算法,其在相同條件下密文長度較小,但其算法易受密文中噪聲影響,當密文中噪聲較大時可能影響解密。文獻[16]方案較本文方案通信開銷略低,但其與文獻[15]方案均是對傳感數據加密并傳輸到服務器的數據進行查詢,且其方案需要2 個服務器參與計算,傳輸時延較大,不能實現傳感數據的實時查詢。文獻[17]方案查詢陷門體積較小,使其通信開銷較本文方案和文獻[7]方案低,但其計算開銷較高,且不支持傳感數據的實時查詢。支持實時數據查詢的文獻[7]方案由于只支持單維度查詢,對個多維度傳感數據查詢時需要發起多次查詢,其通信開銷高于本文方案。

綜上所述,本文方案在計算開銷、通信開銷以及多維度查詢特性支持上實現了較好的平衡。

6 結束語

本文面向霧增強工業物聯網設計了一種擁有較高通信效率的帶有隱私保護特性的多維度安全查詢方案。本文方案使用BGN 同態加密算法對查詢陷門進行加密,并融合了矩陣分解和重構技術,保護了查詢模式的隱私,同時確保傳感數據不會泄露給非授權方。安全性分析和仿真實驗表明,本文方案在保證多種安全特性和多維查詢功能的情況下,計算開銷及通信開銷均維持在較低水平。下一步的工作將進一步優化本文方案,例如進一步提高通信的效率、降低通信開銷等。

猜你喜歡
傳感區間加密
你學會“區間測速”了嗎
《傳感技術學報》期刊征訂
新型無酶便攜式傳感平臺 兩秒內測出果蔬農藥殘留
一種新型離散憶阻混沌系統及其圖像加密應用
全球經濟將繼續處于低速增長區間
IPv6與ZigBee無線傳感網互聯網關的研究
硅硼摻雜碳點的制備及其在血紅蛋白傳感中的應用
加密與解密
DES 對稱加密和解密算法的安全性應用
區間對象族的可鎮定性分析
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合