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

?

智慧城市中隱私保護性廣播加密算法*

2022-06-23 03:10牛淑芬方麗芝王彩芬杜小妮
計算機工程與科學 2022年6期
關鍵詞:加密算法密文加密

牛淑芬,方麗芝,宋 蜜,王彩芬,杜小妮

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

1 引言

隨著我國城市人口的持續(xù)增長,城市化治理出現(xiàn)了一系列問題,政府部門有必要提供一些公共服務來提高市民的生活質量。有效的安全監(jiān)控網(wǎng)絡能夠確保水電、交通、醫(yī)療和教育等數(shù)據(jù)的安全,政府可以通過公民參與式管理,推動可持續(xù)經(jīng)濟增長和高質量的生活。但是,傳統(tǒng)的技術和管理方法很難有效解決這些問題。因此,利用新興的信息通信技術來解決城市化管理問題是非常必要的。在這樣的背景中,一些學者提出了智慧城市的概念[1 - 3]。文獻[4]分析了物聯(lián)網(wǎng)應用于智慧城市中智能家居、車聯(lián)網(wǎng)、智能電網(wǎng)和公共基礎設施場景下存在的不足。文獻[5]利用智慧城市中的智能方法解決了互聯(lián)網(wǎng)環(huán)境下車輛的管理控制。智慧城市中最核心的是用戶數(shù)據(jù),這些數(shù)據(jù)大部分是敏感的,例如社交賬號和密碼。敏感數(shù)據(jù)在傳輸?shù)倪^程中必須要保證其安全性和隱私性。如何有效地保護數(shù)據(jù)的機密性,已經(jīng)成為智慧城市中的一個重要問題。

Fiat等[6]在1993年提出了廣播加密技術,允許中心廣播站點向任意一組接收方廣播密文,同時最小化與密鑰管理相關的傳輸。文獻[6-12]運用廣播加密技術在多個接收者的場景下保護了數(shù)據(jù)安全性和隱私性。Naor等[13]在2001年提出一種應用于無狀態(tài)接收者的“子集覆蓋”框架,該框架基于對稱密鑰廣播加密。Naor等[14]在2000年提出了基于公鑰的廣播加密算法,采用門限秘密共享方法解決了基于對稱密鑰廣播加密的安全問題,克服了只有可信中心才可以廣播密文的缺點。廣播加密技術允許一個數(shù)據(jù)擁有者將數(shù)據(jù)共享給包含多個用戶的集合S,只有集合S內(nèi)的授權用戶才可以訪問共享數(shù)據(jù)。例如,智能電力系統(tǒng)將密鑰分發(fā)給授權用戶,用戶通過密鑰享受電力服務,反之,若用戶沒有收到密鑰,則不能享受電力服務。

在智慧城市中,“智能”設備應該在一定范圍內(nèi)自動地處理數(shù)據(jù)訪問控制,即根據(jù)數(shù)據(jù)訪問控制策略決定用戶是否具有訪問控制權限。文獻[15]提出一種支持用戶撤銷的屬性認證密鑰協(xié)商協(xié)議算法,該算法研究如何對用戶進行直接撤銷,將用戶標識嵌入在私鑰中并在通信消息密文中嵌入用戶撤銷列表,若用戶被撤銷,則無法認證。文獻[16]在合數(shù)階雙線性群上提出了完全細粒度屬性撤銷模型,在密文中添加多個屬性用戶撤銷列表來撤銷任意數(shù)量的屬性,但密文長度與用戶數(shù)量線性相關,造成智能電網(wǎng)中大數(shù)量級的數(shù)據(jù)文件加密時間過長,不適用于智能電網(wǎng)云存儲平臺。文獻[17]提出一種細粒度權限撤銷的云存儲模型,數(shù)據(jù)屬主可以是屬性分發(fā)機構,負責產(chǎn)生屬性集合和加入屬性撤銷參數(shù),但在加密之前要知道用戶集合,不適合智能電網(wǎng)中大量的用戶屬性變化,可能造成用戶信息泄露。Lai等[18]在2016年提出了匿名身份的廣播加密,發(fā)送方可有效地向大量接收者廣播密文。文獻[19]提出了可撤銷身份的廣播加密算法,重點突出在數(shù)據(jù)訪問控制下允許第三方撤銷用戶身份。這2種算法保護了接收者之間的身份隱私,但傳輸量和計算量較大,會造成數(shù)據(jù)文件加密和解密時間過長。針對這些問題,本文從基于身份的廣播加密生成密文中撤銷指定目標集合的接收者,通過對已撤銷用戶的身份進行加密,未撤銷的用戶使用私鑰對密文解密,保護了接收者之間的匿名性和隱私性。本文主要創(chuàng)新點包含以下2個方面:

(1) 使用廣播加密技術實現(xiàn)對加密數(shù)據(jù)的有效共享,且保證了其加密和共享效率。利用拉格朗日插值實現(xiàn)用戶身份的匿名和數(shù)據(jù)的完全隱私保護,任何接收者在解密時都無法獲取其他用戶的身份信息。

(2) 算法結合智慧城市中智能電網(wǎng)應用場景進行數(shù)據(jù)共享。針對用戶權限可能會發(fā)生改變,用戶離開系統(tǒng)會產(chǎn)生數(shù)據(jù)更新等問題,通過直接撤銷實現(xiàn)對智能電網(wǎng)中用戶身份的靈活管理。

在Linux Ubuntu-10.10操作系統(tǒng)下利用PBC 和C語言進行編程,對本文算法和現(xiàn)有的部分廣播加密算法進行對比實驗。實驗結果表明,本文算法的效率和性能優(yōu)于其它算法。在隨機預言模型下運用BDH困難問題證明了本文算法的安全性。

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

本節(jié)給出本文算法的系統(tǒng)模型和安全模型。圖1為智慧城市的主要應用領域。

Figure 1 Application domains in a smart city圖1 智慧城市應用領域

2.1 系統(tǒng)模型

智慧城市中基于身份的隱私保護性廣播加密算法適用于一對多的密文傳播場景。而智能電網(wǎng)則是智慧城市的應用領域之一,是電網(wǎng)技術發(fā)展的有利趨勢。圖2給出了智能電網(wǎng)的典型應用場景。數(shù)據(jù)屬主智能供電系統(tǒng)將加密的數(shù)據(jù)文件廣播給用戶,存儲在智能電表中。密鑰生成中心生成用戶私鑰。接收到密鑰的用戶具有使用智能電力服務的權限,且可以訪問加密數(shù)據(jù)。當用戶要離開當前居住地或者使用其他電力系統(tǒng)需要撤銷身份時,智能供電系統(tǒng)可以為用戶提供管理身份權限的服務,通過智能方式撤銷和更新用戶信息,被撤銷授權的用戶無法再解密密文。

智能供電系統(tǒng)為確??蛻艏捌鋽?shù)據(jù)隱私,智能電表與智能供電系統(tǒng)之間的數(shù)據(jù)會被加密。智能供電系統(tǒng)將加密的原始密文傳輸給云服務器,然后云服務器將原始密文轉換為可以用未撤銷用戶私鑰解密的密文。本文算法包括智能供電系統(tǒng)、密鑰生成中心、云服務器、智能設備(智能電表)和數(shù)據(jù)用戶5類實體。

2.2 安全模型

參照文獻[20]中基于匿名身份的廣播加密算法的思想,本文定義了4種安全模型:基于身份的選擇明文攻擊不可區(qū)分性IND-ID-CPA(INDistinguishability under IDentity-based Chosen Plaintext Attack security)安全;基于匿名身份的選擇明文攻擊不可區(qū)分性ANON-ID-CPA(ANONymous IDentity-based Chosen Plaintext Attack security)安全;基于可撤銷身份的選擇明文攻擊不可區(qū)分性IND-rID-CPA(INDistinguishability under revocable IDentity-based Chosen Plaintext Attack security)安全;選擇性匿名可撤銷身份的選擇明文攻擊性ANON-rID-CPA(selective revocable ANONymous IDentity-based Chosen Plaintext Attack security)安全,以上4種安全模型通過概率多項式時間內(nèi)的攻擊者A和挑戰(zhàn)者C之間的游戲定義。

