国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

加密電子病歷數(shù)據(jù)共享方案*

2022-09-21 08:43牛淑芬陳俐霞王彩芬
關(guān)鍵詞:敵手關(guān)鍵字加密算法

牛淑芬,于 斐,陳俐霞,王彩芬

(1.西北師范大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院,甘肅 蘭州 730070;2.深圳技術(shù)大學(xué)大數(shù)據(jù)與互聯(lián)網(wǎng)學(xué)院,廣東 深圳 518118)

1 引言

隨著信息技術(shù)的高速發(fā)展,很多醫(yī)院選擇使用電子病歷EHR (Electronic Health Record)實(shí)現(xiàn)患者診斷信息的存儲(chǔ)、檢索和共享[1 - 3]。EHR的使用已引起學(xué)術(shù)界的廣泛關(guān)注,其最重要的發(fā)展方向是EHR的數(shù)據(jù)共享和數(shù)據(jù)安全[4 - 6]。

云存儲(chǔ)具有數(shù)據(jù)存儲(chǔ)和訪問功能。數(shù)據(jù)存放到云存儲(chǔ)前應(yīng)該進(jìn)行加密以保證數(shù)據(jù)安全。但是數(shù)據(jù)加密使得在大量密文文件中搜索特定的文件變得困難。為了解決加密數(shù)據(jù)的搜索問題,Song等[7]提出了對(duì)稱可搜索加密算法,但是搜索效率較低。Boneh等[8]提出了基于關(guān)鍵字的公鑰可搜索加密方案,將公鑰密碼體制引入可搜索加密領(lǐng)域,但是該方案只能在安全信道模型下應(yīng)用。Baek等[9]提出了一種不需要安全信道的可搜索加密方案。Shao等[10]將可搜索加密和代理重加密[11]相結(jié)合,提出了帶關(guān)鍵字搜索的代理重加密方案,實(shí)現(xiàn)了密文搜索與數(shù)據(jù)共享。

近年來,云存儲(chǔ)為EHR的存儲(chǔ)和共享帶來了便利[12 - 14]。很多研究人員提出了基于云存儲(chǔ)的EHR共享方案。文獻(xiàn)[15]將混淆和RSA加密相結(jié)合,提出了基于云存儲(chǔ)的EHR存儲(chǔ)框架,實(shí)現(xiàn)了EHR數(shù)據(jù)機(jī)密性和用戶的身份驗(yàn)證。Xu等[16]提出了云輔助的EHR共享方案,支持多關(guān)鍵字搜索并在EHR共享過程中保護(hù)患者的隱私。盡管這些方案在云環(huán)境下實(shí)現(xiàn)了EHR的數(shù)據(jù)安全和隱私保護(hù),但仍然存在一個(gè)關(guān)鍵問題:云服務(wù)器并不是完全誠(chéng)實(shí)可信的。如果EHR系統(tǒng)僅依賴于第三方云服務(wù)器,則很容易造成EHR數(shù)據(jù)的泄漏、篡改和濫用等問題。為了解決上述問題,研究人員提出了基于區(qū)塊鏈[17]的EHR共享方案。Wang等[18]提出基于云和區(qū)塊鏈的EHR共享方案,用云存儲(chǔ)EHR密文,區(qū)塊鏈存儲(chǔ)安全索引,利用可搜索加密和代理重加密,實(shí)現(xiàn)了EHR共享過程中的隱私保護(hù)和訪問控制。文獻(xiàn)[19]提出了基于私有鏈和聯(lián)盟鏈的EHR存儲(chǔ)與共享方案,私有鏈存儲(chǔ)EHR,聯(lián)盟區(qū)塊鏈存儲(chǔ)安全索引,實(shí)現(xiàn)了EHR的安全搜索。Chen等[20]提出了一種基于區(qū)塊鏈的EHR可搜索加密方案,EHR的關(guān)鍵字索引通過邏輯表達(dá)式構(gòu)建并存儲(chǔ)在區(qū)塊鏈,實(shí)現(xiàn)了EHR搜索的可追溯性。

