張曉均,張經(jīng)偉,黃 超,唐 偉
(1.西南石油大學(xué) 計(jì)算機(jī)科學(xué)學(xué)院,成都 610500;2.西南石油大學(xué) 網(wǎng)絡(luò)空間安全研究中心,成都 610500)
移動(dòng)互聯(lián)、物聯(lián)網(wǎng)、云計(jì)算和大數(shù)據(jù)等新興信息技術(shù)與信息感知方式的快速發(fā)展,改變了傳統(tǒng)的醫(yī)療與健康服務(wù)模式[1-3]。近年來(lái),隨著移動(dòng)醫(yī)療等新技術(shù)的應(yīng)用,電子健康檔案、臨床檢測(cè)數(shù)據(jù)、可穿戴傳感器感知的個(gè)人健康狀態(tài)記錄等醫(yī)療數(shù)據(jù)都呈現(xiàn)爆炸式增長(zhǎng)[4-6]。醫(yī)療大數(shù)據(jù)處理技術(shù)在臨床決策支持系統(tǒng)、遠(yuǎn)程病人監(jiān)控?cái)?shù)據(jù)以及對(duì)病人健康檔案等精準(zhǔn)分析方面發(fā)揮著重要作用,已成為提高診療效率、減少可避免的人為誤差與緩解醫(yī)療資源分布不均問(wèn)題的有效途徑。同時(shí),云計(jì)算技術(shù)因其高效的計(jì)算能力和強(qiáng)大的存儲(chǔ)空間,可以有效集成在無(wú)線醫(yī)療網(wǎng)絡(luò)環(huán)境中,減緩醫(yī)療數(shù)據(jù)劇增所帶來(lái)的存儲(chǔ)和處理壓力[7-9]。
盡管云計(jì)算技術(shù)在管理健康醫(yī)療大數(shù)據(jù)方面呈現(xiàn)明顯優(yōu)勢(shì),但是外包云存儲(chǔ)醫(yī)療數(shù)據(jù)容易遭受各種安全性威脅[10-12],其中,受影響最大的是數(shù)據(jù)的機(jī)密性[13]。事實(shí)上,用戶健康醫(yī)療數(shù)據(jù)的敏感性導(dǎo)致其往往以密文形式存儲(chǔ)在云服務(wù)器,這將失去部分甚至大部分?jǐn)?shù)據(jù)的可用性。因此,如何在數(shù)據(jù)隱私得到有效保護(hù)的情況下對(duì)云存儲(chǔ)外包醫(yī)療數(shù)據(jù)進(jìn)行快速醫(yī)學(xué)統(tǒng)計(jì)分析,具有重要的研究?jī)r(jià)值和實(shí)際意義。
加密數(shù)據(jù)聚合[14]可有效促進(jìn)具有隱私保護(hù)的醫(yī)療數(shù)據(jù)的統(tǒng)計(jì)分析。密碼學(xué)中具有加法同態(tài)特性的加密算法首先被集成到聚合方案中[15],然后通過(guò)云服務(wù)器對(duì)大量的醫(yī)療數(shù)據(jù)密文進(jìn)行同態(tài)聚合,并將聚合后的密文發(fā)送給醫(yī)療數(shù)據(jù)分析中心(DAC),同時(shí)有效降低通信帶寬,最后在醫(yī)療數(shù)據(jù)分析中心端進(jìn)行聚合數(shù)據(jù)解密,進(jìn)一步進(jìn)行具有隱私保護(hù)的大數(shù)據(jù)的統(tǒng)計(jì)分析。此外,數(shù)據(jù)完整性在醫(yī)療云存儲(chǔ)環(huán)境應(yīng)用中也極為關(guān)鍵[16-17],原因是惡意敵手為了某種利益可能在用戶和云服務(wù)器的傳輸信道中截取數(shù)據(jù)并執(zhí)行替換或篡改攻擊。由于云服務(wù)器同時(shí)要處理來(lái)自不同用戶的海量醫(yī)療數(shù)據(jù),在進(jìn)行加密聚合的過(guò)程中,可能會(huì)因操作失誤導(dǎo)致錯(cuò)誤地聚合原始外包密文數(shù)據(jù),這樣最終返回的聚合數(shù)值并非真實(shí)結(jié)果。因此,可驗(yàn)證的加密數(shù)據(jù)聚合方案是醫(yī)療數(shù)據(jù)分析中心進(jìn)行大數(shù)據(jù)深度準(zhǔn)確統(tǒng)計(jì)分析的有效保證。
近年來(lái),已出現(xiàn)各種加密聚合方案,但這些方案用在醫(yī)療數(shù)據(jù)統(tǒng)計(jì)分析領(lǐng)域還相對(duì)較少[18-19],而且很多方案缺乏可驗(yàn)證功能[20-21]。一些可以部署在無(wú)線醫(yī)療網(wǎng)絡(luò)且支持可驗(yàn)證功能的加密聚合方案[22-23],由于在設(shè)計(jì)過(guò)程中需要的雙線性對(duì)計(jì)算開(kāi)銷與原始用戶數(shù)量呈線性增長(zhǎng)趨勢(shì),因此方案效率不高。
本文提出一種可驗(yàn)證的外包云存儲(chǔ)醫(yī)療加密數(shù)據(jù)統(tǒng)計(jì)分析方案,該方案采用改進(jìn)的BGN 同態(tài)加密算法使云服務(wù)器可以對(duì)密文進(jìn)行聚合運(yùn)算,從而減輕醫(yī)療數(shù)據(jù)分析中心的計(jì)算壓力。同時(shí),設(shè)計(jì)一種基于橢圓曲線的同態(tài)數(shù)字簽名算法,使醫(yī)療數(shù)據(jù)分析中心在使用云端聚合的數(shù)據(jù)時(shí),只需執(zhí)行恒定的運(yùn)算量即可高效地驗(yàn)證加密醫(yī)療聚合數(shù)據(jù)的完整性。
基于橢圓曲線的雙線性對(duì)定義如下:
定義1給定一個(gè)雙線性對(duì)映射其中,加法循環(huán)群G1與乘法循環(huán)群G2有共同的階q1,且V是G1的生成元?;跈E圓曲線的雙線性對(duì)滿足以下性質(zhì):
1)雙線性。對(duì)任意2 個(gè)群上的元素P、V?G1和任意的a、b?,雙線性對(duì)運(yùn)算滿足
2)非退化性。對(duì)于加法循環(huán)群上存在的2 個(gè)元素P、V?G1,,此處1 是G2的單位元。
3)可計(jì)算性。對(duì)于加法循環(huán)群上任意的2 個(gè)元素P、V?G1,都能找到一個(gè)有效的算法計(jì)算(P,V)。
BGN 公鑰加密系統(tǒng)[24]主要包括密鑰生成、加密和解密3 個(gè)算法。
1)密鑰生成。給定安全參數(shù)κ,合數(shù)階雙線性對(duì)產(chǎn)生器輸出(n,g,G,GT,e),其中,n=pq,p、q是長(zhǎng)度為κbit的大素?cái)?shù),G、GT是2 個(gè)階為n的循環(huán)群,g是n階循環(huán)群G的生成元,e:G×G→GT是一個(gè)非退化的雙線性對(duì)映射。設(shè)置u=gp,則u是G的q階循環(huán)子群的生成元。公鑰是pk=(n,G,GT,e,g,u),私鑰是sk=q。
2)加密。假設(shè)明文空間是一個(gè)整數(shù)集{1,2,…,T},其中,T
3)解密。給定密文c=gmur,利用私鑰q計(jì)算cq=(gmur)q=(gq)m,然后計(jì)算以gq為底的cq的離散對(duì)數(shù),即可恢復(fù)m。由于0 ≤m≤T,根據(jù)文獻(xiàn)[24]中Pollard的lambda 解密方法,BGN 公鑰加密算法可在時(shí)間復(fù)雜度內(nèi)解密出明文。
可驗(yàn)證的外包云存儲(chǔ)醫(yī)療加密數(shù)據(jù)聚合方案的系統(tǒng)模型,包含用戶、云服務(wù)器、醫(yī)療數(shù)據(jù)分析中心和可信中心(TA)4 個(gè)通信實(shí)體,如圖1 所示。
圖1 加密數(shù)據(jù)聚合方案的系統(tǒng)模型Fig.1 System model of encrypted data aggregation scheme
系統(tǒng)模型中的4 個(gè)通信實(shí)體具體如下:
1)用戶。通過(guò)可穿戴設(shè)備收集健康醫(yī)療數(shù)據(jù),使用移動(dòng)終端計(jì)算設(shè)備對(duì)醫(yī)療數(shù)據(jù)進(jìn)行加密,產(chǎn)生密文對(duì)應(yīng)的數(shù)字簽名,最后將所有密文及對(duì)應(yīng)的數(shù)字簽名集合上傳到遠(yuǎn)程云服務(wù)器。
2)云服務(wù)器。擁有巨大的計(jì)算和存儲(chǔ)能力,在本模型中主要用于存儲(chǔ)用戶上傳的加密數(shù)據(jù)及數(shù)字簽名集合。一旦接收到醫(yī)療數(shù)據(jù)分析中心的挑戰(zhàn)請(qǐng)求,云服務(wù)器會(huì)對(duì)挑戰(zhàn)位置的加密數(shù)據(jù)及數(shù)字簽名進(jìn)行同態(tài)聚合運(yùn)算,并返回最終結(jié)果到醫(yī)療數(shù)據(jù)分析中心。
3)醫(yī)療數(shù)據(jù)分析中心。當(dāng)接收到來(lái)自云服務(wù)器返回的聚合結(jié)果時(shí),醫(yī)療數(shù)據(jù)分析中心首先進(jìn)行加密數(shù)據(jù)完整性驗(yàn)證,然后利用私鑰來(lái)解密以獲得不同用戶醫(yī)療數(shù)據(jù)的聚合值,最后對(duì)用戶的醫(yī)療數(shù)據(jù)進(jìn)行隱私保護(hù)統(tǒng)計(jì)分析。
4)可信中心。負(fù)責(zé)設(shè)置并發(fā)布系統(tǒng)的公開(kāi)密碼參數(shù),系統(tǒng)初始化階段通過(guò)安全信道為各通信實(shí)體發(fā)送私鑰。
本文提出的可驗(yàn)證外包云存儲(chǔ)醫(yī)療加密數(shù)據(jù)聚合方案,重點(diǎn)解決云存儲(chǔ)醫(yī)療數(shù)據(jù)的機(jī)密性、完整性以及數(shù)據(jù)統(tǒng)計(jì)分析可用性問(wèn)題。因此,本系統(tǒng)中引入的可信中心實(shí)際上需要使用相關(guān)身份認(rèn)證技術(shù)[25-27],對(duì)每個(gè)通信實(shí)體進(jìn)行身份驗(yàn)證后才能進(jìn)入醫(yī)療云存儲(chǔ)系統(tǒng)并為其頒發(fā)對(duì)應(yīng)的公私鑰。
可驗(yàn)證外包云存儲(chǔ)醫(yī)療加密數(shù)據(jù)聚合方案具體包括4 個(gè)階段:系統(tǒng)初始化,醫(yī)療數(shù)據(jù)加密和簽名上傳,加密醫(yī)療數(shù)據(jù)同態(tài)聚合,驗(yàn)證和聚合數(shù)據(jù)解密。
1)系統(tǒng)初始化??尚胖行腡A 生成用于同態(tài)加密、同態(tài)數(shù)字簽名和驗(yàn)證的系統(tǒng)公共參數(shù)。同時(shí),TA 將秘密參數(shù)發(fā)送給醫(yī)療數(shù)據(jù)分析中心以及對(duì)應(yīng)的用戶。系統(tǒng)初始化階段具體步驟如下:
(1)TA 選取長(zhǎng)度相等的大素?cái)?shù)p1和p2,滿足n=p1p2,設(shè)置雙線性對(duì)映射e:Ga×Ga→Gb,其中,Ga為n階乘法循環(huán)群,g為Ga的生成元,選取Ga的p1階子群的生成元x=。
(2)TA 選取有限域Fp(p是大素?cái)?shù))上的橢圓曲線E,并基于該橢圓曲線設(shè)置另外一個(gè)雙線性對(duì)映射:G1×G1→G2,V是基于橢圓曲線E的q階加法循環(huán)群G1的生成元。TA 設(shè)置需要外包到云服務(wù)器的具有某一類型的醫(yī)療數(shù)據(jù)的用戶數(shù)量為N,對(duì)于第i個(gè)用戶,TA為其生成私鑰zi?Zq,并計(jì)算公鑰Ui=ziV。TA設(shè)置2個(gè)抗碰撞的哈希函數(shù)H1:{0,1}*→G1,H2:{0,1}*→。
最后,TA 公開(kāi)如下的系統(tǒng)公共參數(shù):
TA 通過(guò)安全信道將私鑰p1發(fā)送給醫(yī)療數(shù)據(jù)分析中心,將私鑰zi發(fā)送給對(duì)應(yīng)的用戶i。
2)醫(yī)療數(shù)據(jù)加密和簽名上傳。用戶i利用醫(yī)療數(shù)據(jù)分析中心的公鑰生成醫(yī)療數(shù)據(jù)mi的密文,同時(shí)使用私鑰對(duì)密文數(shù)據(jù)產(chǎn)生對(duì)應(yīng)的數(shù)字簽名σi,最后將密文和對(duì)應(yīng)的數(shù)字簽名數(shù)據(jù)上傳到云服務(wù)器。醫(yī)療數(shù)據(jù)加密和簽名上傳階段具體步驟如下:
(1)對(duì)于明文數(shù)據(jù)mi,其最大值T小于p2,隨機(jī)選取si?Zn,計(jì)算密文
(2)計(jì)算數(shù)字簽名σi=(zi+H2(ci))H1(type),其中,type 是醫(yī)療數(shù)據(jù)的類型。
最后,每一個(gè)用戶i將自己生成的簽名數(shù)據(jù)和密文數(shù)據(jù){σi,ci}一起上傳到遠(yuǎn)程云服務(wù)器。
3)加密醫(yī)療數(shù)據(jù)同態(tài)聚合:當(dāng)醫(yī)療數(shù)據(jù)分析中心需要分析某一類型的敏感醫(yī)療數(shù)據(jù)時(shí),使用偽隨機(jī)數(shù)發(fā)生器生成含l個(gè)偽隨機(jī)數(shù)的偽隨機(jī)序列{t1,t2,…,tl-2,α,β},將醫(yī)療數(shù)據(jù)類型type 和偽隨機(jī)序列一起作為挑戰(zhàn)信息chal 發(fā)送給云服務(wù)器。然后,云服務(wù)器根據(jù)type 類型醫(yī)療數(shù)據(jù)上N個(gè)用戶的外包密文數(shù)據(jù)和這些數(shù)據(jù)對(duì)應(yīng)的數(shù)字簽名,分別進(jìn)行聚合。加密醫(yī)療數(shù)據(jù)同態(tài)聚合階段具體步驟如下:
(1)云服務(wù)器對(duì)N個(gè)加密數(shù)據(jù)進(jìn)行同態(tài)聚合:
(2)根據(jù)雙線性對(duì)的運(yùn)算性質(zhì)和同態(tài)加密性質(zhì),對(duì)每個(gè)密文ci=Enc(mi,si)進(jìn)行如下聚合:
(3)基于以上2個(gè)聚合數(shù)據(jù)值SC、QSC和挑戰(zhàn)信息,云服務(wù)器利用哈希函數(shù)H2產(chǎn)生新的隨機(jī)數(shù)tl-1=H2(SC||α)和tl=H2(QSC||β),云服務(wù)器進(jìn)一步基于挑戰(zhàn)信息中的偽隨機(jī)序列{t1,t2,…,tl-2,tl-1,tl}對(duì)N個(gè)數(shù)字簽名數(shù)據(jù)σ1,σ2,…,σN進(jìn)行聚合,σ=(tj H1(type)+σi),其中,i?{1,2,…,N},j?{1,2,…,l},l 最后,云服務(wù)器將所有聚合數(shù)據(jù)Agg={σ,c,U,SC,QSC}發(fā)送給醫(yī)療數(shù)據(jù)分析中心。 4)驗(yàn)證和聚合數(shù)據(jù)解密:當(dāng)接收到云服務(wù)器發(fā)送的聚合數(shù)據(jù)后,醫(yī)療數(shù)據(jù)分析中心執(zhí)行數(shù)據(jù)完整性驗(yàn)證,并對(duì)聚合密文SC 和QSC 進(jìn)行解密。驗(yàn)證和聚合數(shù)據(jù)解密階段具體步驟如下: (1)計(jì) 算tl-1=H2(SC||α)、tl=H2(QSC||β)以 及t=,其中,j=(i-1)modl+1,驗(yàn)證如下方程是否成立: (2)一旦驗(yàn)證上述方程成立,醫(yī)療數(shù)據(jù)分析中心確信外包云存儲(chǔ)密文數(shù)據(jù)未被云服務(wù)器錯(cuò)誤聚合或者被外部敵手惡意替換、篡改。根據(jù)文獻(xiàn)[24]中Pollard 的lambda 解密方法,醫(yī)療數(shù)據(jù)分析中心利用私鑰p1進(jìn)行條件性窮舉暴力破解,在時(shí)間復(fù)雜度為的情況下可有效求解離散對(duì)數(shù),進(jìn)而恢復(fù)該類醫(yī)療數(shù)據(jù)的統(tǒng)計(jì)和。同樣,醫(yī)療數(shù)據(jù)分析中心可有效求解離散對(duì)數(shù),恢復(fù)醫(yī)療數(shù)據(jù)的平方和。 醫(yī)療數(shù)據(jù)分析中心通過(guò)檢驗(yàn)完整性驗(yàn)證方程是否成立,以判斷云服務(wù)器是否按照正確步驟進(jìn)行同態(tài)加密聚合。完整性驗(yàn)證方程推導(dǎo)如下: 當(dāng)醫(yī)療數(shù)據(jù)分析中心得到正確的type 類型醫(yī)療數(shù)據(jù)的統(tǒng)計(jì)和以及平方和時(shí),其可計(jì)算出該類醫(yī)療數(shù)據(jù)的平均值和方差統(tǒng)計(jì)數(shù)據(jù),分別如下: 最后,醫(yī)療數(shù)據(jù)分析中心根據(jù)上述統(tǒng)計(jì)數(shù)據(jù),可在保護(hù)用戶醫(yī)療數(shù)據(jù)隱私的情況下進(jìn)行大數(shù)據(jù)處理和深度分析。圖2 所示為詳細(xì)的數(shù)據(jù)聚合與統(tǒng)計(jì)分析流程。 圖2 數(shù)據(jù)聚合與統(tǒng)計(jì)分析流程Fig.2 Procedure of data aggregation and statistical analysis 定理1可驗(yàn)證的外包云存儲(chǔ)醫(yī)療加密數(shù)據(jù)聚合方案可確保用戶外包云存儲(chǔ)醫(yī)療數(shù)據(jù)的機(jī)密性。 證明每一個(gè)移動(dòng)終端用戶i產(chǎn)生醫(yī)療數(shù)據(jù)mi的密文,發(fā)送到云服務(wù)器,ci本質(zhì)上是改進(jìn)的BGN同態(tài)加密系統(tǒng)的密文,由于此密碼系統(tǒng)滿足選擇明文安全的語(yǔ)義安全性,即便敵手在用戶和云服務(wù)器的公開(kāi)信道截獲到相關(guān)密文,也不能恢復(fù)用戶的原始醫(yī)療數(shù)據(jù)。此外,一旦接收到來(lái)自N個(gè)用戶的所有加密醫(yī)療數(shù)據(jù)ci,i=1,2,…,N,云服務(wù)器則對(duì)N個(gè)加密數(shù)據(jù)進(jìn)行同態(tài)聚合: 經(jīng)過(guò)上述過(guò)程,這N個(gè)用戶的加密醫(yī)療數(shù)據(jù)被云服務(wù)器聚合為SC 和QSC 2 個(gè)密文,兩者本質(zhì)上也分別是的改進(jìn)BGN 加密系統(tǒng)的密文。同樣,根據(jù)BGN 加密系統(tǒng)選擇明文的語(yǔ)義安全性,即便敵手在云服務(wù)器和醫(yī)療數(shù)據(jù)分析中心的公開(kāi)信道截獲到這2 個(gè)聚合密文,也不能恢復(fù)用戶原始醫(yī)療數(shù)據(jù)的統(tǒng)計(jì)和與平方和。 定理2可驗(yàn)證的外包云存儲(chǔ)醫(yī)療加密數(shù)據(jù)聚合方案可確保云存儲(chǔ)加密醫(yī)療數(shù)據(jù)聚合的可驗(yàn)證性。 證明在醫(yī)療數(shù)據(jù)加密和簽名上傳階段,加密醫(yī)療數(shù)據(jù)的數(shù)字簽名σi=(zi+H2(ci))H1(type)是用戶利用自己的私鑰zi產(chǎn)生的,任意敵手如果能在多項(xiàng)式時(shí)間內(nèi)偽造一個(gè)新的數(shù)字簽名,其必然在多項(xiàng)式時(shí)間內(nèi)可以求解基于橢圓曲線的離散對(duì)數(shù)困難問(wèn)題。因此,單個(gè)密文的數(shù)字簽名偽造是不可行的。同樣,敵手在多項(xiàng)式時(shí)間內(nèi)偽造聚合的加密醫(yī)療數(shù)據(jù)數(shù)字簽名(tj H1(type)+σi)(j=(i-1)modl+1)也是不可行的。此外,由于是用戶利用醫(yī)療數(shù)據(jù)分析中心的公鑰產(chǎn)生的,敵手自己可能產(chǎn)生一個(gè)替換的密文,因此云服務(wù)器在產(chǎn)生聚合密文信息SC=和之后,在返回給醫(yī)療數(shù)據(jù)分析中心的過(guò)程中,2 個(gè)信息可能被替換為SC*和QSC*。于是,篡改的聚合信息Agg*={σ,c,SC*,QSC*}要通過(guò)醫(yī)療數(shù)據(jù)分析中心的驗(yàn)證,其必須滿足如下方程: 設(shè)置W=(tl-1+tl)H1(type),可以求解H1(type)和W之間的離散對(duì)數(shù),這與基于橢圓曲線的離散對(duì)數(shù)困難問(wèn)題假設(shè)是矛盾的。因此,根據(jù)以上安全性分析得知本文方案可確保云存儲(chǔ)加密醫(yī)療數(shù)據(jù)聚合的可驗(yàn)證性,即醫(yī)療數(shù)據(jù)分析中心可以驗(yàn)證云服務(wù)器加密聚合過(guò)程的正確性以及聚合密文的完整性。 將本文方案與文獻(xiàn)[22-23]中的2 種可驗(yàn)證加密聚合方案進(jìn)行性能分析與對(duì)比,所有方案都運(yùn)行在處理器為Inter?CoreTMi5-2320 3.00 GHz和內(nèi)存8.00 GB的主機(jī)上,操作系統(tǒng)為Windows10。所有方案均通過(guò)C 語(yǔ)言以及版本號(hào)為5.6.2 的密碼算法基礎(chǔ)函數(shù)庫(kù)MIRACL 來(lái)實(shí)現(xiàn),使用的橢圓曲線密碼機(jī)制是MNT曲線,嵌入階是6。定義Tpa表示雙線性對(duì)運(yùn)行時(shí)間,Tmu表示普通乘法運(yùn)行時(shí)間,TMu表示橢圓曲線上加法循環(huán)群中倍點(diǎn)計(jì)算運(yùn)行時(shí)間,TAd表示橢圓曲線上加法循環(huán)群中加法的運(yùn)行時(shí)間,Tex表示普通模指數(shù)計(jì)算運(yùn)行時(shí)間,TEx表示雙線性對(duì)映射中的模指數(shù)計(jì)算運(yùn)行時(shí)間,THa表示映射到橢圓曲線上加法循環(huán)群的哈希函數(shù)運(yùn)行時(shí)間,Tha表示普通哈希函數(shù)的運(yùn)行時(shí)間。 在本文系統(tǒng)模型中,各種密文同態(tài)聚合和數(shù)字簽名同態(tài)聚合運(yùn)算都外包給具有強(qiáng)大計(jì)算能力的遠(yuǎn)程云服務(wù)器,同時(shí),各個(gè)對(duì)比方案都是通過(guò)聚合計(jì)算來(lái)降低通信開(kāi)銷的。因此,本節(jié)通過(guò)比較各方案在醫(yī)療數(shù)據(jù)分析中心端的數(shù)據(jù)處理中所需的計(jì)算開(kāi)銷,以驗(yàn)證本文方案在計(jì)算性能上的優(yōu)勢(shì)。具體地,根據(jù)分析得知,文獻(xiàn)[22]中的SPPDA方案在驗(yàn)證和聚合數(shù)據(jù)解密過(guò)程中,數(shù)據(jù)中心需要執(zhí)行N+1 個(gè)雙線性對(duì)運(yùn)算和N個(gè)普通的哈希函數(shù),才能通過(guò)完整性驗(yàn)證方程,同時(shí),數(shù)據(jù)中心需要執(zhí)行1 個(gè)雙線性對(duì)運(yùn)算、1 個(gè)普通模指數(shù)計(jì)算和1 個(gè)普通乘法,才能實(shí)現(xiàn)完整聚合密文的解密。因此,SPPDA 方案中數(shù)據(jù)中心的總計(jì)算開(kāi)銷為(N+2)Tpa+Tex+NTha+Tmu。文獻(xiàn)[23]方案在驗(yàn)證和聚合數(shù)據(jù)解密過(guò)程中,數(shù)據(jù)中心需要執(zhí)行N+1 個(gè)雙線性對(duì)運(yùn)算、N個(gè)普通的哈希函數(shù)以及N-1 個(gè)普通乘法,才能通過(guò)完整性驗(yàn)證方程,同時(shí),數(shù)據(jù)中心需要執(zhí)行1 個(gè)普通模指數(shù)計(jì)算實(shí)現(xiàn)聚合密文的解密。因此,文獻(xiàn)[23]方案數(shù)據(jù)中心的總計(jì)算開(kāi)銷為(N+1)Tpa+NTha+(N-1)Tmu+Tex。在本文方案中,醫(yī)療數(shù)據(jù)分析中心需要執(zhí)行3 個(gè)雙線性對(duì)運(yùn)算、1 個(gè)橢圓曲線上加法循環(huán)群中的倍點(diǎn)計(jì)算、1 個(gè)映射到橢圓曲線上加法循環(huán)群的哈希函數(shù)以及2 個(gè)普通的哈希函數(shù),才能通過(guò)完整性驗(yàn)證方程,同時(shí),醫(yī)療數(shù)據(jù)分析中心需要執(zhí)行1 個(gè)普通模指數(shù)計(jì)算和1 個(gè)雙線性對(duì)映射中的模指數(shù)計(jì)算,才能實(shí)現(xiàn)聚合密文的解密。因此,本文方案中醫(yī)療數(shù)據(jù)分析中心總的計(jì)算開(kāi)銷為3Tpa+TMu+THa+2Tha+Tex+TEx。3 種方案的驗(yàn)證和聚合數(shù)據(jù)解密過(guò)程具體計(jì)算開(kāi)銷如表1 所示。 表1 3 種方案的數(shù)據(jù)分析中心計(jì)算開(kāi)銷對(duì)比Table 1 Comparison of computing cost of data analysis center of three schemes 從圖3 可以看出,本文方案醫(yī)療數(shù)據(jù)分析中心在計(jì)算效率方面具有明顯優(yōu)勢(shì),特別地,隨著移動(dòng)終端用戶數(shù)目N的增加,文獻(xiàn)[22-23]方案的計(jì)算開(kāi)銷均呈線性增長(zhǎng),而本文方案醫(yī)療數(shù)據(jù)分析中心的計(jì)算開(kāi)銷保持恒定輕量級(jí)常量,并未隨著移動(dòng)終端用戶數(shù)目N的增加而增加。 圖3 3 種方案的數(shù)據(jù)分析中心計(jì)算效率比較Fig.3 Comparison of computing efficiency of data analysis center of three schemes 醫(yī)療數(shù)據(jù)作為用戶的隱私數(shù)據(jù),在醫(yī)生對(duì)患者的病情判斷中發(fā)揮重要作用,在統(tǒng)計(jì)分析醫(yī)療數(shù)據(jù)時(shí)必須保證其機(jī)密性和完整性。本文提出一種可驗(yàn)證的云存儲(chǔ)醫(yī)療加密數(shù)據(jù)統(tǒng)計(jì)分析方案,基于改進(jìn)的BGN 同態(tài)加密算法,在保障醫(yī)療數(shù)據(jù)機(jī)密性的同時(shí),將加密數(shù)據(jù)聚合操作外包給云服務(wù)器,以緩解醫(yī)療數(shù)據(jù)分析中心的計(jì)算壓力。同時(shí),設(shè)計(jì)一種基于橢圓曲線的數(shù)字簽名算法,使醫(yī)療數(shù)據(jù)分析中心可以快速驗(yàn)證云服務(wù)器所聚合醫(yī)療數(shù)據(jù)的真實(shí)性。性能分析結(jié)果表明,該方案在醫(yī)療數(shù)據(jù)分析中心只需輕量級(jí)恒定計(jì)算開(kāi)銷的情況下就能判斷數(shù)據(jù)在傳輸和存儲(chǔ)期間是否遭受篡改或替換,并據(jù)此對(duì)醫(yī)療數(shù)據(jù)進(jìn)行均值和方差等統(tǒng)計(jì)分析。但本文研究尚未考慮用戶可能不愿意上傳敏感醫(yī)療數(shù)據(jù)、用戶數(shù)據(jù)傳輸中途被中斷或者其他惡意攻擊行為導(dǎo)致數(shù)據(jù)傳輸失敗等實(shí)際情況,因此,下一步將增加容錯(cuò)機(jī)制并采用門限秘密共享技術(shù),使得本文方案在有效傳輸數(shù)據(jù)達(dá)到門限值的情況下即可順利完成加密數(shù)據(jù)聚合。2.3 加密數(shù)據(jù)聚合的正確性及統(tǒng)計(jì)分析
3 安全性證明
4 性能分析
5 結(jié)束語(yǔ)