亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

云密文訪問控制方法及系統(tǒng)與流程

文檔序號:12730832閱讀:232來源:國知局
云密文訪問控制方法及系統(tǒng)與流程

本發(fā)明屬于云計算領域,尤其涉及一種云密文訪問控制方法及裝置。



背景技術:

云計算(cloud computing)將大量的存儲資源、計算資源和軟件資源鏈接在一起,向用戶提供計算、存儲以及應用服務。由于云計算存儲有大量資源且為開放性,往往成為黑客攻擊的焦點,故安全性的威脅是云計算面臨的嚴峻的考驗。

由于數(shù)據(jù)擁有者與物理擁有者的分離,云計算與用戶處于兩個不同的安全域,用戶擔心存儲在云服務器上的數(shù)據(jù)被非法訪問、丟失、篡改或偽造。所以用戶上傳到云服務器上的數(shù)據(jù),均以密文的形式存儲在該云服務器上,進而可以避免數(shù)據(jù)的非法訪問。但是現(xiàn)有密文的加密和解密都非常復雜,當用戶通過終端請求訪問加密的數(shù)據(jù)時,需要經(jīng)過大量的解密運算才能夠獲取數(shù)據(jù),導致占用該終端中大量的內(nèi)存資源,進而造成解密速度慢,效率低。



技術實現(xiàn)要素:

本發(fā)明提供一種云密文訪問控制方法及系統(tǒng),旨在解決由于在解密過程中產(chǎn)生大量的解密運算導致的占用該終端大量內(nèi)存資源,進而造成解密速度慢,效率低的問題。

本發(fā)明提供了一種云密文訪問控制方法,包括:

當用戶通過訪問端向云服務器請求訪問加密的文件時,所述云服務器獲取所述文件對應的密鑰密文,并判斷所述用戶的屬性是否滿足所述密鑰密文中的訪問樹結(jié)構,若是,則向所述訪問端請求獲取轉(zhuǎn)換密鑰中的局部密鑰,以及依據(jù)所述局部密鑰對所述密鑰密文進行解密,以解密出中間密文,將所述中間密文和所述文件對應的文件密文轉(zhuǎn)發(fā)給所述訪問端;

所述訪問端接收所述中間密文,并依據(jù)已存儲的私鑰對所述中間密文進行解密,以解密出明文密鑰,以及依據(jù)所述明文密鑰對所述文件密文進行解密,以解密出所述文件。

本發(fā)明提供了一種云密文訪問控制系統(tǒng),包括:云服務器和訪問端;

所述云服務器,用于當用戶通過訪問端向所述云服務器請求訪問加密的文件時,獲取所述文件對應的密鑰密文,并判斷所述用戶的屬性是否滿足所述密鑰密文中的訪問樹結(jié)構,若是,則向所述訪問端請求獲取轉(zhuǎn)換密鑰中的局部密鑰,以及依據(jù)所述局部密鑰對所述密鑰密文進行解密,以解密出中間密文,將所述中間密文和所述文件對應的文件密文轉(zhuǎn)發(fā)給所述訪問端;

所述訪問端,用于接收所述中間密文,并依據(jù)已存儲的私鑰對所述中間密文進行解密,以解密出明文密鑰,以及依據(jù)所述明文密鑰對所述文件密文進行解密,以解密出所述文件。

本發(fā)明提供的云密文訪問控制方法及系統(tǒng),當用戶通過訪問端向云服務器請求訪問加密的文件時,該云服務器獲取該文件對應的密鑰密文,并判斷該用戶的屬性是否滿足該密鑰密文中的訪問樹結(jié)構,若是,則向該訪問端請求獲取轉(zhuǎn)換密鑰中的局部密鑰,以及依據(jù)該局部密鑰對該密鑰密文進行解密,以解密出中間密文,將該中間密文和該文件對應的文件密文轉(zhuǎn)發(fā)給該訪問端,該訪問端接收該中間密文,并依據(jù)已存儲的私鑰對該中間密文進行解密,以解密出明文密鑰,以及依據(jù)該明文密鑰對該文件密文進行解密,以解密出該文件,這樣僅有權限的用戶可以解密出文件,確保了數(shù)據(jù)的安全性,云服務器依據(jù)局部密鑰對密文進行解密運算,承擔了部分的解密運算,減少了訪問端的解密運算量,提高了解密速度和效率,從而增加了訪問端訪問加密的文件的速度。