為了實(shí)現(xiàn)數(shù)據(jù)的細(xì)粒度訪問控制和安全共享,Sahai等[21]提出了屬性基加密算法。屬性基加密算法被很多研究人員應(yīng)用到了EHR數(shù)據(jù)共享中。文獻(xiàn)[22]提出一種基于屬性基簽密方案,實(shí)現(xiàn)了EHR在云存儲(chǔ)中的細(xì)粒度訪問。Niu等[23]提出一種基于聯(lián)盟鏈的EHR數(shù)據(jù)共享方案,將基于密文策略的屬性基加密算法CP-ABE (Ciphertext-Policy Attribute-Based Encryption)[24]結(jié)合聯(lián)盟鏈實(shí)現(xiàn)了EHR的安全共享和訪問控制。文獻(xiàn)[25]基于區(qū)塊鏈和屬性基加密算法提出了一個(gè)EHR數(shù)據(jù)存儲(chǔ)與共享框架,實(shí)現(xiàn)了EHR的數(shù)據(jù)完整性和細(xì)粒度訪問。

本文基于CP-ABE算法提出了一種云鏈協(xié)同存儲(chǔ)的EHR數(shù)據(jù)安全共享方案。方案的創(chuàng)新點(diǎn)如下所示:

(1)醫(yī)生用對(duì)稱加密算法加密EHR數(shù)據(jù),用CP-ABE算法加密對(duì)稱密鑰,用可搜索加密算法加密關(guān)鍵字生成安全索引。醫(yī)生將EHR密文存儲(chǔ)在醫(yī)療云,將安全索引存儲(chǔ)在聯(lián)盟鏈,實(shí)現(xiàn)了EHR數(shù)據(jù)的安全存儲(chǔ)。

(2)數(shù)據(jù)用戶將陷門上傳到聯(lián)盟鏈,聯(lián)盟鏈節(jié)點(diǎn)負(fù)責(zé)關(guān)鍵字搜索。搜索成功后,數(shù)據(jù)用戶獲得EHR密文的存儲(chǔ)地址,然后從醫(yī)療云獲得EHR密文。當(dāng)數(shù)據(jù)用戶的屬性滿足訪問策略時(shí),可以解密EHR密文,實(shí)現(xiàn)了EHR數(shù)據(jù)的細(xì)粒度訪問控制和安全共享。

(3)提出基于通配符的訪問結(jié)構(gòu),使用通配符代替訪問結(jié)構(gòu)中的部分屬性,實(shí)現(xiàn)了數(shù)據(jù)用戶的隱私保護(hù)。并且使用代理重加密實(shí)現(xiàn)了數(shù)據(jù)用戶的屬性撤銷。

2 預(yù)備知識(shí)

2.1 困難問題

2.2 訪問結(jié)構(gòu)

本文提出一種基于通配符的訪問結(jié)構(gòu),如圖1所示,其中,Ω為系統(tǒng)中所有屬性的集合,atti?Ω,atti={vi,1,vi,2,…,vi,m}表示第i(1≤i≤Unum)個(gè)用戶的屬性集合,Unum表示系統(tǒng)中的用戶總數(shù),vi,j(1≤j≤m)表示第i個(gè)用戶的屬性集合atti中的第j個(gè)屬性值。

Figure 1 Wildcard-based access structure圖1 基于通配符的訪問結(jié)構(gòu)

例如,學(xué)生1的屬性為{18,male,first,math},學(xué)生2的屬性為{20,male,third,math},學(xué)生3的屬性為{19,female,first,english}。為了和一年級(jí)數(shù)學(xué)學(xué)科的學(xué)生共享數(shù)據(jù),構(gòu)造訪問結(jié)構(gòu)o={age,gender,grade,subject}={*,*,first,math},年齡和性別為“不關(guān)心的屬性”,用通配符*表示,則學(xué)生1能夠共享信息。從訪問結(jié)構(gòu)中并不知道學(xué)生1的具體屬性,僅知道該學(xué)生的年齡和性別,保護(hù)了該學(xué)生的隱私。

3 系統(tǒng)模型與安全模型

3.1 系統(tǒng)模型

本文方案的系統(tǒng)模型包括6個(gè)實(shí)體:權(quán)威中心、患者、醫(yī)生、數(shù)據(jù)用戶、聯(lián)盟鏈和醫(yī)療云。系統(tǒng)模型如圖2所示。

