本發(fā)明涉及云計(jì)算技術(shù)領(lǐng)域,具體涉及一種數(shù)據(jù)加密保護(hù)系統(tǒng)。
背景技術(shù):
隨著云計(jì)算的不斷普及,云端數(shù)據(jù)安全問題顯得越來越重要,已成為制約云計(jì)算發(fā)展的重要因素。例如云存儲是將數(shù)據(jù)從本地轉(zhuǎn)移存儲到云存儲服務(wù)模塊,為用戶帶來了方便的同時(shí)節(jié)省了大量的成本。然而這一存儲模式將數(shù)據(jù)存儲在云存儲服務(wù)模塊,數(shù)據(jù)處在用戶控制之外,因此如何保證云存儲服務(wù)模塊中數(shù)據(jù)的安全成為了一個(gè)亟需解決的問題。
技術(shù)實(shí)現(xiàn)要素:
針對上述問題,本發(fā)明提供一種數(shù)據(jù)加密保護(hù)系統(tǒng)
本發(fā)明的目的采用以下技術(shù)方案來實(shí)現(xiàn):
一種數(shù)據(jù)加密保護(hù)系統(tǒng),包括訪問身份管理模塊、云存儲服務(wù)模塊、數(shù)據(jù)加密模塊、數(shù)據(jù)檢索模塊、數(shù)據(jù)解密模塊:
(1)訪問身份管理模塊,用于為訪問用戶提供身份申請、身份注銷以及身份認(rèn)證;
(2)云存儲服務(wù)模塊,用于為訪問用戶提供數(shù)據(jù)存儲服務(wù),包括用于存儲數(shù)據(jù)的云存儲服務(wù)模塊和用于控制訪問用戶訪問云存儲服務(wù)模塊的數(shù)據(jù)的訪問控制器,所述訪問控制器通過預(yù)設(shè)的訪問控制模型進(jìn)行訪問控制;
(3)數(shù)據(jù)加密模塊,用于對明文信息進(jìn)行預(yù)處理、加密,并將加密后的密文數(shù)據(jù)存儲到所述云存儲服務(wù)模塊;
(4)數(shù)據(jù)檢索模塊,用于為云存儲服務(wù)模塊的每個(gè)密文數(shù)據(jù)建立元數(shù)據(jù),并對所述元數(shù)據(jù)進(jìn)行加密,以便于登錄云存儲服務(wù)模塊的用戶通過加密后的元數(shù)據(jù)檢索所需數(shù)據(jù)的信息。
(5)數(shù)據(jù)解密模塊,用于從所述云存儲服務(wù)模塊下載所述加密后的密文數(shù)據(jù),進(jìn)行解密,以供終端所在用戶查看。
優(yōu)選地,所述預(yù)設(shè)的訪問控制模型為基于密文策略的屬性加密訪問控制模型。
所述對明文信息進(jìn)行預(yù)處理,包括:根據(jù)系統(tǒng)預(yù)先定義的訪問結(jié)構(gòu)樹創(chuàng)建多個(gè)用戶屬性集,通過碼分復(fù)用編碼用戶屬主客戶端上的明文信息,根據(jù)所述訪問結(jié)構(gòu)樹將編碼后的明文信息分為N個(gè)訪問級別,N的取值范圍為[4,8]。
所述數(shù)據(jù)加密模塊對預(yù)處理后的明文信息進(jìn)行三重加密,得到三重加密密文,并采用數(shù)字信封技術(shù)對三重加密密文進(jìn)行封裝后存儲到所述云存儲服務(wù)模塊。
其中,所述數(shù)據(jù)加密模塊包括依次連接的明文加密單元、密鑰加密單元和重加密單元;
所述明文加密單元用于對預(yù)處理后的明文信息m采用由用戶屬主選取的對稱密鑰Km進(jìn)行加密,得到密文Cm:
所述密鑰加密單元用于采用由用戶屬主定義的訪問策略樹對所述對稱密鑰Km進(jìn)行加密,得到密鑰密文Cm′:
其中,T表示所述訪問策略樹,任意選取q∈Zp且q=px(0),X表示所有訪問策略樹的所有葉子節(jié)點(diǎn)的集合;是自定義的一個(gè)公開映射函數(shù);
所述重加密單元對所述密鑰密文進(jìn)行加密,加密時(shí)所述云存儲服務(wù)模塊為每一個(gè)用戶組屬性Gi隨機(jī)選擇一個(gè)用戶組屬性密鑰為每一個(gè)用戶組屬性Gi建立三重加密密文C″m,并利用共享會話密鑰來加密用戶組屬性密鑰進(jìn)而得到對應(yīng)于三重加密密文C″m的一個(gè)消息頭Hdr:
式中,kgs表示共享會話密鑰。
其中,所述共享會話密鑰采用公鑰加密體制及密鑰協(xié)商協(xié)議生成,具體為:所述云存儲服務(wù)模塊將自己的身份及訪問用戶的身份發(fā)送給數(shù)據(jù)加密模塊,數(shù)據(jù)加密模塊向云存儲服務(wù)模塊發(fā)送一個(gè)第一公鑰證書,云存儲服務(wù)模塊進(jìn)而為訪問用戶生成一個(gè)會話密鑰,并用自身的秘密鑰和公開鑰加密后,連同與秘密鑰對應(yīng)的第二公鑰證書及與公開鑰對應(yīng)的第一公鑰證書一并發(fā)送給訪問用戶,所述秘密鑰和公開鑰利用系統(tǒng)公開參數(shù)生成。
所述數(shù)據(jù)解密模塊將云存儲服務(wù)模塊上的封裝好的三重加密密文解密得到明文信息,所述數(shù)據(jù)解密模塊包括:
1)用戶組屬性密鑰解密子模塊,用于在訪問用戶訪問所述封裝好的三重加密密文時(shí)對用戶組屬性密鑰進(jìn)行解密,解密時(shí)由云存儲服務(wù)模塊返回所述封裝好的三重加密密文及其對應(yīng)的消息頭,利用共享會話密鑰kgs解密得到用戶組屬性密鑰
2)三重加密密文解密子模塊,用于對三重加密密文C″m進(jìn)行解密;
3)密鑰密文解密子模塊,用于對密鑰密文Cm′進(jìn)行解密:
4)密文解密子模塊,用于對密文Cm進(jìn)行解密;
5)解碼子模塊,用于采用碼分復(fù)用對所述明文編碼信息進(jìn)行解碼,得到相應(yīng)的明文信息。
本發(fā)明的有益效果為:
1、通過訪問身份管理模塊、數(shù)據(jù)檢索模塊、數(shù)據(jù)加密模塊和數(shù)據(jù)解密模塊的多重防護(hù),可有效防止云存儲服務(wù)模塊數(shù)據(jù)的泄露,提高云存儲服務(wù)模塊數(shù)據(jù)的安全性,具有較強(qiáng)的易用性和實(shí)用性;
2、根據(jù)訪問結(jié)構(gòu)樹將編碼后的明文信息分為不同的訪問級別,提高了訪問控制的效率,利用碼分復(fù)用技術(shù)編碼明文信息,減少了密文數(shù)據(jù)的存儲空間,提升了系統(tǒng)的整體性能;
2、設(shè)置的數(shù)據(jù)加密模塊對明文進(jìn)行三重加密,得到三重加密密文,并采用數(shù)字信封技術(shù)對三重加密密文進(jìn)行封裝后存儲到所述云存儲服務(wù)模塊,并設(shè)置相應(yīng)的數(shù)據(jù)解密模塊,不僅能實(shí)現(xiàn)細(xì)粒度訪問控制,還能有效減輕用戶屬主與用戶加密、解密的計(jì)算開銷。
附圖說明
利用附圖對本發(fā)明作進(jìn)一步說明,但附圖中的實(shí)施例不構(gòu)成對本發(fā)明的任何限制,對于本領(lǐng)域的普通技術(shù)人員,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)以下附圖獲得其它的附圖。
圖1是本發(fā)明各模塊的連接示意圖;
圖2是本發(fā)明數(shù)據(jù)加密模塊運(yùn)作的原理示意圖。
附圖標(biāo)記:
訪問身份管理模塊1、云存儲服務(wù)模塊2、數(shù)據(jù)加密模塊3、數(shù)據(jù)檢索模塊4、數(shù)據(jù)解密模塊5。
具體實(shí)施方式
結(jié)合以下實(shí)施例對本發(fā)明作進(jìn)一步描述。
實(shí)施例1
參見圖1、圖2,本實(shí)施例的數(shù)據(jù)加密保護(hù)系統(tǒng),包括訪問身份管理模塊1、云存儲服務(wù)模塊2、數(shù)據(jù)加密模塊3、數(shù)據(jù)檢索模塊4、數(shù)據(jù)解密模塊5:
(1)訪問身份管理模塊1,用于為訪問用戶提供身份申請、身份注銷以及身份認(rèn)證;
(2)云存儲服務(wù)模塊2,用于為訪問用戶提供數(shù)據(jù)存儲服務(wù),包括用于存儲數(shù)據(jù)的云存儲服務(wù)模塊和用于控制訪問用戶訪問云存儲服務(wù)模塊2的數(shù)據(jù)的訪問控制器,所述訪問控制器通過預(yù)設(shè)的訪問控制模型進(jìn)行訪問控制;
(3)數(shù)據(jù)加密模塊3,用于對明文信息進(jìn)行預(yù)處理、加密,并將加密后的密文數(shù)據(jù)存儲到所述云存儲服務(wù)模塊2;
(4)數(shù)據(jù)檢索模塊4,用于為云存儲服務(wù)模塊2的每個(gè)密文數(shù)據(jù)建立元數(shù)據(jù),并對所述元數(shù)據(jù)進(jìn)行加密,以便于登錄云存儲服務(wù)模塊2的用戶通過加密后的元數(shù)據(jù)檢索所需數(shù)據(jù)的信息。
(5)數(shù)據(jù)解密模塊5,用于從所述云存儲服務(wù)模塊2下載所述加密后的密文數(shù)據(jù),進(jìn)行解密,以供終端所在用戶查看。
其中,所述預(yù)設(shè)的訪問控制模型為基于密文策略的屬性加密訪問控制模型。
所述對明文信息進(jìn)行預(yù)處理,包括:根據(jù)系統(tǒng)預(yù)先定義的訪問結(jié)構(gòu)樹創(chuàng)建多個(gè)用戶屬性集,通過碼分復(fù)用編碼用戶屬主客戶端上的明文信息,根據(jù)所述訪問結(jié)構(gòu)樹將編碼后的明文信息分為N個(gè)訪問級別,N的取值范圍為[4,8]。
所述數(shù)據(jù)加密模塊3對預(yù)處理后的明文信息進(jìn)行三重加密,得到三重加密密文,并采用數(shù)字信封技術(shù)對三重加密密文進(jìn)行封裝后存儲到所述云存儲服務(wù)模塊2。
其中,所述數(shù)據(jù)加密模塊3包括:
依次連接的明文加密單元、密鑰加密單元和重加密單元;
所述明文加密單元用于對預(yù)處理后的明文信息m采用由用戶屬主選取的對稱密鑰Km進(jìn)行加密,得到密文Cm:
所述密鑰加密單元用于采用由用戶屬主定義的訪問策略樹對所述對稱密鑰Km進(jìn)行加密,得到密鑰密文Cm′:
其中,T表示所述訪問策略樹,任意選取q∈Zp且q=px(0),X表示所有訪問策略樹的所有葉子節(jié)點(diǎn)的集合;是自定義的一個(gè)公開映射函數(shù);
所述重加密單元對所述密鑰密文進(jìn)行加密,加密時(shí)所述云存儲服務(wù)模塊2為每一個(gè)用戶組屬性Gi隨機(jī)選擇一個(gè)用戶組屬性密鑰為每一個(gè)用戶組屬性Gi建立三重加密密文C″m,并利用共享會話密鑰來加密用戶組屬性密鑰進(jìn)而得到對應(yīng)于三重加密密文C″m的一個(gè)消息頭Hdr:
式中,kgs表示共享會話密鑰。
其中,所述共享會話密鑰采用公鑰加密體制及密鑰協(xié)商協(xié)議生成,具體為:所述云存儲服務(wù)模塊2將自己的身份及訪問用戶的身份發(fā)送給數(shù)據(jù)加密模塊,數(shù)據(jù)加密模塊向云存儲服務(wù)模塊2發(fā)送一個(gè)第一公鑰證書,云存儲服務(wù)模塊2進(jìn)而為訪問用戶生成一個(gè)會話密鑰,并用自身的秘密鑰和公開鑰加密后,連同與秘密鑰對應(yīng)的第二公鑰證書及與公開鑰對應(yīng)的第一公鑰證書一并發(fā)送給訪問用戶,所述秘密鑰和公開鑰利用系統(tǒng)公開參數(shù)生成。
所述數(shù)據(jù)解密模塊5將云存儲服務(wù)模塊2上的封裝好的三重加密密文解密得到明文信息,所述數(shù)據(jù)解密模塊5包括:
1)用戶組屬性密鑰解密子模塊,用于在訪問用戶訪問所述封裝好的三重加密密文時(shí)對用戶組屬性密鑰進(jìn)行解密,解密時(shí)由云存儲服務(wù)模塊2返回所述封裝好的三重加密密文及其對應(yīng)的消息頭,利用共享會話密鑰kgs解密得到用戶組屬性密鑰
2)三重加密密文解密子模塊,用于對三重加密密文C″m進(jìn)行解密;
3)密鑰密文解密子模塊,用于對密鑰密文Cm′進(jìn)行解密:
4)密文解密子模塊,用于對密文Cm進(jìn)行解密;
5)解碼子模塊,用于采用碼分復(fù)用對所述明文編碼信息進(jìn)行解碼,得到相應(yīng)的明文信息。
本實(shí)施例通過訪問身份管理模塊1、數(shù)據(jù)檢索模塊4、數(shù)據(jù)加密模塊3和數(shù)據(jù)解密模塊5的多重防護(hù),可有效防止云存儲服務(wù)模塊2數(shù)據(jù)的泄露,提高云存儲服務(wù)模塊2數(shù)據(jù)的安全性,具有較強(qiáng)的易用性和實(shí)用性;設(shè)置的數(shù)據(jù)加密模塊3對明文進(jìn)行三重加密,得到三重加密密文,并采用數(shù)字信封技術(shù)對三重加密密文進(jìn)行封裝后存儲到所述云存儲服務(wù)模塊2,并設(shè)置相應(yīng)的數(shù)據(jù)解密模塊5,不僅能實(shí)現(xiàn)細(xì)粒度訪問控制,還能有效減輕用戶屬主與用戶加密、解密的計(jì)算開銷;根據(jù)訪問結(jié)構(gòu)樹將編碼后的明文信息分為不同的訪問級別,提高了訪問控制的效率,利用碼分復(fù)用技術(shù)編碼明文信息,減少了密文數(shù)據(jù)的存儲空間,提升了系統(tǒng)的整體性能;其中設(shè)定訪問級別個(gè)數(shù)N=4,密文存儲空間相對減少了5%。
實(shí)施例2
參見圖1、圖2,本實(shí)施例的數(shù)據(jù)加密保護(hù)系統(tǒng),包括訪問身份管理模塊1、云存儲服務(wù)模塊2、數(shù)據(jù)加密模塊3、數(shù)據(jù)檢索模塊4、數(shù)據(jù)解密模塊5:
(1)訪問身份管理模塊1,用于為訪問用戶提供身份申請、身份注銷以及身份認(rèn)證;
(2)云存儲服務(wù)模塊2,用于為訪問用戶提供數(shù)據(jù)存儲服務(wù),包括用于存儲數(shù)據(jù)的云存儲服務(wù)模塊和用于控制訪問用戶訪問云存儲服務(wù)模塊2的數(shù)據(jù)的訪問控制器,所述訪問控制器通過預(yù)設(shè)的訪問控制模型進(jìn)行訪問控制;
(3)數(shù)據(jù)加密模塊3,用于對明文信息進(jìn)行預(yù)處理、加密,并將加密后的密文數(shù)據(jù)存儲到所述云存儲服務(wù)模塊2;
(4)數(shù)據(jù)檢索模塊4,用于為云存儲服務(wù)模塊2的每個(gè)密文數(shù)據(jù)建立元數(shù)據(jù),并對所述元數(shù)據(jù)進(jìn)行加密,以便于登錄云存儲服務(wù)模塊2的用戶通過加密后的元數(shù)據(jù)檢索所需數(shù)據(jù)的信息。
(5)數(shù)據(jù)解密模塊5,用于從所述云存儲服務(wù)模塊2下載所述加密后的密文數(shù)據(jù),進(jìn)行解密,以供終端所在用戶查看。
其中,所述預(yù)設(shè)的訪問控制模型為基于密文策略的屬性加密訪問控制模型。
所述對明文信息進(jìn)行預(yù)處理,包括:根據(jù)系統(tǒng)預(yù)先定義的訪問結(jié)構(gòu)樹創(chuàng)建多個(gè)用戶屬性集,通過碼分復(fù)用編碼用戶屬主客戶端上的明文信息,根據(jù)所述訪問結(jié)構(gòu)樹將編碼后的明文信息分為N個(gè)訪問級別,N的取值范圍為[4,8]。
所述數(shù)據(jù)加密模塊3對預(yù)處理后的明文信息進(jìn)行三重加密,得到三重加密密文,并采用數(shù)字信封技術(shù)對三重加密密文進(jìn)行封裝后存儲到所述云存儲服務(wù)模塊2。
其中,所述數(shù)據(jù)加密模塊3包括:
依次連接的明文加密單元、密鑰加密單元和重加密單元;
所述明文加密單元用于對預(yù)處理后的明文信息m采用由用戶屬主選取的對稱密鑰Km進(jìn)行加密,得到密文Cm:
所述密鑰加密單元用于采用由用戶屬主定義的訪問策略樹對所述對稱密鑰Km進(jìn)行加密,得到密鑰密文Cm′:
其中,T表示所述訪問策略樹,任意選取q∈Zp且q=px(0),X表示所有訪問策略樹的所有葉子節(jié)點(diǎn)的集合;是自定義的一個(gè)公開映射函數(shù);
所述重加密單元對所述密鑰密文進(jìn)行加密,加密時(shí)所述云存儲服務(wù)模塊2為每一個(gè)用戶組屬性Gi隨機(jī)選擇一個(gè)用戶組屬性密鑰為每一個(gè)用戶組屬性Gi建立三重加密密文C″m,并利用共享會話密鑰來加密用戶組屬性密鑰進(jìn)而得到對應(yīng)于三重加密密文C″m的一個(gè)消息頭Hdr:
式中,kgs表示共享會話密鑰。
其中,所述共享會話密鑰采用公鑰加密體制及密鑰協(xié)商協(xié)議生成,具體為:所述云存儲服務(wù)模塊2將自己的身份及訪問用戶的身份發(fā)送給數(shù)據(jù)加密模塊,數(shù)據(jù)加密模塊向云存儲服務(wù)模塊2發(fā)送一個(gè)第一公鑰證書,云存儲服務(wù)模塊2進(jìn)而為訪問用戶生成一個(gè)會話密鑰,并用自身的秘密鑰和公開鑰加密后,連同與秘密鑰對應(yīng)的第二公鑰證書及與公開鑰對應(yīng)的第一公鑰證書一并發(fā)送給訪問用戶,所述秘密鑰和公開鑰利用系統(tǒng)公開參數(shù)生成。
所述數(shù)據(jù)解密模塊5將云存儲服務(wù)模塊2上的封裝好的三重加密密文解密得到明文信息,所述數(shù)據(jù)解密模塊5包括:
1)用戶組屬性密鑰解密子模塊,用于在訪問用戶訪問所述封裝好的三重加密密文時(shí)對用戶組屬性密鑰進(jìn)行解密,解密時(shí)由云存儲服務(wù)模塊2返回所述封裝好的三重加密密文及其對應(yīng)的消息頭,利用共享會話密鑰kgs解密得到用戶組屬性密鑰
2)三重加密密文解密子模塊,用于對三重加密密文C″m進(jìn)行解密;
3)密鑰密文解密子模塊,用于對密鑰密文Cm′進(jìn)行解密:
4)密文解密子模塊,用于對密文Cm進(jìn)行解密;
5)解碼子模塊,用于采用碼分復(fù)用對所述明文編碼信息進(jìn)行解碼,得到相應(yīng)的明文信息。
本實(shí)施例通過訪問身份管理模塊1、數(shù)據(jù)檢索模塊4、數(shù)據(jù)加密模塊3和數(shù)據(jù)解密模塊5的多重防護(hù),可有效防止云存儲服務(wù)模塊2數(shù)據(jù)的泄露,提高云存儲服務(wù)模塊2數(shù)據(jù)的安全性,具有較強(qiáng)的易用性和實(shí)用性;設(shè)置的數(shù)據(jù)加密模塊3對明文進(jìn)行三重加密,得到三重加密密文,并采用數(shù)字信封技術(shù)對三重加密密文進(jìn)行封裝后存儲到所述云存儲服務(wù)模塊2,并設(shè)置相應(yīng)的數(shù)據(jù)解密模塊5,不僅能實(shí)現(xiàn)細(xì)粒度訪問控制,還能有效減輕用戶屬主與用戶加密、解密的計(jì)算開銷;根據(jù)訪問結(jié)構(gòu)樹將編碼后的明文信息分為不同的訪問級別,提高了訪問控制的效率,利用碼分復(fù)用技術(shù)編碼明文信息,減少了密文數(shù)據(jù)的存儲空間,提升了系統(tǒng)的整體性能;其中設(shè)定訪問級別個(gè)數(shù)N=5,密文存儲空間相對減少了4.5%。
實(shí)施例3
參見圖1、圖2,本實(shí)施例的數(shù)據(jù)加密保護(hù)系統(tǒng),包括訪問身份管理模塊1、云存儲服務(wù)模塊2、數(shù)據(jù)加密模塊3、數(shù)據(jù)檢索模塊4、數(shù)據(jù)解密模塊5:
(1)訪問身份管理模塊1,用于為訪問用戶提供身份申請、身份注銷以及身份認(rèn)證;
(2)云存儲服務(wù)模塊2,用于為訪問用戶提供數(shù)據(jù)存儲服務(wù),包括用于存儲數(shù)據(jù)的云存儲服務(wù)模塊和用于控制訪問用戶訪問云存儲服務(wù)模塊2的數(shù)據(jù)的訪問控制器,所述訪問控制器通過預(yù)設(shè)的訪問控制模型進(jìn)行訪問控制;
(3)數(shù)據(jù)加密模塊3,用于對明文信息進(jìn)行預(yù)處理、加密,并將加密后的密文數(shù)據(jù)存儲到所述云存儲服務(wù)模塊2;
(4)數(shù)據(jù)檢索模塊4,用于為云存儲服務(wù)模塊2的每個(gè)密文數(shù)據(jù)建立元數(shù)據(jù),并對所述元數(shù)據(jù)進(jìn)行加密,以便于登錄云存儲服務(wù)模塊2的用戶通過加密后的元數(shù)據(jù)檢索所需數(shù)據(jù)的信息。
(5)數(shù)據(jù)解密模塊5,用于從所述云存儲服務(wù)模塊2下載所述加密后的密文數(shù)據(jù),進(jìn)行解密,以供終端所在用戶查看。
其中,所述預(yù)設(shè)的訪問控制模型為基于密文策略的屬性加密訪問控制模型。
所述對明文信息進(jìn)行預(yù)處理,包括:根據(jù)系統(tǒng)預(yù)先定義的訪問結(jié)構(gòu)樹創(chuàng)建多個(gè)用戶屬性集,通過碼分復(fù)用編碼用戶屬主客戶端上的明文信息,根據(jù)所述訪問結(jié)構(gòu)樹將編碼后的明文信息分為N個(gè)訪問級別,N的取值范圍為[4,8]。
所述數(shù)據(jù)加密模塊3對預(yù)處理后的明文信息進(jìn)行三重加密,得到三重加密密文,并采用數(shù)字信封技術(shù)對三重加密密文進(jìn)行封裝后存儲到所述云存儲服務(wù)模塊2。
其中,所述數(shù)據(jù)加密模塊3包括:
依次連接的明文加密單元、密鑰加密單元和重加密單元;
所述明文加密單元用于對預(yù)處理后的明文信息m采用由用戶屬主選取的對稱密鑰Km進(jìn)行加密,得到密文Cm:
所述密鑰加密單元用于采用由用戶屬主定義的訪問策略樹對所述對稱密鑰Km進(jìn)行加密,得到密鑰密文Cm′:
其中,T表示所述訪問策略樹,任意選取q∈Zp且q=px(0),X表示所有訪問策略樹的所有葉子節(jié)點(diǎn)的集合;是自定義的一個(gè)公開映射函數(shù);
所述重加密單元對所述密鑰密文進(jìn)行加密,加密時(shí)所述云存儲服務(wù)模塊2為每一個(gè)用戶組屬性Gi隨機(jī)選擇一個(gè)用戶組屬性密鑰為每一個(gè)用戶組屬性Gi建立三重加密密文C″m,并利用共享會話密鑰來加密用戶組屬性密鑰進(jìn)而得到對應(yīng)于三重加密密文C″m的一個(gè)消息頭Hdr:
式中,kgs表示共享會話密鑰。
其中,所述共享會話密鑰采用公鑰加密體制及密鑰協(xié)商協(xié)議生成,具體為:所述云存儲服務(wù)模塊2將自己的身份及訪問用戶的身份發(fā)送給數(shù)據(jù)加密模塊,數(shù)據(jù)加密模塊向云存儲服務(wù)模塊2發(fā)送一個(gè)第一公鑰證書,云存儲服務(wù)模塊2進(jìn)而為訪問用戶生成一個(gè)會話密鑰,并用自身的秘密鑰和公開鑰加密后,連同與秘密鑰對應(yīng)的第二公鑰證書及與公開鑰對應(yīng)的第一公鑰證書一并發(fā)送給訪問用戶,所述秘密鑰和公開鑰利用系統(tǒng)公開參數(shù)生成。
所述數(shù)據(jù)解密模塊5將云存儲服務(wù)模塊2上的封裝好的三重加密密文解密得到明文信息,所述數(shù)據(jù)解密模塊5包括:
1)用戶組屬性密鑰解密子模塊,用于在訪問用戶訪問所述封裝好的三重加密密文時(shí)對用戶組屬性密鑰進(jìn)行解密,解密時(shí)由云存儲服務(wù)模塊2返回所述封裝好的三重加密密文及其對應(yīng)的消息頭,利用共享會話密鑰kgs解密得到用戶組屬性密鑰
2)三重加密密文解密子模塊,用于對三重加密密文C″m進(jìn)行解密;
3)密鑰密文解密子模塊,用于對密鑰密文Cm′進(jìn)行解密:
4)密文解密子模塊,用于對密文Cm進(jìn)行解密;
5)解碼子模塊,用于采用碼分復(fù)用對所述明文編碼信息進(jìn)行解碼,得到相應(yīng)的明文信息。
本實(shí)施例通過訪問身份管理模塊1、數(shù)據(jù)檢索模塊4、數(shù)據(jù)加密模塊3和數(shù)據(jù)解密模塊5的多重防護(hù),可有效防止云存儲服務(wù)模塊2數(shù)據(jù)的泄露,提高云存儲服務(wù)模塊2數(shù)據(jù)的安全性,具有較強(qiáng)的易用性和實(shí)用性;設(shè)置的數(shù)據(jù)加密模塊3對明文進(jìn)行三重加密,得到三重加密密文,并采用數(shù)字信封技術(shù)對三重加密密文進(jìn)行封裝后存儲到所述云存儲服務(wù)模塊2,并設(shè)置相應(yīng)的數(shù)據(jù)解密模塊5,不僅能實(shí)現(xiàn)細(xì)粒度訪問控制,還能有效減輕用戶屬主與用戶加密、解密的計(jì)算開銷;根據(jù)訪問結(jié)構(gòu)樹將編碼后的明文信息分為不同的訪問級別,提高了訪問控制的效率,利用碼分復(fù)用技術(shù)編碼明文信息,減少了密文數(shù)據(jù)的存儲空間,提升了系統(tǒng)的整體性能;其中設(shè)定訪問級別個(gè)數(shù)N=6,密文存儲空間相對減少了4%。
實(shí)施例4
參見圖1、圖2,本實(shí)施例的數(shù)據(jù)加密保護(hù)系統(tǒng),包括訪問身份管理模塊1、云存儲服務(wù)模塊2、數(shù)據(jù)加密模塊3、數(shù)據(jù)檢索模塊4、數(shù)據(jù)解密模塊5:
(1)訪問身份管理模塊1,用于為訪問用戶提供身份申請、身份注銷以及身份認(rèn)證;
(2)云存儲服務(wù)模塊2,用于為訪問用戶提供數(shù)據(jù)存儲服務(wù),包括用于存儲數(shù)據(jù)的云存儲服務(wù)模塊和用于控制訪問用戶訪問云存儲服務(wù)模塊2的數(shù)據(jù)的訪問控制器,所述訪問控制器通過預(yù)設(shè)的訪問控制模型進(jìn)行訪問控制;
(3)數(shù)據(jù)加密模塊3,用于對明文信息進(jìn)行預(yù)處理、加密,并將加密后的密文數(shù)據(jù)存儲到所述云存儲服務(wù)模塊2;
(4)數(shù)據(jù)檢索模塊4,用于為云存儲服務(wù)模塊2的每個(gè)密文數(shù)據(jù)建立元數(shù)據(jù),并對所述元數(shù)據(jù)進(jìn)行加密,以便于登錄云存儲服務(wù)模塊2的用戶通過加密后的元數(shù)據(jù)檢索所需數(shù)據(jù)的信息。
(5)數(shù)據(jù)解密模塊5,用于從所述云存儲服務(wù)模塊2下載所述加密后的密文數(shù)據(jù),進(jìn)行解密,以供終端所在用戶查看。
其中,所述預(yù)設(shè)的訪問控制模型為基于密文策略的屬性加密訪問控制模型。
所述對明文信息進(jìn)行預(yù)處理,包括:根據(jù)系統(tǒng)預(yù)先定義的訪問結(jié)構(gòu)樹創(chuàng)建多個(gè)用戶屬性集,通過碼分復(fù)用編碼用戶屬主客戶端上的明文信息,根據(jù)所述訪問結(jié)構(gòu)樹將編碼后的明文信息分為N個(gè)訪問級別,N的取值范圍為[4,8]。
所述數(shù)據(jù)加密模塊3對預(yù)處理后的明文信息進(jìn)行三重加密,得到三重加密密文,并采用數(shù)字信封技術(shù)對三重加密密文進(jìn)行封裝后存儲到所述云存儲服務(wù)模塊2。
其中,所述數(shù)據(jù)加密模塊3包括:
依次連接的明文加密單元、密鑰加密單元和重加密單元;
所述明文加密單元用于對預(yù)處理后的明文信息m采用由用戶屬主選取的對稱密鑰Km進(jìn)行加密,得到密文Cm:
所述密鑰加密單元用于采用由用戶屬主定義的訪問策略樹對所述對稱密鑰Km進(jìn)行加密,得到密鑰密文Cm′:
其中,T表示所述訪問策略樹,任意選取q∈Zp且q=px(0),X表示所有訪問策略樹的所有葉子節(jié)點(diǎn)的集合;是自定義的一個(gè)公開映射函數(shù);
所述重加密單元對所述密鑰密文進(jìn)行加密,加密時(shí)所述云存儲服務(wù)模塊2為每一個(gè)用戶組屬性Gi隨機(jī)選擇一個(gè)用戶組屬性密鑰為每一個(gè)用戶組屬性Gi建立三重加密密文C″m,并利用共享會話密鑰來加密用戶組屬性密鑰進(jìn)而得到對應(yīng)于三重加密密文C″m的一個(gè)消息頭Hdr:
式中,kgs表示共享會話密鑰。
其中,所述共享會話密鑰采用公鑰加密體制及密鑰協(xié)商協(xié)議生成,具體為:所述云存儲服務(wù)模塊2將自己的身份及訪問用戶的身份發(fā)送給數(shù)據(jù)加密模塊,數(shù)據(jù)加密模塊向云存儲服務(wù)模塊2發(fā)送一個(gè)第一公鑰證書,云存儲服務(wù)模塊2進(jìn)而為訪問用戶生成一個(gè)會話密鑰,并用自身的秘密鑰和公開鑰加密后,連同與秘密鑰對應(yīng)的第二公鑰證書及與公開鑰對應(yīng)的第一公鑰證書一并發(fā)送給訪問用戶,所述秘密鑰和公開鑰利用系統(tǒng)公開參數(shù)生成。
所述數(shù)據(jù)解密模塊5將云存儲服務(wù)模塊2上的封裝好的三重加密密文解密得到明文信息,所述數(shù)據(jù)解密模塊5包括:
1)用戶組屬性密鑰解密子模塊,用于在訪問用戶訪問所述封裝好的三重加密密文時(shí)對用戶組屬性密鑰進(jìn)行解密,解密時(shí)由云存儲服務(wù)模塊2返回所述封裝好的三重加密密文及其對應(yīng)的消息頭,利用共享會話密鑰kgs解密得到用戶組屬性密鑰
2)三重加密密文解密子模塊,用于對三重加密密文C″m進(jìn)行解密;
3)密鑰密文解密子模塊,用于對密鑰密文Cm′進(jìn)行解密:
4)密文解密子模塊,用于對密文Cm進(jìn)行解密;
5)解碼子模塊,用于采用碼分復(fù)用對所述明文編碼信息進(jìn)行解碼,得到相應(yīng)的明文信息。
本實(shí)施例通過訪問身份管理模塊1、數(shù)據(jù)檢索模塊4、數(shù)據(jù)加密模塊3和數(shù)據(jù)解密模塊5的多重防護(hù),可有效防止云存儲服務(wù)模塊2數(shù)據(jù)的泄露,提高云存儲服務(wù)模塊2數(shù)據(jù)的安全性,具有較強(qiáng)的易用性和實(shí)用性;設(shè)置的數(shù)據(jù)加密模塊3對明文進(jìn)行三重加密,得到三重加密密文,并采用數(shù)字信封技術(shù)對三重加密密文進(jìn)行封裝后存儲到所述云存儲服務(wù)模塊2,并設(shè)置相應(yīng)的數(shù)據(jù)解密模塊5,不僅能實(shí)現(xiàn)細(xì)粒度訪問控制,還能有效減輕用戶屬主與用戶加密、解密的計(jì)算開銷;根據(jù)訪問結(jié)構(gòu)樹將編碼后的明文信息分為不同的訪問級別,提高了訪問控制的效率,利用碼分復(fù)用技術(shù)編碼明文信息,減少了密文數(shù)據(jù)的存儲空間,提升了系統(tǒng)的整體性能;其中設(shè)定訪問級別個(gè)數(shù)N=7,密文存儲空間相對減少了3.5%。
實(shí)施例5
參見圖1、圖2,本實(shí)施例的數(shù)據(jù)加密保護(hù)系統(tǒng),包括訪問身份管理模塊1、云存儲服務(wù)模塊2、數(shù)據(jù)加密模塊3、數(shù)據(jù)檢索模塊4、數(shù)據(jù)解密模塊5:
(1)訪問身份管理模塊1,用于為訪問用戶提供身份申請、身份注銷以及身份認(rèn)證;
(2)云存儲服務(wù)模塊2,用于為訪問用戶提供數(shù)據(jù)存儲服務(wù),包括用于存儲數(shù)據(jù)的云存儲服務(wù)模塊和用于控制訪問用戶訪問云存儲服務(wù)模塊2的數(shù)據(jù)的訪問控制器,所述訪問控制器通過預(yù)設(shè)的訪問控制模型進(jìn)行訪問控制;
(3)數(shù)據(jù)加密模塊3,用于對明文信息進(jìn)行預(yù)處理、加密,并將加密后的密文數(shù)據(jù)存儲到所述云存儲服務(wù)模塊2;
(4)數(shù)據(jù)檢索模塊4,用于為云存儲服務(wù)模塊2的每個(gè)密文數(shù)據(jù)建立元數(shù)據(jù),并對所述元數(shù)據(jù)進(jìn)行加密,以便于登錄云存儲服務(wù)模塊2的用戶通過加密后的元數(shù)據(jù)檢索所需數(shù)據(jù)的信息。
(5)數(shù)據(jù)解密模塊5,用于從所述云存儲服務(wù)模塊2下載所述加密后的密文數(shù)據(jù),進(jìn)行解密,以供終端所在用戶查看。
其中,所述預(yù)設(shè)的訪問控制模型為基于密文策略的屬性加密訪問控制模型。
所述對明文信息進(jìn)行預(yù)處理,包括:根據(jù)系統(tǒng)預(yù)先定義的訪問結(jié)構(gòu)樹創(chuàng)建多個(gè)用戶屬性集,通過碼分復(fù)用編碼用戶屬主客戶端上的明文信息,根據(jù)所述訪問結(jié)構(gòu)樹將編碼后的明文信息分為N個(gè)訪問級別,N的取值范圍為[4,8]。
所述數(shù)據(jù)加密模塊3對預(yù)處理后的明文信息進(jìn)行三重加密,得到三重加密密文,并采用數(shù)字信封技術(shù)對三重加密密文進(jìn)行封裝后存儲到所述云存儲服務(wù)模塊2。
其中,所述數(shù)據(jù)加密模塊3包括:
依次連接的明文加密單元、密鑰加密單元和重加密單元;
所述明文加密單元用于對預(yù)處理后的明文信息m采用由用戶屬主選取的對稱密鑰Km進(jìn)行加密,得到密文Cm:
所述密鑰加密單元用于采用由用戶屬主定義的訪問策略樹對所述對稱密鑰Km進(jìn)行加密,得到密鑰密文Cm′:
其中,T表示所述訪問策略樹,任意選取q∈Zp且q=px(0),X表示所有訪問策略樹的所有葉子節(jié)點(diǎn)的集合;是自定義的一個(gè)公開映射函數(shù);
所述重加密單元對所述密鑰密文進(jìn)行加密,加密時(shí)所述云存儲服務(wù)模塊2為每一個(gè)用戶組屬性Gi隨機(jī)選擇一個(gè)用戶組屬性密鑰為每一個(gè)用戶組屬性Gi建立三重加密密文C″m,并利用共享會話密鑰來加密用戶組屬性密鑰進(jìn)而得到對應(yīng)于三重加密密文C″m的一個(gè)消息頭Hdr:
式中,kgs表示共享會話密鑰。
其中,所述共享會話密鑰采用公鑰加密體制及密鑰協(xié)商協(xié)議生成,具體為:所述云存儲服務(wù)模塊2將自己的身份及訪問用戶的身份發(fā)送給數(shù)據(jù)加密模塊,數(shù)據(jù)加密模塊向云存儲服務(wù)模塊2發(fā)送一個(gè)第一公鑰證書,云存儲服務(wù)模塊2進(jìn)而為訪問用戶生成一個(gè)會話密鑰,并用自身的秘密鑰和公開鑰加密后,連同與秘密鑰對應(yīng)的第二公鑰證書及與公開鑰對應(yīng)的第一公鑰證書一并發(fā)送給訪問用戶,所述秘密鑰和公開鑰利用系統(tǒng)公開參數(shù)生成。
所述數(shù)據(jù)解密模塊5將云存儲服務(wù)模塊2上的封裝好的三重加密密文解密得到明文信息,所述數(shù)據(jù)解密模塊5包括:
1)用戶組屬性密鑰解密子模塊,用于在訪問用戶訪問所述封裝好的三重加密密文時(shí)對用戶組屬性密鑰進(jìn)行解密,解密時(shí)由云存儲服務(wù)模塊2返回所述封裝好的三重加密密文及其對應(yīng)的消息頭,利用共享會話密鑰kgs解密得到用戶組屬性密鑰
2)三重加密密文解密子模塊,用于對三重加密密文C″m進(jìn)行解密;
3)密鑰密文解密子模塊,用于對密鑰密文Cm′進(jìn)行解密:
4)密文解密子模塊,用于對密文Cm進(jìn)行解密;
5)解碼子模塊,用于采用碼分復(fù)用對所述明文編碼信息進(jìn)行解碼,得到相應(yīng)的明文信息。
本實(shí)施例通過訪問身份管理模塊1、數(shù)據(jù)檢索模塊4、數(shù)據(jù)加密模塊3和數(shù)據(jù)解密模塊5的多重防護(hù),可有效防止云存儲服務(wù)模塊2數(shù)據(jù)的泄露,提高云存儲服務(wù)模塊2數(shù)據(jù)的安全性,具有較強(qiáng)的易用性和實(shí)用性;設(shè)置的數(shù)據(jù)加密模塊3對明文進(jìn)行三重加密,得到三重加密密文,并采用數(shù)字信封技術(shù)對三重加密密文進(jìn)行封裝后存儲到所述云存儲服務(wù)模塊2,并設(shè)置相應(yīng)的數(shù)據(jù)解密模塊5,不僅能實(shí)現(xiàn)細(xì)粒度訪問控制,還能有效減輕用戶屬主與用戶加密、解密的計(jì)算開銷;根據(jù)訪問結(jié)構(gòu)樹將編碼后的明文信息分為不同的訪問級別,提高了訪問控制的效率,利用碼分復(fù)用技術(shù)編碼明文信息,減少了密文數(shù)據(jù)的存儲空間,提升了系統(tǒng)的整體性能;其中設(shè)定訪問級別個(gè)數(shù)N=8,密文存儲空間相對減少了2.5%。
最后應(yīng)當(dāng)說明的是,以上實(shí)施例僅用以說明本發(fā)明的技術(shù)方案,而非對本發(fā)明保護(hù)范圍的限制,盡管參照較佳實(shí)施例對本發(fā)明作了詳細(xì)地說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解,可以對本發(fā)明的技術(shù)方案進(jìn)行修改或者等同替換,而不脫離本發(fā)明技術(shù)方案的實(shí)質(zhì)和范圍。