王繼紅
摘要 隨著云計(jì)算技術(shù)的日益普及,云儲(chǔ)存服務(wù)已得到普遍應(yīng)用。云計(jì)算環(huán)境下,如何保證用戶數(shù)據(jù)的隱私、數(shù)據(jù)的完整性以及數(shù)據(jù)的可控分享,一直是研究的熱點(diǎn)。針對(duì)這一問題,本文對(duì)密文訪問控制、模糊關(guān)鍵字檢索和數(shù)據(jù)完整性驗(yàn)證的經(jīng)典算法進(jìn)行了探討。
關(guān)鍵詞 云計(jì)算;數(shù)據(jù)安全;算法
中圖分類號(hào) TP3 文獻(xiàn)標(biāo)識(shí)碼 A 文章編號(hào) 2095-6363(2016)14-0068-01
云計(jì)算是網(wǎng)格計(jì)算出現(xiàn)之后的又一種新的計(jì)算模式,或者說是一種網(wǎng)格計(jì)算的商業(yè)實(shí)現(xiàn)。由于具有超大規(guī)模、虛擬化、高可靠性、通用型、高可擴(kuò)展性、按需服務(wù)及其廉價(jià)等特點(diǎn),同時(shí)由于云計(jì)算服務(wù)壟斷在云計(jì)算服務(wù)提供商手中,因此,云計(jì)算環(huán)境下數(shù)據(jù)的安全已成為云計(jì)算研究領(lǐng)域關(guān)注的重點(diǎn)。
在云計(jì)算環(huán)境下,基于密碼學(xué)方法實(shí)現(xiàn)的數(shù)據(jù)訪問控制受到普遍關(guān)注,但受帶有時(shí)間或約束的授權(quán)、權(quán)限受限委托等問題的限制。采用某些方法,如面向用戶單獨(dú)驗(yàn)證的數(shù)據(jù)可檢索性證明(POR)方法、公開可驗(yàn)證的數(shù)據(jù)持有證明(PDP)方法等,云用戶只需下載很少數(shù)據(jù),便可以高置信概率判斷遠(yuǎn)端大規(guī)模數(shù)據(jù)的正確性和完整性,從而避免從云端下載大量數(shù)據(jù)而付出的巨大通信代價(jià)。
1云計(jì)算環(huán)境下數(shù)據(jù)安全關(guān)鍵問題的經(jīng)典算法
1.1密文訪問控制算法
1)基于公鑰算法的密文訪問控制算法。公鑰算法的基本原理是:存在加密和解密兩個(gè)一一映射的算法,即,R=E(s,KE),其中,KE為加密密鑰,s為明文,R為密文,E為將明文S采用加密密鑰KF加密為密文R的加密算法,明文s和密文R的長度是不同的;S=D(R,KD),其中,KD為解密密鑰,S為明文,R為密文,D為將密文R采用解密密鑰Kn解密為明文s的解密算法。數(shù)據(jù)發(fā)布者可以將訪問控制策略和數(shù)據(jù)一起發(fā)布到云存儲(chǔ)中。數(shù)據(jù)發(fā)布者采用授權(quán)用戶的公鑰(加密密鑰)對(duì)數(shù)據(jù)解密密鑰進(jìn)行加密,然后存儲(chǔ)于云端。授權(quán)用戶從云端取回密文后,采用其授權(quán)的私鑰(解密密鑰)來解密數(shù)據(jù)解密密鑰。該算法由于大數(shù)運(yùn)算的時(shí)間復(fù)雜度關(guān)系,實(shí)現(xiàn)起來較慢。
2)基于Hash算法的密文訪問控制算法。HASH算法的基本原理是:R=H(s)是一個(gè)多對(duì)一映射的算法,其中,S為明文,R為密文,H為將明文s唯一映射為密文R的算法,且S和R具有相同的長度。由于是多對(duì)一映射,不存在逆映射S=H-1(R)。該算法是通過構(gòu)建偏序的密鑰樹,使密鑰樹中每個(gè)節(jié)點(diǎn)的密鑰都能正向推出其子節(jié)點(diǎn)密鑰,但子節(jié)點(diǎn)密鑰不能反向推出其母節(jié)點(diǎn)的密鑰。基于此,數(shù)據(jù)的加密可通過密鑰樹中不同節(jié)點(diǎn)的密鑰來實(shí)現(xiàn),從而賦予數(shù)據(jù)的不同訪問權(quán)限。該算法中的密鑰生成關(guān)系復(fù)雜,但密鑰管理體系的效率低下。
3)基于CP-ABE算法的密文訪問控制算法。該算法的訪問控制主要由系統(tǒng)參數(shù)的生成、私鑰的提取、用公鑰加密得到密文和訪問控制樹、用私鑰解密得到明文四個(gè)部分構(gòu)成。服務(wù)器生成公鑰PK和主密鑰MK后,對(duì)明文M進(jìn)行加密生成密文CT和訪問控制樹R。用戶通過輸入自己的屬性集S,生成其私鑰SK。對(duì)用戶的密鑰組件SK進(jìn)行訪問判定,最后由對(duì)稱密鑰算法AES對(duì)密文進(jìn)行解密,得到明文M。該算法的缺點(diǎn)是,對(duì)于高敏感度的訪問控制,計(jì)算復(fù)雜度特別龐大。
1.2支持密文的模糊關(guān)鍵字檢索算法
1)基于窮舉法的模糊關(guān)鍵字檢索算法。用戶事先為每個(gè)關(guān)鍵字構(gòu)造模糊關(guān)鍵字集合,然后根據(jù)構(gòu)造的關(guān)鍵字的模糊集合窮舉出所有可能的單詞,并計(jì)算出詞與詞之間的距離?;谶@種模糊關(guān)鍵字集合結(jié)構(gòu),加密云數(shù)據(jù)上的模糊關(guān)鍵字算法,然后實(shí)現(xiàn)。
2)基于通配符的模糊關(guān)鍵字檢索算法。采用WFSC技術(shù),通過通配符的方式來產(chǎn)生模糊關(guān)鍵字集合,用一個(gè)通配符來代替列舉出所有的字符,然后通過通配符的個(gè)數(shù)來標(biāo)識(shí)文檔的相似度并進(jìn)行排序,最后將進(jìn)行排序的密文返回給用戶。
3)基于字典的模糊關(guān)鍵字檢索算法。采用DFSC技術(shù),把一個(gè)字典作為模糊關(guān)鍵字集合,所有的模糊關(guān)鍵詞都屬于這個(gè)字典。用這個(gè)字典來限制模糊關(guān)鍵字集合的規(guī)模。在加密云環(huán)境下,該算法利用基于DFSC的模糊關(guān)鍵字集合構(gòu)造加密文件,在相同的條件下,DFSC方案的索引規(guī)模更小。
1.3數(shù)據(jù)完整性驗(yàn)證的算法
1)基于哈希樹的數(shù)據(jù)完整性驗(yàn)證算法?;舅枷胧怯脩艚⒁粋€(gè)樹形完整性檢測(cè)結(jié)構(gòu)(IC-樹),并對(duì)需上傳云端的數(shù)據(jù)文件設(shè)置一個(gè)隨機(jī)索引,根據(jù)隨機(jī)索引在IC-樹的對(duì)應(yīng)節(jié)點(diǎn)存儲(chǔ)該數(shù)據(jù)文件的校驗(yàn)值。該算法在存儲(chǔ)遠(yuǎn)端數(shù)據(jù)的常量級(jí)校驗(yàn)信息時(shí),用戶可以常量級(jí)的網(wǎng)絡(luò)通信量和計(jì)算量驗(yàn)證數(shù)據(jù)的完整性。
2)基于BLS短簽名和雙線性對(duì)的數(shù)據(jù)完整性驗(yàn)證算法。該算法是一種基于改進(jìn)的BLS短簽名,以雙線性對(duì)為驗(yàn)證手段,在沒有第三方參與情況下實(shí)現(xiàn)完整性檢測(cè)的算法。即用戶選擇一個(gè)隨機(jī)數(shù)作為其私鑰,并計(jì)算出公鑰,然后用私鑰對(duì)每個(gè)信息塊簽名,然后將簽名集合、樹根簽名和信息構(gòu)成的集合發(fā)送給服務(wù)器進(jìn)行完整性檢測(cè);用戶構(gòu)建一個(gè)整數(shù)集合,對(duì)于集合中的每個(gè)元素,均選擇一個(gè)相應(yīng)的隨機(jī)整數(shù),組成一個(gè)“查詢”二元組,該“查詢”二元組為需查詢信息塊中的某個(gè)信息;然后將該查詢信息發(fā)送給服務(wù)器進(jìn)行完整性查詢;收到用戶發(fā)送的“查詢”請(qǐng)求后,服務(wù)器通過計(jì)算,得出一個(gè)完整性證明;收到服務(wù)器返還的完整性證明,用戶根據(jù)收到的信息計(jì)算根節(jié)點(diǎn),并根據(jù)公司判斷通過計(jì)算根節(jié)點(diǎn)值于本地存儲(chǔ)的根節(jié)點(diǎn)值是否相符,從而驗(yàn)證數(shù)據(jù)的完整性。該算法可以快速實(shí)現(xiàn)遠(yuǎn)程、動(dòng)態(tài)的對(duì)象數(shù)量的完整性檢測(cè),并能防止用戶的隱私數(shù)據(jù)被竊取。
2結(jié)論
云計(jì)算環(huán)境下的數(shù)據(jù)安全是當(dāng)前制約云計(jì)算發(fā)展的關(guān)鍵因素。本文介紹了云環(huán)境下用于保護(hù)數(shù)據(jù)安全的密文訪問控制、支持密文的模糊關(guān)鍵字檢索和數(shù)據(jù)完整性驗(yàn)證技術(shù)的經(jīng)典關(guān)鍵算法。本文提到的經(jīng)典關(guān)鍵算法只是針對(duì)現(xiàn)階段云計(jì)算存在的問題而提出的解決方案,這些算法在一定程度上推進(jìn)了云計(jì)算技術(shù)的進(jìn)步,但對(duì)云計(jì)算中出現(xiàn)的新問題還沒有進(jìn)行考慮。因此,這些算法在面臨云計(jì)算的新問題時(shí)有著很大的改進(jìn)空間。endprint