Figure 2 System model圖2 系統(tǒng)模型

(1)權(quán)威中心。權(quán)威中心負(fù)責(zé)建立系統(tǒng),并為參與者生成私鑰,然后經(jīng)安全信道發(fā)送給參與者。在屬性撤銷階段,權(quán)威中心利用代理重加密更新密鑰和密文。

(2)患者?;颊邩?gòu)造訪問結(jié)構(gòu)并發(fā)送給醫(yī)生。患者需要EHR時(shí),通過存儲(chǔ)地址從醫(yī)療云獲得。

(3)醫(yī)生。醫(yī)生為患者生成EHR數(shù)據(jù)并從中提取關(guān)鍵字。醫(yī)生加密EHR并將密文上傳到醫(yī)療云,將關(guān)鍵字集合加密建立安全索引,并將安全索引、EHR存儲(chǔ)地址和簽名上傳到區(qū)塊鏈。

(4)數(shù)據(jù)用戶。數(shù)據(jù)用戶生成陷門并將陷門和身份上傳到區(qū)塊鏈搜索關(guān)鍵字。搜索成功后,數(shù)據(jù)用戶獲得EHR存儲(chǔ)地址和EHR密文。

(5)聯(lián)盟鏈。根據(jù)中心化程度的不同,區(qū)塊鏈可分為3種類型:公有鏈、聯(lián)盟鏈和私有鏈。聯(lián)盟鏈部分去中心化,由多個(gè)醫(yī)院共同建立和維護(hù)。聯(lián)盟鏈節(jié)點(diǎn)執(zhí)行共識(shí)協(xié)議將上傳的數(shù)據(jù)以交易的形式存儲(chǔ)在聯(lián)盟鏈上。數(shù)據(jù)搜索時(shí),聯(lián)盟鏈節(jié)點(diǎn)運(yùn)行搜索算法。

(6)醫(yī)療云。當(dāng)醫(yī)療云接收到數(shù)據(jù)用戶發(fā)送的EHR密文存儲(chǔ)地址后,將存儲(chǔ)地址對(duì)應(yīng)的EHR密文發(fā)給數(shù)據(jù)用戶。在屬性撤銷階段,醫(yī)療云負(fù)責(zé)更新密文。

3.2 安全模型

本文方案的安全性基于DL假設(shè)和BDH困難問題。為證明方案的安全性,本文設(shè)計(jì)2個(gè)安全游戲:選擇密文策略和選擇明文攻擊下的不可區(qū)分性IND-SCP-CPA(INDistinguishability against Selective Ciphertext-Policy and Chosen Plaintext Attack)以及選擇關(guān)鍵字攻擊下的不可區(qū)分性IND-CKA(INDistinguishability against Chosen Keyword Attack)。

(1)IND-SCP-CPA游戲。

系統(tǒng)初始化:敵手A聲明挑戰(zhàn)的訪問結(jié)構(gòu)o。挑戰(zhàn)者B生成系統(tǒng)參數(shù)PP和系統(tǒng)主密鑰msk。挑戰(zhàn)者B將系統(tǒng)參數(shù)PP發(fā)送給敵手A。

階段1在多項(xiàng)式時(shí)間內(nèi),敵手A做以下詢問:

①私鑰詢問:敵手A對(duì)屬性進(jìn)行私鑰詢問。

②屬性更新詢問:敵手A通過提交屬性v′i,j進(jìn)行屬性更新詢問。

③私鑰更新詢問:敵手A通過屬性v′i,j對(duì)更新的密鑰sk′進(jìn)行詢問。

挑戰(zhàn)敵手A向挑戰(zhàn)者B發(fā)送等長(zhǎng)消息F0和F1、身份δu和訪問結(jié)構(gòu)o,挑戰(zhàn)者B隨機(jī)選取τ∈{0,1}并將Fτ加密發(fā)送給敵手A。

階段2敵手A進(jìn)行和階段1相同的詢問,但是不能詢問F0和F1。

