?

群智感知網絡環境下的一種高效安全數據聚合方案*

2021-11-20 02:13黃大欣甘慶晴王曉明黃承鵬姚夢婷
密碼學報 2021年5期
關鍵詞:同態密文排序

黃大欣,甘慶晴,王曉明,黃承鵬,姚夢婷

暨南大學 信息安全實驗室,廣州 510632

1 引言

隨著無線傳感器的高速發展,越來越多的終端設備,如智能手機、智能穿戴設備等開始搭載各種各樣的傳感設備.在這個傳感器提供感知服務發展的大環境下,結合眾包的思想,群智感知網絡以一種新型的感知模式呈現在眼前.在群智感知網絡環境下,數據請求者可以通過任務的形式,將復雜的數據采集任務分發給眾多的普通用戶,讓用戶共同協作完成負責的感知數據采集工作.相比傳統的無線傳感網而言,群智感知網絡可以協助完成一些單靠單體難以完成的任務,如某地的空氣質量、交通擁堵程度等,利用分布在各地的感知個體收集匯總,經過數據中心的分析處理和匯聚,最終能夠使數據請求端準確了解到當地的空氣質量和交通擁堵情況,實現了更大規模、更復雜、更全面的感知和數據服務.而激勵機制的出現,使得用戶更積極去參與感知任務,進而采集到更多高質量的數據.因此,群智感知網絡具有廣泛的應用場景,并已成為當前的研究熱點[1].作為一種新興的研究領域,群智感知網絡所面臨的挑戰是傳統傳感網絡不曾遇到的,大量的問題有待研究,如群智感知網絡環境下的任務分配[2-4]、數據傳輸[5-7]及激勵機制[8-10]等.

由于感知數據的隱私性和敏感性,現有的方案都是對數據進行加密后再發送.為了減少數據在傳輸過程的開銷和網絡通信資源的浪費,數據聚合技術是目前最常用的方式之一.在現有的密文數據聚合方案中,最常見的方式是采用同態加密技術,能夠實現在密文的狀態下對數據的運算.然而,普通的同態加密方案只能實現單一數據聚合功能,卻無法實現其他操作,如密文求最值、密文的排序、密文求前N個值、密文數據分段等一系列操作.眾所周知,如果只能進行單一的數據聚合,將會給用戶帶來巨大的計算負擔,而且也沒能充分利用數據中心的強大計算能力.而為了保護數據隱私,上述密文求最值等一系列操作都必須在數據加密的前提下完成.如何實現數據聚合同時,又能進行密文的比較是一個全新的挑戰.因此,針對群智感知網絡的特點,研究既能保護數據隱私,又能支持密文比較的數據聚合技術是十分必要和急需的,具有重要的理論意義和應用價值.

數據中心協助數據請求者將密文經過處理,聚合后發送到數據請求者.這種方式有效地減少了數據傳輸時延和網絡耗能,從而提高群智感知網絡的傳輸性能.文獻[11]提出一種新型的群智感知網絡系統框架,集激勵機制、數據聚合和數據擾動機制于一體,可確保用戶的隱私.隨后,文獻[12]和文獻[13]提出了基于無證書簽名的數據聚合方案,滿足數據聚合的同時實現了數據認證.文獻[14]則提出了一種霧計算環境下的聚合方法,通過采用比特位分割技術實現了聚合密文的分解.但經分析,以上方案[11-14]都存在不安全或效率低下等問題.文獻[15]中,作者基于橢圓曲線密碼機制(ECC)和哈希函數,提出了一種適用于群感知網絡中新的聚合方案.該方案中的聚合器能夠實現無證書簽名的完整性聚合,從而提升了數據聚合的效率,增強了用戶數據的安全性.文獻[16]提出一種支持霧環境且具備身份驗證功能的數據聚合方案.該方案利用Paillier加密,確保了聚合階段用戶數據的隱私保護.除此之外,他們的方案還能夠利用匿名證書來隱藏用戶的真實身份,保護了用戶的個人隱私安全.與僅具有單維度聚合功能的傳統數據聚合方案不同,文獻[17]提出的方案允許多維度的聚合,這意味著可以向物聯網控制中心提供更多統計數據來進行分析和處理.不僅如此,該方案還采用批量認證技術,有效降低了認證成本.最近,文獻[18]提出了一種用于隱私數據分析的數據聚合機制,可以有效地計算參與感知任務的用戶位置分布狀況,最后通過優化局部差分隱私算法,提高了數據的精確度和性能.