附圖說明

為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例。

圖1是本發(fā)明第一、二實施例提供的云密文訪問控制方法的實現(xiàn)流程示意圖;

圖2是本發(fā)明第三實施例提供的云密文訪問控制系統(tǒng)的結(jié)構示意圖;

圖3是本發(fā)明第四實施例提供的云密文訪問控制系統(tǒng)的結(jié)構示意圖;

圖4是本發(fā)明實施例提供的云密文訪問控制系統(tǒng)中四個實體設備的示意圖。

具體實施方式

為使得本發(fā)明的發(fā)明目的、特征、優(yōu)點能夠更加的明顯和易懂,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而非全部實施例?;诒景l(fā)明中的實施例,本領域技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。

請參閱圖1,圖1為本發(fā)明第一實施例提供云密文訪問控制方法的實現(xiàn)流程示意圖,圖1所示的云密文訪問控制方法,主要包括以下步驟:

S101、當用戶通過訪問端向云服務器請求訪問加密的文件時,該云服務器獲取該文件對應的密鑰密文,并判斷該用戶的屬性是否滿足該密鑰密文中的訪問樹結(jié)構,若是,則向該訪問端請求獲取轉(zhuǎn)換密鑰中的局部密鑰,以及依據(jù)該局部密鑰對該密鑰密文進行解密,以解密出中間密文,將該中間密文和該文件對應的文件密文轉(zhuǎn)發(fā)給該訪問端。

該用戶為需要從云服務器中訪問加密的文件的數(shù)據(jù)訪問者。該用戶使用訪問端向該云服務器發(fā)送訪問請求,該訪問端可以是計算機、手機、智能電視、平板電腦等支持與該云服務器交互,并能夠讀取數(shù)據(jù)的終端。

該加密的文件為經(jīng)過加密后并存儲于云服務器上的數(shù)據(jù)。該用戶的屬性用于劃分訪問不同等級的加密的文件的用戶,例如,設共有三個加密文件的等級:低級、中級和高級,若用戶的屬性為屬性A,則屬性A的用戶能夠訪問高級的加密的文件;若用戶的屬性為屬性B,則屬性B的用戶能夠訪問中級的加密的文件;若用戶的屬性為屬性C,則屬性C的用戶能夠訪問低級的加密的文件。每一屬性可以對應一個等級,也可以對應多個等級。該訪問樹結(jié)構是一種數(shù)據(jù)訪問結(jié)構。云服務器通過判斷用戶的屬性是否滿足該訪問樹結(jié)構中的等級,確定該用戶是否有權限訪問該文件。

該密鑰密文為加密該文件的密鑰的密文。該局部密鑰為該轉(zhuǎn)換密鑰中一部分的密鑰,該局部密鑰是由用戶上傳給該云服務器,該云服務器依據(jù)該局部密鑰解密該密鑰密文,只能解密出中間密文,不能直接解密出文件,可以有效地確保數(shù)據(jù)的安全性,同時云服務器承擔部分的解密運算,提高了解密速度和效率。

S102、該訪問端接收該中間密文,并依據(jù)已存儲的私鑰對該中間密文進行解密,以解密出明文密鑰,以及依據(jù)該明文密鑰對該文件密文進行解密,以解密出該文件。

該明文密鑰為與加密該文件的密鑰對應的解密密鑰。

本發(fā)明實施例中,當用戶通過訪問端向云服務器請求訪問加密的文件時,該云服務器獲取該文件對應的密鑰密文,并判斷該用戶的屬性是否滿足該密鑰密文中的訪問樹結(jié)構,若是,則向該訪問端請求獲取轉(zhuǎn)換密鑰中的局部密鑰,以及依據(jù)該局部密鑰對該密鑰密文進行解密,以解密出中間密文,將該中間密文和該文件對應的文件密文轉(zhuǎn)發(fā)給該訪問端,該訪問端接收該中間密文,并依據(jù)已存儲的私鑰對該中間密文進行解密,以解密出明文密鑰,以及依據(jù)該明文密鑰對該文件密文進行解密,以解密出該文件,這樣僅具有權限的用戶可以解密出文件,確保了數(shù)據(jù)的安全性,同時云服務器依據(jù)局部密鑰對密文進行解密運算,承擔了部分的解密運算,減少了訪問端的解密運算量,提高了解密速度和效率,從而增加了訪問端訪問加密的文件的速度。