猜測(cè)敵手A輸出猜測(cè)τ′∈{0,1},如果τ′=τ,敵手A贏得游戲。敵手A贏得游戲的優(yōu)勢(shì)定義為:Adv=|pr[τ′=τ]-1/2|。

(2)IND-CKA游戲。

系統(tǒng)初始化挑戰(zhàn)者B生成系統(tǒng)參數(shù)PP和系統(tǒng)主密鑰msk。挑戰(zhàn)者B將系統(tǒng)參數(shù)PP發(fā)送給敵手A。

階段1在多項(xiàng)式時(shí)間內(nèi),敵手A進(jìn)行以下詢問:

①哈希詢問:敵手A詢問關(guān)鍵字w的哈希。

②私鑰詢問:敵手A對(duì)屬性進(jìn)行私鑰詢問。

③陷門詢問:敵手A對(duì)關(guān)鍵字w進(jìn)行陷門詢問。

挑戰(zhàn)敵手A將未經(jīng)過陷門詢問的等長(zhǎng)關(guān)鍵字w0和w1發(fā)送給挑戰(zhàn)者B,挑戰(zhàn)者B隨機(jī)選取τ∈{0,1}并生成安全索引Iwτ。

階段2敵手A進(jìn)行和階段1相同的詢問,但是不能詢問w0和w1。

猜測(cè)敵手A輸出猜測(cè)τ′∈{0,1},如果τ′=τ,敵手A贏得游戲。敵手A贏得游戲的優(yōu)勢(shì)定義為:Adv=|pr[τ′=τ]-1/2|。

4 具體方案與安全性證明

4.1 本文方案

本文方案包括系統(tǒng)建立、數(shù)據(jù)生成與存儲(chǔ)、數(shù)據(jù)搜索與共享和屬性撤銷4個(gè)階段。

(1)系統(tǒng)建立。

①系統(tǒng)初始化。

權(quán)威中心初始化系統(tǒng)。輸入安全參數(shù)λ和系統(tǒng)中所有屬性的集合Ω,權(quán)威中心運(yùn)行算法1輸出公共參數(shù)PP和系統(tǒng)主密鑰msk。

算法1系統(tǒng)初始化

步驟1選擇階為p的乘法循環(huán)群G1和G2,g和h是群G1的生成元。定義雙線性映射e:G1×G1→G2;

步驟4foratti?Ωdo

forvi,j∈attido

endfor

endfor

步驟5msk={α,ai,j,bi,j};

(2)密鑰生成。

輸入數(shù)據(jù)用戶身份δu和屬性Ωu,權(quán)威中心運(yùn)行算法2輸出私鑰sk。

算法2密鑰生成

步驟1計(jì)算d=α/δu;

步驟2forvi,j∈Ωudo

endfor

步驟3sk=(d,Di,Pi,Ri);

(2)數(shù)據(jù)生成與存儲(chǔ)。

患者構(gòu)造訪問結(jié)構(gòu)o,并把訪問結(jié)構(gòu)o發(fā)送給醫(yī)生。醫(yī)生為患者生成EHR明文F,并提取關(guān)鍵字集合W={w1,w2,…,wt},其中,t為關(guān)鍵字個(gè)數(shù)。醫(yī)生用對(duì)稱加密算法加密EHR,用訪問結(jié)構(gòu)o加密對(duì)稱密鑰k;同時(shí)醫(yī)生加密關(guān)鍵字集合生成安全索引。

①電子病歷加密。

輸入EHR明文F、對(duì)稱密鑰k和訪問結(jié)構(gòu)o中所包含的屬性Ωo,醫(yī)生運(yùn)行算法3輸出EHR密文CF。

算法3電子病歷加密

步驟2用對(duì)稱加密算法加密EHR明文F:C2=Enck(F);

步驟3計(jì)算C3=H3(C0,C2)×rF;

步驟4forvi,j∈Ωodo

endfor

步驟5CF=(C0,C1,C2,C3,Ei,j,Li,j);

醫(yī)生將EHR密文CF上傳到醫(yī)療云,醫(yī)療云接收后將存儲(chǔ)地址address返回給醫(yī)生。

②安全索引生成。

