亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于匿名廣播加密的云存儲(chǔ)訪問(wèn)控制方法

        2017-04-20 05:37:36許盛偉林慕清
        計(jì)算機(jī)應(yīng)用 2017年2期
        關(guān)鍵詞:敵手接收者密文

        許盛偉,林慕清

        (北京電子科技學(xué)院 信息安全研究所,北京 100070)

        (*通信作者電子郵箱linmq@besti.edu.cn)

        基于匿名廣播加密的云存儲(chǔ)訪問(wèn)控制方法

        許盛偉,林慕清*

        (北京電子科技學(xué)院 信息安全研究所,北京 100070)

        (*通信作者電子郵箱linmq@besti.edu.cn)

        針對(duì)現(xiàn)有的匿名廣播加密方法在加解密性能和安全性方面的不足,提出一種基于拉格朗日插值多項(xiàng)式的匿名廣播加密方法。首先定義了可以抵御自適應(yīng)敵手攻擊的匿名廣播加密安全模型;然后在合數(shù)階雙線性群環(huán)境下采用拉格朗日插值多項(xiàng)式對(duì)方案進(jìn)行了構(gòu)建,在保證用戶身份匿名性的同時(shí),實(shí)現(xiàn)了高效的加解密;最后基于子群判定假設(shè)和合數(shù)階判定雙線性Diffie-Hellman假設(shè),在標(biāo)準(zhǔn)模型下證明了方法針對(duì)自適應(yīng)敵手具有密文的機(jī)密性和接收者匿名性。實(shí)驗(yàn)與性能分析表明,方法具有較低的通信和計(jì)算開(kāi)銷,可以有效地解決云存儲(chǔ)中密文數(shù)據(jù)的匿名訪問(wèn)控制問(wèn)題。

        云存儲(chǔ);訪問(wèn)控制;匿名廣播加密;拉格朗日插值多項(xiàng)式;合數(shù)階雙線性群

        0 引言

        隨著計(jì)算機(jī)技術(shù)和互聯(lián)網(wǎng)應(yīng)用的迅速發(fā)展,云存儲(chǔ)服務(wù)憑借著使用方便、節(jié)約成本等優(yōu)勢(shì)得到了人們的廣泛關(guān)注與應(yīng)用。然而,云存儲(chǔ)在具有諸多優(yōu)勢(shì)的同時(shí),也帶來(lái)了許多新的安全隱患[1-3]。在云存儲(chǔ)體系中,用戶的數(shù)據(jù)存儲(chǔ)于云服務(wù)提供商(Cloud Service Provider, CSP)的服務(wù)器上,脫離了用戶的絕對(duì)控制,其安全性完全取決于CSP的系統(tǒng)安全性、數(shù)據(jù)管理員的素質(zhì)等,這對(duì)用戶來(lái)說(shuō)都是不可控的因素。由于用戶并不能完全信任CSP,因此當(dāng)需要對(duì)數(shù)據(jù)的訪問(wèn)權(quán)限進(jìn)行管理時(shí),傳統(tǒng)的由CSP所實(shí)施的訪問(wèn)控制方法已不再適用,因?yàn)镃SP無(wú)法向用戶證明自己確實(shí)正確地實(shí)施了訪問(wèn)控制。這時(shí),為了保證數(shù)據(jù)的可控訪問(wèn),人們往往采用基于密碼學(xué)的訪問(wèn)控制方法,即由用戶來(lái)對(duì)自己的數(shù)據(jù)進(jìn)行加密,并通過(guò)控制密文數(shù)據(jù)的解密權(quán)限來(lái)實(shí)現(xiàn)數(shù)據(jù)的訪問(wèn)控制。

        目前針對(duì)云存儲(chǔ)的密文訪問(wèn)控制方法主要可以分為基于屬性加密[4-6]和基于代理重加密[6-7]兩種。這些方法分別從不同角度、針對(duì)不同場(chǎng)景提出了許多有效的解決方案。然而,這些方法均未考慮到對(duì)用戶隱私的保護(hù),其所產(chǎn)生的密文均含有授權(quán)用戶的身份信息,因此并不適用于一些隱私敏感的應(yīng)用場(chǎng)景。

        與基于屬性加密和代理重加密相比,廣播加密[8]是一種更簡(jiǎn)單、靈活的對(duì)數(shù)據(jù)進(jìn)行加密和訪問(wèn)控制的方法。它能夠在不安全的信道(例如公共云存儲(chǔ)服務(wù)器)上利用安全的手段來(lái)向用戶共享數(shù)據(jù),并且同時(shí)保證數(shù)據(jù)的機(jī)密性。這里的“廣播”不只局限于網(wǎng)絡(luò)通信中的廣播機(jī)制,而是指廣義上任何公開(kāi)的信道。在廣播加密方法中,數(shù)據(jù)擁有者首先選定接收者集合,然后產(chǎn)生針對(duì)該集合的密文。當(dāng)且僅當(dāng)用戶屬于接收者集合時(shí),才能夠正確地解密出明文;即使所有集合外的用戶共謀,也無(wú)法成功進(jìn)行解密。與常見(jiàn)的組播通信不同的是,在廣播加密中,接收者集合是動(dòng)態(tài)的,即它是由數(shù)據(jù)擁有者在對(duì)數(shù)據(jù)進(jìn)行加密時(shí)自由選定的,并不是固定不變的。這意味著每個(gè)廣播加密密文都可以具有獨(dú)立的、不同的解密權(quán)限。這種特性使得廣播加密可以很自然地被應(yīng)用于云存儲(chǔ)的訪問(wèn)控制中。

        廣播加密的概念由Fiat等[8]首次提出。隨后研究者們針對(duì)該問(wèn)題展開(kāi)了一系列的研究,并取得了許多成果,其中主要可以分為基于對(duì)稱密鑰的廣播加密[9-11]和基于公鑰的廣播加密[12-14]兩種?;趯?duì)稱密鑰的方案具有較高的加解密效率,但均為集中式的方案,即只有系統(tǒng)中的唯一權(quán)威機(jī)構(gòu)才能有權(quán)限執(zhí)行加密算法。這可以滿足諸如衛(wèi)星電視節(jié)目的授權(quán)等領(lǐng)域的需求,但卻不適用于文件系統(tǒng)的訪問(wèn)控制。而基于公鑰的廣播加密方案則較為靈活,它允許系統(tǒng)中的任意用戶作為數(shù)據(jù)擁有者,執(zhí)行加密算法來(lái)向任意接收者集合共享數(shù)據(jù)。Boneh等[14]提出的方案將雙線性配對(duì)技術(shù)應(yīng)用到廣播加密中,提出了第一個(gè)帶有常數(shù)長(zhǎng)度的密文和私鑰的完全抗共謀廣播加密方案。隨后,Gentry等[15]提出了具有自適應(yīng)選擇明文攻擊(Chosen Plaintext Attack, CPA)安全性的公鑰廣播加密方案。該方案包括了兩個(gè)廣播加密方案和兩個(gè)基于身份的廣播加密方案,均在隨機(jī)預(yù)言模型下實(shí)現(xiàn)了常數(shù)級(jí)的密文長(zhǎng)度。Phan等[16]對(duì)文獻(xiàn)[14]中的第一個(gè)方案進(jìn)行了改進(jìn),提出了一種帶有常數(shù)長(zhǎng)度的密文和私鑰的選擇性選擇密文攻擊(Chosen Ciphertext Attack, CCA)安全的方案,隨后他們基于雙線性Diffie-Hellman指數(shù)(Bilinear Diffie-Hellman Exponent, BDHE)假設(shè)的一般化形式和KEA(Knowledge of Exponent Assumption)假設(shè)證明了該方案的自適應(yīng)CCA安全性。

        基于身份的廣播加密(Identity-Based Broadcast Encryption, IBBE)方案是公鑰廣播加密方案的一種特殊形式,它使用用戶的身份標(biāo)識(shí)來(lái)進(jìn)行加密與解密。與普通的公鑰廣播加密方案相比,IBBE方案在新加入用戶時(shí)不需要對(duì)整個(gè)系統(tǒng)的公鑰進(jìn)行更新,因此用戶可以隨時(shí)加入系統(tǒng)。首個(gè)IBBE方案由Delerablée[17]提出,他構(gòu)建了一種選擇性CPA安全的IBBE方法,并具有常數(shù)長(zhǎng)度的密文和私鑰。由于方案是基于身份的,因此支持用戶的動(dòng)態(tài)加入,不需要更新系統(tǒng)公鑰。Boneh等[18]使用分層身份加密結(jié)構(gòu)在標(biāo)準(zhǔn)模型下構(gòu)建了一個(gè)分層的廣播加密方案。Zhang等[19]提出了一種基于雙重加密技術(shù)的基于身份廣播加密方案,使用靜態(tài)假設(shè)在標(biāo)準(zhǔn)模型下實(shí)現(xiàn)了自適應(yīng)安全性。

        為了提高算法的效率,以上的這些方案往往將接收者集合以明文的形式與廣播加密密文一起傳送。然而在某些應(yīng)用場(chǎng)景中,接收者的身份可能和密文本身一樣都是敏感信息,此時(shí)這些方案均不再適用,因?yàn)樵谕ㄐ胖袝?huì)泄露接收者的身份信息。一些研究者們開(kāi)始研究如何在加密的同時(shí)實(shí)現(xiàn)對(duì)接收者身份的隱藏。Barth等[20]首次提出了私有廣播加密的概念,構(gòu)建了兩種基于公鑰的方案,不會(huì)泄露關(guān)于接收者集合的任何信息。Fazio等[21]提出了一個(gè)基于子集覆蓋框架的方案,具有次線性的密文長(zhǎng)度;在該方案中,接收者的身份對(duì)于集合外的用戶來(lái)說(shuō)是匿名的,但對(duì)同一集合中的用戶來(lái)說(shuō)卻是可見(jiàn)的。Libert等[22]首次給出了匿名廣播加密(Anonymous Broadcast Encryption, ANOBE)的形式化安全模型,其允許敵手進(jìn)行自適應(yīng)的腐蝕攻擊;然而,該方案的匿名性是由使用多份對(duì)稱加密的密文構(gòu)成廣播體來(lái)實(shí)現(xiàn)的,通信開(kāi)銷較大。Hur等[23]構(gòu)建了一種隱私保護(hù)的基于身份廣播加密方案;該方案同樣是選擇性安全的,并且需要進(jìn)行多次的解密嘗試才能正確地解密出明文。

        雖然針對(duì)匿名廣播加密方法的研究取得了一定的進(jìn)展,但目前還存在著一些不足?,F(xiàn)有方法中解密算法的效率較低,因?yàn)楝F(xiàn)有方案所采用的方法都需要在解密時(shí)進(jìn)行不斷的嘗試才能得到明文;另外,這些方案的安全模型均為選擇性安全模型,目前還沒(méi)有自適應(yīng)安全的匿名廣播加密方案。

        本文在假定CSP為不可信實(shí)體的基礎(chǔ)上,針對(duì)云存儲(chǔ)訪問(wèn)控制中的匿名性問(wèn)題,提出了一種新的匿名廣播加密方法。方法采用基于身份的公鑰廣播加密,支持用戶以身份標(biāo)識(shí)直接參與運(yùn)算,并且任意用戶都可以調(diào)用加密算法進(jìn)行數(shù)據(jù)的加密。算法在合數(shù)階雙線性群及相關(guān)復(fù)雜性假設(shè)的基礎(chǔ)上構(gòu)建,并采用拉格朗日插值多項(xiàng)式來(lái)實(shí)現(xiàn)對(duì)用戶的身份信息的隱藏。與同類方案相比,本文方法在具有更高的解密效率的同時(shí),實(shí)現(xiàn)了標(biāo)準(zhǔn)模型下的自適應(yīng)安全性。

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

        1.1 合數(shù)階雙線性群

        合數(shù)階雙線性群的概念首次在文獻(xiàn)[24]中出現(xiàn)。給定安全參數(shù)k,選擇兩個(gè)素?cái)?shù)p和q,令G和G分別為階為n=pq的循環(huán)群,e:G×G→G是一個(gè)雙線性映射,滿足以下性質(zhì):

        雙線性 對(duì)于所有g(shù),h∈G,a,b∈Zn,有e(ga,hb)=e(g,h)ab;

        非退化性 存在g∈G,使得e(g,g)≠1,且是G的生成元;

        可計(jì)算性 群G、G中的運(yùn)算以及映射e:G×G→G的計(jì)算都可以在多項(xiàng)式時(shí)間內(nèi)完成。

        令Gp和Gq分別為階為p和q的子群,g為群G的生成元,gp,gq分別為Gp和Gq的生成元。則對(duì)于任意hp∈Gp和hq∈Gq,元素e(hp,hq)為G中的單位元,即:

        (1)

        因?yàn)槿篏的階為n。

        1.1.1 子群判定假設(shè)

        子群判定問(wèn)題定義如下:給定(n,G,G,e)和一個(gè)元素x∈G,判斷元素x的階是否等于p。換句話說(shuō),在不知道階n的因式分解的情況下,判斷該元素是否屬于G的一個(gè)子群。

        對(duì)于一個(gè)算法來(lái)說(shuō),其解決子群判定問(wèn)題的優(yōu)勢(shì)可以定義為概率|Pr[solved]-1/2|。如果對(duì)于任意概率多項(xiàng)式時(shí)間(ProbabilisticPolynomialTime,PPT)算法A來(lái)說(shuō),解決(n,G,G,e)中的子群判定問(wèn)題的優(yōu)勢(shì)最高為一個(gè)可忽略值,則稱子群判定假設(shè)(SubgroupDecisionAssumption,SDA)成立。

        1.1.2 合數(shù)階判定雙線性Diffie-Hellman假設(shè)

        對(duì)于一個(gè)算法來(lái)說(shuō),其解決CDBDH問(wèn)題的優(yōu)勢(shì)可以定義為概率|Pr[solved]-1/2|。如果對(duì)于任意PPT算法A來(lái)說(shuō),解決(p,q,G,G,e)中的CDBDH問(wèn)題的優(yōu)勢(shì)最高為一個(gè)可忽略值,則稱CDBDH假設(shè)成立。

        1.2 拉格朗日插值多項(xiàng)式

        拉格朗日插值[25]方法可以確定一個(gè)多項(xiàng)式曲線,使其精確地穿過(guò)二維平面上的一系列已知點(diǎn)。給定n個(gè)不同的點(diǎn)(x1,y1),(x2,y2),…,(xn,yn)。令n個(gè)(n-1)次的首一多項(xiàng)式表示為:

        滿足:

        則插值多項(xiàng)式F(x)可以由以下方法給出:

        2 系統(tǒng)模型

        為了兼顧安全性和效率,目前針對(duì)密文的訪問(wèn)控制方法主要采用混合加密機(jī)制來(lái)對(duì)數(shù)據(jù)進(jìn)行加密,包括數(shù)據(jù)封裝機(jī)制(DataEncapsulationMechanism,DEM)和密鑰封裝機(jī)制(KeyEncapsulationMechanism,KEM)兩個(gè)部分。其中,DEM用于對(duì)具體要保護(hù)的數(shù)據(jù)文件進(jìn)行加密,并且采用對(duì)稱加密方法來(lái)實(shí)現(xiàn)較高的加解密效率;而KEM則用于對(duì)DEM中的密鑰進(jìn)行加密保護(hù),主要采用公鑰密碼學(xué)的相關(guān)方法來(lái)實(shí)現(xiàn)較靈活的訪問(wèn)控制特性。

        圖1 廣播加密中的密鑰封裝機(jī)制

        廣播加密是一種密鑰封裝機(jī)制。其中,用于加密數(shù)據(jù)文件的對(duì)稱密鑰是由加密算法輸出的,如圖1所示。給定一個(gè)數(shù)據(jù)文件M,數(shù)據(jù)的擁有者首先選定允許訪問(wèn)M的授權(quán)用戶集合S,然后以S為輸入執(zhí)行加密算法得到一個(gè)隨機(jī)的對(duì)稱密鑰K和一個(gè)廣播頭部Hdr,并使用密鑰K加密數(shù)據(jù)文件M,最后將加密后的文件C與廣播頭部Hdr一起上傳到云端。廣播頭部中包含了接收者的身份信息,合法的接收者可以使用自己的私鑰進(jìn)行解密,重新還原出對(duì)稱密鑰K,進(jìn)而用來(lái)解密密文數(shù)據(jù)C。

        本文所提出的匿名廣播加密方案由三種實(shí)體構(gòu)成。各種實(shí)體的角色與功能介紹如下:

        1)私鑰生成器(PrivateKeyGenerator,PKG)。作為系統(tǒng)中的一個(gè)可信的第三方,負(fù)責(zé)進(jìn)行系統(tǒng)的初始化和密鑰的生成。在生成系統(tǒng)的主密鑰和公鑰后,PKG還需要響應(yīng)用戶的加入請(qǐng)求,來(lái)為每位用戶生成私鑰。PKG并不參與加密與解密,如果當(dāng)前沒(méi)有用戶需要加入的話,其可以處于離線模式,暫時(shí)停止工作。

        2)數(shù)據(jù)擁有者。數(shù)據(jù)擁有者是擁有數(shù)據(jù)、并準(zhǔn)備向指定用戶共享數(shù)據(jù)的用戶。在公鑰廣播加密系統(tǒng)中,任何用戶都可以作為數(shù)據(jù)擁有者來(lái)向其他人共享數(shù)據(jù)。在每次加密時(shí),數(shù)據(jù)擁有者都需要顯式地指定數(shù)據(jù)的接收者集合,然后針對(duì)該集合來(lái)加密數(shù)據(jù),得到廣播密文并存儲(chǔ)至云端。

        3)接收者。接收者是在每次加密中處于目標(biāo)集合中的用戶,其可以使用自己的私鑰來(lái)解密從云端下載的廣播密文。同時(shí),任何接收者都無(wú)法了解到集合中的其他用戶身份。

        實(shí)際上,數(shù)據(jù)擁有者和接收者在系統(tǒng)中都屬于同一類型的用戶。本文主要基于用戶在算法中的不同角色和功能來(lái)將其劃分為這兩類實(shí)體。對(duì)于一個(gè)用戶來(lái)說(shuō),其既可以是某個(gè)數(shù)據(jù)文件的擁有者,同時(shí)也可以是另一個(gè)數(shù)據(jù)文件的接收者。

        2.1 模型的形式化定義

        本文所提出的匿名廣播加密方案由四個(gè)多項(xiàng)式時(shí)間算法組成,即ANOBE=(Setup,Join,Encrypt,Decrypt),具體描述如下:

        1)(MSK,PK)←Setup(1k):由PKG執(zhí)行,用于生成系統(tǒng)密鑰。算法以安全參數(shù)k為輸入,輸出主密鑰MSK和公鑰PK。

        2)ski←Join(MSK,IDi):由PKG執(zhí)行,用于為用戶頒發(fā)私鑰。算法輸入主密鑰MSK和用戶的身份IDi,輸出針對(duì)該用戶的私鑰ski。

        3)(Hdr,K)←Encrypt(PK,S):由數(shù)據(jù)擁有者執(zhí)行,用于生成會(huì)話密鑰。算法輸入公鑰PK和用戶身份集合S={…,IDi,…},輸出廣播頭部Hdr和一個(gè)會(huì)話密鑰K。

        4)K←Decrypt(IDi,ski,Hdr):由接收者執(zhí)行,用于解密所收到的廣播頭部。算法輸入用戶身份IDi、對(duì)應(yīng)該身份的私鑰ski和一個(gè)廣播頭部,輸出一個(gè)會(huì)話密鑰K。

        在初始化階段中,PKG運(yùn)行Setup算法來(lái)產(chǎn)生系統(tǒng)的主密鑰和公鑰。隨后,對(duì)于每一個(gè)新用戶,PKG運(yùn)行Join算法來(lái)為用戶生成私鑰。該階段可以看成是用戶的注冊(cè)階段。只要PKG在線,新用戶可以在任何時(shí)候加入系統(tǒng)。

        給定一個(gè)要共享的數(shù)據(jù)文件M,數(shù)據(jù)擁有者首先選定一個(gè)接收者集合S,然后運(yùn)行Encrypt算法來(lái)輸出一個(gè)廣播頭部Hdr和一個(gè)會(huì)話密鑰K。隨后,數(shù)據(jù)擁有者可以使用對(duì)稱加密算法以K為密鑰對(duì)M進(jìn)行加密,得到密文CM。因此最終實(shí)際存放在云端的內(nèi)容為(Hdr,CM),稱為廣播密文。實(shí)際上在該步驟中,數(shù)據(jù)擁有者選定的接收者集合S可以包含任意用戶,甚至那些未加入系統(tǒng)中的用戶,因?yàn)榧现兄恍枰脩舻纳矸菁纯?。用戶可以在以后的任意時(shí)刻向PKG申請(qǐng)私鑰,然后去嘗試解密消息。

        對(duì)于從云端下載到的廣播密文(Hdr,CM),用戶可以通過(guò)運(yùn)行Decrypt算法來(lái)判斷自己是否為接收者。如果該用戶是接收者的話,那么Decrypt算法會(huì)輸出一個(gè)正確的密鑰K;如果用戶不是接收者,那么算法會(huì)輸出一個(gè)不確定的其他值,因此不能解密CM。與普通廣播加密算法不同的是,該算法不再需要以集合S作為輸入。

        如果對(duì)于所有集合S和所有IDi∈S,方案滿足等式:

        Pr[(MSK,PK)←Setup(1k);ski←Join(MSK,IDi); (Hdr,K)←Encrypt(PK,S);K′←Decrypt(IDi,ski,Hdr):K=K′]=1

        則稱該匿名廣播加密方案是正確的。

        2.2 安全性定義

        直觀上,一個(gè)安全的匿名廣播加密方案應(yīng)該滿足以下安全性質(zhì):

        1)方案應(yīng)該滿足完全抗共謀性。給定一個(gè)廣播密文,只有屬于接收者集合的用戶才能解密得到消息。任何集合外的用戶都無(wú)法從密文中獲得任何有用信息,即使所有集合外用戶在一起共謀。

        2)接收者的身份應(yīng)該是完全匿名的。給定一個(gè)廣播密文,任何用戶應(yīng)該只能檢驗(yàn)自己是否為接收者,無(wú)法判斷其他任何用戶是否能解密,即無(wú)法確定同一集合中其他用戶的身份。

        本節(jié)使用挑戰(zhàn)者C和敵手A之間的攻擊實(shí)驗(yàn)來(lái)定義匿名廣播加密方案的選擇密文安全性模型。在攻擊實(shí)驗(yàn)中,挑戰(zhàn)者和敵手為相互交互的概率過(guò)程。該安全模型針對(duì)自適應(yīng)敵手構(gòu)建,相對(duì)于文獻(xiàn)[22-23]中的靜態(tài)安全模型來(lái)說(shuō),進(jìn)一步提高了敵手的攻擊能力。兩種敵手的主要區(qū)別是,在靜態(tài)敵手模型中,敵手必須首先選定想要攻擊的用戶集合,然后才開(kāi)始進(jìn)行交互實(shí)驗(yàn);而在自適應(yīng)敵手模型中,敵手可以在生成公鑰、并完成第一階段的質(zhì)詢后再選擇想要進(jìn)行攻擊的用戶集合。在這種情況下,敵手在發(fā)起挑戰(zhàn)前所擁有的信息遠(yuǎn)多于靜態(tài)敵手,因此具有更高的攻擊能力。

        2.2.1 密文機(jī)密性

        密文的機(jī)密性指,即使敵手擁有質(zhì)詢所有其他用戶私鑰的能力,也無(wú)法區(qū)分真實(shí)的密文和一個(gè)隨機(jī)給定的值。以下定義描述了方案在自適應(yīng)選擇密文攻擊下的加密不可區(qū)分性(IND-ADA-CCA1)。

        定義1IND-ADA-CCA1安全性。給定一個(gè)ANOBE方案,令A(yù)為一個(gè)自適應(yīng)敵手,C為一個(gè)挑戰(zhàn)者??紤]以下實(shí)驗(yàn):

        初始化 挑戰(zhàn)者C運(yùn)行Setup(1k)得到主密鑰MSK和公鑰PK,并將PK發(fā)送給A。

        階段1 A可以向以下兩種預(yù)言機(jī)發(fā)起至多多項(xiàng)式次質(zhì)詢:

        1)加入質(zhì)詢:對(duì)于A選擇的任意身份IDi,C運(yùn)行Join(MSK,IDi)得到私鑰ski并發(fā)送給A。

        2)解密質(zhì)詢:對(duì)于A選擇的頭部(Hdri,Si),C隨機(jī)選擇一個(gè)ID∈Si,然后生成該ID的私鑰sk,運(yùn)行Decrypt(ID,sk,Hdri)得到Ki并發(fā)送給A。

        挑戰(zhàn) A選擇一個(gè)身份集合S*,其中集合中的身份均未在階段1中質(zhì)詢過(guò)。C運(yùn)行Encrypt(PK,S*)對(duì)集合S*進(jìn)行加密,并得到(Hdr*,K*)。然后C選擇一個(gè)隨機(jī)值b∈{0,1},并設(shè)置Kb=K*,K1-b=K′,其中K′為G中的一個(gè)隨機(jī)元素。最后C將(Hdr*,K0,K1)發(fā)送給A。

        階段2 A可以繼續(xù)發(fā)起至多多項(xiàng)式次階段1中的加入質(zhì)詢,但不能針對(duì)IDi∈S*發(fā)起質(zhì)詢。

        猜測(cè) A輸出一個(gè)針對(duì)b的猜測(cè)b′。如果b′=b,則A獲勝。

        2.2.2 接收者匿名性

        接收者匿名性是指,給定一個(gè)密文和兩個(gè)同樣大小的接收者集合,敵手無(wú)法區(qū)分該密文是由哪個(gè)接收者集合通過(guò)加密算法生成的。以下定義描述了方案在自適應(yīng)選擇密文攻擊下的匿名加密不可區(qū)分性(ANON-ADA-CCA1)。

        定義2ANON-ADA-CCA1安全性。給定一個(gè)ANOBE方案,令A(yù)為一個(gè)自適應(yīng)敵手,C為一個(gè)挑戰(zhàn)者??紤]以下實(shí)驗(yàn):

        初始化 挑戰(zhàn)者C運(yùn)行Setup(1k)得到主密鑰MSK和公鑰PK,并將PK發(fā)送給A。

        階段1 A可以向以下兩種預(yù)言機(jī)發(fā)起至多多項(xiàng)式次質(zhì)詢:

        1)加入質(zhì)詢:對(duì)于A選擇的任意身份IDi,C運(yùn)行Join(MSK,IDi)得到私鑰ski并發(fā)送給A。

        2)解密質(zhì)詢:對(duì)于A選擇的頭部(Hdri,Si),C隨機(jī)選擇一個(gè)ID∈Si,然后生成該ID的私鑰sk,運(yùn)行Decrypt(ID,sk,Hdri)得到Ki并發(fā)送給A。

        挑戰(zhàn) A選擇兩個(gè)不同的接收者集合S0和S1,使兩個(gè)集合的大小|S0|=|S1|,并且A未在階段1中質(zhì)詢過(guò)IDi∈S0ΔS1=(S0S1)∪(S1S0)。C選擇一個(gè)隨機(jī)值b∈{0,1},然后運(yùn)行Encrypt(PK,Sb)對(duì)集合Sb進(jìn)行加密,并得到(Hdrb,Kb)。最后C將(Hdrb,Kb)發(fā)送給A。

        階段2 A可以繼續(xù)發(fā)起至多多項(xiàng)式次階段1中的加入質(zhì)詢,但不能針對(duì)IDi∈S0ΔS1發(fā)起質(zhì)詢。

        猜測(cè) A輸出一個(gè)針對(duì)b的猜測(cè)b′。如果b′=b,則A獲勝。

        3 本文方案構(gòu)建

        3.1 設(shè)計(jì)思路

        構(gòu)建方案的主要思路如下。在系統(tǒng)中,處于接收者集合中的每個(gè)用戶都關(guān)聯(lián)著一個(gè)抽象的點(diǎn)(x,y)。在點(diǎn)(x,y)中,x坐標(biāo)為一個(gè)長(zhǎng)度為l比特的大整數(shù),代表用戶的身份ID;y坐標(biāo)為一個(gè)群元素,其具體的值由用戶的ID值參與計(jì)算得到。顯然這不是常規(guī)意義上的二維平面上的點(diǎn),但并不影響對(duì)多項(xiàng)式的計(jì)算。每個(gè)用戶的x坐標(biāo)是固定的,即用戶的身份不變;但y坐標(biāo)在每次加密時(shí)都會(huì)發(fā)生變動(dòng),因?yàn)樵谟?jì)算過(guò)程中用到了隨機(jī)量。

        令(x1,x2,…,xn)為接收者集合中的身份。在一次加密中,數(shù)據(jù)擁有者首先選擇一個(gè)隨機(jī)量參與計(jì)算得到會(huì)話密鑰K和每個(gè)接收者的y坐標(biāo),然后使用((x1,y1),(x2,y2),…,(xn,yn))來(lái)構(gòu)造拉格朗日插值多項(xiàng)式:

        使用拉格朗日插值多項(xiàng)式的主要目的是將這些y坐標(biāo)隱藏到多項(xiàng)式中,因?yàn)橹挥羞@些值才包含了解密信息。若將某個(gè)身份xi∈(x1,x2,…,xn)代入到F(x)中進(jìn)行計(jì)算的話,會(huì)得到一個(gè)對(duì)應(yīng)的值yi=F(xi)。然而,如果xi?(x1,x2,…,xn),那么代入到F(x)中后,會(huì)產(chǎn)生一個(gè)不可預(yù)測(cè)的yi值,因?yàn)槎囗?xiàng)式F(x)中的系數(shù)均為群中的離散元素。這也意味著,給定多項(xiàng)式F(x),無(wú)法從中恢復(fù)出點(diǎn)((x1,y1),(x2,y2),…,(xn,yn))。在本方案的構(gòu)造中,多項(xiàng)式F(x)是廣播頭部Hdr的主要組成部分。

        對(duì)于每個(gè)用戶來(lái)說(shuō),用戶的私鑰、用戶的y坐標(biāo)和當(dāng)前的會(huì)話密鑰之間存在著聯(lián)系,可以由前兩個(gè)值計(jì)算出會(huì)話密鑰。在這種機(jī)制下,接收者的身份對(duì)其他用戶來(lái)說(shuō)是隱藏的。例如,一個(gè)敵手A希望測(cè)試某個(gè)身份ID是否屬于接收者集合。A可以將該ID代入到F(x)中,得到一個(gè)值y。這個(gè)y可能是正確的,但由于A并沒(méi)有該ID所對(duì)應(yīng)的私鑰,因此無(wú)法利用該y值來(lái)計(jì)算會(huì)話密鑰。也就是說(shuō),敵手A無(wú)法判斷所生成的y值的正確性,即無(wú)法判斷該用戶是否是一個(gè)接收者。

        3.2 詳細(xì)算法設(shè)計(jì)

        本節(jié)詳細(xì)介紹本文所提出的方案中的算法。整個(gè)系統(tǒng)基于合數(shù)階雙線性群構(gòu)建。為了表示方便,本文會(huì)同時(shí)使用乘法和加法來(lái)表示群運(yùn)算。在實(shí)現(xiàn)時(shí),兩種運(yùn)算的含義相同,均表示橢圓曲線群中的點(diǎn)運(yùn)算。

        選擇適當(dāng)?shù)膌值作為用戶ID的長(zhǎng)度,并選擇一個(gè)長(zhǎng)度為l的素?cái)?shù)s來(lái)構(gòu)建整數(shù)群Zs。選擇哈希函數(shù)H:{0,1}*→Zs用來(lái)將任意長(zhǎng)度的用戶身份映射到Zs中。在本文接下來(lái)的內(nèi)容中,均使用哈希值ID∈Zs來(lái)代表用戶的身份;以l、s、H作為整個(gè)系統(tǒng)的公共參數(shù),來(lái)進(jìn)行具體的算法設(shè)計(jì)。

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

        (MSK,PK)←Setup(1k):進(jìn)行系統(tǒng)的初始化和系統(tǒng)密鑰生成。主要步驟如下:

        1)選擇兩個(gè)長(zhǎng)度為k的素?cái)?shù)p和q,并生成雙線性配對(duì)參數(shù)(n,G,G,e),其中n=pq是群G和G的階。令Gp和Gq分別為階為p和q的子群,gp,gq分別為Gp和Gq的生成元。參數(shù)(n,G,G,e)作為公共參數(shù)公開(kāi)。

        3.2.2 用戶加入算法

        ski←Join(MSK,IDi):為用戶頒發(fā)私鑰。主要步驟如下:

        1)將用戶的身份IDi按比特位展開(kāi)成(IDi,1,…,IDi,l),其中每個(gè)IDi, j∈{0,1}。隨機(jī)選擇r∈Zn,并計(jì)算私鑰(這里的群運(yùn)算用乘法表示):

        2)輸出ski。

        3.2.3 加密算法

        (Hdr,K)←Encrypt(PK,S):針對(duì)集合S進(jìn)行加密并生成會(huì)話密鑰。給定系統(tǒng)公鑰PK=(gq,Q,Q,e(g1,g2))和接收者集合S=(ID1,ID2,…,ID|S|),算法主要步驟如下:

        1)對(duì)于i=1,2,…,|S|,令xi=IDi,則xi∈Zs。構(gòu)造以下多項(xiàng)式:

        使得fi(xi)=1,fi(xj)=0。其中所有運(yùn)算均為在Zs中的模s運(yùn)算。

        2)隨機(jī)選擇t∈Zn,v∈Gq,(v1,v2,…,v|S|)∈Gq,計(jì)算K=e(g1,g2)t,C=v·Qt。

        3)對(duì)于i=1,2,…,|S|,計(jì)算(這里的群運(yùn)算用乘法表示):

        4)對(duì)于i=1,2,…,|S|,將aj,i作為大整數(shù),計(jì)算(這里的群運(yùn)算用加法表示):

        5)令Hdr=(T1,T2,…,T|S|,C),并輸出(Hdr,K)。

        3.2.4 解密算法

        K←Decrypt(IDi,ski,Hdr):對(duì)廣播頭部進(jìn)行解密得到會(huì)話密鑰。給定IDi,ski=(di,1,di,2)和Hdr=(T1,T2,…,T|S|,C),算法主要步驟如下:

        2)計(jì)算:

        K=e(di,1,C)/e(di,2,δi)

        3)輸出會(huì)話密鑰K。

        3.3 算法的正確性

        方案的正確性可以由以下推導(dǎo)得出:

        根據(jù)式(1),對(duì)于任意元素hp∈Gp和hq∈Gq,總是存在e(hp,hq)=1。因此,在解密算法中,

        實(shí)際上,在廣播頭部Hdr中的元組(T1,T2,…,T|S|)可以看作為拉格朗日插值多項(xiàng)式F(x)的系數(shù),其中:

        F(x)=T1+xT2+…+x|S|-1T|S|=f1(x)y1+f2(x)y2+…+f|S|(x)y|S|

        滿足F(xi)=δi=yi。

        4 安全性分析

        本章將對(duì)本文方案的安全性進(jìn)行詳細(xì)的分析與證明。在接下來(lái)的內(nèi)容中,將通過(guò)構(gòu)造一個(gè)挑戰(zhàn)者C和一個(gè)敵手A之間的攻擊實(shí)驗(yàn)來(lái)證明所提出的方案在CDBDH假設(shè)和SDA假設(shè)下針對(duì)自適應(yīng)敵手的密文機(jī)密性和接收者匿名性。

        4.1 密文機(jī)密性

        定理1 若CDBDH假設(shè)成立,則本文所提出的ANOBE方案是IND-ADA-CCA1安全的。

        證明 該安全性意味著,對(duì)于定義1中的實(shí)驗(yàn),任何PPT敵手都只有最多可忽略的優(yōu)勢(shì)獲勝。接下來(lái)的證明過(guò)程將顯示,如果存在一個(gè)PPT敵手A可以以不可忽略的優(yōu)勢(shì)ε在實(shí)驗(yàn)中獲勝,那么就存在一個(gè)PPT挑戰(zhàn)者C可以以不可忽略的概率解決CDBDH問(wèn)題的一個(gè)實(shí)例。換句話說(shuō),挑戰(zhàn)者C可以借助敵手A的能力來(lái)解決CDBDH問(wèn)題,因此違反了CDBDH假設(shè)。

        假設(shè)A可以發(fā)起最多μ次加入質(zhì)詢和μ′次解密質(zhì)詢。令l為用戶身份的比特串長(zhǎng)度。挑戰(zhàn)者C按照以下方式和敵手A進(jìn)行交互:

        對(duì)于每位用戶的身份IDi=(IDi,1,IDi,2,…,IDi,l),定義以下三個(gè)輔助函數(shù):

        從A的角度來(lái)看,收到的這些值與從實(shí)際方案中獲得的值并沒(méi)有區(qū)別。

        階段1 在該階段中,A可以向C發(fā)起兩種質(zhì)詢。對(duì)于加入質(zhì)詢,C按照以下方式響應(yīng):

        設(shè)A針對(duì)IDi發(fā)起質(zhì)詢。如果K(IDi)=0,則C終止實(shí)驗(yàn)并隨機(jī)輸出一個(gè)針對(duì)CDBDH問(wèn)題的猜測(cè)θ。若K(IDi)≠0,C選擇一個(gè)隨機(jī)值r∈Zn,并構(gòu)造私鑰:

        從A的角度來(lái)看,這是一個(gè)有效的私鑰,因?yàn)槿绻?/p>

        那么有:

        同時(shí),還有:

        因此該私鑰ski與實(shí)際方案中的私鑰具有相同的結(jié)構(gòu)。當(dāng)L(IDi)≠0時(shí),該私鑰是可計(jì)算的。為了便于分析,這里使用了L(IDi)≠0的充分條件K(IDi)≠0。

        對(duì)于A的解密質(zhì)詢(Hdri,Si),C首先為集合Si中的一個(gè)身份生成私鑰,然后運(yùn)行解密算法得到會(huì)話密鑰Ki并發(fā)送給A。

        挑戰(zhàn) A選擇一個(gè)身份集合S*,其中集合中的身份均未在階段1中質(zhì)詢過(guò)。C按以下方式對(duì)集合S*進(jìn)行加密。

        對(duì)于任意IDi∈S*,如果存在:

        則C終止實(shí)驗(yàn)并隨機(jī)輸出一個(gè)針對(duì)CDBDH問(wèn)題的猜測(cè)θ;否則,C執(zhí)行以下步驟:

        1)對(duì)于i=1,2,…,|S*|,令xi=IDi,構(gòu)造以下多項(xiàng)式:

        使得fi(xi)=1,fi(xj)=0。

        4)對(duì)于i=1,2,…,|S*|,計(jì)算:

        5)令Hdr*=(T1,T2,…,T|S*|,C),并輸出(Hdr*,K*)。

        如果T=e(gp,gp)αβγ,則(Hdr*,K*)是一個(gè)有效的密文,因?yàn)镵*=T=e(gp,gp)αβγ=e(g1,g2)γ,并且有:

        如果階段1的解密預(yù)言機(jī)曾經(jīng)向A發(fā)送過(guò)值K*,則C終止實(shí)驗(yàn)并隨機(jī)輸出一個(gè)針對(duì)CDBDH問(wèn)題的猜測(cè)θ。這是因?yàn)槿绻l(fā)送過(guò)值K*,那么這意味著A在該階段質(zhì)詢的是(Hdr*,S*)或其他有效形式,因此A可以很容易在這種情況下獲勝。

        相反,如果階段1的解密預(yù)言機(jī)沒(méi)有向A發(fā)送過(guò)值K*的話,那么就意味著敵手并沒(méi)有從解密預(yù)言機(jī)中獲得任何有用信息。這時(shí),C選擇一個(gè)隨機(jī)的元素K′∈G和一個(gè)隨機(jī)值b∈{0,1},設(shè)置Kb=K*,K1-b=K′,并將(Hdr*,K0,K1)發(fā)送給A。

        階段2 A可以繼續(xù)發(fā)起至多多項(xiàng)式次階段1中的加入質(zhì)詢,但不能針對(duì)IDi∈S*發(fā)起質(zhì)詢。

        猜測(cè) A輸出一個(gè)針對(duì)b的猜測(cè)b′。如果b′=b,則A獲勝。

        實(shí)驗(yàn)結(jié)束后,如果A獲勝,則C輸出針對(duì)CDBDH問(wèn)題的猜測(cè)θ=1,即認(rèn)為T=e(gp,gp)αβγ;反之,若A失敗,則C輸出針對(duì)CDBDH問(wèn)題的猜測(cè)θ=0,即認(rèn)為T是G中的一個(gè)其他的隨機(jī)值。

        分析 接下來(lái)將分析挑戰(zhàn)者C可以解決該CDBDH問(wèn)題實(shí)例的概率。

        實(shí)驗(yàn)可能在正常結(jié)束之前就被C中止。如果發(fā)生了中止,C只有1/2的概率能解決該問(wèn)題,因?yàn)橹兄箤?shí)驗(yàn)后,C的猜測(cè)是隨機(jī)選擇的。此外,如果給定的T是G中的隨機(jī)值的話,那么A的優(yōu)勢(shì)為0,因此無(wú)論實(shí)驗(yàn)中止與否,C都只有1/2的概率能解決該問(wèn)題。因此CDBDH問(wèn)題被解決的概率:

        其中ε是A在實(shí)驗(yàn)中獲勝的優(yōu)勢(shì)。接下來(lái)將討論當(dāng)T=e(gp,gp)αβγ,實(shí)驗(yàn)被C中止的概率。中止可能在以下三種情況下發(fā)生:

        1)在加入質(zhì)詢中,當(dāng)K(IDi)=0時(shí);

        3)在挑戰(zhàn)階段,當(dāng)K*等于解密預(yù)言機(jī)在階段1中回答過(guò)的某個(gè)值時(shí)。

        前兩種情況是相互獨(dú)立的,因?yàn)閿呈衷谶M(jìn)行加入質(zhì)詢中用到的身份與挑戰(zhàn)階段的接收者集合中的身份沒(méi)有任何重復(fù)。將這三種情況導(dǎo)致的中止事件分別定義為abort1、abort2和abort3,因此有:

        和:

        那么整個(gè)實(shí)驗(yàn)不中止的概率為:

        從以上分析可以看出,如果敵手在實(shí)驗(yàn)中獲勝的優(yōu)勢(shì)ε是一個(gè)不可忽略的值的話,那么挑戰(zhàn)者C同樣可以以一個(gè)不可忽略的優(yōu)勢(shì)來(lái)解決CDBDH問(wèn)題,這與CDBDH假設(shè)相矛盾。因此可以得到結(jié)論,即若CDBDH假設(shè)成立,則任何PPT敵手在該實(shí)驗(yàn)中獲勝的優(yōu)勢(shì)都是一個(gè)可忽略的值,所以本文所提出的ANOBE方案是IND-ADA-CCA1安全的。

        4.2 接收者匿名性

        定理2 若SDA假設(shè)成立,則本文所提出的ANOBE方案是ANON-ADA-CCA1安全的。

        證明 在本節(jié)中,通過(guò)定義一個(gè)實(shí)驗(yàn)序列0,1,2,…來(lái)對(duì)該定理進(jìn)行證明。其中,實(shí)驗(yàn)0為原始攻擊實(shí)驗(yàn),即為定義2中所描述的攻擊實(shí)驗(yàn);令序列中的最后一個(gè)實(shí)驗(yàn)為目標(biāo)實(shí)驗(yàn),使得其中敵手的獲勝概率僅為1/2。任何相鄰的兩個(gè)實(shí)驗(yàn)之間的變化都非常小,即實(shí)驗(yàn)i和實(shí)驗(yàn)i+1之間的差異對(duì)所有PPT敵手來(lái)說(shuō)都是可忽略的,敵手無(wú)法區(qū)分當(dāng)前進(jìn)行的是實(shí)驗(yàn)i還是實(shí)驗(yàn)i+1。由于實(shí)驗(yàn)的總數(shù)是個(gè)常數(shù),因此可以得出一個(gè)結(jié)論,即在原始實(shí)驗(yàn)中,敵手獲勝的概率與1/2之間的差異也是可忽略的,從而敵手的優(yōu)勢(shì)為一個(gè)可忽略值。

        假設(shè)A可以發(fā)起最多μ次加入質(zhì)詢和μ′次解密質(zhì)詢。定義實(shí)驗(yàn)序列如下:

        實(shí)驗(yàn)0 在該實(shí)驗(yàn)中,挑戰(zhàn)者C使用原始方案算法與敵手A進(jìn)行交互。C首先運(yùn)行Setup(1k)生成主密鑰MSK和公鑰PK,并將PK發(fā)送給A。在階段1中,A可以發(fā)起兩種質(zhì)詢。對(duì)于A的每個(gè)質(zhì)詢,C都運(yùn)行對(duì)應(yīng)的算法并將結(jié)果發(fā)送給A。在挑戰(zhàn)階段,C接收到A的集合S0和S1,并選擇一個(gè)隨機(jī)值b∈{0,1},然后對(duì)集合Sb進(jìn)行加密,得到(Hdrb,Kb)并發(fā)送給A。在階段2,A針對(duì)IDi?S0ΔS1繼續(xù)發(fā)起加入質(zhì)詢,C運(yùn)行Join(MSK,IDi)并返回結(jié)果。最后,A輸出一個(gè)猜測(cè)b′。若b′=b則A獲勝。

        定義事件S0為敵手A在實(shí)驗(yàn)0中獲勝。

        實(shí)驗(yàn)1 在該實(shí)驗(yàn)中,對(duì)上述實(shí)驗(yàn)0進(jìn)行一個(gè)微小的改動(dòng)。定義實(shí)驗(yàn)1為:在實(shí)驗(yàn)0的階段1中,令解密預(yù)言機(jī)從未向敵手A回答過(guò)Kb。

        定義事件S1為敵手A在實(shí)驗(yàn)1中獲勝。

        令事件F為C在階段1中向A應(yīng)答過(guò)值Kb。如果事件F發(fā)生,則A可能會(huì)有一定的優(yōu)勢(shì)獲勝。如果事件F沒(méi)有發(fā)生的話,那么A并不能從解密預(yù)言機(jī)中獲得任何有用的信息,同時(shí)實(shí)驗(yàn)0和實(shí)驗(yàn)1完全相同,有著同樣的輸出。即有S0∧F? S1∧F。因此:

        |Pr[S0]-Pr[S1]|=|Pr[S0∧F]+Pr[S0∧F]- Pr[S1∧F]-Pr[S1∧F]|= |Pr[S0∧F]-Pr[S1∧F]|≤Pr[F]

        通過(guò)對(duì)定理1的證明過(guò)程可知,對(duì)于一次加密來(lái)說(shuō),K等于Kb的概率為1/p。由于A最多可以發(fā)起μ′次解密質(zhì)詢,因此:

        |Pr[S0]-Pr[S1]|≤Pr[F]≤μ′/p

        是一個(gè)可忽略的值。

        實(shí)驗(yàn)2 在該實(shí)驗(yàn)中,對(duì)實(shí)驗(yàn)1中挑戰(zhàn)階段對(duì)集合Sb的加密方式進(jìn)行更改。令元素(ID1,ID2,…,IDm)∈Sb為不同時(shí)存在于S0和S1中的身份,即{ID1,ID2,…,IDm}=Sb(S0∩S1),其中1≤m≤|Sb|。為了描述方便,這里使用{ID1,…,IDm,IDm+1,…,ID|Sb|}來(lái)表示集合Sb。在加密算法的步驟3)中,增加一步判斷過(guò)程,即對(duì)于i=1,2,…,|Sb|,如果1≤i≤m,則按以下方式計(jì)算yi:

        否則,仍然按原來(lái)的方式來(lái)計(jì)算yi。

        定義事件S2為敵手A在實(shí)驗(yàn)2中獲勝。接下來(lái)將要說(shuō)明,實(shí)驗(yàn)1和實(shí)驗(yàn)2對(duì)于敵手來(lái)說(shuō)是無(wú)法區(qū)分的。

        實(shí)驗(yàn)2中所生成的密文(Hdrb,Kb)是一個(gè)有效密文,因?yàn)榻?jīng)過(guò)了更改的y1,y2,…,ym是原始版本的有效變換形式。給定(Hdrb,Kb),A可以選擇一個(gè)IDi并代入到多項(xiàng)式中,得到一個(gè)對(duì)應(yīng)的yi。根據(jù)選擇的IDi的不同,可以分為以下三種情況:

        1)如果其選擇的IDi∈S0∩S1,那么在實(shí)驗(yàn)1和實(shí)驗(yàn)2中計(jì)算出的yi是相同的,因?yàn)槎疾捎昧送瑯拥挠?jì)算方式。

        2)如果IDi∈{ID1,ID2,…,IDm},那么A在實(shí)驗(yàn)1中得到的是原始版本的yi∈G;在實(shí)驗(yàn)2中得到的是修改過(guò)的yi∈Gp。

        3)如果IDi∈S1-b且IDi?S0∩S1,則敵手在實(shí)驗(yàn)1和實(shí)驗(yàn)2中計(jì)算出的yi都是屬于群G的一個(gè)無(wú)法預(yù)測(cè)的隨機(jī)值,不能用于解密,因?yàn)樵揑Di不是一個(gè)合法的接收者。

        根據(jù)SDA假設(shè),敵手A無(wú)法區(qū)分給定的元素是屬于群G還是屬于子群Gp。因此對(duì)于每個(gè)yi∈{y1,y2,…,ym},實(shí)驗(yàn)1和實(shí)驗(yàn)2之間的差異對(duì)于A來(lái)說(shuō)是可忽略的。令ε1為敵手A在SDA假設(shè)中的優(yōu)勢(shì),進(jìn)而有:

        |Pr[S1]-Pr[S2]|≤|Sb|·ε1

        也是一個(gè)可忽略的值。

        實(shí)驗(yàn)3 在該實(shí)驗(yàn)中,繼續(xù)對(duì)y1,y2,…,ym進(jìn)行更改。在挑戰(zhàn)階段,對(duì)集合Sb進(jìn)行加密的步驟3)中,C從群Gp中選擇m個(gè)隨機(jī)元素作為y1,y2,…,ym的值。其他步驟保持不變。

        定義事件S3為敵手A在實(shí)驗(yàn)3中獲勝。

        主密鑰中的(u0,u1,…,ul)是從Gp中隨機(jī)選擇的,敵手無(wú)法獲知這些值。在這兩個(gè)實(shí)驗(yàn)中,除非加密步驟2)中的隨機(jī)指數(shù)t取到相同的值,否則敵手A是無(wú)法區(qū)分實(shí)驗(yàn)2中的原始yi和實(shí)驗(yàn)3中的隨機(jī)yi值的。因此從A的角度看,實(shí)驗(yàn)2中yi和實(shí)驗(yàn)3中的yi是不可區(qū)分的。因此有:

        |Pr[S2]-Pr[S3]|≤1/p

        在實(shí)驗(yàn)3中,如果A將IDi?S0∩S1代入到多項(xiàng)式中進(jìn)行計(jì)算的話,不管該IDi是否屬于集合Sb,都會(huì)得到一個(gè)隨機(jī)的元素。此外,由于A不能針對(duì)IDi∈S0ΔS1發(fā)起加入質(zhì)詢,也就無(wú)法得到IDi對(duì)應(yīng)的私鑰,因此不能通過(guò)嘗試解密yi來(lái)判斷IDi是否屬于Sb。也就是說(shuō),實(shí)驗(yàn)3中在挑戰(zhàn)階段所輸出的密文(Hdrb,Kb)并不包含關(guān)于身份IDi∈S0ΔS1的任何信息。因此,

        Pr[S3]=1/2

        綜上所述,有:

        也是一個(gè)可忽略的值。敵手在原始的攻擊實(shí)驗(yàn)中獲勝的優(yōu)勢(shì)是一個(gè)可忽略值,因此本文所提出的ANOBE方案是ANON-ADA-CCA1安全的。

        5 實(shí)驗(yàn)與性能分析

        5.1 與現(xiàn)有方案的對(duì)比

        本章通過(guò)與現(xiàn)有的匿名廣播加密方案進(jìn)行對(duì)比,來(lái)從理論上分析本文方案的性能和特性。分別從以下幾個(gè)方面與文獻(xiàn)[20-23]中的方案進(jìn)行對(duì)比:系統(tǒng)公鑰長(zhǎng)度、用戶私鑰長(zhǎng)度、廣播密文長(zhǎng)度和解密嘗試次數(shù)。同時(shí),還將本文方案從功能特性角度與現(xiàn)有方案進(jìn)行了對(duì)比。其中,“任意發(fā)送者”是指允許系統(tǒng)中的任意用戶作為數(shù)據(jù)擁有者來(lái)共享數(shù)據(jù);“動(dòng)態(tài)加入”是指用戶可以在任何時(shí)刻加入系統(tǒng),不需要更新系統(tǒng)公鑰;“基于身份”是指方案支持用戶使用任意比特串作為身份,而不需要為用戶分配一個(gè)編號(hào);“自適應(yīng)安全性”是指方案針對(duì)自適應(yīng)敵手的攻擊是否是安全的。

        表1給出了本文方案與現(xiàn)有方案的對(duì)比結(jié)果。其中:N表示系統(tǒng)中的總用戶數(shù),t表示在接收者集合中的用戶數(shù),r表示在文獻(xiàn)[21]中被撤銷的用戶數(shù),l表示用戶身份的比特串長(zhǎng)度,v表示群元素的長(zhǎng)度,e表示雙線性配對(duì)的長(zhǎng)度(即G中元素的長(zhǎng)度),|M|表示要加密的明文消息的長(zhǎng)度;符號(hào)“√”表示方案具有該特性,“×”表示方案無(wú)該特性。

        表1 幾種方案的對(duì)比

        由表1可以看出,與現(xiàn)有的匿名廣播加密方案相比,本文所提出的方案只需要一次即可成功解密,而其他現(xiàn)有方案卻需要不斷地嘗試才能找到正確的密文分塊來(lái)解密得到明文。同時(shí),本文所提出的方案在略微犧牲一些公鑰和私鑰長(zhǎng)度的情況下,換取了最短的廣播密文長(zhǎng)度。在功能方面,與現(xiàn)有方案相比,本文方案實(shí)現(xiàn)了表中所列出的所有特性,同時(shí)在自適應(yīng)敵手的攻擊下是安全的。

        5.2 仿真實(shí)驗(yàn)分析

        本節(jié)通過(guò)對(duì)算法進(jìn)行編碼實(shí)現(xiàn),并對(duì)算法的開(kāi)銷進(jìn)行測(cè)試的方式來(lái)分析本文所提出的云存儲(chǔ)訪問(wèn)控制系統(tǒng)在實(shí)際應(yīng)用中的性能表現(xiàn)。

        在實(shí)驗(yàn)中,算法采用C++語(yǔ)言實(shí)現(xiàn),系統(tǒng)的安全參數(shù)為256位。使用OpenSSL庫(kù)中的SHA1來(lái)對(duì)用戶的身份進(jìn)行處理,因此參與運(yùn)算的ID串的長(zhǎng)度為160比特。使用PBC(Pairing-BasedCryptography)庫(kù)來(lái)進(jìn)行群運(yùn)算,包括雙線性配對(duì)運(yùn)算和橢圓曲線上點(diǎn)的指數(shù)運(yùn)算。雙線性群的階為256位,其基本域的階為512位。使用NTL(NumberTheoryLibrary)庫(kù)來(lái)實(shí)現(xiàn)多項(xiàng)式環(huán)中的相關(guān)運(yùn)算。算法均采用單線程的形式運(yùn)行于Ubuntu14.04LTS系統(tǒng)下,硬件環(huán)境為IntelCorei7-2630QM, 2.0GHz,8GBRAM。

        分別從通信開(kāi)銷和計(jì)算開(kāi)銷兩個(gè)方面來(lái)對(duì)算法進(jìn)行評(píng)估。由于廣播加密算法是一種密鑰封裝機(jī)制,密文的最終形式為廣播密文(Hdr,CM),其中CM為使用對(duì)稱加密方法所生成的密文,開(kāi)銷僅與明文大小、所選擇的對(duì)稱加密算法有關(guān),與廣播加密算法無(wú)關(guān),因此這里不再考慮CM所產(chǎn)生的開(kāi)銷。

        5.2.1 通信開(kāi)銷

        系統(tǒng)中會(huì)產(chǎn)生額外通信開(kāi)銷的有系統(tǒng)公鑰PK、每個(gè)用戶的私鑰ski和廣播頭部Hdr。其中PK和ski的大小為常數(shù),分別為164個(gè)群元素和2個(gè)群元素;采用點(diǎn)壓縮存儲(chǔ)時(shí),每個(gè)群元素占用65B,因此公鑰PK和私鑰ski分別占用10.7KB和130B。廣播頭部Hdr的大小與該次加密的目標(biāo)接收者集合的大小成線性關(guān)系。分別選擇從5個(gè)到50個(gè)接收者進(jìn)行加密,所得到的廣播頭部Hdr的大小變化如圖2所示。

        圖2 密文大小與接收者數(shù)量的關(guān)系

        5.2.2 計(jì)算開(kāi)銷

        算法的初始化和用戶加入兩個(gè)部分的計(jì)算用時(shí)為固定值,所花費(fèi)的時(shí)間與用戶數(shù)量無(wú)關(guān)。同時(shí),這兩個(gè)部分在整個(gè)系統(tǒng)的正常工作過(guò)程中很少用到,其中初始化算法只需運(yùn)行一次,用戶加入算法對(duì)每個(gè)用戶來(lái)說(shuō)也只需運(yùn)行一次,因此這里主要測(cè)試算法的加解密用時(shí)。分別隨機(jī)選擇5到50個(gè)接收者,執(zhí)行加密算法生成密文,測(cè)試得到算法用時(shí)如圖3所示。

        針對(duì)圖3中的密文數(shù)據(jù),隨機(jī)選擇接收者集合中的一個(gè)用戶,生成對(duì)應(yīng)的私鑰,并執(zhí)行解密算法得到K。測(cè)試得到算法用時(shí)如圖4所示。

        由圖3和圖4可以看出,隨著接收者集合的增大,加密與解密算法的執(zhí)行時(shí)間均呈上升趨勢(shì)。其中加密算法的增長(zhǎng)速度約為二次多項(xiàng)式級(jí),這與算法在理論上的開(kāi)銷相吻合。此外,由于應(yīng)用到了拉格朗日插值多項(xiàng)式,解密算法的效率有很大提升,與接收者數(shù)量成線性關(guān)系,并且耗時(shí)遠(yuǎn)低于加密算法。

        圖3 加密時(shí)間與接收者數(shù)量的關(guān)系

        圖4 解密時(shí)間與接收者數(shù)量的關(guān)系

        6 結(jié)語(yǔ)

        匿名廣播加密是廣播加密方案的一個(gè)重要的衍生形式,可以在進(jìn)行數(shù)據(jù)共享的過(guò)程中有效地保護(hù)接收者的隱私,因此可以廣泛地應(yīng)用于隱私敏感的訪問(wèn)控制場(chǎng)景中。

        在匿名廣播加密方案中,使用拉格朗日插值多項(xiàng)式可以有效地隱藏接收者的身份,同時(shí)提高解密階段的效率。本文方案在合數(shù)階雙線性群環(huán)境下構(gòu)建,具有在標(biāo)準(zhǔn)模型下針對(duì)自適應(yīng)敵手攻擊的密文機(jī)密性和接收者身份匿名性。與同類方案相比,本文方案同時(shí)具有了任意發(fā)送者、動(dòng)態(tài)加入、基于身份等特性。對(duì)算法的仿真實(shí)驗(yàn)表明,本文方案是正確、高效的。作為現(xiàn)有針對(duì)云存儲(chǔ)的密文訪問(wèn)控制方法的重要補(bǔ)充,本文所提出的基于匿名廣播加密的訪問(wèn)控制方法具有廣泛的實(shí)用價(jià)值和應(yīng)用前景。

        由于實(shí)現(xiàn)方法的限制,本文所構(gòu)建的匿名廣播加密方案為CCA1安全性,在安全模型方面仍然存在進(jìn)一步改進(jìn)的空間。在未來(lái)的研究計(jì)劃中,可重點(diǎn)研究如何實(shí)現(xiàn)CCA2模型,以增強(qiáng)整體方案的安全性。同時(shí),應(yīng)考慮如何進(jìn)一步提高整個(gè)系統(tǒng)的加解密效率,降低計(jì)算開(kāi)銷,以滿足諸如移動(dòng)互聯(lián)網(wǎng)等低能耗場(chǎng)景中的應(yīng)用需求。

        )

        [1]MATHERT,KUMARASWAMYS,LATIFS.Cloudsecurityandprivacy:anenterpriseperspectiveonrisksandcompliance[M]//CloudSecurityandPrivacy:AnEnterprisePerspectiveonRisks.Sebastopol,CA:O’ReillyMedia, 2009: 35-72.

        [2] 傅穎勛,羅圣美,舒繼武.安全云存儲(chǔ)系統(tǒng)與關(guān)鍵技術(shù)綜述[J].計(jì)算機(jī)研究與發(fā)展,2013,50(1):136-145.(FUYX,LUOSM,SHUJW.Surveyofsecurecloudstoragesystemandkeytechnologies[J].JournalofComputerResearchandDevelopment, 2013, 50(1): 136-145.)

        [3] 李暉,孫文海,李鳳華,等.公共云存儲(chǔ)服務(wù)數(shù)據(jù)安全及隱私保護(hù)技術(shù)綜述[J].計(jì)算機(jī)研究與發(fā)展,2014,51(7):1397-1409.(LIH,SUNWH,LIFH,etal.Secureandprivacy-preservingdatastorageserviceinpubliccloud[J].JournalofComputerResearchandDevelopment, 2014, 51(7): 1397-1409.)

        [4]YUS,WANGC,RENK,etal.Achievingsecure,scalable,andfine-graineddataaccesscontrolincloudcomputing[C]//INFOCOM2010:Proceedingsofthe29thConferenceonInformationCommunications.Piscataway,NJ:IEEE, 2010: 1-9.

        [5] 關(guān)志濤,楊亭亭,徐茹枝,等.面向云存儲(chǔ)的基于屬性加密的多授權(quán)中心訪問(wèn)控制方案[J].通信學(xué)報(bào),2015,36(6):116-126.(GUANZT,YANGTT,XURZ,etal.Multi-authorityattribute-basedencryptionaccesscontrolmodelforcloudstorage[J].JournalonCommunications, 2015, 36(6): 116-126.)

        [6] 洪澄,張敏,馮登國(guó).面向云存儲(chǔ)的高效動(dòng)態(tài)密文訪問(wèn)控制方法[J].通信學(xué)報(bào), 2011, 32(7): 125-132.(HONGC,ZHANGM,FENGDG.Achievingefficientdynamiccryptographicaccesscontrolincloudstorage[J].JournalonCommunications, 2011, 32(7): 125-132.)

        [7] 郎訊,魏立線,王緒安,等.基于代理重加密的云存儲(chǔ)密文訪問(wèn)控制方案[J].計(jì)算機(jī)應(yīng)用,2014,34(3):724-727.(LANGX,WEILX,WANGXA,etal.Cryptographicaccesscontrolschemeforcloudstoragebasedonproxyre-encryption[J].JournalofComputerApplications, 2014, 34(3): 724-727.)

        [8]FIATA,NAORM.Broadcastencryption[C]//CRYPTO’93:Proceedingsofthe13thAnnualInternationalCryptologyConferenceonAdvancesinCryptology,LNCS773.Berlin:Springer-Verlag, 1994: 480-491.

        [9]NAORD,NAORM,LOTSPIECHJ.Revocationandtracingschemesforstatelessreceivers[C]//CRYPTO’01:Proceedingsofthe21stAnnualInternationalCryptologyConferenceonAdvancesinCryptology,LNCS2139.Berlin:Springer-Verlag, 2001: 41-62.

        [10]HALEVYD,SHAMIRA.TheLSDbroadcastencryptionscheme[C]//CRYPTO’02:Proceedingsofthe22ndAnnualInternationalCryptologyConferenceonAdvancesinCryptology,LNCS2442.Berlin:Springer-Verlag, 2002: 47-60.

        [11]PHANDH,POINTCHEVALD,STREFLERM.Decentralizeddynamicbroadcastencryption[CM]//SCN2012:Proceedingsofthe8thInternationalConferenceSecurityandCryptographyforNetworks,LNCS7485.Berlin:Springer-Verlag, 2012: 166-183.

        [12]NAORM,PINKASB.Efficienttraceandrevokeschemes[C]//FC2000:Proceedingsofthe4thInternationalConferenceonFinancialCryptography,LNCS1962.Berlin:Springer-Verlag, 2001: 1-20.

        [13]DODISY,FAZION.Publickeybroadcastencryptionforstatelessreceivers[M]//DRM2002:ProceedingsoftheACMCCS-9WorkshoponDigitalRightsManagement,LNCS2696.Berlin:Springer-Verlag, 2003: 61-80.

        [14]BONEHD,GENTRYC,WATERSB.Collusionresistantbroadcastencryptionwithshortciphertextsandprivatekeys[C]//CRYPTO2005:Proceedingsofthe25thAnnualInternationalCryptologyConferenceonAdvancesinCryptology,LNCS3621.Berlin:Springer-Verlag, 2005: 258-275.

        [15]GENTRYC,WATERSB.Adaptivesecurityinbroadcastencryptionsystems(withshortciphertexts) [C]//EUROCRYPT’09:Proceedingsofthe28thAnnualInternationalConferenceontheTheoryandApplicationsofCryptographicTechniques,LNCS5479.Berlin:Springer-Verlag, 2009: 171-188.

        [16]PHAND-H,POINTCHEVALD,SHAHANDASHTISF,etal.AdaptiveCCAbroadcastencryptionwithconstant-sizesecretkeysandciphertexts[J].InternationalJournalofInformationSecurity, 2013, 12(4): 251-265.

        [17]DELERABLéEC.Identity-basedbroadcastencryptionwithconstantsizeciphertextsandprivatekeys[C]//ASIACRYPT2007:Proceedingsofthe13thInternationalConferenceontheTheoryandApplicationofCryptologyandInformationSecurity,LNCS4833.Berlin:Springer-Verlag, 2007: 200-215.

        [18]BONEHD,HAMBURGM.Generalizedidentitybasedandbroadcastencryptionschemes[C]//ASIACRYPT2008:Proceedingsofthe14thInternationalConferenceontheTheoryandApplicationofCryptologyandInformationSecurity,LNCS5350.Berlin:Springer-Verlag, 2008: 455-470.

        [19]ZHANGL,HUY,WUQ.Adaptivelysecureidentity-basedbroadcastencryptionwithconstantsizeprivatekeysandciphertextsfromthesubgroups[J].MathematicalandComputerModelling, 2012, 55(1/2): 12-18.

        [20]BARTHA,BONEHD,WATERSB.Privacyinencryptedcontentdistributionusingprivatebroadcastencryption[C]//FC2006:Proceedingsofthe10thInternationalConferenceonFinancialCryptographyandDataSecurity,LNCS4107.Berlin:Springer-Verlag, 2006: 52-64.

        [21]FAZION,PERERAIM.Outsider-anonymousbroadcastencryptionwithsublinearciphertexts[C]//PKC2012:Proceedingsofthe15thInternationalConferenceonPracticeandTheoryinPublicKeyCryptography,LNCS7293.Berlin:Springer-Verlag, 2012: 225-242.

        [22]LIBERTB,PATERSONKG,QUAGLIAEA.Anonymousbroadcastencryption:adaptivesecurityandefficientconstructionsinthestandardmodel[C]//PKC2012:Proceedingsofthe15thInternationalConferenceonPracticeandTheoryinPublicKeyCryptography,LNCS7293.Berlin:Springer-Verlag, 2012: 206-224.

        [23]HURJ,PARKC,HWANGSO.Privacy-preservingidentity-basedbroadcastencryption[J].InformationFusion, 2012, 13(4): 296-303.

        [24]BONEHD,GOHE-J,NISSIMK.Evaluating2-DNFformulasonciphertexts[C]//TCC2005:ProceedingsoftheSecondTheoryofCryptographyConference,LNCS3378.Berlin:Springer-Verlag, 2005: 325-341.

        [25]HILDEBRANDFB.IntroductiontoNumericalAnalysis[M].2ndedition.NewYork:DoverPublications, 1987: 25-28.

        ThisworkispartiallysupportedbytheOpen-fundProjectoftheKeyLaboratoryofInformationSecurity(JBKYYWF2014KF_XSW),theDoctorialInitializingProjectofBeijingElectronicScienceandTechnologyInstitute(2016BSQD-LMQ).

        XU Shengwei, born in 1976, Ph.D., associate research fellow.His research interests include information security, applied cryptography application.

        LIN Muqing, born in 1987, Ph.D., assistant research fellow.His research interests include cryptography, network security.

        Anonymous broadcast encryption based access control method for cloud storage

        XU Shengwei, LIN Muqing*

        (InformationSecurityInstitute,BeijingElectronicScienceandTechnologyInstitute,Beijing100070,China)

        Focusing on the deficiencies on performance and security of the existing anonymous broadcast encryption scheme, a new anonymous broadcast encryption scheme based on the Lagrange interpolation polynomial was proposed.Firstly, an anonymous broadcast encryption security model against adaptive adversaries was defined.Then the scheme was constructed based on the Lagrange interpolation polynomial under the composite order bilinear group settings, which ensures user identity anonymity and achieves an efficient encryption and decryption at the same time.Finally, based on the subgroup decision assumption and the composite decisional bilinear Diffie-Hellman assumption, the security was proved in standard model, which shows that the proposed scheme has both ciphertext confidentiality and receiver anonymity against adaptive adversaries.Experimental results and performance analysis show that the proposed method has low communication and computing overhead, and can efficiently solve the anonymous access control issues of ciphertext data in cloud storage.

        cloud storage; access control; anonymous broadcast encryption; Lagrange interpolation polynomial; composite order bilinear group

        2016- 08- 29;

        2016- 09- 30。 基金項(xiàng)目:中共中央辦公廳信息安全重點(diǎn)實(shí)驗(yàn)室開(kāi)放基金資助項(xiàng)目(基本科研業(yè)務(wù)費(fèi)2014KF_XSW);北京電子科技學(xué)院博士啟動(dòng)項(xiàng)目(2016博士啟動(dòng)-林慕清)。

        許盛偉(1976—),男,江西吉安人,副研究員,博士,主要研究方向:信息安全、密碼應(yīng)用; 林慕清(1987—),男,安徽宿州人,助理研究員,博士,主要研究方向:密碼學(xué)、網(wǎng)絡(luò)安全。

        1001- 9081(2017)02- 0473- 10

        10.11772/j.issn.1001- 9081.2017.02.0473

        TP309.2

        A

        猜你喜歡
        敵手接收者密文
        一種針對(duì)格基后量子密碼的能量側(cè)信道分析框架
        一種支持動(dòng)態(tài)更新的可排名密文搜索方案
        基于模糊數(shù)學(xué)的通信網(wǎng)絡(luò)密文信息差錯(cuò)恢復(fù)
        不帶著怒氣做任何事
        單粒子未知態(tài)的分級(jí)量子通信
        云存儲(chǔ)中支持詞頻和用戶喜好的密文模糊檢索
        淺談信息接收者反饋不當(dāng)現(xiàn)象及對(duì)策
        多用戶MIMO系統(tǒng)基于消息塊預(yù)編碼的可信通信技術(shù)
        不帶著怒氣作戰(zhàn)
        不帶著怒氣做任何事
        意林(2008年10期)2008-05-08 04:54:56
        亚洲国产精品嫩草影院久久| 精品一区2区3区4区| 精品一区二区三区牛牛| 国产av一级黄一区二区三区| 日本久久久久亚洲中字幕| 国产精品久久久久久亚洲av| 草莓视频成人| 91极品尤物在线观看播放| 亚洲国产综合精品一区最新| 亚洲精品午夜久久久九九| 日本肥老妇色xxxxx日本老妇| 亚洲熟女乱色综合亚洲图片| 久久人妻AV无码一区二区| 成年女人18毛片毛片免费| 全部亚洲国产一区二区| 国产精品国产三级国产在线观 | 蜜臀av一区二区三区免费观看| 成品人视频ww入口| 久久久久久久岛国免费观看| 色窝窝无码一区二区三区2022| 国产大片在线观看三级| 免费观看人妻av网站| 国产精品久久成人网站 | 黑人巨大videos极度另类| 一区二区三区婷婷中文字幕| 天堂久久一区二区三区| 高黄暴h日本在线观看| 国产av无码专区亚洲av毛网站| 失禁大喷潮在线播放| 国产一区二区三区免费精品| 日韩激情视频一区在线观看| 日韩av无码一区二区三区| 五级黄高潮片90分钟视频| 精品午夜一区二区三区久久| 久久精品国产只有精品96 | 免费a级毛片在线播放不收费| 日本aⅴ大伊香蕉精品视频 | 免费毛片视频网站| 亚洲女同成av人片在线观看| 国产精品久久熟女吞精| 寂寞人妻渴望被中出中文字幕|