同樣參閱圖1,本發(fā)明第二實施例提供的云密文訪問控制方法,主要包括以下步驟:

S101、當用戶通過訪問端向云服務器請求訪問加密的文件時,該云服務器獲取該文件對應的密鑰密文,并判斷該用戶的屬性是否滿足該密鑰密文中的訪問樹結(jié)構,若是,則向該訪問端請求獲取轉(zhuǎn)換密鑰中的局部密鑰,以及依據(jù)該局部密鑰對該密鑰密文進行解密,以解密出中間密文,將該中間密文和該文件對應的文件密文轉(zhuǎn)發(fā)給該訪問端。

該用戶為需要從云服務器中訪問加密的文件的數(shù)據(jù)訪問者。該用戶使用訪問端向該云服務器發(fā)送訪問請求,該訪問端可以是計算機、手機、智能電視、平板電腦等支持與該云服務器交互,并能夠讀取數(shù)據(jù)的終端。

該加密的文件為經(jīng)過加密后并存儲于云服務器上的數(shù)據(jù)。該用戶的屬性用于劃分訪問不同等級的加密的文件的用戶,例如,設共有三個加密文件的等級:低級、中級和高級,若用戶的屬性為屬性A,則屬性A的用戶能夠訪問高級的加密的文件;若用戶的屬性為屬性B,則屬性B的用戶能夠訪問中級的加密的文件;若用戶的屬性為屬性C,則屬性C的用戶能夠訪問低級的加密的文件。每一屬性可以對應一個等級,也可以對應多個等級。該訪問樹結(jié)構是一種數(shù)據(jù)訪問結(jié)構。云服務器通過判斷用戶的屬性是否滿足該訪問樹結(jié)構中的等級,確定該用戶是否有權限訪問該文件。若該用戶的屬性不滿足該密鑰密文中的訪問樹結(jié)構,則該用戶將不能訪問該文件,即該用戶沒有權限訪問。

該密鑰密文為加密該文件的密鑰的密文。該局部密鑰為該轉(zhuǎn)換密鑰中一部分的密鑰,該局部密鑰是由用戶上傳給該云服務器,該云服務器依據(jù)該局部密鑰解密該密鑰密文,只能解密出中間密文,不能直接解密出文件,可以有效地確保數(shù)據(jù)的安全性,同時云服務器承擔部分的解密運算,提高了解密速度和效率。

S102、該訪問端接收該中間密文,并依據(jù)已存儲的私鑰對該中間密文進行解密,以解密出明文密鑰,以及依據(jù)該明文密鑰對該文件密文進行解密,以解密出該文件。

進一步地,當用戶通過訪問端向該云服務器請求訪問加密的文件時,該云服務器獲取該文件對應的密鑰密文之前,具體為:

密鑰權威機構(KA,Key Authority)構建選擇階為素數(shù)p,和生成元為g的雙線性群G0

定義全局屬性集合L={a1,a2,...,am}以及安全等級k,其中j屬于1到m;

選取隨機數(shù)vj∈Zp,并將該隨機數(shù)vj作為屬性版本密鑰VKj=vj,并依據(jù)該屬性版本密鑰生成子公鑰其中Zp為有限域;

選取兩個隨機數(shù)α,β∈Zp,并依據(jù)該兩個隨機數(shù)α、β,該子公鑰和該雙線性群,分別生成系統(tǒng)主私鑰MSK={β,gα,{MSKj=VKj|aj∈L}},和系統(tǒng)主公鑰