盡管目前已有很多方案對群感知網絡環境下的數據聚合技術進行研究,但是對支持密文處理的數據聚合技術研究卻很少.將大量的密文數據不經處理直接聚合發送給數據請求者將會帶來大量的問題,如無效的密文信息將影響最終聚合的密文結果、增加請求者的計算費用等.若密文在數據中心能夠經過處理,如排序、數據分段統計等操作,篩選出符合數據請求者要求的數據,從而降低數據請求者的計算費用,保證聚合結果的正確性,數據中心強大的計算能力也得到更好的發揮.文獻[19]基于雙陷門解密和加法同態加密的性質[20],提出了一種高效的支持隱私保護的top-k密文查詢方案.該方案通過兩個服務器的協作運算,實現了top-k密文查詢功能.但是,由于兩個服務器是半可信的,可能存在合謀攻擊從而泄漏用戶的數據隱私,因此不適合實際應用場景.文獻[21]提供了一種基于ElGamal同態加密的最值問題的安全多方計算方案,能夠有效抵抗合謀攻擊且能夠實現密文信息的最值求解.然而該方案給用戶帶來了昂貴的計算開銷.最近,基于Bresson等人[20]方案,結合拉格朗日插值定理,文獻[22]構造了一種支持密文比較的同態加密方案,命名為CompHE.該方案實現同態加密的同時,又支持密文比較,具有較高的運算效率.在偏離散對數和DDH在的困難性假設下,CompHE方案被證明為語義安全.然而,該方案具備的功能比較單一,沒有考慮更為復雜的密文處理過程.由此可見,構建一種低消耗且安全,支持密文處理的數據聚合方案,具有十分重要的研究意義.

針對以上問題,本文基于文獻[22]提出的支持密文比較同態加密方案,設計了一個群智感知網絡環境下支持多種數據處理的數據聚合方案.比文獻[22]方案相比,本文提出的方案具有更豐富的密文處理功能以及更強的安全性.具體來說,提出的方案不僅實現了數據聚合,而且還能夠對感知密文數據進行比較,從而實現對密文的多種處理,如密文排序、求前N個密文、密文求最值、數據分段統計等.提出的方案通過數據中心對密文進行處理,然后將處理后的結果發送至數據請求者,有效地減少了數據請求者的計算開銷,充分利用數據中心的強大計算能力.與已有方案相比,提出的方案滿足數據機密性、抗合謀攻擊、匿名隱私保護和位置隱私保護等安全需求,同時在數據聚合和密文處理方面具備較低的計算開銷.

2 系統模型

本文提出的方案主要包含4個實體,即數據中心(data center,DC),可信任機構(trust authority,TA),用戶(User),數據請求者(data requesters,DR).系統模型圖如圖1所示.

圖1 系統模型Figure 1 System model

可信任機構(TA):TA作為一個可信的機構,主要負責密鑰的分發、系統的初始化.

數據中心(DC):DC主要是由第三方服務商提供,具有強大的計算能力,負責感知數據的計算、感知任務的廣播、感知數據的排序、驗證等.作為半可信的第三方機構,DC能夠按協議正確執行操作,但卻是好奇的,它會嘗試去獲取數據請求者DR需要收集的數據信息,從中獲利.

數據請求者(DR):作為數據請求者,DR一般是政府機構、醫院等組織,允許申請收集數據.

用戶(User):符合感知任務要求的用戶將去負責收集數據,并將收集到的數據加密上傳到DC.由于用戶眾多,User中可能存在惡意用戶,惡意User會嘗試跟DC合謀去獲取其他用戶的數據.在群智感知網絡環境下,User在收集到數據后,DR還需要獎勵參與感知任務的User,但是在本文提出的方案中不考慮激勵機制.

3 CompHE加密方案的介紹

