楊小東 周 航 任寧寧 袁 森 王彩芬
1(西北師范大學計算機科學與工程學院 蘭州 730070)
2(深圳技術大學大數據與互聯網學院 廣東深圳 518118)
無線體域網[1](wireless body area network,WBAN)指由佩戴或嵌入在人體的各種無線傳感器(wireless sensor,WS)組成的無線通信網絡.WBAN 技術在醫療數據監測方面的應用極為廣泛,不同類型的無線醫療傳感器負責監測患者各個方面的醫療數據并將數據發送給各種遠端服務器,方便對患者的醫療數據做出專業的分析與整合.然而,開放的WBAN 在傳輸患者敏感的醫療數據時,面臨著患者的隱私被泄露或醫療數據被惡意篡改等風險[2].
許多國內外學者提出將密碼體制應用到WBAN中,以確保WBAN 的醫療數據在傳輸與共享時的機密性.Mykletun 等人[3]基于傳統公鑰密碼(public key cryptography,PKC)體制,設計了一種保證無線傳感網絡數據機密性的加密方案.Nadir 等人[4]基于PKC 體制與橢圓曲線密碼體制為用戶生成對稱密鑰來加密數據,確保醫療數據在無線傳感網絡中傳輸與共享時的機密性.然而,基于PKC 體制的方案[3-4]需要可信中心對用戶證書進行管理,為消除證書管理的開銷,一些基于身份加密體制的WBAN 方案[5-7]相繼被提出.上述文獻[3?7]利用對數據進行加密的方式確保了醫療數據傳輸時的機密性,但這種方式沒有實現對醫療數據來源的認證.如果無法實現醫療數據的可認證性,不僅會導致醫院浪費寶貴的醫療資源進行無效的診斷,還可能基于被篡改的醫療數據而對患者的病情做出錯誤診斷.
為了實現WBAN 中醫療數據的可認證性,Ahn等人[8]構造了一種基于高級加密標準(advanced encryption standard,AES)對稱密碼體制的認證方案.黃一才等人[9]基于身份密碼體制設計了一種簽名方案,該方案實現了抗重放攻擊.Cagalaban 等人[10]將數字簽密技術引入醫療保健系統,在確保醫療數據機密性的同時實現了數據的可認證性.Ullah 等人[11]利用超橢圓曲線的概念,設計了一種基于證書的簽密方案.盡管文獻[8?11]實現了醫療數據的可認證性,但都沒有考慮在多用戶環境下的應用場景.為解決密碼方案在多用戶環境下的WBAN 中計算效率較低的問題,基于聚合簽名與聚合加密等技術,一些支持聚合模式的方案[12-15]相繼被提出.然而,文獻[8?15]沒有考慮如何對WBAN 云端密文進行有效的搜索,導致數據用戶在對醫療數據進行檢索時開銷較大.
基于可搜索加密技術[16]與密文等值測試技術[17],國內外學者提出了一些適用于WBAN 的密文檢索方案[18-21].但這些WBAN 密文檢索方案均存在一些缺陷,例如張嘉懿[18]與Andrew 等人[19]提出的可搜索加密方案僅支持對用相同公鑰加密的醫療數據進行搜索;Ramadan 等人[20]設計的等值測試加密方案無法實現對醫療數據來源的認證;Elhabob 等人[21]設計的基于證書的密文等值測試方案存在證書管理問題等.此外,醫生或醫療機構有時需要判斷多個患者某些特定方面的醫療數據是否相同,或對有相同病癥的患者的醫療數據進行整合與存檔,但密文檢索文獻[18? 21]均沒有考慮到多用戶檢索以及對多密文同時進行檢索的情況,在用戶節點眾多的WBAN 實際應用環境中存在一定局限性.
WBAN 通常會面臨需要對2 個以上的密文進行匹配的情況,而傳統的密文等值測試技術只能將多個密文兩兩分為一組,再對所有的分組逐個進行測試,在多用戶環境下的密文檢索效率較低.為提高密文等值測試技術在多密文測試時的計算效率,Susilo等人[22]提出了一種支持多密文等值測試的公鑰加密(public-key encryption with multi-ciphertext equality test,PKE-MET)方案,實現了對2 個以上的密文同時進行匹配的功能.在PKE-MET 方案中,每個參與多密文等值測試的數據擁有者都可以指定1 個數字n,并將自己的密文與其他n?1 個數據擁有者的密文進行匹配.PKE-MET 在支持同時對多密文進行等值測試的同時,還支持對多個用戶同時進行密文檢索,當測試者接收到n個希望進行密文檢索的數據用戶分別上傳的n個測試陷門時,才可以對數據擁有者的密文進行測試,實現了多數據用戶同時進行密文匹配的功能.然而,PKE-MET 方案中存在證書管理開銷較大、無法對數據的來源進行認證等問題.
針對以上問題,本文提出了一種支持多密文等值測試的WBAN 聚合簽密方案.該方案的創新點主要包括3 個方面:
1)基于身份簽密體制.本文方案采用基于身份的簽密體制,消除了傳統公鑰加密方案中存在的證書管理開銷,確保了WBAN 中醫療數據的機密性、完整性、可認證性與數據擁有者簽名的不可偽造性.
2)支持多用戶密文聚合簽密.引入聚合簽密技術,驗證者可以實現對多個數據擁有者醫療數據密文的批量驗證,提高了簽密方案在多用戶環境下的驗證效率.
3)支持多密文等值測試.引入多密文等值測試技術,測試者可以利用數據用戶上傳的測試陷門同時對多個密文進行匹配,實現了多用戶檢索與多密文等值測試,降低了多用戶環境下等值測試過程的計算開銷.
計算性Diffie-Hellman(computation Diffie-Hellman,CDH)問題:給定(P,aP,bP),其中a,b∈計算abP.
由含有n個未知數x1,x2,…,xn的n個線性方程所組成的非齊次線性方程組
所對應的系數矩陣為
矩陣A對應的行列式為
若det(A)≠0,則該方程組有唯一解.
形如
的矩陣稱為范德蒙矩陣,其對應的范德蒙行列式det(V)具有如下計算性質:
本文提出的支持多密文等值測試的WBAN 聚合簽密方案的系統模型如圖1 所示,它包括6 個實體:私鑰生成器(private key generator,PKG)、云存儲提供商、數據擁有者(即患者佩戴的無線傳感器)、密文等值測試者、聚合者與數據用戶(data user,DU).
各個實體具體介紹為:
1)私鑰生成器.負責為WBAN 中的數據擁有者和數據用戶生成密鑰.