假設系統(tǒng)有m個屬性L={a1,a2,...,am}。設G0是一個階為素數(shù)p的雙線性群,g是G0的生成元,e:G0×G0→GT表示雙線性映射。哈希函數(shù)H:{0,1}*→G0。其中L中每一屬性均對應一個屬性版本密鑰。

系統(tǒng)初始化之后,密鑰權威機構對每一用戶設置用戶屬性集S,其中S為L的子集;

選取兩個隨機數(shù)r,z∈Zp,依據(jù)該兩個隨機數(shù)r,z,該系統(tǒng)主私鑰和該用戶屬性集S,分別生成該轉(zhuǎn)換密鑰和該私鑰SK=(z,TK)。

進一步地,當用戶通過訪問端向該云服務器請求訪問加密的文件時,該云服務器獲取該文件對應的密鑰密文之前,具體為:

數(shù)據(jù)屬主(DO,data owner)依據(jù)預置應用密鑰ck,并通過對稱加密算法對該文件進行加密,生成該文件密文Eck(M),其中M表示該文件;

為該訪問樹結(jié)構T中的每一節(jié)點x選取一個多項式qx;

設置該每一節(jié)點x對應的多項式qx中階dx比各節(jié)點對應的門限值kx少1,其中kx=dx+1;

從根節(jié)點R起,選取隨機數(shù)s∈Zp,并設置qR(0)=s,以及選擇dR個節(jié)點定義多項式qR;

為每一個非根節(jié)點x設置qx(0)=qpartent(x)(index(x)),并選擇dx個節(jié)點定義多項式qx。

通過該訪問樹結(jié)構T和該系統(tǒng)主公鑰對該應用密鑰ck進行加密,得到該密鑰密文CT,其中該密鑰密文CT為:

其中,X是該訪問樹結(jié)構T中葉子節(jié)點對應的屬性的集合;

將該密鑰密文CT和該文件密文上傳至該云服務器。

該對稱加密算法是指加密過程和解密過程使用相同的密鑰的加密算法,即加密密鑰能夠從解密密鑰中推算出來,同時解密密鑰也可以從加密密鑰中推算出來。故該應用密鑰與該明文密鑰相同。

進一步地,向該訪問端請求獲取轉(zhuǎn)換密鑰中的局部密鑰,以及依據(jù)該局部密鑰對該密鑰密文進行解密,以解密出中間密文具體為:

該云服務器接收該訪問端發(fā)送的該轉(zhuǎn)換密鑰中的局部密鑰,其中該轉(zhuǎn)換密鑰中的局部密鑰