CompHE是文獻[22]提出的一種可支持密文比較的同態加密方案,方案主要由5個算法組成,即系統初始化算法Setup(1λ,t),數據加密算法Encrypt(m i,pkr),密文比較算法Compare(C A,C B),同態加法Add(C i,C j),解密算法Decrypt(C,skr).

系統初始化算法Setup(1λ,t):

(1)TA輸入安全參數1λ,生成λ位大素數p,q,并計算N=pq.然后TA選取(p?1)(q?1)/2階

f(x)=s+a1x+···+a n?1x n?1.

TA設置數據請求者DR的公鑰pkr=g smodN2,設置數據請求者DR的私鑰skr=s,并將

skr通過安全信道發送給DR.

(2)輸入用戶個數t,選取多項式函數f(x)的(n?2+t)個點,令前t個點作為用戶ID的集合{x i}i∈{1,2,···,t},后(n?2)個點集合為{w i}i∈{1,2,···,n?2}.TA生成公共參數:

params={N,g,{x i}i∈{1,2,···,t},{w i}i∈{1,2,···,n?2}},

和主密鑰為msk={s,p,q,f(x)}.

(3)TA計算

TA生成集合{R i}i∈{1,2,···,n?2}并發給數據中心DC.

(4)TA為用戶U i在集合{x i}i∈{1,2,···,t}上選取點一個x i,并且每個用戶選取的點各不相同,代入多項式函數f(x)得f(x i).最后TA將每個用戶的私鑰ski=(x i,Δi)通過秘密通道發送至用戶U i.其中Δi的值如下:

數據加密算法Encrypt(m i,pkr):

其中,pkr=g smodN2是DR的公鑰.最后用戶U i送(x i,C i=(C i,1,C i,2))給數據中心DC.

密文比較算法Compare(C A,C B):

(1)當需要比較用戶U A的密文C A和用戶U B的密文C B的大小關系時,DC首先計算

(2)用戶U B收到密文比較請求InfA,為了盲化差值信息,U B選擇隨機數

計算生成reqB:

最后用戶U B將reqB發送到DC.

同理,用戶U A收到密文比較請求InfB,選擇隨機數k A,k A取值范圍跟k B相同.計算生成reqA:

最后用戶U A將reqA發送到DC.

(3)收到用戶發送過來的比較參數reqA和reqB后,DC對密文C A和密文C B進行比較.最后得到比較大小結果.比較方法如下:DC計算

同態加法Add(C i,C j):

當收到到任意兩個用戶密文C i和C j之后,DC對密文執行同態加法操作

DC輸出Csum并發送至DR.

解密算法Decrypt(C,sk):

DR在得到聚合密文Csum=(Csum,1,Csum,2)后,用私鑰skr=s執行解密操作,得到聚合明文M,解密過程如下.

4 群智感知網絡環境下支持密文處理的數據聚合方案

基于文獻[22]提出的CompHE方案,本文構造了一種在群智感知網絡環境下的支持密文處理的數據聚合方案.提出的方案主要由系統初始化、用戶注冊、任務生成、數據加密、感知數據密文處理等5個階段組成,具體如下.

4.1 系統初始化階段

4.2 用戶注冊階段

用戶U i首先向TA提交個人身份信息,如電話、郵箱、身份證號等,完成用戶注冊.TA為用戶U i在集合{x i}i∈{1,2,···,t}上選取一個x i作為其匿名身份,并代入多項式函數f(x)得到f(x i).TA為每個用戶選取的點各不相同.TA保存(U i,x i,f(x i))至注冊列表,如表1所示.

表1 注冊列表Table 1 Register table

4.3 任務生成階段

4.4 數據加密階段

其中TSi是當前的時間戳.用戶U i將(σi||C i||x i||TSi)發送到數據中心DC.

4.5 感知數據密文處理階段

4.5.1 感知數據的密文聚合處理

為了減少數據傳輸開銷,目前通用的方式是利用數據聚合技術,DC協助數據請求者DR將密文經過處理,聚合后發送到DR.這種方式有效地降低了網絡中數據傳輸的時延,節省了網絡耗能,從而使得群智感知網絡的傳輸性能得到提高,具體操作如下.