Fig.1 The proposed system model圖1 本文系統模型
2)云存儲提供商.負責在云服務器中存儲用戶上傳的醫療密文CT1,CT2,…,CTn.
3)數據擁有者.即患者佩戴的無線傳感器,負責對醫療數據進行簽密并將醫療密文上傳到云端存儲.
4)測試者.對從云服務器下載的多個醫療密文執行等值測試操作,將測試結果返回給云服務器.
5)聚合者.負責對多個數據擁有者的醫療數據進行聚合簽密,將聚合醫療密文上傳到云端存儲.
6)數據用戶.即醫生、醫療機構與數據處理中心等希望獲取醫療密文的用戶,負責將等值測試的陷門上傳給測試者,并對從云服務器下載的醫療密文進行解密與認證.
本文提出的支持多密文等值測試的聚合簽密方案需要考慮2 種類型的敵手,第1 類敵手無法訪問數據用戶的測試陷門,第2 類敵手可以獲取數據用戶的測試陷門.針對這2 類敵手,本文提出的方案旨在達到的安全目標為:
1)醫療數據的機密性和完整性.WBAN 中傳輸的大多是敏感的醫療數據,若患者的醫療數據在傳輸時中被惡意竊取或篡改,會造成嚴重后果.本文利用基于身份的加密體制,保證了所提方案在面對第1類攻擊者時醫療數據的機密性與完整性.機密性指即使攻擊者截取了傳輸的醫療密文也無法獲取與明文相關的信息;完整性則指醫療數據在傳輸時中無法被敵手偽造或篡改.
2)數據擁有者簽名的不可偽造性.本文新方案在對數據擁有者的簽名的合法性進行驗證的過程中,采用基于身份的簽密體制,保證了在面對第1 類攻擊者時數據擁有者簽名的不可偽造性,即攻擊者不能偽造出合法的數據擁有者簽名.
3)測試陷門的單向性.測試者通過數據用戶上傳的測試陷門對醫療密文進行等值測試操作,在測試過程中,需要保證面對第2 類敵手時測試陷門滿足單向性,即敵手無法通過測試陷門獲取與參與測試的醫療數據明文相關的信息.
2.3.1 系統初始化
2.3.2 用戶密鑰提取
1)用戶將IDi上傳給PKG,PKG 計算Qi=H1(IDi),ski,1=sQi;
2)PKG 隨機選擇xi∈計算PKi,1=xiP,PKi,2=H1(IDi||PKi,1),s?ki,2=xi+sPKi,2,ski,3=H1(IDi||s) ,PKi,3=ski,3P;
3)PKG輸出公共參 數PKi=(PKi,1,PKi,2,PKi,3)與私鑰ski=(ski,1,ski,2,ski,3).
2.3.3 醫療數據簽密及上傳
給定參與密文等值測試與聚合簽密的數據擁有者數量為n,數據擁有者的身份標識為IDi,數據用戶的身份標識為IDj,其中i,j∈{1,2,···,n}.數據擁有者執行1)~5)操作對mi進行簽密:
1)隨機選擇ai,bi,Ni∈計算Ci,1=aiP,Ci,2=biP,Ri=aiQjPpub;
2)計算Ui=H2(mi,IDi,IDj,Ri,PKi,1,PKj,1),Vi=H3(mi,IDi,IDj,Ri,PKi,1,PKj,1),vi=aiUi+ski,2Vi,Ci,3=viP,Ci,4=H4(Ri)⊕(mi||vi);
3)計算fi,0=H5(mi||n) ,fi,1=H5(mi||n||fi,0),··· ,fi,n?1=H5(mi||n||fi,0||···||fi,n?2);
4)計算Ci,5=H4(biPKj,3) ⊕(Ni||f(Ni)),Ci,6=H6(n||Ci,1||···||Ci,5||biPKj,3||fi,0||···||fi,n?1),其中
5)將密文CTi=(ti,Ci,1,Ci,2,Ci,3,Ci,4,Ci,5,Ci,6)上傳到云端存儲,其中ti=n.
2.3.4 多密文等值測試
n個數據用戶分別將等值測試陷門tkj=skj,3發送給測試者,其中j∈{1,2,···,n}.測試者從云服務器分別下載n個數據擁有者想要測試的密文CT1,CT2,···,CTn,執行1)~3)多密文等值測試操作:
1)檢查t1=t2=···=tn=n是否成立,若成立測試者則繼續執行以下操作,否則終止操作并輸出“ ⊥”;
2)對于i∈{1,2,···,n} ,j∈{1,2,···,n},測試者分別計算Ni||f(Ni)=Ci,5⊕H4(Ci,2tkj),由簽密算法有f(Ni)=測試者將n個等式合并得到方程組
并隱式設置fi,k=fj,k,其中k∈{0,1,···,n?1},測試者通過對該方程組對應的范德蒙矩陣求逆,獲得方程組的唯一一組解f1,0,f1,1,···,f1,n?1;
3)檢查等式Ci,6=H6(n||Ci,1||Ci,2||Ci,3||Ci,4||Ci,5||Ci,2tkj||fi,0||fi,1||···||fi,n?1)是否成立,若成立測試者則向云服務器輸出測試結果為“1”,否則向云服務器輸出測試結果為“0”.
互聯網經濟的迅猛發展,促使高等教育分化,高等院校培養學生的出口拓寬。應用型本科院校教學的重點除了給學生奠定科學基礎,更重要的功能是培養學生的應用能力。數據庫原理是計算機類專業的必修專業基礎課,為學生進行信息化管理應用奠定基礎。如何使學生將理論學習轉化為應用技能提升是應用型本科教學的關注點,平頂山學院信息工程學院物聯網工程專業以數據庫原理課程教學為載體,探索了基于“學習成效”評價模式教學過程管理應用研究,以期通過全過程的學習評價、注重學習效果的評價方式提升學生自主學習的自覺性和提高創新思維的主動性。
2.3.5 醫療數據聚合簽密及上傳
若云服務器接收到的密文等值測試結果為“1”,代表n個數據擁有者的醫療密文全部相同,云服務器將所有數據擁有者的醫療密文CT1,CT2,···,CTn發送給聚合者,聚合者執行1)~2)操作對醫療密文進行聚合簽密:
2)將聚合醫療密文σagg=({CTi}i=1,2,···,n,Xagg)上傳到云服務器存儲.
2.3.6 醫療數據下載及解密
給定數據用戶的身份標識為IDj,其中j∈{1,2,···,n}.數據用戶從云端下載聚合醫療密文σagg,對密文進行解密并驗證數據來源.數據用戶的具體操作如為:
1)解密等式的正確性
因此,本文方案滿足密文解密等式的正確性.
3)等值測試結果的正確性
由醫療數據簽密及上傳算法可知,數據擁有者在簽密過程中設置
由此可以得到方程組
結合fi,k=fj,k,因此可將f1,0,f1,1,···,f1,n?1作為方程組的解,將隨機數Ni作為方程組的系數,則該方程組對應的矩陣為
由范德蒙矩陣的性質可知其對應的行列式為det(V)=
從數據擁有者簽密過程可知,Ni是由n個不同的數據擁有者在對醫療密文進行簽密時分別選擇的隨機數,因此det(V)=0的概率僅為[p(p?1)···(p?n+1)]?1,其中p為群的階.由克拉默法則可知當det(V)≠0時,方程組有且僅有唯一解f1,0,f1,1,···,f1,n?1,于是有對于所有的i,j∈{1,2,···,n},k∈{0,1,···,n?1},等式fi,k=fj,k均成立,與所有參與密文等值測試的醫療密文全部相同的假設相符.因此,本文新方案滿足多密文等值測試結果的正確性.
本文提出的方案引入了基于身份的聚合簽密體制,確保了本文方案在面對第1 類敵手時醫療數據的機密性與簽名的存在不可偽造性,對于機密性與不可偽造性的證明過程可以參考文獻[23]方案.同時,本文方案滿足面對第2 類敵手適應性選擇密文攻擊下的單向性(one-way against adaptive chosen ciphertext attack,OW-CCA2),以下通過定理1 證明本文方案滿足OW-CCA2安全.
定理1.假設CDH 問題是難解的,則本文方案在隨機預言模型下對第2 類敵手是OW-CCA2 安全的.
證明.假設 C是能夠解決CDH 困難問題的人,A2代表第2 類敵手.C 以 A2為子程序充當以下游戲中的挑戰者,若A2能以不可忽略的優勢在概率多項式時間內的游戲中獲勝,則 C能夠在概率多項式時間內解決CDH 困難問題.
初始化階段.CDH 問題的輸入為(P,aP,bP),其中a,b∈C的目標是給出CDH 困難問題的解abP.C選取階為素數p的循環群G,計算P為G的生成元,隨機選擇a∈并計算=aP.最后,輸出系統參數params={p,P,Ppub,G,H1,H2,H3,H4,H5,H6},將a秘密保存并發送params給 A2.
詢問階段1.為了響應 A2的詢問,C維持列表L1,L2,L3,L4,L5,L6,Ltd分別用于跟蹤 A2的H1Hash 詢問、H2Hash 詢 問、H3Hash 詢問、H4Hash 詢 問、H5Hash詢問、H6Hash 詢問、測試陷門詢問.L1同時用于跟蹤密鑰提取詢問,開始時每個列表都為空.
1)H1Hash 詢問.當 C收到 A2對H1(IDi,Qi)的查詢,若則計算PKi,1=xiP,其中xi是未知的,C保存(⊥,Qi,IDi) 到L1;若i≠1,C隨機選擇xi,PKi,2∈并設置PKi,1=xiP,將PKi,2=H1(IDi||PKi,1)返回給 A2并保存(xi,PKi,1,PKi,2,IDi) 到L1.
2)H2Hash 詢 問.當 C收 到A2對(mi,IDi,IDj,Ri,PKi,1,PKj,1,Ui)的查詢后,C首先在L2查找是否已有(mi,IDi,IDj,Ri,PKi,1,PKj,1,Ui,ti,tiP),若L2已 有(mi,IDi,IDj,Ri,PKi,1,PKj,1,Ui,ti,tiP),則發送Ui給 A2;否則,C選取Ui∈將(Ui,ti,tiP)加入到L2中并輸出tiP.
3)H3Hash 詢 問.當 C收 到A2對(mi,IDi,IDj,Ri,PKi,1,PKj,1,Vi)的查詢后,C首先在L3查找是否已有(mi,IDi,IDj,Ri,PKi,1,PKj,1,Vi,wi,wiP),若L3已 有(mi,IDi,IDj,Ri,PKi,1,PKj,1,Vi,wi,wiP),則返回Vi給A2;否則,C選取Vi∈將(Vi,wi,wiP)加入到L3中并輸出wiP.
4)H4Hash 詢問.當 C收到 A2對(Ri,H4(Ri))的查詢后,若在L4中已有(Ri,H4(Ri))則返回H4(Ri)給 A2;否則,C選取并將(Ri,H4(Ri))加入到L4中且輸出H4(Ri).
5)H5Hash 詢問.當 C收到 A2對fi,d的查詢,其中d∈{1,2,···n},若L5存在(mi,n,fi,0,···,fi,d?2,fi,d)則返回fi,d給 A2;否則,C選取fi,?∈將(mi,n,fi,0,···,fi,d?2,fi,d)加入到L5中并輸出fi,d.
6)H6Hash 詢問.當 C收到 A2對Ci,6的查詢后,若在L6中已有Ci,6則返回Ci,6給A2;否則,C選取Ci,6∈{0,1}k,將相應元組加入到L6中并輸出Ci,6.
7)密鑰提取詢問.當 C收到 A2對IDi的私鑰的查詢后,C首先查詢L1中是否存在(xi,PKi,1,PKi,2,IDi),若不存在則輸出“ ⊥”;否則返回(xi,PKi,1,?,?).如果IDi?C 將IDi作為H1Hash 詢問的輸入,得到Qi=H0(IDi),并計算ski,1=aQi,ski,2=xi+aPKi,2,返回(PKi,1,ski,1,PKi,2,IDi) 給 A2.
8)公鑰替換詢問.當 C收到 A2對(IDi,PKi,1,PKi,2)的查詢后,若(xi,PKi,1,PKi,2,IDi)已存在于L1中,則C用列表L1中的(PKi,1,PKi,2)替換IDi原有的公鑰(PKi,1,PKi,2);否則,C將(xi,PKi,1,PKi,2,IDi)加入到列表L1中.
9)簽密詢問.當 C收到 A2對(mi,IDi,IDj)的詢問后,C 執行①~②操作:
①若IDi≠IDl且 A2沒有對IDi的公鑰執行過替換詢問,C通過H1Hash 詢問與密鑰提取詢問分別獲取xi和ski,2,并對mi進行簽密;若IDi對應的公鑰被替換過,C首先通過H1詢問分別獲取(PKi,1,PKi,2)和(PKj,1,PKj,2),然后 C利用隨機數ai∈計算Ci,1=aiP,Ri=并通過H2,H3,H4Hash 詢問分別獲取Ui=H2(mi,IDi,IDj,Ri,PKi,1,PKj,1),Vi=H3(mi,IDi,IDj,Ri,PKi,1,PKj,1) .H4(Ri),通過密鑰提取詢問獲取私鑰ski,2,計算vi=aiUi+ski,2Vi,Ci,3=viP,Ci,4=H4(Ri)⊕(mi||vi),最后輸出密文σi=(Ci,1,Ci,2,Ci,3,PKi,1)給 A2.
② 若IDi=IDl,C首先通過H1詢問分別獲取(PKi,1,PKi,2)和(PKj,1,PKj,2),隨機選擇y,z∈并計算Ci,1=zaP.然后 C通過H1Hash 詢問和H4Hash 詢問分別獲取(IDj,aj)和H4(Rj),并計算Rj=Uj=H2(ml,IDl,IDj,Rj,PKl,1,PKj,1),將(ml,IDl,IDj,Rj,PKl,1,PKj,1,Uj)加入到L2中,通過H3Hash 詢問獲取(ml,IDl,IDj,Rl,PKl,1,PKj,1,Vl,wl,wlP),并計算vl=yUl,Cl,3=Ci,4=H4(Rl)⊕(ml||vl),最后輸出σl=(Cl,1,Cl,2,Cl,3,PKl,1) 給 A2.
10)解簽密詢問.當 C收到 A2對(CT1,CT2,···,CTn,的查詢后,C執行①~②操作:
①對(ID1,ID2,···,IDn,IDj)分別執行H1Hash 詢問以獲取(Q1,Q2,···,Qn,Qj),(PK1,1,PK2,1,···,PKn,1,PKj,1),然后 C執行聚合簽名驗證算法,若驗證未通過,則輸出“ ⊥”后終止模擬;否則繼續執行后續操作.
② 若IDj≠IDl,C則通過H1Hash 詢問獲取(IDj,aj)并計算Rj=ajCj,1,檢查L2中是否存在元組(?,IDj,Ri,PKi,1,PKj,1,Ui),若存在,則 C利用Hash 值Ui對 密文進行解密;否則 C隨機選取Ui∈并用Ui對密文進行解密.若IDj=IDl,C則在L2中查詢是否存在元組(?,IDj,?,PKi,1,PKj,1,Ui),若存在則利用Hash 值Ui對密文進行解密;否則將隨機選取Ui∈并用Ui對 密文進行解密.
11)測試陷門詢問.當 C收到 A2對tkj的詢問后,若L1中存在元組(xi,PKi,1,PKi,2,IDi),C通過H1詢問獲取ski,3=H1(IDi||s)并返回tkj=ski,3給 A2;否則,C選取tkj∈發送給 A2,并將(xi,PKi,1,PKi,2,IDi)加入到Ltd中.
詢問階段2.A2執行與詢問階段1 類似的多項式有界次適應性查詢,但不允許對對應的密文進行解簽密查詢.
猜測階段.A2輸出1 個對 μ的猜測μ′∈{0,1},如果μ′=μ,則 A2在以上游戲中獲勝.C在列表L4中選取(Ri,H4(Ri))并以Ri=abP作為CDH 困難問題的解,這與目前公認的CDH 問題的難解性相矛盾.因此本文方案在面對A2敵手時滿足選擇OW-CCA2 安全.
證畢.
將本文提出的方案與文獻[22?26]方案在功能特性方面進行比較,對比結果如表1 所示.與文獻[23?24]方案相比,本文方案引入等值測試功能,實現了對存儲在云端的醫療密文的安全檢索.與文獻[22,25?26]方案相比,本文方案引入了聚合簽密技術,確保了WBAN中醫療數據的機密性、完整性與可認證性,提高了多用戶環境下對醫療數據進行簽密與驗證的效率.文獻[25?26]方案采用的等值測試方法只能對2 個密文進行比較,本文方案實現了同時對多個密文進行匹配,降低了測試者執行密文等值測試時的開銷.此外,與文獻[22?23,25?26]方案相比,本文方案達到了適應性選擇密文攻擊下的單向性,安全性有所提升.

