• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      智慧健康中基于屬性的訪問控制方案

      2019-01-07 12:23:48熊金波黃利智毛啟銘姚嵐午
      計(jì)算機(jī)應(yīng)用 2018年12期
      關(guān)鍵詞:可驗(yàn)證密文解密

      李 琦,熊金波,黃利智,王 煊,毛啟銘,姚嵐午

      (1.南京郵電大學(xué) 計(jì)算機(jī)學(xué)院、軟件學(xué)院、網(wǎng)絡(luò)空間安全學(xué)院,南京 210023; 2.南京郵電大學(xué) 物聯(lián)網(wǎng)技術(shù)與應(yīng)用協(xié)同創(chuàng)新中心,南京 210003; 3.福建師范大學(xué) 數(shù)學(xué)與信息學(xué)院, 福州 350117; 4.南京郵電大學(xué) 通信與信息工程學(xué)院,南京 210023)(*通信作者電子郵箱jinbo810@163.com)

      0 引言

      隨著物聯(lián)網(wǎng)[1]和云計(jì)算[2]等新興技術(shù)的發(fā)展,智慧健康(Smart health, S-health)[3]為人們提供精確有效的遠(yuǎn)程健康服務(wù)。通過可穿戴或者植入式的傳感器設(shè)備,便捷地采集病人的生理信息(例如血糖、血脂),通過智能設(shè)備整合成個(gè)人健康檔案(Personal Health Record, PHR),經(jīng)由網(wǎng)絡(luò)上傳至云服務(wù)器,以此節(jié)約智能設(shè)備的存儲開銷、快捷地實(shí)現(xiàn)PHR共享,并快速地獲得醫(yī)生或者其他專業(yè)人員、機(jī)構(gòu)提供的健康服務(wù)。然而,PHR里包含了大量的個(gè)人隱私信息,如果處理不當(dāng),將極大地危害個(gè)人隱私,并降低病人使用S-health的積極性。

      基于屬性的加密(Attribute-Based Encryption, ABE)[4]作為一種新的“一對多”加密模式,在保護(hù)數(shù)據(jù)機(jī)密性的同時(shí)實(shí)現(xiàn)細(xì)粒度的訪問控制。密文策略ABE(Ciphertext-Policy ABE, CP-ABE)[5]作為一種將訪問策略與密文相關(guān)聯(lián)的ABE模式,只有擁有滿足該訪問策略的屬性的用戶才能正確解密,更適合由數(shù)據(jù)擁有者來定義訪問策略的場景。因此,本文采用CP-ABE算法作為設(shè)計(jì)S-health中訪問控制方案的基礎(chǔ)。

      然而,在應(yīng)用傳統(tǒng)的CP-ABE算法[4-8]來實(shí)現(xiàn)S-health中訪問控制之前,有兩個(gè)問題需要注意。一方面,在傳統(tǒng)CP-ABE算法中,用戶的解密開銷通常隨著解密時(shí)用到的屬性數(shù)量呈線性增長,對于計(jì)算能力有限的智能設(shè)備而言,極大地降低了它們的解密效率。為此,Green等[9]提出了一個(gè)解密外包方法,將ABE中復(fù)雜的解密開銷外包至計(jì)算能力較強(qiáng)的第三方來執(zhí)行,例如云服務(wù)器,第三方返回一個(gè)ElGamal類型的部分解密密文(Partial Decryption Ciphertext, PDC),用戶端只需要執(zhí)行一次指數(shù)運(yùn)算即可恢復(fù)出明文,但是該P(yáng)DC是否正確計(jì)算是不能保證的。隨后,Lai等[10]提出了一個(gè)外包解密結(jié)果可以驗(yàn)證的方案,但是該方案需要加密一個(gè)額外的隨機(jī)消息來實(shí)現(xiàn)解密結(jié)果驗(yàn)證,加密開銷和密文長度都是文獻(xiàn)[9]方案的兩倍。

      另一方面,當(dāng)一些受限的用戶不能與云服務(wù)器端直接進(jìn)行交互時(shí),需要將其解密密鑰授權(quán)給第三方用戶,通過第三方用戶來獲取解密結(jié)果。但是,若直接利用文獻(xiàn)[5]方案中的代理方法,就會增加隱私泄露的風(fēng)險(xiǎn),因?yàn)槲墨I(xiàn)[5]方案中的授權(quán)密鑰是可以直接解密密文的。

      目前,基于屬性的訪問控制方案要么只關(guān)注如何實(shí)現(xiàn)高效的可驗(yàn)證外包解密,要么為了減少授權(quán)第三方用戶代理解密時(shí)隱私泄露風(fēng)險(xiǎn),而增加了額外的計(jì)算開銷。文獻(xiàn)[11]方案在不增加額外加密開銷和密文長度的同時(shí),實(shí)現(xiàn)了高效的可驗(yàn)證外包解密,但是沒有考慮第三方代理解密的問題,而且其安全性是在一個(gè)較弱的安全模型上。文獻(xiàn)[12]方案考慮了代理解密問題,但是增加了額外的計(jì)算開銷。因此,如何設(shè)計(jì)一個(gè)解密外包可驗(yàn)證并可代理的基于屬性的訪問控制方案仍是一個(gè)值得考慮的問題。

      基于文獻(xiàn)[13]方案,利用文獻(xiàn)[11]方案的可驗(yàn)證外包解密思想,本文提出了一個(gè)面向S-health的解密外包可驗(yàn)證并可代理的訪問控制方案。該方案在合數(shù)階群上構(gòu)造,用戶可以將復(fù)雜的解密開銷外包至云端執(zhí)行,并利用授權(quán)機(jī)構(gòu)來驗(yàn)證云端返回的PDC的正確性。同時(shí),利用代理方法,可以授權(quán)第三方用戶來與云端和授權(quán)機(jī)構(gòu)進(jìn)行交互,在保證PDC正確性的同時(shí)不泄露PHR的明文信息。在標(biāo)準(zhǔn)模型下證明了方案的自適應(yīng)安全性,相較文獻(xiàn)[11]方案中較弱的安全模型而言,本文的安全模型在公開系統(tǒng)參數(shù)之前無需聲明要挑戰(zhàn)的訪問策略。

      1 預(yù)備知識

      1.1 雙線性映射(合數(shù)階)

      定義1[13]令G和G1為2個(gè)階為N=p1p2p3的群,其中,p1、p2、p3是3個(gè)不同的素?cái)?shù)。定義一個(gè)可有效計(jì)算的雙線性映射e:G×G→G1,當(dāng)滿足下面條件:

      1)雙線性性。對于所有的x,y∈ZN和所有的u,v∈G,有e(ux,vy)=e(u,v)xy。

      2)非退化性。?g∈G,使e(g,g)在G1中的階為N。

      1.2 線性秘密共享

      定義2[13]令PP={P1,P2,…,PT}為參與方的集合,PP上的一個(gè)秘密共享方案Π被稱作線性的,如果:

      1)每個(gè)參與方關(guān)于秘密s的份額構(gòu)成ZN上的一個(gè)向量。

      2 系統(tǒng)描述、算法定義及安全模型

      2.1 系統(tǒng)描述

      如圖1所示,系統(tǒng)由4個(gè)參與方組成:授權(quán)機(jī)構(gòu),云服務(wù)提供商(Cloud Service Provider, CSP),PHR擁有者,用戶。

      授權(quán)機(jī)構(gòu):負(fù)責(zé)設(shè)置系統(tǒng)參數(shù),為用戶生成基于屬性的密鑰,并且向用戶提供外包解密結(jié)果的驗(yàn)證服務(wù)。

      云服務(wù)提供商:負(fù)責(zé)存儲加密后的PHR,并為用戶提供外包解密服務(wù)。

      PHR擁有者:負(fù)責(zé)整合PHR并定義訪問策略加密PHR后將其上傳至云服務(wù)器,PHR擁有者可以是病人、老年人,也可以是為其病人管理PHR的醫(yī)療機(jī)構(gòu)。

      用戶:可以是醫(yī)生或者醫(yī)療研究人員,每一個(gè)用戶擁有一個(gè)屬性集合。若其屬性集合滿足PHR密文中的訪問策略,則可以獲取明文PHR并為其擁有者提供相關(guān)的醫(yī)療服務(wù)。

      本文假定:授權(quán)機(jī)構(gòu)是可信的;CSP是誠實(shí)但好奇的,即CSP誠實(shí)地提供存儲和外包解密服務(wù),但是試圖從中獲取PHR的明文信息;用戶是惡意的,他們可能共謀去獲取他們中任何一個(gè)都沒有被授權(quán)訪問的PHR。

      圖1 S-health系統(tǒng)框架Fig.1 System architecture of S-health

      2.2 算法定義

      本文方案由如下9個(gè)多項(xiàng)式時(shí)間算法組成。

      1)SystemSetup(λ)→(PK,MSK):輸入安全參數(shù)λ,輸出系統(tǒng)公開參數(shù)PK和主密鑰MSK。

      2)UserSetup(PK)→(UPK,UDK):輸入PK,輸出用戶公開參數(shù)UPK和用戶解密密鑰UDK。

      3)Encrypt(AC,PK)→(CT,SEK):輸入訪問策略AC與PK,輸出密文CT與對稱加密密鑰SEK。

      4)KeyGen(S,PK,UPK,MSK)→(SK):輸入用戶的屬性集合S、PK、UPK和MSK,輸出用戶屬性密鑰SK。

      5)TKKeyGen(SK,PK,UPK)→(TK):輸入SK、PK、UPK,輸出用戶轉(zhuǎn)化密鑰TK。

      6)Transform(TK,CT)→(PDC):輸入TK與CT,若TK中的屬性集合滿足CT中的訪問策略AC,則輸出部分解密密文PDC。

      7)Decrypt(PDC,UDK)→(SEK/⊥):輸入PDC及UDK,若Verify(PK,MSK,PDC,CT)→1,則輸出SEK;否則,輸出⊥。

      8)Verify(PK,MSK,PDC,CT)→(1,0):輸入PK、MSK、PDC和CT,驗(yàn)證PDC是否正確,若是,則輸出1;否則,輸出0。

      9)Delegate(SK,PK)→(SK′):輸入SK和PK,輸出代理密鑰SK′。

      2.3 安全模型

      通過攻擊者AD與挑戰(zhàn)者B之間的游戲來定義本文方案的CPA(Chosen Plaintext Attack)安全模型。

      系統(tǒng)建立B執(zhí)行SystemSetup算法,并將系統(tǒng)公開參數(shù)PK發(fā)送給AD。

      階段1B初始化一個(gè)空集合H和空表L。AD詢問任意的用戶屬性集合(S1,S2,…,Sq)如下:

      1)用戶密鑰查詢。一旦收到屬性集合Si,B首先運(yùn)行UserSetup得到(UPKi,UDKi),再運(yùn)行KeyGen得到用戶屬性密鑰SKi,最后,設(shè)置H=H∪{Si}并返回SKi給AD。

      2)用戶轉(zhuǎn)化密鑰查詢。當(dāng)收到關(guān)于Si的轉(zhuǎn)換密鑰查詢,B首先在表L中搜索(Si,SKi,TKi,UDKi),若存在,則返回TKi給AD;否則,運(yùn)行KeyGen與TKKeyGen,返回TKi給AD并存儲(Si,SKi,TKi,UDKi)至L。

      挑戰(zhàn)AD選擇一個(gè)訪問策略AC*,并詢問挑戰(zhàn)密文。B運(yùn)行Encrypt得到(CT*,SEK*)并隨機(jī)選擇b∈{0,1},若b=0,則返回(CT*,SEK*)給AD;否則,返回(CT*,R*),其中R*是從密鑰空間中隨機(jī)選擇的元素。注意:AC*不能是匹配階段 1中屬性集合的訪問策略。

      階段2 與階段 1類似,AD可以詢問密鑰,但是不能查詢滿足AC*的屬性集合。

      猜測AD輸出對b的猜測b′。若b′=b,則AD獲勝。令A(yù)D贏得該游戲的優(yōu)勢為|Pr[b=b′]-1/2|。

      定義3 一個(gè)外包解密可驗(yàn)證并可代理的CP-ABE方案是CPA安全的,當(dāng)且僅當(dāng)在上述的游戲中,任何多項(xiàng)式時(shí)間攻擊者的優(yōu)勢是可以忽略的。

      2.4 可驗(yàn)證性安全模型

      與2.3節(jié)安全模型類似,通過攻擊者AD與挑戰(zhàn)者B之間的游戲來定義可驗(yàn)證性安全模型。

      系統(tǒng)建立 與CPA安全模型一致。

      階段1 與CPA安全模型一致。

      挑戰(zhàn)AD提交一個(gè)訪問策略AC*。B運(yùn)行Encrypt得到(CT*,SEK*)并返回CT*給AD。

      階段2 與階段 1類似,AD可以詢問密鑰,但是AD不能查詢滿足AC*的屬性集合。

      輸出AD輸出一個(gè)屬性集合S*,以及兩個(gè)部分解密密文PDC1*和PDC2*。若PDC1*和PDC2*能夠通過Verify算法,并且滿足Decrypt(PDC1*,UDK)≠Decrypt(PDC2*,UDK),則AD贏得該游戲。

      定義4 一個(gè)外包解密可驗(yàn)證并可代理的CP-ABE方案是可驗(yàn)證性安全的,當(dāng)且僅當(dāng)在上述的游戲中,任何多項(xiàng)式時(shí)間攻擊者AD的優(yōu)勢是可以忽略的。

      3 方案設(shè)計(jì)

      3.1 系統(tǒng)建立

      授權(quán)機(jī)構(gòu)運(yùn)行SystemSetup算法,輸入安全參數(shù)λ,得到(N,p1,p2,p3,G,G1,e),其中:G與G1為2個(gè)階為N的群,N為3個(gè)不同的素?cái)?shù)p1、p2、p3的乘積,e是一個(gè)G×G→G1的雙線性映射。從Gp1中隨機(jī)選擇一個(gè)元素g,從Gp3中選擇一個(gè)生成元X3。授權(quán)機(jī)構(gòu)管理一個(gè)屬性域U,對于每個(gè)屬性i∈U,從ZN中選擇一個(gè)隨機(jī)數(shù)ti,并計(jì)算Ti=gti,另外隨機(jī)選擇α,a∈ZN。發(fā)布授權(quán)機(jī)構(gòu)的公開參數(shù)PK=(N,g,ga,e(g,g)α,{Ti}i∈U)。主密鑰MSK為MSK=(α,X3)。

      3.2 PHR上傳

      與方案[6]類似,本方案也利用KEM(Key Encapsulation Mechanism)機(jī)制,即PHR文件會被一個(gè)SEK(SymmEtric Key)加密后得到ENPHR,而SEK會被一個(gè)訪問策略加密。具體過程如下:

      輸出密文CT=(AC,C0,{Cx,Dx}x∈[l])并設(shè)置SEK為e(g,g)αs。

      收到CT與加密的PHR文件后,CSP為文件定義一個(gè)ID并以圖2的形式存在云端。

      圖2 加密的PHR存儲形式

      Fig. 2 Storage form of encrypted PHR

      3.3 用戶注冊與密鑰生成

      用戶運(yùn)行UserSetup算法,隨機(jī)選擇z∈ZN,計(jì)算UPK=gz,并設(shè)置UDK=z。

      3.4 PHR訪問

      為了減輕解密開銷,用戶首先將私鑰SK變成轉(zhuǎn)換密鑰,其次大部分的解密開銷外包至CSP,再與授權(quán)機(jī)構(gòu)交互來驗(yàn)證返回的PDC的正確性,若正確,則通過一次指數(shù)運(yùn)算即可解密。具體流程如下:

      1)TKKeyGen:因?yàn)橹盎赨PK來設(shè)置SK,所以這里令TK=SK。

      e(g,g)αzs

      3)Verify:授權(quán)機(jī)構(gòu)驗(yàn)證等式PDC=e(C0,(UPK)α)是否成立,若是,則輸出1表示PDC是正確的;否則,輸出0。

      4)Decrypt:用戶計(jì)算SEK=(PDC)(UDK)-1=e(g,g)αs,并解密ENPHR。

      3.5 第三方用戶委托

      當(dāng)用戶不能直接與CSP及授權(quán)機(jī)構(gòu)交互時(shí),可以通過下面的方式委托第三方用戶來獲取并驗(yàn)證外包解密結(jié)果。

      4 安全性證明

      4.1 CPA安全證明

      與文獻(xiàn)[14]類似,本文的安全性規(guī)約至方案[13]的安全性,將文獻(xiàn)[13]的方案與本文的方案分別表示為∑CP和∑VDCP。

      引理1 若子群判斷假設(shè)1、2、3[13]成立,則方案∑CP在標(biāo)準(zhǔn)模型下是適應(yīng)性安全的。

      具體的證明可以參考文獻(xiàn) [13]的方案。

      下面給出方案∑VDCP的安全性證明。

      引理2 若方案∑CP是安全的,則本文的方案∑VDCP在2.3節(jié)給出的安全模型下也是安全的。

      證明 假設(shè)存在一個(gè)多項(xiàng)式時(shí)間攻擊者AD以優(yōu)勢ADVAD∑VDCP攻破本文的方案,則可以構(gòu)造一個(gè)多項(xiàng)式時(shí)間仿真者B以相等的優(yōu)勢ADVB∑CP攻破∑CP。

      系統(tǒng)建立 ∑CP發(fā)送公開參數(shù)PKCP=(N,g,ga,e(g,g)α,{Ti}i∈U)給B。B發(fā)送PKVDCP=PKCP給AD。

      階段1B初始化一個(gè)空集合H和空表L。AD詢問任意的用戶屬性集合(S1,S2,…,Sq)如下:

      2)用戶轉(zhuǎn)化密鑰查詢。當(dāng)收到Sj的轉(zhuǎn)換密鑰查詢,B首先在表L中搜索(Sj,SKj,TKj,UDKj),若存在,則返回TKj給AD;否則,B設(shè)置SKj如1)所示,并運(yùn)行UserSetup與TKKeyGen,返回TKi并存儲(Sj,SKj,TKj,UDKj)至L。

      階段2 與階段 1類似,AD可以詢問密鑰,但是不能查詢滿足AC*的屬性集合。

      猜測AD輸出猜測u′∈{0,1}。若u′=1,意味著SEK*在AD看來是一個(gè)隨機(jī)密鑰,B輸出它的猜測1-u;若u′=0,意味著在AD看來SEK*是一個(gè)合法密鑰,B輸出它的猜測u。

      因?yàn)橛螒蛑械膮?shù)與正常方案中參數(shù)的分布是一致的,若AD可以攻破本文方案∑VDCP,則B可以攻破方案∑CP。

      定理1 若假設(shè)1、2、3[13]成立,則本文的方案在標(biāo)準(zhǔn)模型下是適應(yīng)性CPA安全的。

      證明 由引理2可得若∑CP是CPA安全的,則本文的方案也是CPA安全的。由引理1可得,若假設(shè)1、2、3成立,則∑CP在標(biāo)準(zhǔn)模型下是適應(yīng)性CPA安全的。

      綜上所述,定理1成立。

      4.2 可驗(yàn)證性安全證明

      定理2 對于所有的多項(xiàng)式時(shí)間攻擊者AD而言,本文的方案在第2.4節(jié)定義的安全模型中是可驗(yàn)證性安全的。

      證明 假設(shè)存在一個(gè)多項(xiàng)式時(shí)間攻擊者AD攻破本文方案的可驗(yàn)證性,則可以構(gòu)造一個(gè)多項(xiàng)式時(shí)間仿真者B與AD交互如下。

      系統(tǒng)建立 與CPA安全證明中類似,不同的是B可以自行設(shè)置PK。

      階段1 與CPA安全證明中類似,不同的是B可以自行生成SK等,因?yàn)樗繫SK。

      挑戰(zhàn)AD提交一個(gè)訪問策略AC*。B運(yùn)行Encrypt得到(CT*,SEK*)并返回CT*給AD。

      階段2 與階段 1類似,AD可以詢問密鑰,但是不能查詢滿足AC*的屬性集合。

      輸出AD輸出一個(gè)屬性集合S*以及關(guān)于CT*的兩個(gè)部分解密密文PDC1*和PDC2*。AD贏得該游戲若PDC1*和PDC2*滿足:

      1)Verify(PK,MSK,PDC1*,CT*)→1;

      2)Verify(PK,MSK,PDC2*,CT*)→1;

      3)Decrypt(PDC1*,UDK)≠Decrypt(PDC2*,UDK)。

      條件1)意味著PDC1*=e(C0,(UPK)α),條件2)意味著PDC2*=e(C0,(UPK)α)。從條件1)和2)可知PDC1*=PDC2*。然而,條件3)意味著PDC1*≠PDC2*。所以,AD只能以至多可以忽略的優(yōu)勢贏得該游戲。

      5 性能分析

      相關(guān)ABE方案[9-13]與本文方案的特征比較如表1所示。從表1可以看出,本文提出的方案是同時(shí)實(shí)現(xiàn)自適應(yīng)安全性、可驗(yàn)證外包解密及代理功能的。

      統(tǒng)計(jì)自適應(yīng)安全方案[13]與本文方案中SystemSetup、Encrypt、KeyGen、Decrypt以及Verify算法用到指數(shù)運(yùn)算和雙線性配對的次數(shù),結(jié)果如表2所示。令|U|、|W|、|S|、|I|分別表示系統(tǒng)屬性集合、訪問策略、用戶屬性集合、解密時(shí)用到的屬性集合中屬性個(gè)數(shù);令E和E1分別表示G與G1群中一次指數(shù)運(yùn)算;令P表示一次雙線性配對。

      表1 不同方案的特征比較Tab. 1 Characteristic comparison of different schemes

      表2 不同方案的性能比較Tab. 2 Performance comparison of different schemes

      從表2可以看出,本文方案的SystemSetup、Encrypt及KeyGen算法和方案[13]中的算法計(jì)算開銷是相同的。本文方案用戶端的解密開銷僅需要執(zhí)行G1群中一次指數(shù)運(yùn)算,而文獻(xiàn)[13]方案中的用戶解密開銷隨用到屬性的個(gè)數(shù)呈線性增長。另外,為了執(zhí)行驗(yàn)證操作,本文方案也只需要執(zhí)行一次G群中指數(shù)運(yùn)算和一次雙線性配對運(yùn)算,與屬性個(gè)數(shù)無關(guān)。

      6 結(jié)語

      本文提出了一個(gè)面向S-health的基于屬性的訪問控制方案,并在標(biāo)準(zhǔn)模型下證明了其自適應(yīng)安全性。通過將復(fù)雜的解密開銷外包至云服務(wù)提供商,可以驗(yàn)證其返回的部分解密密文的正確性,用戶僅需要執(zhí)行一次指數(shù)運(yùn)算即可恢復(fù)明文PHR。同時(shí),為了驗(yàn)證該部分解密密文,授權(quán)機(jī)構(gòu)也僅需要執(zhí)行一次指數(shù)運(yùn)算和一次雙線性配對運(yùn)算。性能分析表明,本文的方案在實(shí)現(xiàn)高效解密和驗(yàn)證的同時(shí),并沒有給其他步驟增加額外的開銷。下一步的工作將以提出的方案作基礎(chǔ),研究如何在素?cái)?shù)階群構(gòu)造高效的自適應(yīng)性安全的方案。

      猜你喜歡
      可驗(yàn)證密文解密
      解密“熱脹冷縮”
      一種針對格基后量子密碼的能量側(cè)信道分析框架
      一種支持動態(tài)更新的可排名密文搜索方案
      基于模糊數(shù)學(xué)的通信網(wǎng)絡(luò)密文信息差錯(cuò)恢復(fù)
      解密“一包三改”
      “可驗(yàn)證”的專業(yè)術(shù)語解釋
      炫詞解密
      一種基于區(qū)塊鏈技術(shù)的可信電子投票方法
      云計(jì)算視角下可驗(yàn)證計(jì)算的分析研究
      無可信第三方的可驗(yàn)證多秘密共享
      邵东县| 沅陵县| 饶阳县| 东城区| 咸丰县| 梁平县| 台东县| 兰考县| 海城市| 定襄县| 兴化市| 福州市| 荆州市| 安岳县| 康定县| 措美县| 吉安县| 灵璧县| 广水市| 安宁市| 卓尼县| 南和县| 庆云县| 文水县| 昭通市| 乐东| 山丹县| 万州区| 寿宁县| 延边| 德江县| 兴国县| 嘉义县| 龙里县| 南昌市| 张家界市| 鸡东县| 梧州市| 神池县| 清涧县| 大洼县|