預先定義遞歸運算DecryptNode(CT,TK',x),其中,若節(jié)點x為該訪問樹結(jié)構T中的葉子節(jié)點,設aj=att(x)且aj∈S,則

若x不是該訪問樹結(jié)構T中的葉子節(jié)點,且為該節(jié)點x中所有子節(jié)點n,設置Fn=DecryptNode(CT,TK',n),則

其中,j=index(n),Sx'={index(n):n∈Sx};

通過所述訪問樹結(jié)構T中根節(jié)點R對應的函數(shù)DecryptNode(CT,TK',R)進行運算,算出所述中間密文T={A,B},其中,

設A=FR=e(g,g)rs/z,

則該依據(jù)已存儲的私鑰對該中間密文進行解密,以解密出明文密鑰,以及依據(jù)該明文密鑰對該文件密文進行解密,以解密出該文件具體為:

所述訪問端依據(jù)所述私鑰SK和接收到的所述中間密文T={A,B},解密出所述明文密鑰ck,其中

該訪問端通過該明文密鑰ck對該文件密文Eck(M)進行解密,解密出該文件M。

若節(jié)點x為該訪問樹結(jié)構T中的葉子節(jié)點,且則DecryptNode(CT,TK',x)=⊥。

若x不是該訪問樹結(jié)構T中的葉子節(jié)點,令Sx為任意的kx個子節(jié)點n構成的集合,則Fn≠⊥,若該集合不存在,則Fn=⊥。

該私鑰SK是由該密鑰權威機構依據(jù)用戶的屬性預先下發(fā)給各用戶。

進一步地,該方法還包括:

當撤銷用戶μ的屬性x'被撤銷時,該密鑰權威機構選取隨機數(shù)vx'*∈Zp(vx'*≠vx'),并將該屬性x'對應的屬性版本密鑰VKx'=vx'更換為屬性版本密鑰VKx'*,令VKx'*=vx'*,以及依據(jù)VKx'*生成更新密鑰為UKx',依據(jù)更換后的屬性版本密鑰VKx'*更新該系統(tǒng)主公鑰為并將該更新密鑰UKx'發(fā)送給每一非撤銷用戶的訪問端和該云服務器,其中,

該每一非撤銷用戶的訪問端接收該密鑰權威機構發(fā)送的該更新密鑰UKx',各非撤銷用戶的訪問端將已存儲的該私鑰SK更新為:

該云服務器接收該密鑰權威機構發(fā)送的該更新密鑰UKx',并將該密鑰密文CT更新為:

If x≠x',Cx*=Cx,

上述密鑰更新過程中包括三個部分:一是該密鑰權威機構生成更新密鑰;二是非撤銷用戶更新自身存儲的私鑰;三是該云服務器更新密文。

需要說明的是,該密鑰權威機構、非撤銷用戶以及該云服務器只更新與屬性x'有關聯(lián)的密鑰和密文,這樣更新所占的資源少,同時在用戶身份變更時,也可以及時的更新密鑰和密文,以確保數(shù)據(jù)的安全性。

本發(fā)明實施例中,當用戶通過訪問端向云服務器請求訪問加密的文件時,該云服務器獲取該文件對應的密鑰密文,并判斷該用戶的屬性是否滿足該密鑰密文中的訪問樹結(jié)構,若是,則向該訪問端請求獲取轉(zhuǎn)換密鑰中的局部密鑰,以及依據(jù)該局部密鑰對該密鑰密文進行解密,以解密出中間密文,將該中間密文和該文件對應的文件密文轉(zhuǎn)發(fā)給該訪問端,該訪問端接收該中間密文,并依據(jù)已存儲的私鑰對該中間密文進行解密,以解密出明文密鑰,以及依據(jù)該明文密鑰對該文件密文進行解密,以解密出該文件,同時當有用戶被撤銷時,密鑰權威機構、訪問端以及云服務器更新密鑰或者密文,這樣僅具有權限的用戶可以解密出文件,確保了數(shù)據(jù)的安全性,同時云服務器依據(jù)局部密鑰對密文進行解密運算,承擔了部分的解密運算,減少了訪問端的解密運算量,提高了解密速度和效率,從而增加了訪問端訪問加密的文件的速度。

請參閱圖2,圖2是本發(fā)明第三實施例提供的云密文訪問控制系統(tǒng)的結(jié)構示意圖,為了便于說明,僅示出了與本發(fā)明實施例相關的部分。圖2示例的云密文訪問控制系統(tǒng)可以是前述圖1所示實施例提供的云密文訪問控制方法的執(zhí)行主體。圖2示例的云密文訪問控制系統(tǒng),主要包括:云服務器201和訪問端202。以上各功能模塊詳細說明如下:

該云服務器201,用于當用戶通過訪問端向該云服務器201請求訪問加密的文件時,獲取該文件對應的密鑰密文,并判斷該用戶的屬性是否滿足該密鑰密文中的訪問樹結(jié)構,若是,則向該訪問端202請求獲取轉(zhuǎn)換密鑰中的局部密鑰,以及依據(jù)該局部密鑰對該密鑰密文進行解密,以解密出中間密文,將該中間密文和該文件對應的文件密文轉(zhuǎn)發(fā)給該訪問端202。

該用戶為需要從云服務器201中訪問加密的文件的數(shù)據(jù)訪問者。該用戶使用訪問端202向該云服務器201發(fā)送訪問請求,該訪問端202可以是計算機、手機、智能電視、平板電腦等支持與該云服務器交互,并能夠讀取數(shù)據(jù)的終端。

該加密的文件為經(jīng)過加密后并存儲于云服務器201上的數(shù)據(jù)。該用戶的屬性用于劃分訪問不同等級的加密的文件的用戶,例如,設共有三個加密文件的等級:低級、中級和高級,若用戶的屬性為屬性A,則屬性A的用戶能夠訪問高級的加密的文件;若用戶的屬性為屬性B,則屬性B的用戶能夠訪問中級的加密的文件;若用戶的屬性為屬性C,則屬性C的用戶能夠訪問低級的加密的文件。每一屬性可以對應一個等級,也可以對應多個等級。該訪問樹結(jié)構是一種數(shù)據(jù)訪問結(jié)構。云服務器201通過判斷用戶的屬性是否滿足該訪問樹結(jié)構中的等級,確定該用戶是否有權限訪問該文件。

該密鑰密文為加密該文件的密鑰的密文。該局部密鑰為該轉(zhuǎn)換密鑰中一部分的密鑰,該云服務器201依據(jù)該局部密鑰解密該密鑰密文,只能解密出中間密文,不能直接解密出文件,可以有效地確保數(shù)據(jù)的安全性,同時云服務器承擔部分的解密運算,提高了解密速度和效率。

該訪問端202,用于接收該中間密文,并依據(jù)已存儲的私鑰對該中間密文進行解密,以解密出明文密鑰,以及依據(jù)該明文密鑰對該文件密文進行解密,以解密出該文件。

該明文密鑰為與加密該文件的密鑰對應的解密密鑰。

本實施例未盡之細節(jié),請參閱前述圖1所示實施例的描述,此處不再贅述。

本發(fā)明實施例中,該云服務器201當用戶通過訪問端向云服務器201請求訪問加密的文件時,獲取該文件對應的密鑰密文,并判斷該用戶的屬性是否滿足該密鑰密文中的訪問樹結(jié)構,若是,則向該訪問端202請求獲取轉(zhuǎn)換密鑰中的局部密鑰,以及依據(jù)該局部密鑰對該密鑰密文進行解密,以解密出中間密文,將該中間密文和該文件對應的文件密文轉(zhuǎn)發(fā)給該訪問端202,該訪問端202接收該中間密文,并依據(jù)已存儲的私鑰對該中間密文進行解密,以解密出明文密鑰,以及依據(jù)該明文密鑰對該文件密文進行解密,以解密出該文件,這樣僅具有權限的用戶可以解密出文件,確保了數(shù)據(jù)的安全性,同時云服務器依據(jù)局部密鑰對密文進行解密運算,承擔了部分的解密運算,減少了訪問端的解密運算量,提高了解密速度和效率,從而增加了訪問端訪問加密的文件的速度。

請參閱圖3,圖3為本發(fā)明第四實施例提供的云密文訪問控制系統(tǒng)的結(jié)構示意圖,為了便于說明,僅示出了與本發(fā)明實施例相關的部分。圖3示例的云密文訪問控制系統(tǒng)可以是前述圖1所示實施例提供的云密文訪問控制方法的執(zhí)行主體。圖3示例的云密文訪問控制系統(tǒng),主要包括:密鑰權威機構301、數(shù)據(jù)屬主302、云服務器303和訪問端304。以上各功能模塊詳細說明如下:

密鑰權威機構301用于執(zhí)行以下步驟:

構建選擇階為素數(shù)p,和生成元g的雙線性群G0;

定義全局屬性集合L={a1,a2,...,am}以及安全等級k,其中j屬于1到m;

選取隨機數(shù)vj∈Zp,并將該隨機數(shù)vj作為屬性版本密鑰VKj=vj,并依據(jù)該屬性版本密鑰生成子公鑰其中Zp為有限域;

選取兩個隨機數(shù)α,β∈Zp,并依據(jù)該兩個隨機數(shù)α、β,該子公鑰和該雙線性群,分別生成系統(tǒng)主私鑰MSK={β,gα,{MSKj=VKj|aj∈L}},和系統(tǒng)主公鑰

對每一用戶設置用戶屬性集S,其中S為L的子集;

選取兩個隨機數(shù)r,z∈Zp,依據(jù)該兩個隨機數(shù)r,z,該系統(tǒng)主私鑰和該用戶屬性集S,分別生成該轉(zhuǎn)換密鑰和該私鑰SK=(z,TK)。

進一步地,數(shù)據(jù)屬主302,用于執(zhí)行以下步驟:

依據(jù)預置應用密鑰ck,并通過對稱加密算法對該文件進行加密,生成該文件密文Eck(M),其中M表示該文件;

為該訪問樹結(jié)構T中的每一節(jié)點x選取一個多項式qx;

設置該每一節(jié)點x對應的多項式qx中階dx比各節(jié)點對應的門限值kx少1,其中kx=dx+1;

從根節(jié)點R起,選取隨機數(shù)s∈Zp,并設置qR(0)=s,以及選擇dR個節(jié)點定義多項式qR;

為每一個非根節(jié)點x設置qx(0)=qpartent(x)(index(x)),并選擇dx個節(jié)點定義多項式qx。

通過該訪問樹結(jié)構T和該系統(tǒng)主公鑰對該應用密鑰ck進行加密,得到該密鑰密文CT,其中該密鑰密文CT為:

其中,X是該訪問樹結(jié)構T中葉子節(jié)點對應的屬性的集合;

將該密鑰密文CT和該文件密文上傳至該云服務器303。

該對稱加密算法是指加密過程和解密過程使用相同的密鑰的加密算法,即加密密鑰能夠從解密密鑰中推算出來,同時解密密鑰也可以從加密密鑰中推算出來。故該應用密鑰與該明文密鑰相同。

該云服務器303,用于當用戶通過訪問端304向云服務器303請求訪問加密的文件時,獲取該文件對應的密鑰密文,并判斷該用戶的屬性是否滿足該密鑰密文中的訪問樹結(jié)構,若是,則向該訪問端304請求獲取轉(zhuǎn)換密鑰中的局部密鑰,以及依據(jù)該局部密鑰對該密鑰密文進行解密,以解密出中間密文,將該中間密文和該文件對應的文件密文轉(zhuǎn)發(fā)給該訪問端304。

進一步地,該云服務器303還用于執(zhí)行以下步驟:

接收該訪問端304發(fā)送的該轉(zhuǎn)換密鑰中的局部密鑰,其中該轉(zhuǎn)換密鑰中的局部密鑰

預先定義遞歸運算DecryptNode(CT,TK',x),其中,若節(jié)點x為該訪問樹結(jié)構T中的葉子節(jié)點,設aj=att(x)且aj∈S,則

若x不是該訪問樹結(jié)構T中的葉子節(jié)點,且為該節(jié)點x中所有子節(jié)點n,設置Fn=DecryptNode(CT,TK',n),則

其中,j=index(n),Sx'={index(n):n∈Sx};

通過該訪問樹結(jié)構T中根節(jié)點R對應的函數(shù)DecryptNode(CT,TK',R)進行運算,算出所述中間密文T={A,B},其中,

設A=FR=e(g,g)rs/z,

該訪問端304,用于接收該中間密文,并依據(jù)已存儲的私鑰對該中間密文進行解密,以解密出明文密鑰,以及依據(jù)該明文密鑰對該文件密文進行解密,以解密出該文件。

進一步地,該訪問端304,還用于依據(jù)該私鑰SK和接收到的該中間密文T={A,B},解密出該明文密鑰ck,其中,

該訪問端304,還用于通過該明文密鑰ck對該文件密文Eck(M)進行解密,解密出該文件M。

該私鑰SK是由該密鑰權威機構依據(jù)用戶的屬性預先下發(fā)給各用戶。

該密鑰權威機構301,還用于當撤銷用戶μ的屬性x'被撤銷時,選取隨機數(shù)vx'*∈Zp(vx'*≠vx'),并將該屬性x'對應的屬性版本密鑰VKx'=vx'更換為屬性版本密鑰VKx'*,令VKx'*=vx'*,以及依據(jù)VKx'*生成更新密鑰為UKx',依據(jù)更換后的屬性版本密鑰VK*x'更新該系統(tǒng)主公鑰為并將該更新密鑰UKx'發(fā)送給每一非撤銷用戶的訪問端304和該云服務器303,其中,

該每一非撤銷用戶的訪問端304,還用于接收該密鑰權威機構301發(fā)送的該更新密鑰UKx',各非撤銷用戶的訪問端304將已存儲的該私鑰SK更新為:

該云服務器303,還用于接收該密鑰權威機構301發(fā)送的該更新密鑰UKx',并將該密鑰密文CT更新為:

If x≠x',Cx*=Cx,

如圖4所示,圖4為云密文訪問控制系統(tǒng)中四個實體設備的示意圖。

本實施例未盡之細節(jié),請參閱前述圖1所示實施例的描述,此處不再贅述。

本發(fā)明實施例中,當用戶通過訪問端304向云服務器303請求訪問加密的文件時,該云服務器303獲取該文件對應的密鑰密文,并判斷該用戶的屬性是否滿足該密鑰密文中的訪問樹結(jié)構,若是,則向該訪問端304請求獲取轉(zhuǎn)換密鑰中的局部密鑰,以及依據(jù)該局部密鑰對該密鑰密文進行解密,以解密出中間密文,將該中間密文和該文件對應的文件密文轉(zhuǎn)發(fā)給該訪問端304,該訪問端304接收該中間密文,并依據(jù)已存儲的私鑰對該中間密文進行解密,以解密出明文密鑰,以及依據(jù)該明文密鑰對該文件密文進行解密,以解密出該文件,這樣僅具有權限的用戶可以解密出文件,確保了數(shù)據(jù)的安全性,同時云服務器依據(jù)局部密鑰對密文進行解密運算,承擔了部分的解密運算,減少了訪問端的解密運算量,提高了解密速度和效率,從而增加了訪問端訪問加密的文件的速度。

在本申請所提供的多個實施例中,應該理解到,所揭露的系統(tǒng)、裝置和方法,可以通過其它的方式實現(xiàn)。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述模塊的劃分,僅僅為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式,例如多個模塊或組件可以結(jié)合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信鏈接可以是通過一些接口,裝置或模塊的間接耦合或通信鏈接,可以是電性,機械或其它的形式。

所述作為分離部件說明的模塊可以是或者也可以不是物理上分開的,作為模塊顯示的部件可以是或者也可以不是物理模塊,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡模塊上。可以根據(jù)實際的需要選擇其中的部分或者全部模塊來實現(xiàn)本實施例方案的目的。

另外,在本發(fā)明各個實施例中的各功能模塊可以集成在一個處理模塊中,也可以是各個模塊單獨物理存在,也可以兩個或兩個以上模塊集成在一個模塊中。上述集成的模塊既可以采用硬件的形式實現(xiàn),也可以采用軟件功能模塊的形式實現(xiàn)。

所述集成的模塊如果以軟件功能模塊的形式實現(xiàn)并作為獨立的產(chǎn)品銷售或使用時,可以存儲在一個計算機可讀取存儲介質(zhì)中?;谶@樣的理解,本發(fā)明的技術方案本質(zhì)上或者說對現(xiàn)有技術做出貢獻的部分或者該技術方案的全部或部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在一個存儲介質(zhì)中,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網(wǎng)絡設備等)執(zhí)行本發(fā)明各個實施例所述方法的全部或部分步驟。而前述的存儲介質(zhì)包括:U盤、移動硬盤、只讀存儲器(ROM,Read-Only Memory)、隨機存取存儲器(RAM,Random Access Memory)、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。

需要說明的是,對于前述的各方法實施例,為了簡便描述,故將其都表述為一系列的動作組合,但是本領域技術人員應該知悉,本發(fā)明并不受所描述的動作順序的限制,因為依據(jù)本發(fā)明,某些步驟可以采用其它順序或者同時進行。其次,本領域技術人員也應該知悉,說明書中所描述的實施例均屬于優(yōu)選實施例,所涉及的動作和模塊并不一定都是本發(fā)明所必須的。

在上述實施例中,對各個實施例的描述都各有側(cè)重,某個實施例中沒有詳述的部分,可以參見其它實施例的相關描述。

以上為對本發(fā)明所提供的云密文訪問控制方法及系統(tǒng)的描述,對于本領域的技術人員,依據(jù)本發(fā)明實施例的思想,在具體實施方式及應用范圍上均會有改變之處,綜上,本說明書內(nèi)容不應理解為對本發(fā)明的限制。

當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1