Table 1 Comparison of Functional Characteristics表1 功能特性比較
本文所提新方案在執行多密文等值測試算法時,測試者通過對范德蒙矩陣求逆以提取出與數據擁有者明文相關的系數.其中,n階范德蒙矩陣求逆算法的時間復雜度取決于所使用的求逆方法,已有許多學者提出了求解范德蒙矩陣逆矩陣的串行[27-28]與并行[29-30]方法,其時間復雜度如表2 所示:

Table 2 Complexity of Inversion for Vandermonde Matrix表2 范德蒙矩陣求逆算法復雜度
將本文提出的方案在計算時間開銷方面與文獻[25?26]方案進行對比,假設參與密文等值測試的用戶數量為n,使用i7-8750h,2.20 GHz 處理器,8 GB 內存和Win10 操作系統在VC6.0 環境下用PBC 庫分別對本文方案與對比方案進行了仿真模擬,對比結果如表3 所示.其中標量乘法運算時間Tsm=0.0004 ms,群元素乘法運算時間Tmul=0.0314 ms,Hash 函數運算時間Th=0.0001 ms,指數運算時間Te=6.9866 ms,雙線性配對時間Tbp=9.6231 ms,范德蒙矩陣求逆時間Tinv取決于矩陣求逆方法.從表3 可以看出,由于本文方案中不存在計算開銷較大的雙線性配對運算,因此在密文生成階段的計算時間開銷相比于文獻[25?26]的方案有顯著降低.在數據解密及驗證階段,非聚合模式下的文獻[25?26]方案需要所有數據用戶逐一對數據進行驗證并解密,而本文方案中的數據用戶能夠對聚合密文進行批量驗證,驗證效率相比于文獻[25?26]的方案有所提高.