當Op的指令為聚合所有數據時,DC執行數據聚合算法Agg(Arrays):首先令Csum=C1,對于2≤i≤k,循環調用CompHE.Add(C i,Csum),最終返回結果Csum.得到聚合結果Csum后,DC將其發送給DR.

4.5.2 感知數據的密文最值處理

數據請求者DR在申請采集感知數據時,根據實際的應用場景,他可能只需要得到最值信息,而不需要得到額外數據,如在某個任務中需要求出某個省份中最高或者最低的濕度信息.因此,本文提出的方案可以通過密文求最值算法,利用DC強大的計算性能,只需要將最值的密文發送給DR,具體操作如下.

當Op的指令為求感知密文最大值時,DC執行密文求最值算法Max(Arrays,k):對于1≤i≤k,如果滿足CompHE.Compare(C i,CMAX)=1,則輸出CMAX=C i,直至循環結束,最終返回結果CMAX.最后DC將密文最值CMAX發送給DR.

4.5.3 前N個感知數據的密文獲取處理

申請采集感知數據時,數據請求者希望獲取前N個值信息,比如在求出某個省份中前N個空氣質量的信息.在這種場景下,DC可以通過密文求前N個值,然后將前N個值的密文發送給數據請求者DR,具體操作如下.

當Op的指令為求感知數據前N個密文時,DC執行算法GetTop(Arrays,N): 首先調用建堆算法make_heap(Arrays[1,N])得到heap[N];對于(N+1)≤i≤k,執行調整堆算法adjust_heap(heap[N],Arrays[i]);循環結束后,算法返回heap[1,N].最后,DC將得到的前N個密文結果heap[1,N]發給DR.注意到,由于adjust_heap算法需進行密文比較,因此需要調用文獻[22]提出的CompHE算法,這里省略adjust_heap和make_heap兩個算法的具體過程.

4.5.4 感知數據的密文排序處理

根據實際的應用場景,DR通過申請采集感知數據并獲得數據排序后的結果.因此,在本文提出的方案中,DC利用自身強大的計算性能,通過密文排序算法將排序后密文集合發送給DR.DR收到密文集合后,只需要對數據解密便可以得到數據排序后的結果,而無需自行排序,具體操作如下.

當Op的指令為求感知密文排序時,DC執行密文快速排序算法Quicksort(Arrays,l,h),如算法1所示.初始化l=0,h=k.最后,DC將排序好的密文集合發送到DR.

算法1密文快速排序算法Quicksort(Arrays,l,h)quicksort(Arrays,l,h)l=0,h=k if l

4.5.5 感知數據的密文分段統計處理

為了得到某個數據段包含的感知數據的數目,比如統計降雨量范圍為[30,40]的地區的數目,數據請求者DR需要對采集的感知數據進行統計操作.因此,DC可以調用統計數據段算法,將統計后的結果發送給DR,具體操作如下.

當 Op 的指令為需要統計數據段 (CMIN,CMAX)的數量時,DC 執行密文分段統計算法Stats(Arrays,CMIN,CMAX):初始化Count=0,對于1≤i≤k,如果調用CompHE.Compare(C i,CMIN)和CompHE.Compare(CMAX,C i)兩個算法均輸出1,則Count++;循環結束后,算法返回Count.最后,DC將數據段(CMIN,CMAX)范圍內統計的數量Count發給DR.

5 安全分析

由于提出方案的安全證明是規約到文獻[22]的,而文獻[22]在安全證明中已被證明其具備L-語義安全.概括地說,文獻[22]提出的CompHE方案首先定義了泄漏函數L,通過論證多個游戲之間的不可區分性,最后得出真實游戲REAL和理想游戲IDEAL之間的不可區分性,從而證明了CompHE方案具備L-語義安全.具體細節可見文獻[22],我們在本文不再贅述.接下來將對提出的方案進行安全分析,主要圍繞方案是否滿足感知數據的機密性、抗合謀攻擊、匿名保護、位置隱私保護等安全要求展開.

5.1 感知數據機密性

提出的方案中,用戶加密感知數據采用的是DT-PKC加密.DT-PKC是具有加法同態性質的同態加密方案[20].在文獻[20]中,DT-PKC已被證明具有語義安全,在多項式的時間內,敵手在沒有私鑰的情況下解得密文信息的概率是可忽略的.在提出的方案中,假設敵手能夠通過攻擊手段截取到用戶上傳到數據中心DC的感知密文C i,其中