游戲1IND-ID-CPA安全。

在沒有有效私鑰的情形下,密文中消息與相同長度的隨機字符串無法區(qū)分。該安全模型定義如下:

(1)系統(tǒng)建立:挑戰(zhàn)者C建立算法,輸入安全參數(shù)λ,輸出系統(tǒng)公鑰mpk和主密鑰msk。

(2)階段1:攻擊者A可對任何身份發(fā)起私鑰詢問。收到身份為IDi的私鑰詢問時,挑戰(zhàn)者C運行密鑰生成算法得到私鑰dIDi。

(3)階段2:受制于上述挑戰(zhàn),攻擊者A發(fā)起適應性私鑰詢問。

(4)挑戰(zhàn):對任何的IDi∈S*,攻擊者A沒有發(fā)起私鑰詢問的限制下,輸出不同長度的消息M0和M1,以及挑戰(zhàn)身份集合S*=(ID1,ID2,…,IDn),挑戰(zhàn)者C隨機選取b∈{0,1},在S*下為Mb生成挑戰(zhàn)密文CT*,并將其返回給A。

游戲2ANON-ID-CPA安全。

系統(tǒng)建立、階段1和階段2與游戲1的一致,挑戰(zhàn)和猜測步驟如下所示:

(1) 挑戰(zhàn):攻擊者A對任意一個身份IDi∈S0△S1=(S0S1)∪(S1S0)輸出M*、身份集合S0=(ID0,1,…,ID0,n)和S1=(ID1,1,…,ID1,n)。挑戰(zhàn)者C隨機選取b∈{0,1},在Sb下對消息M*生成挑戰(zhàn)密文CT*。

游戲3IND-rID-CPA安全。

系統(tǒng)建立、階段1和階段2與游戲1的一致,挑戰(zhàn)和猜測步驟如下所示:

(1) 挑戰(zhàn):對任何IDi∈S*R*,攻擊者A沒有發(fā)起私鑰詢問的限制下,輸出消息M0和M1、挑戰(zhàn)身份集合S*=(ID1,ID2,…,IDn)和撤銷身份集合R*={IDl1,IDl2,…,IDlt}。挑戰(zhàn)者C在S*和R*下為消息Mb生成挑戰(zhàn)密文CT′*并將其返回給A。

游戲4選擇性ANON-rID-CPA安全。

系統(tǒng)建立和階段1與游戲1的一致,其他步驟如下所示:

(1) 初始化:輸出不同長度的撤銷身份集合R0=(ID0,1,…,ID0,t)和R1=(ID1,1,…,ID1,t)。

(2) 挑戰(zhàn):輸出消息M*和廣播身份集合S*=(ID1,ID2,…,IDn)。挑戰(zhàn)者C隨機選取b∈{0,1},在S*和Rb下為消息Rb生成挑戰(zhàn)密文CT′*。

3 本文具體算法

智慧城市中基于身份的隱私保護性廣播加密算法包括以下5個階段:系統(tǒng)建立階段、密鑰生成階段、加密階段、撤銷階段和解密階段。

(1) 系統(tǒng)建立階段。該階段由密鑰生成中心執(zhí)行,輸入安全參數(shù)λ,具體步驟如下所示:

①隨機選取雙線性映射群BG=(G,GT,e,p),其中,e:G×G→GT,P∈G是階為p的生成元。選取s∈Zp,計算公共參數(shù)Ppub=sP。

②定義3個抗碰撞的哈希函數(shù):

H:{0,1}*→Zp

H1:{0,1}*→G

H2:GT×{0,1}*→G

③輸出系統(tǒng)公鑰mpk和主密鑰msk:

mpk=(BG,P,Ppub,H,H1,H2)

msk=s

(3) 加密階段。該階段由智能供電系統(tǒng)執(zhí)行。選定一組特定的電力用戶身份集合S=(ID1,ID2,…,IDn),公鑰mpk和共享給用戶的明文M∈G,加密M得到密文CT,存儲在智能電表中。加密階段模型如圖3所示。