輸入關(guān)鍵字集合W={w1,w2,…,wt},醫(yī)生運(yùn)行算法4加密關(guān)鍵字集合生成安全索引IW。

算法4安全索引生成

步驟2for1≤l≤tdo

endfor

步驟3IW=(IR,Iw1,Iw2,…,Iwt);

輸入安全索引IW,醫(yī)生運(yùn)行算法5對(duì)安全索引簽名,輸出安全索引簽名σ。

算法5安全索引簽名生成

步驟2σ=(S1,S2);

醫(yī)生將安全索引IW、CF的存儲(chǔ)地址address和簽名σ提交到聯(lián)盟鏈的數(shù)據(jù)池。

為了提高聯(lián)盟鏈的記賬效率,規(guī)定聯(lián)盟鏈上的所有節(jié)點(diǎn)按照事先商定的順序輪流記賬。記賬節(jié)點(diǎn)時(shí)刻監(jiān)控?cái)?shù)據(jù)池,記賬成功后會(huì)得到一定的代幣作為獎(jiǎng)勵(lì)。當(dāng)某個(gè)節(jié)點(diǎn)不能履行記賬責(zé)任時(shí),則由其下一個(gè)節(jié)點(diǎn)代替記賬,聯(lián)盟鏈將扣除其一定的代幣作為懲罰。

正確性驗(yàn)證如下所示:

e(Y1,S2)=e(gα,hrσH4(IW))=

Figure 3 Blockchain data structure圖3 區(qū)塊鏈數(shù)據(jù)結(jié)構(gòu)

(3)數(shù)據(jù)搜索與共享。

當(dāng)數(shù)據(jù)用戶需要共享EHR時(shí),數(shù)據(jù)用戶需要生成陷門并在聯(lián)盟鏈上搜索。

①陷門生成。

數(shù)據(jù)用戶輸入私鑰和需要搜索的關(guān)鍵字集合W′={w′1,w′2,…,w′t},運(yùn)行算法6生成陷門TD。

算法6陷門生成

for1≤l≤tdo

end

②關(guān)鍵字搜索。

數(shù)據(jù)用戶將陷門TD和身份δu發(fā)送到聯(lián)盟鏈。搜索節(jié)點(diǎn)收到TD和δu后,運(yùn)行算法7進(jìn)行關(guān)鍵字搜索。

算法7關(guān)鍵字搜索

returnaddress;

else

return⊥;

搜索成功后,搜索節(jié)點(diǎn)將EHR密文的存儲(chǔ)地址address返回給數(shù)據(jù)用戶,搜索節(jié)點(diǎn)得到一定的代幣作為獎(jiǎng)勵(lì)。

正確性驗(yàn)證如下所示:

③密文驗(yàn)證。

數(shù)據(jù)用戶收到address后,從醫(yī)療云獲取EHR密文CF。數(shù)據(jù)用戶運(yùn)行算法8對(duì)EHR密文進(jìn)行驗(yàn)證。

算法8密文驗(yàn)證

returnsuccess;

else

return⊥;

如果驗(yàn)證算法輸出的信息是success,說明EHR密文沒有被篡改或者缺失;否則說明EHR密文被篡改或者已經(jīng)缺失。

正確性驗(yàn)證如下所示:

④解密。

數(shù)據(jù)用戶從醫(yī)療云得到EHR密文后,運(yùn)行算法9解密得到EHR明文。

算法9解密

步驟2計(jì)算k=C0⊕H2(ε);

步驟3解密:F=Deck(C2);

正確性驗(yàn)證如下所示:

k=C0⊕H2(ε)=

F=Deck(Enck(F))=F

(4)屬性撤銷。

①屬性更新密鑰生成。

當(dāng)某個(gè)用戶的屬性v′i,j需要被撤銷時(shí),權(quán)威中心將用戶的身份加入屬性撤銷列表,并運(yùn)行算法10計(jì)算屬性更新密鑰rk。

算法10屬性更新密鑰生成

步驟1forv′i,j∈Ωdo

Ui,j=a′i,j/ai,j,Vi,j=b′i,j/bi,j;

endfor

步驟2rk=(Ui,j,Vi,j);

②私鑰更新。

