專利名稱:數(shù)據(jù)加密保護(hù)方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信領(lǐng)域,具體而言,涉及一種數(shù)據(jù)加密保護(hù)方法及系統(tǒng)。
背景技術(shù):
云計(jì)算作為新一代的技術(shù)變革,其發(fā)展受到各行各業(yè)的關(guān)注,隨著云計(jì)算的發(fā)展,隨之又出現(xiàn)了云存儲(chǔ)。云存儲(chǔ)是在云計(jì)算(cloud computing)的概念上延伸和發(fā)展出來的一個(gè)新的概念,是指通過集群應(yīng)用、網(wǎng)格技術(shù)或分布式文件系統(tǒng)等功能,將網(wǎng)絡(luò)中大量各種不同類型的存儲(chǔ)設(shè)備通過應(yīng)用軟件集合起來協(xié)同工作,共同對(duì)外提供數(shù)據(jù)存儲(chǔ)和業(yè)務(wù)訪問功能的一個(gè)系統(tǒng)。當(dāng)云計(jì)算系統(tǒng)運(yùn)算和處理的核心是大量數(shù)據(jù)的存儲(chǔ)和管理時(shí),云計(jì)算系統(tǒng)中就需要配置大量的存儲(chǔ)設(shè)備,那么,云計(jì)算系統(tǒng)就轉(zhuǎn)變成為一個(gè)云存儲(chǔ)系統(tǒng)。所以,云存儲(chǔ)是一個(gè)以數(shù)據(jù)存儲(chǔ)和管理為核心的云計(jì)算系統(tǒng)。云存儲(chǔ)能夠更方便實(shí)現(xiàn)數(shù)據(jù)共享,沒有地域限制,只需要能夠連接互聯(lián)網(wǎng)、就能夠隨時(shí)隨地訪問數(shù)據(jù),就可以使用云存儲(chǔ)系統(tǒng)。當(dāng)今最具代表性的云存儲(chǔ)服務(wù)有GoogleDrive、Dropbox 和 Sky Drive。云存儲(chǔ)中必須具備的幾個(gè)基本特性:機(jī)密性:云存儲(chǔ)提供商不能知道用戶的信息;完整性:用戶能夠察覺到自己的信息被非法篡改過;可行性:用戶可以隨時(shí)隨地的,在有效的時(shí)間內(nèi)訪問自己的數(shù)據(jù);可靠性:有效的備份用戶的數(shù)據(jù),防止信息的丟失;可共享性:用戶可以跟可信的用戶共享自己的數(shù)據(jù)。在使用云存儲(chǔ)服務(wù)時(shí),需要考慮到數(shù)據(jù)的安全性、用戶信息泄露,或是不可信的第三方有可能會(huì)出售用戶數(shù)據(jù)來獲取利益,為了防止這些情況,采用加密算法對(duì)數(shù)據(jù)加密存儲(chǔ)是有必要的。采用傳統(tǒng)的非對(duì)稱密碼算法加密時(shí),用戶A用自己的私鑰加密用戶數(shù)據(jù),將密文存儲(chǔ)在云服務(wù)器上,如果用戶B需要訪問這些數(shù)據(jù),那么A必須將加密的私鑰交給B,B用A的私鑰解密密文獲取明文,這樣B就可以查看A加密后的所有信息,包括那些A不希望B看到的敏感信息,不能實(shí)現(xiàn)細(xì)粒度訪問控制。也即:使用加密算法對(duì)云存儲(chǔ)中的數(shù)據(jù)加密存儲(chǔ),如果有用戶需要訪問加密后的數(shù)據(jù),必須使用解密密鑰對(duì)加密的數(shù)據(jù)進(jìn)行解密,那么他可以訪問解密后的所有數(shù)據(jù),在多個(gè)用戶間數(shù)據(jù)共享的情況下不能控制用戶的訪問權(quán)限。另一種解決云存儲(chǔ)安全的方法是通過一個(gè)訪問控制服務(wù)器來控制用戶對(duì)云存儲(chǔ)中數(shù)據(jù)的訪問權(quán)限,首先對(duì)系統(tǒng)中所有用戶針對(duì)各種資源分配訪問權(quán)限,根據(jù)用戶的訪問權(quán)限控制用戶對(duì)數(shù)據(jù)的訪問。這種方法的安全性完全由控制訪問服務(wù)器來保證,如果控制訪問服務(wù)器出問題,數(shù)據(jù)安全性也得不到任何保證。云存儲(chǔ)服務(wù)一個(gè)重要的目標(biāo)就是實(shí)現(xiàn)用戶數(shù)據(jù)共享,如果在云存儲(chǔ)中的數(shù)據(jù)采用非對(duì)稱加密算法加密,要將數(shù)據(jù)共享給其他用戶,這時(shí)這些用戶必須是確定的,在密文中必須為每個(gè)用戶都增加信息,用戶通過這段信息解密得到加密密鑰,這段信息是用解密者的公鑰加密的會(huì)話密鑰。圖1是根據(jù)相關(guān)技術(shù)的加密數(shù)據(jù)及實(shí)現(xiàn)數(shù)據(jù)共享的流程示意圖,如圖1所示,傳統(tǒng)的加密及實(shí)現(xiàn)信息共享的實(shí)現(xiàn)方式是:選擇一個(gè)會(huì)話密鑰K對(duì)明文M加密得到密文C,然后再用每個(gè)用戶的公鑰分別加密會(huì)話密鑰K,將密文C和加密后的會(huì)話密鑰K給每個(gè)用戶發(fā)送一份,用戶用自己的私鑰S解密得到會(huì)話密鑰K,然后再用會(huì)話密鑰K解密C得到明文M。但是,這種實(shí)現(xiàn)多用戶間信息共享的方式有兩個(gè)明顯的缺陷:首先,共享的用戶必須是確定的,而且要用每個(gè)用戶的公鑰加密會(huì)話密鑰。其次,如果共享的用戶數(shù)量比較大,則額外需要共享的會(huì)話密鑰的消息就很大,并且和用戶數(shù)呈線性增長(zhǎng),導(dǎo)致通訊效率很低。針對(duì)相關(guān)技術(shù)中云存儲(chǔ)系統(tǒng)中的多用戶間加密信息共享效率低的問題,目前尚未提出有效的解決方案。
發(fā)明內(nèi)容
本發(fā)明提供了一種數(shù)據(jù)加密保護(hù)方法及系統(tǒng),以至少解決相關(guān)技術(shù)中云存儲(chǔ)系統(tǒng)中的多用戶間加密信息共享效率低的問題。根據(jù)本發(fā)明的一個(gè)方面,提供了一種數(shù)據(jù)加密保護(hù)方法,包括:加密明文和指定的訪問結(jié)構(gòu),得到密文,其中,所述訪問結(jié)構(gòu)用于表示有權(quán)限解密所述密文的用戶;解密所述密文,得到所述明文和所述訪問結(jié)構(gòu)。優(yōu)選地,解密所述密文包括:利用當(dāng)前用戶的私鑰計(jì)算會(huì)話密鑰,其中,所述會(huì)話密鑰用于解密所述密文;如果計(jì)算出所述會(huì)話密鑰,利用所述會(huì)話密鑰解密所述密文。優(yōu)選地,在解密所述密文之前,所述方法還包括:根據(jù)所述當(dāng)前用戶的屬性集和系統(tǒng)的主私鑰生成所述當(dāng)前用戶的私鑰。優(yōu)選地,在根據(jù)所述當(dāng)前用戶的所述屬性集和系統(tǒng)的主私鑰生成所述當(dāng)前用戶的私鑰之前,所述方法還包括:驗(yàn)證所述當(dāng)前用戶的屬性集屬實(shí)。優(yōu)選地,在解密所述密文,得到所述明文和所述訪問結(jié)構(gòu)之后,所述方法還包括:加密所述訪問結(jié)構(gòu)和所述當(dāng)前用戶編輯后的明文;將加密后得到的密文發(fā)送至存儲(chǔ)器進(jìn)行保存。優(yōu)選地,所述數(shù)據(jù)加密保護(hù)方法應(yīng)用于云存儲(chǔ)系統(tǒng)。根據(jù)本發(fā)明的另一方面,提供了一種數(shù)據(jù)加密保護(hù)系統(tǒng),包括:加密模塊,用于加密明文和指定的訪問結(jié)構(gòu),得到密文,其中,所述訪問結(jié)構(gòu)用于表示有權(quán)限解密所述密文的用戶;解密模塊,用于解密所述密文,得到所述明文和所述訪問結(jié)構(gòu)。優(yōu)選地,所述解密模塊包括:計(jì)算單元,用于利用當(dāng)前用戶的私鑰計(jì)算會(huì)話密鑰,其中,所述會(huì)話密鑰用于解密所述密文;解密單元,用于在計(jì)算出所述會(huì)話密鑰的情況下,利用所述會(huì)話密鑰解密所述密文。優(yōu)選地,所述系統(tǒng)還包括:私鑰生成模塊,用于根據(jù)所述當(dāng)前用戶的屬性集和系統(tǒng)的主私鑰生成所述當(dāng)前用戶的私鑰。優(yōu)選地,所述系統(tǒng)還包括:驗(yàn)證模塊,用于驗(yàn)證所述當(dāng)前用戶的屬性集屬實(shí)。優(yōu)選地,所述加密模塊,還用于加密所述訪問結(jié)構(gòu)和所述當(dāng)前用戶編輯后的明文;所述系統(tǒng)還包括:發(fā)送模塊,用于將加密后得到的密文發(fā)送至存儲(chǔ)器進(jìn)行保存。優(yōu)選地,所述數(shù)據(jù)加密保護(hù)系統(tǒng)應(yīng)用于云存儲(chǔ)系統(tǒng)。通過本發(fā)明,改進(jìn)基于密文策略的屬性加密(Ciphertext-PolicyAttribute-Based Encryption,簡(jiǎn)稱為CP-ABE)算法,將訪問結(jié)構(gòu)作為消息的一部分一起加密,解決了云存儲(chǔ)系統(tǒng)中的多用戶間加密信息共享效率低的問題,既能保證數(shù)據(jù)的安全性,也能在較低的計(jì)算開銷和通訊開銷下實(shí)現(xiàn)多用戶間的信息共享,還實(shí)現(xiàn)了對(duì)云存儲(chǔ)系統(tǒng)中存儲(chǔ)文件的細(xì)粒度訪問控制。
此處所說明的附圖用來提供對(duì)本發(fā)明的進(jìn)一步理解,構(gòu)成本申請(qǐng)的一部分,本發(fā)明的示意性實(shí)施例及其說明用于解釋本發(fā)明,并不構(gòu)成對(duì)本發(fā)明的不當(dāng)限定。在附圖中:圖1是根據(jù)相關(guān)技術(shù)的加密數(shù)據(jù)及實(shí)現(xiàn)數(shù)據(jù)共享的流程示意圖;圖2是根據(jù)本發(fā)明實(shí)施例的數(shù)據(jù)加密保護(hù)方法的流程圖;圖3是根據(jù)本發(fā)明實(shí)施例的數(shù)據(jù)加密保護(hù)系統(tǒng)的結(jié)構(gòu)框圖;圖4是根據(jù)本發(fā)明實(shí)施例的數(shù)據(jù)加密保護(hù)系統(tǒng)的優(yōu)選結(jié)構(gòu)框圖一;圖5是根據(jù)本發(fā)明實(shí)施例的數(shù)據(jù)加密保護(hù)系統(tǒng)的優(yōu)選結(jié)構(gòu)框圖二 ;圖6是根據(jù)本發(fā)明優(yōu)選實(shí)施例的數(shù)據(jù)加密保護(hù)系統(tǒng)的結(jié)構(gòu)及其工作流程示意圖;圖7是根據(jù)本發(fā)明優(yōu)選實(shí)施例的數(shù)據(jù)加密保護(hù)方法中私鑰生成的流程圖;圖8是根據(jù)本發(fā)明優(yōu)選實(shí)施例的數(shù)據(jù)加密保護(hù)方法中訪問結(jié)構(gòu)的二叉樹表示的示意圖;圖9是根據(jù)本發(fā)明優(yōu)選實(shí)施例的數(shù)據(jù)加密的流程圖;圖10是根據(jù)本發(fā)明優(yōu)選實(shí)施例的數(shù)據(jù)解密和共享的流程圖;圖11是根據(jù)本發(fā)明優(yōu)選實(shí)施例的數(shù)據(jù)加密保護(hù)方法的總流程圖。
具體實(shí)施例方式需要說明的是,在不沖突的情況下,本申請(qǐng)中的實(shí)施例及實(shí)施例中的特征可以相互組合。下面將參考附圖并結(jié)合實(shí)施例來詳細(xì)說明本發(fā)明。本發(fā)明實(shí)施例提供了一種數(shù)據(jù)加密保護(hù)方法,圖2是根據(jù)本發(fā)明實(shí)施例的數(shù)據(jù)加密保護(hù)方法的流程圖,如圖2所示,包括如下的步驟S202至步驟S204。步驟S202,加密明文和指定的訪問結(jié)構(gòu),得到密文,其中,訪問結(jié)構(gòu)用于表示有權(quán)限解密該密文的用戶。步驟S204,解密上述密文,得到明文和訪問結(jié)構(gòu)。通過上述步驟,改進(jìn)CP-ABE,將訪問結(jié)構(gòu)作為消息的一部分一起加密,解決了云存儲(chǔ)系統(tǒng)中的多用戶間加密信息共享效率低的問題,既能保證數(shù)據(jù)的安全性,也能在較低的計(jì)算開銷和通訊開銷下實(shí)現(xiàn)多用戶間的信息共享,還實(shí)現(xiàn)了對(duì)云存儲(chǔ)系統(tǒng)中存儲(chǔ)文件的細(xì)粒度訪問控制。在一個(gè)優(yōu)選實(shí)施方式中,步驟S204中解密密文包括:利用當(dāng)前用戶的私鑰計(jì)算會(huì)話密鑰,其中,會(huì)話密鑰用于解密密文;如果計(jì)算出會(huì)話密鑰,利用會(huì)話密鑰解密密文。優(yōu)選地,在解密所述密文之前,上述方法還包括:根據(jù)當(dāng)前用戶的屬性集和系統(tǒng)的主私鑰生成當(dāng)前用戶的私鑰。需要說明的是,每個(gè)用戶都有一組屬性,根據(jù)用戶的屬性為每個(gè)用戶生成對(duì)應(yīng)的私鑰,加密的時(shí)候指定一個(gè)訪問結(jié)構(gòu)來描述哪些用戶可以解密得到明文消息,即用戶的屬性如果滿足加密時(shí)指定的訪問結(jié)構(gòu),則可以解密得到明文和訪問結(jié)構(gòu),否則不能解密。在一個(gè)優(yōu)選實(shí)施方式中,在根據(jù)當(dāng)前用戶的屬性集和系統(tǒng)的主私鑰生成當(dāng)前用戶的私鑰之前,還需要驗(yàn)證當(dāng)前用戶的屬性集是否屬實(shí)。如果屬實(shí),則進(jìn)入用戶私鑰生成的流程,如果不屬實(shí),則驗(yàn)證失敗,返回消息給用戶。本優(yōu)選實(shí)施方式在用戶的屬性集屬實(shí)的情況下,才生成私鑰,可以保證生成的私鑰的準(zhǔn)確性。解密密文成功的用戶可以根據(jù)其需求對(duì)得到的明文進(jìn)行編輯,需要對(duì)編輯后的明文進(jìn)行加密,并存儲(chǔ)至云存儲(chǔ)系統(tǒng),以便于其他用戶共享編輯后的數(shù)據(jù),可以通過以下步驟實(shí)現(xiàn):在解密密文,得到明文和訪問結(jié)構(gòu)之后,加密訪問結(jié)構(gòu)和當(dāng)前用戶編輯后的明文;將加密后得到的密文發(fā)送至存儲(chǔ)器進(jìn)行保存。實(shí)際上,此處的加密與之前加密原始明文的過程是類似的,利用同一加密模塊即可實(shí)現(xiàn)。對(duì)于云存儲(chǔ)系統(tǒng)而言,將編輯后的數(shù)據(jù)重新加密保存在云存儲(chǔ)服務(wù)器上供其它用戶共享。優(yōu)選地,上述數(shù)據(jù)加密保護(hù)方法可以應(yīng)用于云存儲(chǔ)系統(tǒng)。需要說明的是,本方法是對(duì)CP-ABE算法的改進(jìn),改進(jìn)點(diǎn)在于將訪問結(jié)構(gòu)作為消息的一部分一起加密,在上述方法中,具體如何實(shí)現(xiàn)加密、解密以及用戶私鑰的生成都是按照CP-ABE算法實(shí)現(xiàn)的,并不是本發(fā)明所述數(shù)據(jù)加密保護(hù)方法關(guān)注的重點(diǎn)。本發(fā)明實(shí)施例還提供了一種數(shù)據(jù)加密保護(hù)系統(tǒng),圖3是根據(jù)本發(fā)明實(shí)施例的數(shù)據(jù)加密保護(hù)系統(tǒng)的結(jié)構(gòu)框圖,如圖3所示,該數(shù)據(jù)加密保護(hù)系統(tǒng)包括:加密模塊32和解密模塊34。下面對(duì)其結(jié)構(gòu)進(jìn)行詳細(xì)描述。加密模塊32,用于加密明文和指定的訪問結(jié)構(gòu),得到密文,其中,訪問結(jié)構(gòu)用于表示有權(quán)限解密該密文的用戶;解密模塊34,耦合至加密模塊32,用于解密上述密文,得到明文和訪問結(jié)構(gòu)。通過上述數(shù)據(jù)加密保護(hù)系統(tǒng),改進(jìn)CP-ABE,加密模塊12將訪問結(jié)構(gòu)作為消息的一部分一起加密,解決了云存儲(chǔ)系統(tǒng)中的多用戶間加密信息共享效率低的問題,既能保證數(shù)據(jù)的安全性,也能在較低的計(jì)算開銷和通訊開銷下實(shí)現(xiàn)多用戶間的信息共享,還實(shí)現(xiàn)了對(duì)云存儲(chǔ)系統(tǒng)中存儲(chǔ)文件的細(xì)粒度訪問控制。如圖4所示,解密模塊34包括:計(jì)算單元342,用于利用當(dāng)前用戶的私鑰計(jì)算會(huì)話密鑰,其中,會(huì)話密鑰用于解密密文;解密單元344,耦合至計(jì)算單元342,用于在計(jì)算出會(huì)話密鑰的情況下,利用會(huì)話密鑰解密密文。如圖5所示,上述系統(tǒng)還包括:私鑰生成模塊36,耦合至解密模塊34,用于根據(jù)當(dāng)前用戶的屬性集和系統(tǒng)的主私鑰生成當(dāng)前用戶的私鑰。優(yōu)選地,上述系統(tǒng)還包括:驗(yàn)證模塊38,耦合至私鑰生成模塊36,用于驗(yàn)證當(dāng)前用戶的屬性集屬實(shí)。優(yōu)選地,加密模塊32還用于加密訪問結(jié)構(gòu)和當(dāng)前用戶編輯后的明文;上述系統(tǒng)還包括:發(fā)送模塊39 (圖中未示出),耦合至加密模塊32,用于將加密后得到的密文發(fā)送至存儲(chǔ)器進(jìn)行保存。優(yōu)選地,上述數(shù)據(jù)加密保護(hù)系統(tǒng)應(yīng)用于云存儲(chǔ)系統(tǒng)。需要說明的是,裝置實(shí)施例中描述的數(shù)據(jù)加密保護(hù)系統(tǒng)對(duì)應(yīng)于上述的方法實(shí)施例,其具體的實(shí)現(xiàn)過程在方法實(shí)施例中已經(jīng)進(jìn)行過詳細(xì)說明,在此不再贅述。為了使本發(fā)明的技術(shù)方案和實(shí)現(xiàn)方法更加清楚,下面將結(jié)合優(yōu)選的實(shí)施例對(duì)其實(shí)現(xiàn)過程進(jìn)行詳細(xì)描述。根據(jù)本發(fā)明優(yōu)選實(shí)施例,提供了一種數(shù)據(jù)加密保護(hù)方法及系統(tǒng),該系統(tǒng)解決了云存儲(chǔ)中數(shù)據(jù)的加密保護(hù)增強(qiáng)數(shù)據(jù)安全性的問題,保證了云存儲(chǔ)系統(tǒng)中數(shù)據(jù)的機(jī)密性,又能實(shí)現(xiàn)細(xì)粒度訪問控制,為更安全地實(shí)現(xiàn)數(shù)據(jù)共享提供了一種可行的方法。圖6是根據(jù)本發(fā)明優(yōu)選實(shí)施例的數(shù)據(jù)加密保護(hù)系統(tǒng)的結(jié)構(gòu)及其工作流程示意圖,如圖6所示,該系統(tǒng)主要包括如下模塊:系統(tǒng)初始化模塊602,用于生成系統(tǒng)的主私鑰(Master Key,簡(jiǎn)稱為MK)和公鑰(Public Key,簡(jiǎn)稱為 PK)。屬性認(rèn)證模塊604 (實(shí)現(xiàn)了上述驗(yàn)證模塊38的功能),又稱為屬性驗(yàn)證中心(Attribute Certificate Authority,簡(jiǎn)稱為ACA),用于負(fù)責(zé)驗(yàn)證用戶的屬性是否屬實(shí)。私鑰生成模塊(Key Produce Group,簡(jiǎn)稱為KPG,實(shí)現(xiàn)了上述私鑰生成模塊36的功能)606,用于根據(jù)輸入的系統(tǒng)主私鑰MK和屬性集S,生成該屬性對(duì)應(yīng)的私鑰SK。數(shù)據(jù)加密模塊608 (實(shí)現(xiàn)了上述加密模塊32的功能),用于根據(jù)輸入的公鑰PKj息m、解密者的屬性需要滿足的訪問結(jié)構(gòu)Tb,輸出密文。數(shù)據(jù)解密模塊610 (實(shí)現(xiàn)了上述解密模塊34的功能),用于根據(jù)輸入的私鑰SKB(SP用戶B的私鑰)和消息m對(duì)應(yīng)的密文,在用戶B的屬性滿足訪問結(jié)構(gòu)Tb的情況下,解密上述密文,并成功輸出消息m。上述優(yōu)選實(shí)施例采用了 CP-ABE算法對(duì)數(shù)據(jù)進(jìn)行加密存儲(chǔ),既保證了數(shù)據(jù)的加密存儲(chǔ),又能夠?qū)崿F(xiàn)細(xì)粒度訪問控制,尤其是在多用戶間數(shù)據(jù)共享的情況下能更好的保護(hù)數(shù)據(jù)安全性。具體地,云服務(wù)器(即云存儲(chǔ)系統(tǒng)的數(shù)據(jù)存儲(chǔ)服務(wù)器)中的所有數(shù)據(jù)采用CP-ABE加密存儲(chǔ),加密時(shí)指定了訪問該數(shù)據(jù)的用戶的屬性必須滿足的訪問結(jié)構(gòu),只要用戶的屬性滿足加密時(shí)所指定的訪問結(jié)構(gòu)就可以解密密文得到明文,解決多用戶下數(shù)據(jù)安全共享的問題。特別是在大用戶群中的數(shù)據(jù)共享比傳統(tǒng)的有更低的通信開銷。較優(yōu)地,上述優(yōu)選實(shí)施例中的各個(gè)模塊的工作流程如下:步驟I,系統(tǒng)初始化模塊602生成系統(tǒng)的公鑰PK和系統(tǒng)主私鑰MK。步驟2,屬性認(rèn)證模塊604負(fù)責(zé)對(duì)用戶的屬性組S進(jìn)行驗(yàn)證,確認(rèn)用戶提供的屬性組是否屬實(shí)。步驟3,在屬性認(rèn)證模塊604認(rèn)證用戶的屬性組S屬實(shí)后,向私鑰生成模塊606發(fā)送該用戶的屬性組S,私鑰生成模塊606使用系統(tǒng)初始化模塊602生成的MK,生成該屬性組S對(duì)應(yīng)的私鑰SK返回給屬性認(rèn)證模塊604。步驟4,將需要加密保護(hù)的數(shù)據(jù)M和解密者的屬性必須滿足的訪問結(jié)構(gòu)T輸入到加密模塊608,然后在加密模塊608中使用系統(tǒng)初始化模塊602生成的PK對(duì)數(shù)據(jù)M以及上述的訪問結(jié)構(gòu)T使用CP-ABE算法加密,最終輸出加密后得到的密文,存儲(chǔ)在云服務(wù)器上。步驟5,在用戶需要訪問云存儲(chǔ)中的數(shù)據(jù)時(shí),需要向解密模塊610輸入自己的私鑰,如果生成該用戶私鑰時(shí)的屬性滿足數(shù)據(jù)M加密時(shí)指定的訪問結(jié)構(gòu),則解密模塊610解密密文得到明文后,返回給用戶。為了實(shí)現(xiàn)多用戶間的數(shù)據(jù)共享,在解密獲取明文之后還可以,利用密文中的訪問結(jié)構(gòu)再次對(duì)編輯后的數(shù)據(jù)加密存儲(chǔ)在云服務(wù)器中。通過上述方式可以方便實(shí)現(xiàn)多用戶之間的數(shù)據(jù)共享,并且比傳統(tǒng)方式更安全,進(jìn)一步提高了通信開銷的利用率。
圖7是根據(jù)本發(fā)明優(yōu)選實(shí)施例的數(shù)據(jù)加密保護(hù)方法中私鑰生成的流程圖,如圖7所示,在系統(tǒng)初始化時(shí)會(huì)產(chǎn)生系統(tǒng)公鑰PK和系統(tǒng)主私鑰MK,并將MK同步給KPG,PK同步給數(shù)據(jù)加密模塊608。在私鑰生成流程中,包括以下步驟:步驟S702,用戶將屬性集(即屬性組)S提交給屬性認(rèn)證中心(即屬性認(rèn)證模塊、屬性驗(yàn)證中心)604進(jìn)行認(rèn)證,如果認(rèn)證失敗,直接返回。步驟S704,在屬性認(rèn)證中心604對(duì)屬性認(rèn)證成功的情況下,將屬性集S發(fā)給私鑰生成模塊606。步驟S706,私鑰生成模塊606計(jì)算屬性集S對(duì)應(yīng)的私鑰SK,并將SK返回給屬性認(rèn)證中心604。步驟S708,屬性認(rèn)證中心604將私鑰SK返回給用戶。因?yàn)榧用軙r(shí)需要指定解密者屬性(屬性集、屬性組)必須滿足的訪問結(jié)構(gòu),這里訪問結(jié)構(gòu)可以由一棵二叉樹表示。圖8是根據(jù)本發(fā)明優(yōu)選實(shí)施例的數(shù)據(jù)加密保護(hù)方法中訪問結(jié)構(gòu)的二叉樹表示的示意圖,如圖8所示,這個(gè)二叉樹的葉子節(jié)點(diǎn)表示屬性,非葉子節(jié)點(diǎn)是邏輯關(guān)系,一般是“與”和“或”的邏輯關(guān)系。圖8所示的訪問結(jié)構(gòu)可以表示為一個(gè)矩陣,如下所示:
權(quán)利要求
1.一種數(shù)據(jù)加密保護(hù)方法,其特征在于包括: 加密明文和指定的訪問結(jié)構(gòu),得到密文,其中,所述訪問結(jié)構(gòu)用于表示有權(quán)限解密所述密文的用戶; 解密所述密文,得到所述明文和所述訪問結(jié)構(gòu)。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,解密所述密文包括: 利用當(dāng)前用戶的私鑰計(jì)算會(huì)話密鑰,其中,所述會(huì)話密鑰用于解密所述密文; 如果計(jì)算出所述會(huì)話密鑰,利用所述會(huì)話密鑰解密所述密文。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,在解密所述密文之前,所述方法還包括: 根據(jù)所述當(dāng)前用戶的屬性集和系統(tǒng)的主私鑰生成所述當(dāng)前用戶的私鑰。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,在根據(jù)所述當(dāng)前用戶的所述屬性集和系統(tǒng)的主私鑰生成所述當(dāng)前用戶的私鑰之前,所述方法還包括: 驗(yàn)證所述當(dāng)前用戶的屬性集屬實(shí)。
5.根據(jù)權(quán)利要求1至4中任一項(xiàng)所述的方法,其特征在于,在解密所述密文,得到所述明文和所述訪問結(jié)構(gòu)之后,所述方法還包括: 加密所述訪問結(jié)構(gòu)和所述當(dāng)前用戶編輯后的明文; 將加密后得到的密文發(fā)送至存儲(chǔ)器進(jìn)行保存。
6.根據(jù)權(quán)利要求1至4中任一項(xiàng)所述的方法,其特征在于,所述數(shù)據(jù)加密保護(hù)方法應(yīng)用于云存儲(chǔ)系統(tǒng)。
7.一種數(shù)據(jù)加密保護(hù)系統(tǒng),其特征在于包括: 加密模塊,用于加密明文和指定的訪問結(jié)構(gòu),得到密文,其中,所述訪問結(jié)構(gòu)用于表示有權(quán)限解密所述密文的用戶; 解密模塊,用于解密所述密文,得到所述明文和所述訪問結(jié)構(gòu)。
8.根據(jù)權(quán)利要求7所述的系統(tǒng),其特征在于,所述解密模塊包括: 計(jì)算單元,用于利用當(dāng)前用戶的私鑰計(jì)算會(huì)話密鑰,其中,所述會(huì)話密鑰用于解密所述密文; 解密單元,用于在計(jì)算出所述會(huì)話密鑰的情況下,利用所述會(huì)話密鑰解密所述密文。
9.根據(jù)權(quán)利要求8所述的系統(tǒng),其特征在于,所述系統(tǒng)還包括: 私鑰生成模塊,用于根據(jù)所述當(dāng)前用戶的屬性集和系統(tǒng)的主私鑰生成所述當(dāng)前用戶的私鑰。
10.根據(jù)權(quán)利要求9所述的系統(tǒng),其特征在于,所述系統(tǒng)還包括: 驗(yàn)證模塊,用于驗(yàn)證所述當(dāng)前用戶的屬性集屬實(shí)。
11.根據(jù)權(quán)利要求7至10中任一項(xiàng)所述的系統(tǒng),其特征在于, 所述加密模塊,還用于加密所述訪問結(jié)構(gòu)和所述當(dāng)前用戶編輯后的明文; 所述系統(tǒng)還包括:發(fā)送模塊,用于將加密后得到的密文發(fā)送至存儲(chǔ)器進(jìn)行保存。
12.根據(jù)權(quán)利要求7至10中任一項(xiàng)所述的系統(tǒng),其特征在于,所述數(shù)據(jù)加密保護(hù)系統(tǒng)應(yīng)用于云存儲(chǔ)系統(tǒng)。
全文摘要
本發(fā)明公開了一種數(shù)據(jù)加密保護(hù)方法及系統(tǒng),該數(shù)據(jù)加密保護(hù)方法包括加密明文和指定的訪問結(jié)構(gòu),得到密文,其中,訪問結(jié)構(gòu)用于表示有權(quán)限解密該密文的用戶;解密上述密文,得到明文和訪問結(jié)構(gòu)。通過本發(fā)明,改進(jìn)基于密文策略的屬性加密CP-ABE算法,將訪問結(jié)構(gòu)作為消息的一部分一起加密,解決了云存儲(chǔ)系統(tǒng)中的多用戶間加密信息共享效率低的問題,既能保證數(shù)據(jù)的安全性,也能在較低的計(jì)算開銷和通訊開銷下實(shí)現(xiàn)多用戶間的信息共享,還實(shí)現(xiàn)了對(duì)云存儲(chǔ)系統(tǒng)中存儲(chǔ)文件的細(xì)粒度訪問控制。
文檔編號(hào)H04L29/08GK103152322SQ20131003288
公開日2013年6月12日 申請(qǐng)日期2013年1月28日 優(yōu)先權(quán)日2013年1月28日
發(fā)明者彭志明 申請(qǐng)人:中興通訊股份有限公司