由于DR的私鑰sk只有本人才知道,因此敵手無法通過解密而獲得感知密文C i的明文信息m i.同理,在任務分發階段,為了保護任務內容不被泄漏,DR會對任務信息Task執行DT-PKC加密,用戶由于在注冊階段得到了解密任務信息的私鑰θTA,因此用戶可以解密,而敵手缺少私鑰,也無法得到任務的具體內容.

DC在對密文進行處理的時候,如密文排序、密文求最值等操作時需要對密文執行密文比較算法,由文獻[22]的安全證明和分析可知,敵手即使與DC合謀也只能得到密文的大小關系,而無法得到密文的差值信息和密文所對應的明文信息.

5.2 抗合謀攻擊

在用戶注冊階段,TA選擇多項式函數f(x)=s+a1x+······+a n?1x n?1,令f(0)=s為數據請求者DR的私鑰sk.TA選取(n?2+t)個點,令前t個點作為用戶匿名ID的集合{x i}i∈{1,2,···,t},后(n?2)個點作為集合{w i}i∈{1,2,···,n?2}.將前t個點分別發送給t個用戶,剩下的(n?2)個點通過{R i}i∈{1,2,···,n?2}的形式發送到數據中心DC,其中

由拉格朗日差值定理的數學性質可知,需要n個在f(x)上的點才能恢復f(0).由于定義n>t,其中t為用戶數量,則用戶將無法通過合謀攻擊恢復f(x).因此,提出的方案可以抵抗用戶合謀攻擊.

由此可知,提出的方案能夠抵抗用戶與用戶之間的合謀攻擊,以及用戶與數據中心DC的合謀攻擊.

5.3 匿名保護

在提出的方案中,用戶向TA注冊的時候需要提交個人身份信息,完成用戶注冊.TA為用戶U i在集合{x i}i∈{1,2,···,t}上選取一個x i作為其匿名身份,并代入多項式函數f(x)得到f(x i).TA為每個用戶選取的x i各不相同,用戶將作為x i自己的匿名ID而不是真實身份參與到群智感知網絡任務當中,有效地保護了用戶的身份隱私.除此之外,當發現有不合法的用戶時,TA能夠通過保存在表1中的身份關系找到對應的真實用戶.

5.4 位置隱私保護

由此可見,只擁有任務解密私鑰的用戶,但自身的位置信息與數據請求者需要收集的位置不匹配,則用戶將無法通過解密任務信息,從而避免了不在指定位置的用戶得到任務的信息.同樣,由于用戶相當于是在本地實現位置匹配,降低了泄漏位置信息的可能性,從而保護了位置隱私.

6 性能分析

本節分別通過理論分析和實驗分析,將本文提出的方案與相關文獻[19,21,22]等進行了對比,包括方案具備的功能、計算開銷、通信費用開銷、存儲開銷、實驗開銷等方面.對比結果表明,本文提出的方案在密文處理方面具有很高的性能.

6.1 理論分析

6.1.1 功能對比

首先對本文提出的方案與文獻[19,21,22]進行了功能比較,分別對比了數據聚合、密文比較、數據處理、數據隱私保護、抗合謀攻擊、匿名保護及位置隱私保護等方面,結果如表2所示.

由表2可知,文獻[19,21,22]與提出的方案都能實現數據聚合、密文比較及數據隱私保護.但文獻[19]存在安全缺陷,即不能抵抗合謀攻擊,兩個負責數據處理的服務器可以通過部分密鑰來恢復數據請求者解密的私鑰.文獻[22]提出了CompHE方案,是一種支持密文比較的同態加密方案,沒有考慮復雜的數據處理功能.除此之外,文獻[19,21,22]都未考慮到匿名隱私保護及位置隱私保護,匿名隱私保護可以保證用戶的真實身份不被泄漏,而位置隱私保護可以保護用戶所在的位置信息的隱私.而本文提出的方案在支持數據處理和數據聚集的同時,還能抵抗合謀攻擊,同時具備匿名隱私保護及位置隱私保護功能,從而更好保護了用戶的數據隱私,比文獻[19,21,22]更具優勢.