Figure 3 Data encrypt圖3 數(shù)據(jù)加密

加密階段的具體步驟如下所示:

②隨機選取r1∈Zp和k1∈G作為秘密值,計算Ai=k1+H2(e(H1(IDi),Ppub)r1,IDi),i∈[1,n]。

③計算C0=k1+M,C1=r1P。

⑤生成密文CT=(C0,C1,ui),i∈[1,n]。

(4) 撤銷階段。該階段由云服務器執(zhí)行。云服務器收到密文后根據(jù)撤銷后的身份集合S′加密數(shù)據(jù)得到撤銷后的密文CT′。設用戶A為撤銷后的用戶,其他用戶可以收到CT′,而用戶A則無法接收到。在此過程中,算法利用拉格朗日插值隱藏用戶身份和數(shù)據(jù)信息,云服務器無法從密文中獲取任何用戶身份和數(shù)據(jù)信息。撤銷階段模型如圖4所示。該階段主要步驟如下所示:

①給定系統(tǒng)公鑰mpk、撤銷身份集合R(|R|=t,t≤n)和密文CT=(R,C0,C1,ui),i∈[1,n]。

Figure 4 ID revoke圖4 用戶身份撤銷

恢復消息M=C′0-k′1-k′2。若存在身份滿足IDi∈S,IDi?R,則k′1=k1,k′2=k2。本階段通過計算獲得k′1和k′2,解密獲得正確的明文。

Figure 5 Data decrypt圖5 數(shù)據(jù)解密

