蒙 彤,郭 瑞,王翊丞,劉穎菲
1.西安郵電大學(xué) 網(wǎng)絡(luò)空間安全學(xué)院,西安 710121
2.西安郵電大學(xué) 無(wú)線(xiàn)網(wǎng)絡(luò)安全技術(shù)國(guó)家工程實(shí)驗(yàn)室,西安 710121
隨著物聯(lián)網(wǎng)的興起以及傳感器技術(shù)的發(fā)展,大量醫(yī)療數(shù)據(jù)在網(wǎng)絡(luò)邊緣產(chǎn)生,這些醫(yī)療數(shù)據(jù)傳輸需要實(shí)時(shí)處理,并且對(duì)實(shí)時(shí)性的要求較高。由于云服務(wù)器的壓力比較大,則將醫(yī)療數(shù)據(jù)的計(jì)算和處理遷移到邊緣設(shè)備上來(lái)進(jìn)行。而邊緣設(shè)備不具備充足的計(jì)算能力,限制了醫(yī)療服務(wù)的性能和效率,故采用邊-云協(xié)同的方式[1]。邊-云協(xié)同,即通過(guò)將網(wǎng)絡(luò)轉(zhuǎn)發(fā)、存儲(chǔ)、計(jì)算、智能化數(shù)據(jù)分析等工作放在邊緣處理,將超大規(guī)模計(jì)算、存儲(chǔ)和非時(shí)延敏感等任務(wù)放在云端,云計(jì)算與邊緣計(jì)算的相互配合實(shí)現(xiàn)邊-云協(xié)同、全網(wǎng)算力調(diào)度和全網(wǎng)統(tǒng)一管控等能力,將二者的優(yōu)勢(shì)互補(bǔ)實(shí)現(xiàn)計(jì)算的協(xié)同[2]。因此,使用邊-云協(xié)同的方式不僅可以減輕醫(yī)療云服務(wù)器的壓力,而且可以提高醫(yī)療系統(tǒng)的效率,更加方便服務(wù)患者,滿(mǎn)足實(shí)時(shí)性需求。
傳感器節(jié)點(diǎn)被植入或佩戴在患者身上,檢測(cè)人體參數(shù),可遠(yuǎn)程實(shí)時(shí)監(jiān)測(cè)患者的心率、血壓、心電圖、心音等生理參數(shù),通過(guò)互聯(lián)網(wǎng)將患者的健康數(shù)據(jù)傳輸?shù)奖O(jiān)測(cè)中心進(jìn)行及時(shí)處理和反饋。利用無(wú)線(xiàn)傳感器網(wǎng)絡(luò)收集人體生理數(shù)據(jù),有助于了解人體健康狀況,研究人類(lèi)疾病[3]。Yuce 等人[4]提出了醫(yī)療無(wú)線(xiàn)傳感器網(wǎng)絡(luò)(healthcare wireless sensor networks,HWSNs)系統(tǒng)。該系統(tǒng)由傳感器節(jié)點(diǎn)、患者、中央控制單元(central control unit,CCU)、云服務(wù)器和醫(yī)療專(zhuān)業(yè)人員組成。傳感器被植入患者體內(nèi),將傳感器節(jié)點(diǎn)檢測(cè)到的患者健康數(shù)據(jù)發(fā)送到CCU 進(jìn)行進(jìn)一步處理,處理后的數(shù)據(jù)通過(guò)互聯(lián)網(wǎng)傳輸給醫(yī)療專(zhuān)業(yè)人員。醫(yī)療專(zhuān)業(yè)人員根據(jù)這些數(shù)據(jù)為患者反饋醫(yī)療報(bào)告。然而,由于患者的醫(yī)療數(shù)據(jù)是通過(guò)公共通信信道進(jìn)行傳輸,容易受到攔截、竊聽(tīng)、修改等攻擊,導(dǎo)致患者發(fā)生嚴(yán)重的隱私數(shù)據(jù)泄露事故[5]。因此,醫(yī)療數(shù)據(jù)的真實(shí)性和患者的隱私保護(hù)是HWSNs系統(tǒng)中一個(gè)重要的問(wèn)題。
數(shù)字簽名技術(shù)可以提供數(shù)據(jù)的完整性、真實(shí)性和不可偽造性,可以用來(lái)解決HWSNs 中的隱私數(shù)據(jù)被破壞問(wèn)題。然而,傳感器節(jié)點(diǎn)的資源有限,患者的大量醫(yī)療數(shù)據(jù)在線(xiàn)傳輸時(shí),計(jì)算和通信成本顯著增加。因此,將聚合的方法引入到數(shù)字簽名中,減少計(jì)算和通信成本,從而可以更加高效地解決問(wèn)題。但是在無(wú)證書(shū)聚合簽名中,若其中任何一個(gè)簽名者的密鑰泄露,則此簽名者生成的聚合簽名都將面臨安全問(wèn)題。為了減少密鑰泄露帶來(lái)的危害,將系統(tǒng)的整個(gè)周期劃分為若干個(gè)時(shí)間片段,再引入?yún)f(xié)助器幫助用戶(hù)在每一個(gè)時(shí)間片段更新密鑰。而在聚合簽名方案中,只有聚合簽名被傳輸和驗(yàn)證,而不是所有參與聚合的單個(gè)簽名都被傳輸和驗(yàn)證。但驗(yàn)證者希望通過(guò)聚合簽名來(lái)驗(yàn)證所有簽名的有效性。為了滿(mǎn)足驗(yàn)證者需求,聚合簽名方案應(yīng)該保證聚合簽名的有效性等同于所有單個(gè)簽名的有效性。故一種完全選擇密鑰攻擊被提出,攻擊者被允許持有所有簽名者的私鑰,其目標(biāo)不是偽造聚合簽名,而是輸出無(wú)效的單個(gè)簽名,從而來(lái)破壞等價(jià)有效性。因此,研究了邊-云協(xié)同下用于醫(yī)療無(wú)線(xiàn)傳感器網(wǎng)絡(luò)環(huán)境的可抵御完全選擇密鑰攻擊的無(wú)證書(shū)并行密鑰隔離聚合簽名。
Boneh等人[6]提出了聚合簽名的概念,在簽名中n個(gè)簽名者對(duì)n個(gè)消息m1,m2,…,mn分別進(jìn)行簽署,得到n個(gè)簽名σ1,σ2,…,σn,而驗(yàn)證者只需要驗(yàn)證聚合后的簽名,便可以確定n個(gè)簽名者是否簽署了n個(gè)消息。Shen等人[7]提出了一個(gè)基于身份的聚合簽名方案,適用于醫(yī)療無(wú)線(xiàn)傳感器網(wǎng)絡(luò),但是此方案存在固有的問(wèn)題是密鑰托管。Xiong 等人[8]提出了一個(gè)驗(yàn)證只需要三次配對(duì),不需要時(shí)鐘同步的高效率無(wú)證書(shū)聚合簽名方案。但是,研究人員發(fā)現(xiàn)文獻(xiàn)[8]可以通過(guò)公鑰替換攻擊偽造一個(gè)有效的簽名。Tu等人[9]和Cheng等人[10]通過(guò)改進(jìn)文獻(xiàn)[8]的漏洞,抵御敵手的攻擊提出了改進(jìn)的無(wú)證書(shū)聚合簽名。王竹等人[11]提出了高效可證明安全的無(wú)證書(shū)有序聚合簽名方案。
近年來(lái),研究人員逐漸將關(guān)注點(diǎn)放在了無(wú)證書(shū)聚合簽名與應(yīng)用環(huán)境結(jié)合。Kumar等人[12]提出了用于HWSNs的無(wú)證書(shū)聚合簽名,其驗(yàn)證也需要三次配對(duì),該方案證明了能夠?qū)崿F(xiàn)消息認(rèn)證和完整性驗(yàn)證功能,同時(shí)還可實(shí)現(xiàn)不可否認(rèn)性和保密性。但是,Wu等人[13]和Zhan等人[14]發(fā)現(xiàn)文獻(xiàn)[12]容易受到惡意但被動(dòng)的KGC 的簽名偽造攻擊。Xie等人[15]也證明了文獻(xiàn)[12]的不足,通過(guò)改進(jìn)提出了一個(gè)基于橢圓曲線(xiàn)密碼體制的無(wú)證書(shū)聚合簽名方案,不僅可以保護(hù)數(shù)據(jù)隱私,還降低了HWSNs的通信成本和存儲(chǔ)成本。為了進(jìn)一步提高HWSNs 的安全性,減少計(jì)算執(zhí)行時(shí)間和帶寬,Gayathri 等人[16]提出了一種用于HWSNs的無(wú)雙線(xiàn)性配對(duì)方案。但是,Liu等人[17]發(fā)現(xiàn)文獻(xiàn)[16]無(wú)法抵御內(nèi)外部攻擊,并且提出了改進(jìn)的方案。Hashimoto等人[18]提出了一個(gè)基于雙線(xiàn)性對(duì)的無(wú)證書(shū)聚合簽名方案,證明了該方案在計(jì)算Diffie-Hellman問(wèn)題和橢圓曲線(xiàn)離散對(duì)數(shù)困難問(wèn)題的嚴(yán)格假設(shè)下是安全的。但是,Shim等人[19]證明了該方案對(duì)于內(nèi)外部攻擊都是不安全的。Ye 等人[20]提出了一種用于車(chē)聯(lián)網(wǎng)的具有許多安全屬性的高級(jí)無(wú)證書(shū)聚合簽名方案,但該方案只在隨機(jī)諭言機(jī)模型下進(jìn)行了安全性證明。Wang 等人[21]提出了在標(biāo)準(zhǔn)模型下用于車(chē)聯(lián)網(wǎng)的條件隱私保護(hù)的無(wú)證書(shū)聚合簽名方案,該方案采用全聚合技術(shù)來(lái)減少計(jì)算量和帶寬資源。
在傳統(tǒng)的聚合簽名方案中,攻擊者在n個(gè)用戶(hù)中最多持有n-1 個(gè)私鑰。Yang等人[22]提出了一種完全選擇密鑰攻擊,攻擊者被允許持有所有簽名者的私鑰,其目標(biāo)不是偽造聚合簽名,而是輸出無(wú)效的單個(gè)簽名,從而來(lái)破壞等價(jià)有效性。而且在聚合簽名方案中,只有聚合簽名被傳輸和驗(yàn)證,而不是所有參與聚合的單個(gè)簽名都被傳輸和驗(yàn)證。但驗(yàn)證者希望通過(guò)聚合簽名來(lái)驗(yàn)證所有簽名的有效性。為了滿(mǎn)足驗(yàn)證者需求,聚合簽名方案應(yīng)該保證聚合簽名的有效性等同于所有單個(gè)簽名的有效性。Wu等人[23]提出了一種可以抵御完全選擇密鑰攻擊的無(wú)證書(shū)聚合簽名方案。
但是在無(wú)證書(shū)聚合簽名中,若其中任何一個(gè)簽名者的密鑰泄露,則此簽名者生成的聚合簽名都將面臨安全問(wèn)題。為了減少密鑰泄露帶來(lái)的危害,Dodis 等人[24]介紹了密鑰隔離安全機(jī)制,將系統(tǒng)的整個(gè)周期劃分為若干個(gè)時(shí)間片段。在整個(gè)系統(tǒng)生命周期內(nèi),用戶(hù)公鑰不變,用戶(hù)的密鑰被分為兩種類(lèi)型,分別是用戶(hù)密鑰和助手密鑰。用戶(hù)密鑰隨著時(shí)間的推移而更新,用來(lái)執(zhí)行簽名操作。助手密鑰由物理安全設(shè)備(稱(chēng)為協(xié)助器,helper)發(fā)布,用于在每一個(gè)時(shí)間片段協(xié)助用戶(hù)更新密鑰。當(dāng)用戶(hù)一些時(shí)間片段的私鑰泄露時(shí),協(xié)助器密鑰安全的情況下就不會(huì)危害到其他時(shí)間片段的私鑰安全性。Dodis 等人[25]提出了一個(gè)密鑰隔離簽名方案。Wan等人[26]把密鑰隔離功能和無(wú)證書(shū)簽名結(jié)合起來(lái),提出了無(wú)證書(shū)密鑰隔離簽名方案。Reddy等人[27]提出了一個(gè)在橢圓曲線(xiàn)上的基于身份的高效雙線(xiàn)性對(duì)密鑰隔離簽名方案。然而,上述方案只適用于僅有單個(gè)協(xié)助器,若用戶(hù)和協(xié)助器的密鑰都暴露,則方案還是會(huì)受到攻擊。為了解決這個(gè)問(wèn)題,Hanaoka等人[28]提出了新的并行密鑰隔離方案,在此方案中使用兩個(gè)獨(dú)立的協(xié)助器交替更新用戶(hù)的密鑰,減少了協(xié)助器密鑰暴露的機(jī)會(huì),從而提高了該方案安全性。Hou 等人[29]提出了一個(gè)基于證書(shū)的并行密鑰隔離聚合簽名方案(CB-PKIAS),該方案雖然解決了密鑰暴露問(wèn)題,但其證書(shū)管理問(wèn)題仍未解決。
為了解決證書(shū)管理問(wèn)題,抵御完全選擇密鑰攻擊并實(shí)現(xiàn)并行密鑰隔離特性,本文在邊-云協(xié)同下基于醫(yī)療無(wú)線(xiàn)傳感器網(wǎng)絡(luò)提出了一種可抵御完全選擇密鑰攻擊的無(wú)證書(shū)并行密鑰隔離聚合簽名方案。具體貢獻(xiàn)如下:
(1)本文將邊-云協(xié)同方式應(yīng)用于醫(yī)療無(wú)線(xiàn)傳感器網(wǎng)絡(luò)環(huán)境下,滿(mǎn)足醫(yī)療無(wú)線(xiàn)傳感器網(wǎng)絡(luò)的及時(shí)性需求,解決了高延遲問(wèn)題,使得患者可以得到及時(shí)的救助,為患者提供了一定的便利,同時(shí)也緩解了醫(yī)療云服務(wù)器的壓力。
(2)本文提出了一個(gè)可抵御完全選擇密鑰攻擊的無(wú)證書(shū)并行密鑰隔離聚合簽名方案,該方案在適應(yīng)性選擇消息攻擊下是存在性不可偽造的,同時(shí)利用并行密鑰隔離解決了密鑰暴露問(wèn)題,并利用哈希的抗碰撞性抵御完全選擇密鑰攻擊。
(3)本方案為用戶(hù)提供假名,利用不可鏈接性保護(hù)用戶(hù)的隱私?;趨^(qū)塊鏈技術(shù)對(duì)用戶(hù)進(jìn)行追蹤和信譽(yù)評(píng)分,以防止惡意用戶(hù)的攻擊,并將醫(yī)療報(bào)告存入?yún)^(qū)塊鏈中,實(shí)現(xiàn)數(shù)據(jù)共享,方便醫(yī)療專(zhuān)業(yè)人員和患者的使用。
(4)對(duì)本方案和其他方案進(jìn)行了性能對(duì)比分析。本方案未使用雙線(xiàn)性對(duì)和點(diǎn)映射哈希運(yùn)算,提高了聚合簽名的效率。通過(guò)具體的實(shí)驗(yàn)仿真和性能比較,結(jié)果表明在計(jì)算和通信成本方面本方案更有優(yōu)勢(shì)。
DL 假設(shè):定義概率多項(xiàng)式時(shí)間算法A解決DL 問(wèn)題的優(yōu)勢(shì)為AdvDL(A)=Pr[A(P,bP)=b]。對(duì)于任意的多項(xiàng)式時(shí)間算法A,優(yōu)勢(shì)AdvDL(A) 是可忽略的,則稱(chēng)之為滿(mǎn)足DL假設(shè)。其中,概率來(lái)源于b在上的隨機(jī)選取和算法A的隨機(jī)選擇。
本文所使用的基本符號(hào)和縮寫(xiě)的含義如表1所示。
本文的并行密鑰隔離聚合簽名方案包含9個(gè)算法,具體如下所示:
(1)初始化算法(Setup):密鑰生成中心KGC輸入安全參數(shù)k,生成主密鑰s和系統(tǒng)公共參數(shù)params。
(2)假名生成算法(Pseudonym Generation):用戶(hù)DO和KGC進(jìn)行交互,KGC為DO生成假名并返回給相應(yīng)的DO。
(3)部分私鑰提取算法(Extract Partial Private key):KGC 將用戶(hù)假名IDi(i=1,2,…,n)和系統(tǒng)公鑰Ppub輸入,生成部分私鑰發(fā)送給相應(yīng)的用戶(hù)。
(8)聚合簽名算法(Aggregate Sign):MES 輸入params,IDi,mi,σi和醫(yī)療云服務(wù)器的驗(yàn)證公鑰pkver,生成聚合簽名σ。
(9)聚合驗(yàn)證算法(Aggregate Verify):MCS 輸入params,IDi,mi,σ和skver,當(dāng)簽名σ有效時(shí),返回true,否則,返回false。
本文抵御完全選擇攻擊的并行密鑰隔離聚合簽名方案將面臨敵手A1和A2的不可偽造性攻擊和密鑰隔離性攻擊,敵手A3的完全選擇密鑰攻擊。這些敵手的特點(diǎn)和相應(yīng)的游戲具體如下:
敵手A1:第一類(lèi)敵手,這類(lèi)敵手為惡意的用戶(hù),可以替換合法用戶(hù)公鑰,但無(wú)法獲得系統(tǒng)主密鑰。
敵手A2:第二類(lèi)敵手,這類(lèi)敵手為惡意但被動(dòng)的KGC,可以擁有系統(tǒng)主密鑰,但無(wú)法進(jìn)行用戶(hù)公鑰替換。
敵手A3:這類(lèi)敵手為內(nèi)部攻擊者,持有所有簽名者的私鑰,其目標(biāo)不是偽造聚合簽名,而是輸出無(wú)效的單個(gè)簽名,從而來(lái)破壞等價(jià)有效性。
游戲1假設(shè)第一類(lèi)敵手A1和挑戰(zhàn)者C 執(zhí)行以下交互。
(1)初始化:C 運(yùn)行初始化算法生成主密鑰s和系統(tǒng)公開(kāi)參數(shù)params,然后返回params給A1。
(2)詢(xún)問(wèn):A1執(zhí)行以下操作:
①哈希詢(xún)問(wèn):當(dāng)收到此詢(xún)問(wèn)時(shí),C 將哈希值返回給A1。
⑤協(xié)助器密鑰詢(xún)問(wèn):當(dāng)收到這個(gè)詢(xún)問(wèn)時(shí),C 返回兩個(gè)協(xié)助器的公私鑰給A1。
⑦簽名詢(xún)問(wèn):當(dāng)收到此詢(xún)問(wèn)時(shí),C 將σi返回給A1。
(3)偽造:當(dāng)完成上述詢(xún)問(wèn)時(shí),A1將生成偽造簽名σj,并滿(mǎn)足以下條件:
①A1不能用IDj執(zhí)行部分私鑰和簽名密鑰詢(xún)問(wèn)。
②A(yíng)1不能用(IDj,mj,t*)執(zhí)行簽名詢(xún)問(wèn)。
③A1可以通過(guò)輸入式(1)來(lái)偽造有效的簽名。
游戲2假設(shè)第二類(lèi)敵手A2和挑戰(zhàn)者C 執(zhí)行以下交互。
(1)初始化:C 運(yùn)行初始化算法生成主密鑰s和系統(tǒng)公開(kāi)參數(shù)params,然后返回params和s給A2。
(2)詢(xún)問(wèn):除了公鑰替換詢(xún)問(wèn)和部分私鑰詢(xún)問(wèn)以外,在詢(xún)問(wèn)階段A2與A1執(zhí)行相同操作。
(3)偽造:當(dāng)完成上述詢(xún)問(wèn)時(shí),A2將生成偽造簽名sj,并滿(mǎn)足除了①以外和A1相同的條件:
①A2不能用IDj執(zhí)行簽名密鑰詢(xún)問(wèn)。
定義1在隨機(jī)諭言機(jī)模型下,假設(shè)上述2個(gè)游戲中敵手在概率多項(xiàng)式時(shí)間內(nèi)都不能獲勝,則本方案在適應(yīng)性選擇攻擊下具有不可偽造性和強(qiáng)密鑰隔離性。
游戲3假設(shè)存在一個(gè)完全選擇密鑰攻擊敵手A3與挑戰(zhàn)者C 執(zhí)行以下交互:
(1)初始化:與A1執(zhí)行相同的初始化過(guò)程。
(2)詢(xún)問(wèn):除了①以外,A3執(zhí)行與A1相同的操作:
(3)偽造:當(dāng)完成上述詢(xún)問(wèn)時(shí),A3將產(chǎn)生一個(gè)偽造的聚合簽名,并滿(mǎn)足以下條件:
①聚合簽名是所有單個(gè)簽名的聚合。
②上述的聚合簽名是有效的。
③至少有一個(gè)簽名σj不能通過(guò)驗(yàn)證等式。
定義2如果不存在游戲3中的敵手A3在概率多項(xiàng)式時(shí)間內(nèi)獲勝,則稱(chēng)本方案可以抵御完全選擇密鑰攻擊。
本方案系統(tǒng)模型如圖1 所示,由六個(gè)實(shí)體組成:用戶(hù)(data owner,DO)、n個(gè)醫(yī)療傳感節(jié)點(diǎn)(sensor node,SN)、醫(yī)療邊緣服務(wù)器(medical edge server,MES)、醫(yī)療云服務(wù)器(medical cloud server,MCS)、密鑰生成中心(key generation center,KGC)和醫(yī)療中心(healthcare authority,HA)。
(1)用戶(hù)(DO):是醫(yī)療患者,通過(guò)KGC注冊(cè)生成自己的公私鑰對(duì),同時(shí)KGC 為DO 生成假名,利用信用評(píng)分機(jī)制和區(qū)塊鏈技術(shù)監(jiān)管追蹤用戶(hù)的身份信息。
(2)醫(yī)療傳感節(jié)點(diǎn)(SN):是資源有限的小型設(shè)備,每個(gè)DO都有n個(gè)醫(yī)療傳感節(jié)點(diǎn)進(jìn)行數(shù)據(jù)的收集,并將數(shù)據(jù)傳輸給MES。
(3)醫(yī)療邊緣服務(wù)器(MES):位于SN 附近,是連接SN和MCS的橋梁,收集SN的單個(gè)簽名生成一個(gè)聚合簽名,并傳輸給MCS。
(4)醫(yī)療云服務(wù)器(MCS):具有很強(qiáng)的計(jì)算能力和大量的存儲(chǔ)空間,能處理分析MES發(fā)送的聚合數(shù)據(jù),處理后將其數(shù)據(jù)傳輸?shù)紿A 并將結(jié)果發(fā)送給KGC,同時(shí),還充當(dāng)預(yù)期驗(yàn)證者身份。
(5)密鑰生成中心(KGC):對(duì)系統(tǒng)進(jìn)行初始化生成系統(tǒng)參數(shù),負(fù)責(zé)DO的注冊(cè),為用戶(hù)生成部分私鑰和假名,并將假名和真名上傳到區(qū)塊鏈上實(shí)行信譽(yù)評(píng)分機(jī)制。
(6)醫(yī)療中心(HA):經(jīng)授權(quán)的醫(yī)療中心具有一定的計(jì)算和通信能力,對(duì)數(shù)據(jù)進(jìn)行分析并為病人反饋診療報(bào)告。
本文提出的方案包括以下9個(gè)算法。
4.2.1 初始化算法
輸入安全參數(shù)k,KGC執(zhí)行以下操作:
4.2.2 假名生成算法
用戶(hù)選擇一個(gè)唯一的身份標(biāo)識(shí)符RIDi,將RIDi發(fā)送給KGC。隨機(jī)選擇αi∈Zq*,KGC計(jì)算:
對(duì)用戶(hù)進(jìn)行信用評(píng)分,將假名IDi、用戶(hù)身份RIDi和信用評(píng)分C以L(fǎng)ist形式存入?yún)^(qū)塊鏈中。
4.2.3 部分私鑰生成算法
4.2.4 密鑰生成算法
4.2.5 更新消息生成算法
協(xié)助器收到用戶(hù)發(fā)來(lái)的Hskj,其中j=(t-1) mod 2,表示第j個(gè)協(xié)助器,與時(shí)間片段參數(shù)t相對(duì)應(yīng),隨后計(jì)算更新信息,將其發(fā)送給用戶(hù)。
4.2.6 臨時(shí)私鑰生成算法
4.2.7 簽名算法
4.2.8 聚合簽名算法
邊緣服務(wù)器收到簽名σi=(Ui,Vi)后,進(jìn)行以下操作:
(1)通過(guò)檢查|Ti-tsi|≤ΔT來(lái)確定tsi的時(shí)效性,其中Ti代表數(shù)據(jù)傳輸時(shí)間,tsi代表接收時(shí)間,ΔT代表網(wǎng)絡(luò)傳輸時(shí)延。
4.2.9 驗(yàn)證算法
醫(yī)療云服務(wù)器收到σ=(V,U1,U2,…,Un,B)后,進(jìn)行以下操作:
(1)通過(guò)計(jì)算式(5)、式(6)、式(7)、式(8)和式(10)計(jì)算Bi。
(2)驗(yàn)證式(11)和(12)是否成立。
若等式成立,醫(yī)療云服務(wù)器接收此聚合簽名σ=(V,U1,U2,…,Un,B)并將其醫(yī)療數(shù)據(jù)發(fā)送給醫(yī)療中心,醫(yī)療中心反饋診療報(bào)告給用戶(hù)。若不成立,則可能存在惡意用戶(hù),將其反饋給KGC,KGC進(jìn)行信譽(yù)評(píng)分操作,追蹤并懲罰惡意用戶(hù)。KGC 可通過(guò)等式RIDi=IDi⊕H1(αiPpub)追蹤獲得惡意患者身份信息,根據(jù)公式C=C×b(0<b<1) 來(lái)降低惡意患者的聲譽(yù)評(píng)分。當(dāng)患者的聲譽(yù)評(píng)分C小于某一閾值Y時(shí),將患者從List 中刪除,并將其添加至黑名單。
5.1.1 部分私鑰的有效性驗(yàn)證
5.1.2 簽名驗(yàn)證
5.1.3 聚合簽名驗(yàn)證
定理1在隨機(jī)諭言機(jī)模型下,由于橢圓曲線(xiàn)上的離散對(duì)數(shù)問(wèn)題是困難的,則本文方案在適應(yīng)性選擇攻擊下具有強(qiáng)密鑰隔離性和不可偽造性。
引理1在隨機(jī)諭言機(jī)模型下,若第一類(lèi)敵手A1能在概率多項(xiàng)式時(shí)間內(nèi)以不可忽略的優(yōu)勢(shì)ε攻破本文聚合簽名方案的不可偽造性和強(qiáng)密鑰隔離性,則存在算法C 能在概率多項(xiàng)式時(shí)間內(nèi),以不可忽略的優(yōu)勢(shì)Adv(τ1)≥成功解決離散對(duì)數(shù)問(wèn)題(其中,A1最多進(jìn)行qs次簽名詢(xún)問(wèn)、qpsk次部分私鑰詢(xún)問(wèn)和qsk次私鑰詢(xún)問(wèn),聚合簽名的用戶(hù)數(shù)為n,e是自然對(duì)數(shù)底數(shù))。
證明
2)詢(xún)問(wèn):敵手A1進(jìn)行以下詢(xún)問(wèn):
(5)部分私鑰詢(xún)問(wèn):當(dāng)A1以身份IDi進(jìn)行詢(xún)問(wèn)時(shí),C 先檢索列表L,再進(jìn)行以下操作:
(6)公鑰詢(xún)問(wèn):當(dāng)A1以身份IDi進(jìn)行公鑰詢(xún)問(wèn)時(shí),C 先檢索列表L,再進(jìn)行以下操作:
(7)秘密值詢(xún)問(wèn):當(dāng)A1以身份IDi進(jìn)行秘密值詢(xún)問(wèn)時(shí),C 檢索列表L,再進(jìn)行以下操作:
(10)簽名密鑰詢(xún)問(wèn):當(dāng)A1用元組(IDi,t)進(jìn)行簽名密鑰詢(xún)問(wèn)時(shí),C 維護(hù)列表Lh=(IDi,Hsk0,Hsk1,Hpk0,Hpk1),檢索IDi是否存在于Lh中。
②否則,C放棄,模擬終止。
(13)簽名驗(yàn)證詢(xún)問(wèn):當(dāng)A1用元組(IDi,mi,σi)進(jìn)行驗(yàn)證詢(xún)問(wèn)時(shí),C查詢(xún)列表L中是否存在IDi所對(duì)應(yīng)的元組。
3)偽造:通過(guò)以上詢(xún)問(wèn),A1輸出(IDi,mi,pkIDi)(1 ≤i≤n)的聚合簽名σ,其中至少有一個(gè)IDi(i∈[1,n])沒(méi)有進(jìn)行部分私鑰詢(xún)問(wèn)和私鑰詢(xún)問(wèn),同時(shí)至少有一個(gè)mi(i∈[1,n])沒(méi)有進(jìn)行簽名詢(xún)問(wèn)。
(1)如果所有的IDi(i∈[1,n])都有IDi≠I(mǎi)Dj,則C將模擬終止。
(2)若有一個(gè)IDi=IDj,則在列表L,L1,L2,L3,L4,Lh中查詢(xún)身份IDi(i∈[1,n])所對(duì)應(yīng)的值,并驗(yàn)證式(10)是否成立。若等式成立,則C將b作為離散問(wèn)題的有效解。
綜上,因?yàn)棣攀遣豢珊雎缘?,所以C 能以不可忽略的概率解決離散對(duì)數(shù)問(wèn)題。因此,本方案在語(yǔ)義上是安全的,不會(huì)受到敵手A1的偽造攻擊。
引理2在隨機(jī)諭言機(jī)模型下,若第二類(lèi)敵手A2能在概率多項(xiàng)式時(shí)間內(nèi)以不可忽略的優(yōu)勢(shì)ε攻破本文聚合簽名方案的不可偽造性和強(qiáng)密鑰隔離性,則存在算法C,能在概率多項(xiàng)式時(shí)間內(nèi)以不可忽略的優(yōu)勢(shì)Adv(τ2)≥成功解決離散對(duì)數(shù)問(wèn)題(其中,A2最多進(jìn)行qs次簽名詢(xún)問(wèn)、qpsk次部分密鑰詢(xún)問(wèn)和qsk次私鑰詢(xún)問(wèn),聚合簽名的用戶(hù)數(shù)為n,e 是自然對(duì)數(shù)底數(shù))。
證明
1)初始化:假設(shè)算法C 是一個(gè)橢圓曲線(xiàn)上離散對(duì)數(shù)問(wèn)題的解決者,輸入元組(P,bP),其中,且未知,任務(wù)是計(jì)算b。C 使用A2充當(dāng)挑戰(zhàn)者,C 執(zhí)行初始化算法,生成公開(kāi)參數(shù)Params和主密鑰s。發(fā)送Params和s給A2;同時(shí),C 管理列表L,L1,L2,L3,L4,Lh,將各列表置空。C 選擇IDj作為其猜測(cè)的挑戰(zhàn)身份,則C 選擇IDj的概率為
2)詢(xún)問(wèn):敵手A2對(duì)諭言機(jī)H1、諭言機(jī)H2、諭言機(jī)H3、諭言機(jī)H4、諭言機(jī)H5、公鑰、私鑰、協(xié)助器密鑰、簽名密鑰、簽名、聚合簽名、簽名驗(yàn)證詢(xún)問(wèn)的執(zhí)行過(guò)程與引理1中的相應(yīng)詢(xún)問(wèn)相同。
(1)部分私鑰詢(xún)問(wèn):當(dāng)A2以身份IDi進(jìn)行查詢(xún)時(shí),C 先檢索列表L,再進(jìn)行以下操作:
3)偽造:通過(guò)上述詢(xún)問(wèn),A2輸出(IDi,mi,pkIDi)(1 ≤i≤n)的聚合簽名σ,其中至少有一個(gè)IDi(i∈[1,n])沒(méi)有進(jìn)行部分私鑰詢(xún)問(wèn)和私鑰詢(xún)問(wèn),同時(shí)至少有一個(gè)mi(i∈[1,n])沒(méi)有進(jìn)行簽名詢(xún)問(wèn)。
(1)若對(duì)于所有的IDi(i∈[1,n])都有IDi≠I(mǎi)Dj,則C 將模擬終止。
(2)若有一個(gè)IDi=IDj,則在列表L,L1,L2,L3,L4,Lh中查詢(xún)身份IDi(i∈[1,n])所對(duì)應(yīng)的值,并驗(yàn)證式(10)是否成立。若等式成立,C 計(jì)算b作為離散問(wèn)題的有效解。
若等式不成立,則C 不能解決此離散對(duì)數(shù)問(wèn)題。由引理1 可知,模擬過(guò)程中C 不終止的概率至少為,因?yàn)棣攀遣豢珊雎缘模訡 能以不可忽略的概率解決離散對(duì)數(shù)問(wèn)題。因此,本方案在語(yǔ)義上是安全的,不會(huì)受到敵手A2的偽造攻擊。由引理1和引理2的證明可知,定理1成立。
定理2假設(shè)H5是一個(gè)抗碰撞的哈希函數(shù)的情況下,本文提出的聚合簽名算法抵御內(nèi)部攻擊是有效的,即本文聚合簽名方案可以抵御完全選擇密鑰攻擊。
證明假設(shè)A3是一個(gè)內(nèi)部攻擊者,它能以不可忽略的優(yōu)勢(shì)ε攻破本文的聚合簽名算法,即挑戰(zhàn)者C 能以不可忽略的優(yōu)勢(shì)攻破哈希函數(shù)H5的抗碰撞性。A3和C 之間的交互如下:
1)初始化:與A1執(zhí)行相同的初始化過(guò)程。
2)詢(xún)問(wèn):A3執(zhí)行與A1執(zhí)行除(1)以外相同的詢(xún)問(wèn)。
(1)簽名驗(yàn)證詢(xún)問(wèn):A3用元組進(jìn)行聚合簽名詢(xún)問(wèn),C 用預(yù)期驗(yàn)證者的驗(yàn)證密鑰skver=y來(lái)運(yùn)行聚合驗(yàn)證算法,若驗(yàn)證通過(guò),則返回True給A3,否則返回False給A3。
(3)在元組{σ1,σ2,…,σn} 中,至少有一個(gè)簽名是無(wú)效的。令σi′為無(wú)效的那一個(gè),則有:
顯然,由于上式,基于兩個(gè)不同的輸入,有:
因此,C 針對(duì)哈希函數(shù)H5找到一對(duì)碰撞,即(V1pkver,V2pkver,…,Vn pkver)和
在上面的模擬中,挑戰(zhàn)者C 持有主密鑰msk和每個(gè)用戶(hù)的私鑰,并且能夠回答攻擊者A3的所有查詢(xún)。因此,A3不能將模擬與真實(shí)方案區(qū)分開(kāi)來(lái)。這很明顯A3和C 的成功概率相同。而哈希函數(shù)是抗碰撞的,故本方案的聚合算法是可以抵御完全選擇密鑰攻擊的。
(1)匿名性:在醫(yī)療系統(tǒng)中,用戶(hù)隨機(jī)選擇一個(gè)唯一的身份標(biāo)識(shí)符RIDi,將RIDi發(fā)送給KGC。隨機(jī)選擇,KGC 計(jì)算式(2)、式(3)和式(4),并將假名IDi、用戶(hù)身份RIDi以L(fǎng)ist形式存入?yún)^(qū)塊鏈中。由于敵手無(wú)法通過(guò)假名信息識(shí)別傳感器節(jié)點(diǎn)的真實(shí)身份,因此本文方案具有身份匿名性。
(2)數(shù)據(jù)可驗(yàn)證和完整性:由定理1可知,在隨機(jī)諭言機(jī)模型下,基于橢圓曲線(xiàn)困難問(wèn)題假設(shè),在多項(xiàng)式時(shí)間內(nèi)敵手不能偽造一個(gè)有效的簽名。因此,邊緣服務(wù)器通過(guò)判斷式(13)是否成立驗(yàn)證醫(yī)療數(shù)據(jù)的有效性和完整性。因此本方案的數(shù)據(jù)是可驗(yàn)證的且可提供數(shù)據(jù)完整性。
(4)可追蹤性:由于用戶(hù)假名的生成方式為式(2)、式(3)和式(4),則KGC 可以利用自己的隨機(jī)數(shù)恢復(fù)出用戶(hù)的真實(shí)身份:RIDi=PIDi,2⊕H(αiPpub)。因此,本方案具有身份可追蹤性,且通過(guò)信用評(píng)分C對(duì)用戶(hù)信用度進(jìn)行管理,可防止惡意用戶(hù)攻擊。因此本方案具有身份可追蹤性。
在本章中,將本方案與方案[7,13,15,23]進(jìn)行比較。硬件平臺(tái)包括一個(gè)Intel i5-8500 處理器,主頻3.00 GHz,內(nèi)存8 GB,運(yùn)行Windows 10 操作系統(tǒng)。具體的密碼操作所需運(yùn)行時(shí)間如表2。
表2 密碼操作的符號(hào)說(shuō)明和運(yùn)行時(shí)間Table 2 Symbols instructions and runtime of cryptographic operations
在簽名過(guò)程中,SN 只需要1 次橢圓曲線(xiàn)標(biāo)量乘法。對(duì)于單個(gè)簽名驗(yàn)證,只需要5次橢圓曲線(xiàn)標(biāo)量乘法和5次橢圓曲線(xiàn)點(diǎn)加法。為了聚合所有的簽名,MES需要n次橢圓曲線(xiàn)標(biāo)量乘法。對(duì)于MCS 的聚合驗(yàn)證,需要(6n+1) 橢圓曲線(xiàn)標(biāo)量乘法和(5n+1) 橢圓曲線(xiàn)點(diǎn)加法。由表3可知,本方案是唯一使用基于無(wú)證書(shū)在無(wú)配對(duì)環(huán)境中實(shí)現(xiàn)密鑰隔離的方案,且可以抵御完全選擇攻擊。表4 中列出了本方案相對(duì)于其他方案在百分比方面的改進(jìn)情況。本方案與方案[7]相比在總計(jì)算成本方面的性能效率提高了約為70.70%。同樣,本文方案比方案[13]的改進(jìn)率約為42.09%,與方案[15]改進(jìn)率約為21.96%,與方案[23]的改進(jìn)率約為70.88%。還通過(guò)條形圖表示了不同階段的計(jì)算成本比較,如圖2 所示,圖中清楚地顯示了本文方案相對(duì)于其他方案的性能更高效。
圖2 不同階段計(jì)算成本圖Fig.2 Calculation cost chart of different stages
表3 本方案與相關(guān)方案比較Table 3 Comparison of proposed scheme with other schemes
表4 計(jì)算成本比較Table 4 Computational cost comparison
在本節(jié)中,將本文方案與四個(gè)方案的通信成本進(jìn)行比較。為方便表示,本文考慮到基于雙線(xiàn)性對(duì)e:G1×G1→G2的方案,其中P是加法群G1的生成元,其群的階數(shù)q,定義在超奇異橢圓曲線(xiàn)E:y2=x3+xmodp上,|G1|表示雙線(xiàn)性循環(huán)群G1中一個(gè)元素的長(zhǎng)度,為1 024 bit。基于橢圓曲線(xiàn)的方案,使用一個(gè)加法群G,其群的階數(shù)為q,該群定義在E:y2=x3+ax+bmodp上,|G|表示橢圓曲線(xiàn)群G中的一個(gè)元素的長(zhǎng)度,為320 bit。表示中一個(gè)元素的長(zhǎng)度,為160 bit。n表示聚合簽名的個(gè)數(shù)。因此,在發(fā)送單個(gè)消息時(shí),方案[7,13,23]包含G1中的2 個(gè)元素,都為2 048 bit。方案[15]和本方案包含G中一個(gè)元素和中一個(gè)元素,都為480 bit。在發(fā)送n個(gè)消息時(shí),令n=10 計(jì)算通信成本,方案[7,13]都為11 264 bit,方案[23]為11 424 bit,方案[15]和本方案都為3 360 bit,如表5所示。同時(shí),也通過(guò)條形圖表示了通信成本的比較,如圖3所示。雖然本方案的通信成本與文獻(xiàn)[15]的效率相同,但本方案具有密鑰隔離功能且可抵御完全選擇密鑰攻擊。
圖3 總通信成本圖Fig.3 Total communication cost chart
表5 通信成本比較Table 5 Communication cost comparison 單位:bit
為了克服用戶(hù)隱私數(shù)據(jù)被破壞,增強(qiáng)聚合簽名系統(tǒng)抵御密鑰泄露的能力,在低延遲的情況下提高效率,本文提出了一個(gè)新的應(yīng)用于醫(yī)療無(wú)線(xiàn)傳感器網(wǎng)絡(luò)的無(wú)證書(shū)并行密鑰隔離聚合簽名方案。本方案沒(méi)有使用雙線(xiàn)性配對(duì),而是利用橢圓曲線(xiàn)群來(lái)設(shè)計(jì)聚合方案,可提高醫(yī)療無(wú)線(xiàn)傳感器網(wǎng)絡(luò)系統(tǒng)的傳輸效率。利用邊緣計(jì)算的實(shí)時(shí)化來(lái)減緩醫(yī)療云服務(wù)器的壓力,有效解決醫(yī)療無(wú)線(xiàn)傳感器網(wǎng)絡(luò)系統(tǒng)的高延遲問(wèn)題。安全性分析表明,本方案滿(mǎn)足醫(yī)療無(wú)線(xiàn)傳感器網(wǎng)絡(luò)系統(tǒng)的安全要求,同時(shí)也滿(mǎn)足密鑰隔離和密鑰更新,可抵御完全選擇密鑰攻擊。因此,通過(guò)對(duì)方案進(jìn)行安全性分析和性能分析證明本方案適用于醫(yī)療無(wú)線(xiàn)傳感器網(wǎng)絡(luò)系統(tǒng)。