表2 本文方案與相關方案功能對比Table 2 Functionality comparison with related schemes

6.1.2 計算開銷對比

表3 計算開銷對比Table 3 Computational overhead comparison

由表3可知,本文提出的方案和文獻[19]和[21]相比,在加密上計算開銷是相等的.但是在求最值的計算上,文獻[21]提出的方案的計算開銷不僅與密文個數n相關,且與最值所在的下標y有關.而本文提出的方案只與密文個數n相關,與最值所在的下標y無關.當y的值大于2時,本文提出的方案計算開銷要比文獻[21]計算開銷小.

6.1.3 通信開銷對比

由表4可知,當y的值比較大時,文獻[21]需要的通信開銷會變大,而本文提出的方案和文獻[19]都與y的值無關,具有較低的通信開銷.

表4 通信開銷對比Table 4 Communication overhead comparison

6.2 實驗分析

本節將通過仿真實驗來驗證本文方案的計算效率.實驗采用java語言,JDK版本為1.8,實驗設施為64 bit的Win7操作系統,內存6 GB,處理器Inter Core i3 1.80 Hz的筆記本電腦.為了使實驗更接近真實的數據采集場景,本文選取了2019年1月1號北京市34個地區的空氣質量數據,數據來源于北京市環境保護檢測中心網站.首先,本文對文獻[19]和[21]與提出的方案計算開銷進行對比實驗.在三個方案中,為了保證參數一致,均采用1024-bit長度的安全參數,且加密的明文不變.對比實驗結果如圖2所示.

圖2 密文求最的平均消耗時間比較Figure 2 Average time cost comparison for maximum or minimum query

由圖2可知,隨著密文數目的增加,本文提出的方案和文獻[19]在密文求最的平均消耗時間遠低于文獻[21],效率方面優勢明顯.在密文數量較少時,本文提出的方案和文獻[19]的消耗時間基本一致,密文數量逐漸增加后,本文在密文比較的計算開銷更大,但文獻[19]在比較的過程中存在兩個服務器合謀攻擊的可能,而本文能抵抗合謀攻擊.總體來說,與文獻[19]和[21]相比,本文提出的方案有效地兼顧和平衡了效率和安全兩方面.

為了進一步驗證本文提出方案的計算效率,本文將對提出方案的數據聚合、密文排序及數據分段統計等密文處理過程的時間開銷進行測試,并記錄實驗結果,如圖3所示.

圖3 本文方案密文處理算法平均消耗時間比較Figure 3 Average time cost comparison for proposed scheme

由圖3可知,本文提出的方案在數據聚合、密文排序及數據分段統計等密文處理過程的平均消耗時間與密文數目呈線性相關,隨著密文數目的增加,平均消耗時間逐漸增大.其中,數據聚合算法時間開銷最少,因為該算法僅需執行同態加法操作,而排序及數據分段統計的密文處理過程需要執行密文比較算法.與此同時,針對某一個密文來說,數據分段統計在比較的過程中需要執行兩次密文比較算法,因此總的時間開銷約為密文排序算法的兩倍.綜上所述,本文提出的方案具有高效的密文處理效率.

7 總結

本文基于文獻[22]提出的支持密文比較的同態加密方案,設計了一個群智感知網絡環境下支持多種數據處理功能的數據聚合方案.提出的方案不僅能夠實現感知數據安全聚合,還能夠通過對感知密文數據的比較,進而實現對密文的多種處理,如密文求最值、求前N個密文、密文排序、數據分段統計等.最后,安全分析表明了提出方案的安全性和可行性,性能分析表明了方案相比其他方案具有更高的計算效率.

猜你喜歡
同態密文排序
三角矩陣環上FC-投射模的刻畫
交換環上的絕對w-E-純模
相對于模N的完全不變子模F的N-投射模
一種支持動態更新的可排名密文搜索方案
基于模糊數學的通信網絡密文信息差錯恢復
嵌入式異構物聯網密文數據動態捕獲方法
作者簡介
恐怖排序
一種基于CPU-GPU混合系統的并行同態加密算法?
節日排序
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合