Table 3 Computation Amount Comparison表3 計算量比較ms
此外,文獻[25?26]方案僅支持將多個用戶的密文兩兩一組進行匹配,其密文等值測試算法中雙線性配對運算數量與參與測試的用戶數量呈線性關系;而本文方案中,測試者可以同時對n個用戶的密文進行匹配,且測試過程中不存在雙線性配對運算.本文方案的等值測試時間主要取決于測試者對范德蒙行列式求逆時所選取的算法,而在對范德蒙矩陣求逆的過程中僅進行標量加法與乘法等計算效率較高的運算[28],因此本文方案的密文等值測試效率同樣高于文獻[25?26]方案的效率.
針對現有的WBAN 密碼方案在多用戶環境下計算效率較低等問題,本文提出了支持多密文等值測試的WBAN 聚合簽密方案.該方案采用基于身份的密碼體制,消除了傳統公鑰方案中證書管理的開銷;引入多密文等值測試技術,實現了多數據用戶對多醫療密文的同時檢索;減少了多用戶環境下密文等值測試的計算開銷;利用聚合簽密技術,提高了對多個用戶的醫療數據進行簽密的效率.本文方案滿足醫療數據在傳輸過程中的機密性、完整性和可認證性,同時保證了數據擁有者簽名的不可偽造性與測試陷門的單向性.與同類方案的對比分析結果表明,本文方案支持更多安全屬性且計算開銷更低.在未來的工作中,將嘗試設計抗量子計算攻擊的支持多密文等值測試的WBAN 簽密方案.
作者貢獻聲明:楊小東負責論文整體思路與實驗方案的設計;周航負責設計方案與撰寫論文;任寧寧負責方案仿真與效率分析;袁森負責搜集應用場景相關資料;王彩芬提出指導意見并修改論文.