權(quán)威中心需要對(duì)用戶私鑰進(jìn)行更新時(shí)。運(yùn)行算法11計(jì)算更新后的私鑰sk′。

算法11私鑰更新

步驟1forv′i,j∈Ωdo

ifv′i,j≠vi,jthen

else

D′i=Di,P′i=Pi,R′i=Ri;

endfor

步驟2sk′=(d,D′i,P′i,R′i);

③密文更新。

權(quán)威中心對(duì)密鑰更新完畢后,醫(yī)療云運(yùn)行算法12計(jì)算出更新后的密文C′F。

算法12密文更新

步驟1forv′i,j∈Ωdo

ifv′i,j≠vi,jthen

else

E′i,j=Ei,j,L′i,j=Li,j;

endfor

C′0=C0,C′1=C1,C′2=C2,C′3=C3;

步驟2C′F=(C′0,C′1,C′2,C′3,Ei,j,Li,j);

4.2 安全性證明

定理1假設(shè)DL假設(shè)成立,則沒有敵手能在多項(xiàng)式時(shí)間內(nèi)以不可忽略的優(yōu)勢(shì)贏得IND-SCP-CPA游戲。

證明假設(shè)敵手A在概率多項(xiàng)式時(shí)間內(nèi)能以不可忽略的優(yōu)勢(shì)ξ贏得IND-SCP-CPA游戲。本文建立一個(gè)挑戰(zhàn)者B,可以計(jì)算出DL問題的解。給挑戰(zhàn)者B一個(gè)DL實(shí)例(gt1,gt2,gt2t4,gt3+t4,gt1t3)和(gt1,gt2,gt2t4,gt3+t4,gT),挑戰(zhàn)者B的目的是判定T=t1t3。

階段1敵手A做如下詢問:

③私鑰更新詢問:敵手A提交(δu,sk),其中sk詢問過,v′i,j已經(jīng)授權(quán)給δu。挑戰(zhàn)者B更新List并返回一個(gè)新的私鑰sk′給敵手A。

階段2敵手A做如階段1的詢問,但是不能詢問F0和F1。

定理2如果BDH困難問題成立,則沒有敵手A能夠在多項(xiàng)式時(shí)間內(nèi)以不可忽略的優(yōu)勢(shì)贏得IND-CKA游戲。

階段1敵手A做如下詢問:

③陷門詢問:當(dāng)敵手A做陷門詢問時(shí),挑戰(zhàn)者B查詢列表。如果c=0,挑戰(zhàn)者B定義陷門TD=gt2d=Rd;否則,挑戰(zhàn)者B返回錯(cuò)誤信息。

階段2敵手A做如階段1相同的詢問,但是不能詢問w0和w1。

猜測(cè)敵手A輸出猜測(cè)τ′∈{0,1}。如果τ′=τ,則說明在詢問中沒有出現(xiàn)終止的情況下得到Iwτ=(gt3,e(gt1t2,H(wτ)))=(gt3,e(g,g)T),那么挑戰(zhàn)者B成功提示的概率至少為ξ/(Ne)才能符合要求。

5 性能分析

5.1 功能比較

本文方案與文獻(xiàn)[28-31]方案的功能比較如表1所示。由表1可知,本文方案既使用了區(qū)塊鏈也使用了云服務(wù)器,文獻(xiàn)[29]方案僅使用了區(qū)塊鏈,文獻(xiàn)[28,30,31]方案僅使用了云服務(wù)器。本文方案與文獻(xiàn)[30,31]方案支持安全搜索和多關(guān)鍵字搜索,文獻(xiàn)[28,29]方案不支持關(guān)鍵字搜索。本文方案和文獻(xiàn)[28,31]方案實(shí)現(xiàn)了屬性撤銷,文獻(xiàn)[29,30]方案沒有實(shí)現(xiàn)屬性撤銷。

5.2 理論運(yùn)算時(shí)間比較