在本文構造的算法定義中,撤銷編號t(t

4 安全性證明

本節(jié)基于BDH困難問題證明了本文提出的算法在安全模型定義中達到的安全目標和隨機預言模型下的安全性。

定理1定義2個抗碰撞的哈希函數(shù)H和H2,若BDH困難問題成立,本文提出的基于身份的隱私保護性廣播加密算法是IND-ID-CPA安全的。A以ε的優(yōu)勢攻擊算法,模擬者B以ε′≥ε·(e·n·qE·qH2)-1的優(yōu)勢解決BDH困難問題。其中,n為廣播身份的數(shù)量,qE是對私鑰的詢問數(shù)量,qH2是對哈希函數(shù)H2的詢問數(shù)量。

(1) 系統(tǒng)建立。模擬者B令Ppub=aP并構建mpk=(P,Ppub,H1,H2)。

②H2-詢問:B創(chuàng)建L3(Yi,IDi,γi)并初始化為空。若(Yi,IDi)在列表L3中,則返回H2(Yi,IDi)=γi。否則,選取H2(Yi,IDi)=γi,將(Yi,IDi,γi)添加到L3,使用γi響應A。

(2) 階段1。B從L中獲得ci和ti。若ci=0,返回⊥,ci=1,則dIDi=sH1(IDi)=atiP=tiPpub。

(3) 挑戰(zhàn):對任意IDi∈S*沒有發(fā)起私鑰詢問,A輸出M0、M1和S*=(ID1,ID2,…,IDn)。模擬者B隨機選取b∈{0,1}并執(zhí)行如下操作:

定理2定義哈希函數(shù)H和H2,若BDH困難問題成立,本文提出的基于身份的隱私保護性廣播加密算法是ANON-ID-CPA安全的。若存在ANON-ID-CPA攻擊者A以ε的優(yōu)勢攻擊提出的算法,存在模擬者B以ε′≥ε·(e·n·qE·qH2)-1的優(yōu)勢解決BDH困難問題,其中qH2是詢問H2的數(shù)量。

證明H-詢問,H2-詢問和階段1與定理1中一致。游戲2中,B與A的互動過程如下所示:

(1) 系統(tǒng)建立:B構建mpk=(P,Ppub,H1)。

H2-詢問:B創(chuàng)建L2(Xi,IDi,λi),若(Xi,IDi)詢問在L2中,則H2(Xi,IDi)=λi;否則選取λi∈G,將(Xi,IDi,λi)添加到L1中,用λi響應敵手A。

(2) 挑戰(zhàn):A輸出M*、S0=(ID0,1,…,ID0,n)和S1=(ID1,1,…,ID1,n)。B執(zhí)行如下步驟:

定理3定義2個抗碰撞的哈希函數(shù)H和H2,若BDH困難問題成立,提出的基于身份的隱私保護性廣播加密算法是IND-rID-CPA安全的。若有一個IND-rID-CPA的攻擊者A以ε的優(yōu)勢攻破算法,則B以ε′≥ε·(e·n·qE·qH2)-1的優(yōu)勢解決BDH困難問題。

證明H-詢問與階段1與定理1中的一致,H2-詢問與定理2中的一致。在游戲3中,模擬者B與攻擊者A的互動過程如下所示:

(1) 系統(tǒng)建立:構建mpk=(P,Ppub,H1,H2)。

(2) 挑戰(zhàn):A對任意IDi∈S*R*沒有發(fā)起私鑰詢問,輸出Μ0、Μ1、集合S*=(ID1,…,IDn)和R*=(IDl1,…,IDlt)。B執(zhí)行以下操作:

證明在游戲4中,模擬者B與攻擊者A的互動過程如下所示:

(1) 初始化:攻擊者A輸出不同的目標撤銷集合R0=(ID0,1,…,ID0,t)和R1=(ID1,1,…,ID1,t)。

(2) 系統(tǒng)建立:構建mpk=(P,Ppub,H2)。隨機選取b∈{0,1}和身份ID*∈RbR1-b。

①H-詢問:B創(chuàng)建L并初始化為空。若IDi詢問已存在于L中,返回H(IDi)=hi,否則選取ki∈Zp。如果IDi=ID*,令hi=kibP。否則,hi=kiP。

②H1-詢問:若(Ti,IDi)出現(xiàn)在L1(Ti,IDi,ηi)中,則H1(Ti,IDi)=ηi,將(Ti,IDi)添加到L1中,用ηi響應攻擊者A。

(3) 階段1:A發(fā)起私鑰詢問;B從L中獲得ki,計算dIDi=sH1(IDi)=akiP=kiPpub。

(4) 挑戰(zhàn):A輸出M*和S*=(ID1,…,IDn);B執(zhí)行以下步驟:

5 效率及性能分析

5.1 功能特性比較

將本文提出的算法與近幾年廣播加密文獻[8-10,12,20]中的算法進行功能性對比,對比結果如表1所示。

Table 1 Comparison of functional properties

由表1可以看出,文獻[10,20]算法與本文算法一致,皆為基于身份的加密;本文算法利用基于身份的廣播加密,結合智慧城市中用戶權限的變化,運用用戶撤銷的特性靈活管理用戶身份,而其它對比算法無法達到用戶撤銷功能;本文算法還利用拉格朗日插值將用戶身份信息嵌入密文中,實現(xiàn)了用戶身份的匿名性,保護了接收者之間的身份隱私,文獻[8,10]算法不具備保護用戶身份隱私的功能。通過與表1中其它廣播加密算法的對比表明,本文算法在功能特性上具有一定的優(yōu)勢。

5.2 理論分析與比較

本節(jié)從理論角度對比本文算法、文獻[18,19]算法在計算量和通信量上的優(yōu)劣。

(1) 計算量比較。

計算量對比結果如表2所示。在表2中,Tp表示雙線性配對運算時間,Te表示指數(shù)運算時間,Tm表示乘法運算時間,Th表示哈希運算時間,TInv表示乘法逆元運算時間。常用密碼算法操作計算的時間順序為Tp>Te>Tm>Th>TInv,且Tp遠大于其它時間。n表示系統(tǒng)中用戶身份的數(shù)量。

Table 2 Computation comparison

(2) 通信量比較。

通信量比較結果如表3所示。在表3中,分別用|G|、|GT|和|Zp|表示G、GT和Zp中元素的長度。

由表3可以看出,在數(shù)據(jù)加密階段,各個算法通信量由大到小依次為文獻[19]算法、文獻[18]算法和本文算法;在用戶撤銷階段,各個算法通信量由大到小依次為文獻[18]算法、文獻[19]算法和本文算法;在解密階段,各個算法通信量由大到小依次為文獻[18]算法、文獻[19]算法和本文算法。

Table 3 Storage comparison

5.3 數(shù)值實驗與比較

數(shù)值模擬實驗是在Linux操作系統(tǒng)下利用雙線性對包(pairing-based cryptography library)[21]實現(xiàn)的,雙線性對包參數(shù)類型為Type-A?;贑語言進行編程,在2.60 GHz CPU,8 GB RAM PC機上運行。

實驗對文獻[18]算法、文獻[19]算法和本文算法分別在數(shù)據(jù)加密算法、用戶撤銷算法和數(shù)據(jù)解密算法上的時間開銷進行了對比分析。文獻[18]算法、文獻[19]算法和本文算法用戶身份權限會發(fā)生變化,將用戶身份的個數(shù)分別設置為10,20,30,40和50。實驗采用50次運行結果的平均值作為實驗結果,如圖6所示。

Figure 6 Relationships between time cost of algorithms and number of user identities 圖6 計算時間與用戶身份數(shù)量的關系

圖6a表示各個算法數(shù)據(jù)加密算法的運行時間和系統(tǒng)中用戶身份數(shù)量的關系。由表2可知,在數(shù)據(jù)加密階段,文獻[18]算法有2個配對運算,文獻[19]算法有2個配對運算,本文算法有1個配對運算。由常用密碼算法計算時間可知,配對運算時間遠遠大于其他運算時間,故本文算法加密時間小于文獻[18]算法和文獻[19]算法加密時間,運行效率更高。

圖6b表示各個算法用戶撤銷算法的運行時間和系統(tǒng)中用戶身份數(shù)量的關系。由表2可知,在用戶撤銷階段,文獻[18]算法沒有配對運算,文獻[19]算法有1個配對運算,本文算法沒有配對運算,故本文算法在用戶撤銷階段的計算量小于文獻[18]算法和文獻[19]算法。本文算法在用戶撤銷算法的計算量比文獻[18]算法計算量少Th-TInv,比文獻[19]算法計算量少2Th+Tp+Te-TInv。

圖6c表示各個算法數(shù)據(jù)解密算法的運行時間和系統(tǒng)中用戶身份數(shù)量的關系。由表2可知,在數(shù)據(jù)解密階段,文獻[18]算法有2個配對運算,文獻[19]算法有3個配對運算,本文算法有1個配對運算,故本文算法在數(shù)據(jù)解密階段的計算量小于文獻[18]算法和文獻[19]算法的??傊?,本文算法在運行效率和通信效率上均具有較明顯的優(yōu)勢,提高了系統(tǒng)的性能。

6 結束語

本文提出一個隱私保護性廣播加密算法,利用廣播加密技術為多個數(shù)據(jù)用戶執(zhí)行授權,完成加密數(shù)據(jù)的有效廣播。并在智能電網(wǎng)中通過用戶撤銷對用戶身份靈活管理,實現(xiàn)接收者之間的匿名性。給出了詳細的正確性證明、安全性證明和性能分析。數(shù)值實驗結果表明,本文提出的算法具有較高的效率。在未來的工作中考慮將其應用于基于生物特征的廣播代理重加密場景中,以獲得更實用的價值。

猜你喜歡
加密算法密文加密
一種支持動態(tài)更新的可排名密文搜索方案
一種新型離散憶阻混沌系統(tǒng)及其圖像加密應用
基于模糊數(shù)學的通信網(wǎng)絡密文信息差錯恢復
基于DES加密算法的改進研究
基于網(wǎng)絡報文流量的協(xié)議密文分析方法
密鑰共享下跨用戶密文數(shù)據(jù)去重挖掘方法*
一種基于熵的混沌加密小波變換水印算法
DES加密算法的實現(xiàn)
基于整數(shù)矩陣乘法的圖像加密算法
加密與解密