由表2可知,在加密階段,本文方案效率高于文獻(xiàn)[28,29]方案的,文獻(xiàn)[30,31]方案效率高于本文方案的,本文方案與文獻(xiàn)[31]方案僅理論運(yùn)算時(shí)間相差2Th。在解密階段,本文方案效率高于文獻(xiàn)[28-31]方案的。在關(guān)鍵字搜索階段,本文方案效率高于文獻(xiàn)[30,31]方案的,文獻(xiàn)[30]方案效率最低。關(guān)鍵字個(gè)數(shù)越多,本文方案優(yōu)勢(shì)越明顯。

5.3 數(shù)值模擬

數(shù)值模擬實(shí)驗(yàn)程序用C語(yǔ)言和PBC(Paring-Based Cryptography)編寫,在PC機(jī)(聯(lián)想G50-80,8 GB RAM,2.40 GHz CPU) 的Linux環(huán)境中運(yùn)行。屬性個(gè)數(shù)和關(guān)鍵字個(gè)數(shù)分別取10,20,30,40,50,結(jié)果取20次實(shí)驗(yàn)的平均值,如圖4~圖6所示。

Figure 4 Encryption time圖4 加密時(shí)間

Figure 5 Decryption time圖5 解密時(shí)間

Figure 6 Keyword search time圖6 關(guān)鍵字搜索時(shí)間

由圖4可知,對(duì)于加密算法,本文方案的運(yùn)算時(shí)間低于文獻(xiàn)[28,29]方案的,但是高于文獻(xiàn)[30,31]方案的。本文方案的運(yùn)算時(shí)間與文獻(xiàn)[31]方案的相差很小,當(dāng)屬性個(gè)數(shù)為10時(shí),兩方案運(yùn)算時(shí)間僅相差1 ms。

Table 2 Comparison of different schemes operation time

由圖5可知,對(duì)于解密算法,本文方案的運(yùn)算時(shí)間最短,當(dāng)屬性個(gè)數(shù)小于30時(shí),文獻(xiàn)[31]方案的解密運(yùn)算時(shí)間最長(zhǎng);當(dāng)屬性個(gè)數(shù)為30時(shí),文獻(xiàn)[30,31]方案的解密運(yùn)算時(shí)間相等,都是497 ms;當(dāng)屬性個(gè)數(shù)大于30時(shí),文獻(xiàn)[30]方案的解密運(yùn)算時(shí)間最長(zhǎng)。

由圖6可知,對(duì)于關(guān)鍵字搜索算法,本文方案的運(yùn)算時(shí)間最短,文獻(xiàn)[30]方案的運(yùn)算時(shí)間最長(zhǎng)。文獻(xiàn)[30]方案的運(yùn)算時(shí)間隨關(guān)鍵字個(gè)數(shù)的增加變化明顯,本文方案和文獻(xiàn)[31]方案的運(yùn)算時(shí)間隨關(guān)鍵字個(gè)數(shù)的增加變化不明顯。

6 結(jié)束語(yǔ)

本文提出了一種基于屬性的云鏈協(xié)同存儲(chǔ)的電子病歷共享方案,該方案用對(duì)稱加密算法加密電子病歷,用基于密文策略的屬性基加密算法加密對(duì)稱密鑰,用可搜索加密算法加密關(guān)鍵字,實(shí)現(xiàn)了電子病歷的細(xì)粒度訪問控制和安全存儲(chǔ)與共享。經(jīng)過安全證明,該方案能夠?qū)崿F(xiàn)密文的安全性和關(guān)鍵字的安全性;數(shù)值模擬實(shí)驗(yàn)結(jié)果表明,該方案具有良好的性能,但是該方案的數(shù)據(jù)加密算法效率比某些對(duì)比方案的低,今后將繼續(xù)深入研究屬性基加密算法,提高算法效率。

猜你喜歡
敵手關(guān)鍵字加密算法
履職盡責(zé)求實(shí)效 真抓實(shí)干勇作為——十個(gè)關(guān)鍵字,盤點(diǎn)江蘇統(tǒng)戰(zhàn)的2021
與“敵”共舞
基于DES加密算法的改進(jìn)研究
成功避開“關(guān)鍵字”
DES加密算法的實(shí)現(xiàn)
基于整數(shù)矩陣乘法的圖像加密算法
不帶著怒氣做任何事
基于小波變換和混沌映射的圖像加密算法
智能垃圾箱
不帶著怒氣作戰(zhàn)