隨著計(jì)算機(jī)技術(shù)和互聯(lián)網(wǎng)應(yīng)用的迅速發(fā)展,數(shù)據(jù)正以幾何級數(shù)的方式增長,人們對存儲空間的需求也越來越大,在這一趨勢下,近年來云存儲的提出與發(fā)展以及存儲即服務(wù)的理念為人們提供了大量廉價(jià)的存儲空間,同時(shí)也向傳統(tǒng)的數(shù)據(jù)存儲方式發(fā)起了挑戰(zhàn)。
盡管云存儲有著價(jià)格低廉、部署方便等優(yōu)點(diǎn),其推廣過程卻十分緩慢,從Twinstrata公司2012年最新的云存儲的應(yīng)用調(diào)查來看:只有20%的人愿意將自己的私有數(shù)據(jù)放在云存儲中;相比之下,大約有50%的人愿意使用云存儲來進(jìn)行數(shù)據(jù)備份、歸檔存儲以及災(zāi)難恢復(fù)等作業(yè),由此可見,數(shù)據(jù)的安全問題是云存儲推廣的重大障礙之一,云存儲系統(tǒng)對安全機(jī)制有著十分迫切的需求。
數(shù)據(jù)的安全性包含CIA(confidentiality,integrityand availability)3個(gè)方面,即機(jī)密性、完整性和可用性,機(jī)密性是指任何人或團(tuán)體在非授權(quán)的情況下不得查看到數(shù)據(jù)明文;完整性是指數(shù)據(jù)在存儲過程和傳輸過程中未被篡改,或者能夠檢測出此數(shù)據(jù)已被篡改;可用性是指用戶可以通過云存儲接口隨時(shí)使用自己的數(shù)據(jù),為了解決數(shù)據(jù)的安全問題,國內(nèi)外對此作了大量的研究,分別從機(jī)密性、完整性和可用性3方面提出了一些新的系統(tǒng)架構(gòu)來保證數(shù)據(jù)的安全性。
目前保證數(shù)據(jù)機(jī)密性的主流方法是將數(shù)據(jù)進(jìn)行加密,數(shù)據(jù)被加密后,用戶只需要保護(hù)好自己的密鑰就可以保證數(shù)據(jù)在存儲過程和傳輸過程中的機(jī)密性,但由于云端保存的所有數(shù)據(jù)都是加密的,云存儲在無法偷窺用戶數(shù)據(jù)內(nèi)容的同時(shí),也無法以傳統(tǒng)的方式提供一些常見的功能,例如數(shù)據(jù)搜索、數(shù)據(jù)刪冗等,在安全云存儲系統(tǒng)中如何提供這些功能也非常值得研究。
本文從云存儲系統(tǒng)中的安全問題與需求出發(fā),詳細(xì)介紹了目前已有的安全云存儲系統(tǒng)的現(xiàn)狀與關(guān)鍵技術(shù),并指出未來安全云存儲系統(tǒng)的研究方向。
1 云存儲系統(tǒng)的安全需求
云存儲是在云計(jì)算概念的基礎(chǔ)上發(fā)展起來的一種新的存儲方式,它是指通過網(wǎng)格計(jì)算、集群文件系統(tǒng)、分級存儲等現(xiàn)有技術(shù),將網(wǎng)絡(luò)中大量的存儲設(shè)備通過硬件/軟件的方式集合在一起,并對外提供標(biāo)準(zhǔn)的存儲接口,以供個(gè)人或企業(yè)調(diào)用并存儲數(shù)據(jù)的存儲方式,相比傳統(tǒng)的存儲方式,云存儲的出現(xiàn)使得一些企業(yè)或個(gè)人不需要購買價(jià)格高昂的存儲設(shè)備,只需要支付較少的費(fèi)用便可以享受無限的存儲空間。
隨著云存儲理念的深入發(fā)展,越來越多的企業(yè)開始搭建屬于自己的云存儲平臺,并通過一些特定的接口為企業(yè)或個(gè)人提供存儲服務(wù),例如Amazon的S3,Microsoft的Azure等,云存儲平臺的出現(xiàn)使得許多企業(yè)或研究機(jī)構(gòu)利用它來開發(fā)自己的系統(tǒng),這些系統(tǒng)也被稱之為云存儲系統(tǒng),近年來,云存儲系統(tǒng)泄漏用戶數(shù)據(jù)事件的不斷涌出,使得如何保證云存儲系統(tǒng)的安全性已成為一個(gè)不可忽視的問題,與傳統(tǒng)的存儲方式相比,云存儲中的安全需求不僅是保證數(shù)據(jù)的安全性,而且還包含了密鑰分發(fā)以及如何在數(shù)據(jù)密文上進(jìn)行高效操作等功能需求。
1.1數(shù)據(jù)的安全性
數(shù)據(jù)安全是云存儲系統(tǒng)中最重要的安全需求之一,云存儲系統(tǒng)中數(shù)據(jù)的安全性可分為存儲安全性和傳輸安全性兩部分,每部分又包含機(jī)密性、完整性和可用性3個(gè)方面:
1)數(shù)據(jù)的機(jī)密性
云存儲系統(tǒng)中的數(shù)據(jù)機(jī)密性是指無論存儲還是傳輸過程中,只有數(shù)據(jù)擁有者和授權(quán)用戶能夠訪問數(shù)據(jù)明文,其他任何用戶或云存儲服務(wù)提供商都無法得到數(shù)據(jù)明文,從理論上杜絕一切泄漏數(shù)據(jù)的可能性。
2)數(shù)據(jù)的完整性
云存儲系統(tǒng)中數(shù)據(jù)的完整性包含數(shù)據(jù)存儲時(shí)和使用時(shí)的完整性兩部分,數(shù)據(jù)存儲時(shí)的完整性是指云存儲服務(wù)提供商是按照用戶的要求將數(shù)據(jù)完整地保存在云端,不能有絲毫的遺失或損壞,數(shù)據(jù)使用時(shí)的完整性是指當(dāng)用戶使用某個(gè)數(shù)據(jù)時(shí),此數(shù)據(jù)沒有被任何人偽造或篡改。
3)數(shù)據(jù)的可用性
云存儲的不可控制性滋生了云存儲系統(tǒng)的可用性研究,與以往不同的是云存儲中所有硬件均非用戶所能控制,因此,如何在存儲介質(zhì)不可控的情況下提高數(shù)據(jù)的可用性是云存儲系統(tǒng)的安全需求之一。
1.2密鑰管理分發(fā)機(jī)制
一直以來,數(shù)據(jù)加密存儲都是保證數(shù)據(jù)機(jī)密性的主流方法,數(shù)據(jù)加密需要密鑰,云存儲系統(tǒng)需要提供安全高效的密鑰管理分發(fā)機(jī)制保證數(shù)據(jù)在存儲與共享過程中的機(jī)密性。
1.3其他功能需求
由于相同密文在不同密鑰或加密機(jī)制下生成的密文并不相同,數(shù)據(jù)加密存儲將會影響到云存儲系統(tǒng)中的一些其他功能,例如數(shù)據(jù)搜索、重復(fù)數(shù)據(jù)刪除等,云存儲系統(tǒng)對這些因數(shù)據(jù)加密而被影響的功能有著新的需求。
2 安全云存儲系統(tǒng)概述
用戶對云存儲的不信任引發(fā)了云存儲系統(tǒng)中的安全問題,近年來,隨著云存儲的推廣與普及,雖然有越來越多的人開始使用云存儲存放自己的資料,但云存儲系統(tǒng)中的安全問題卻并沒有得到緩解,為了解決云存儲系統(tǒng)中的安全問題,國內(nèi)外的研究者作了大量研究,逐漸在云存儲系統(tǒng)的研究中形成一個(gè)新的方向——安全云存儲系統(tǒng)。
2.1 安全云存儲系統(tǒng)設(shè)計(jì)的一般原則
安全云存儲系統(tǒng)是云存儲系統(tǒng)的一個(gè)子集,它指的是包含了安全特性的云存儲系統(tǒng),安全云存儲系統(tǒng)的設(shè)計(jì)者常常會提出一些安全方面的假設(shè),然后根據(jù)這些假設(shè)建立系統(tǒng)的威脅模型與信任體系,最終設(shè)計(jì)并實(shí)現(xiàn)系統(tǒng)或原型系統(tǒng),一般來說,安全云存儲系統(tǒng)設(shè)計(jì)時(shí)需要考慮如下幾個(gè)方面。
1)安全假設(shè),在安全領(lǐng)域中,最好的假設(shè)是除自己以外的所有實(shí)體都不可信,但是在云存儲系統(tǒng)中,數(shù)據(jù)被存放在云端,擁有者對數(shù)據(jù)喪失了絕對控制權(quán),使得這一假設(shè)只存在理論上的可行性,因此,云存儲安全系統(tǒng)的設(shè)計(jì)者需要針對不同的應(yīng)用場景提出相應(yīng)的安全假設(shè),并以此為前提來保證系統(tǒng)的安全性。
2)威脅模型和信任體系,設(shè)計(jì)者基于安全假設(shè)相關(guān)實(shí)體進(jìn)行分析,由此得出相關(guān)實(shí)體是否可信,然后將這些實(shí)體模型化或體系化,由此得出相應(yīng)的威脅模型和信任體系。
3)保證系統(tǒng)安全的關(guān)鍵技術(shù),設(shè)計(jì)者往往會根據(jù)自己系統(tǒng)的應(yīng)用場景與特征,采取一些相關(guān)技術(shù)來保證系統(tǒng)的安全性,這些技術(shù)也稱為安全云存儲系統(tǒng)的關(guān)鍵技術(shù)。
4)系統(tǒng)性能評測,系統(tǒng)的安全與高效是一對矛盾體,在保證系統(tǒng)安全性的同時(shí)必然會在一定程度上降低系統(tǒng)效率,在安全云存儲系統(tǒng)中,設(shè)計(jì)者需要對系統(tǒng)的安全與效率進(jìn)行均衡,使得系統(tǒng)能夠在適應(yīng)所需的安全需求的同時(shí),為用戶提供可接受的性能。
2.2安全云存儲系統(tǒng)的現(xiàn)狀
從存儲系統(tǒng)的技術(shù)支撐與發(fā)展來看,文件系統(tǒng)是構(gòu)建云存儲系統(tǒng)的重要部分,CFS是最早的加密文件系統(tǒng)之一,它是一個(gè)用戶態(tài)的虛擬加密文件系統(tǒng),可以掛在在其他文件系統(tǒng)之上,為使用者提供文件/文件名加密保護(hù)的功能,此后,NCryptfs,ECFS,Cepheus,TCFS等都是在CFS的基礎(chǔ)上研究開發(fā)的,NCryptfs是一個(gè)內(nèi)核態(tài)的加密文件系統(tǒng),它將CFS的思想從用戶態(tài)提升到內(nèi)核態(tài),同時(shí)為用戶提供了方便的共享機(jī)制,ECFS在加密數(shù)據(jù)的基礎(chǔ)上提出了校驗(yàn)數(shù)據(jù)散列值(Hash value)的方式,提供了數(shù)據(jù)的完整性保護(hù)功能,Cepheus提出了三方架構(gòu)的模式,提出一個(gè)可信的第三方服務(wù)器進(jìn)行用戶密鑰的管理,引入了鎖盒子機(jī)制進(jìn)行用戶分組管理,同時(shí)提出了懶惰權(quán)限撤銷的思想,TCFS提出了多級密鑰的加密方式,使用一個(gè)主密鑰加密原來的文件密鑰。
隨著網(wǎng)絡(luò)存儲系統(tǒng)的發(fā)展,加密文件系統(tǒng)的理念也逐漸網(wǎng)絡(luò)化、系統(tǒng)化,最終演變成安全網(wǎng)絡(luò)存儲系統(tǒng),一般的安全網(wǎng)絡(luò)存儲系統(tǒng)至少包括客戶端與服務(wù)器兩部分,客戶端由系統(tǒng)的使用者進(jìn)行操作,為用戶數(shù)據(jù)提供數(shù)據(jù)加解密、完整性校驗(yàn)以及訪問權(quán)限控制等功能;服務(wù)器作為數(shù)據(jù)及元數(shù)據(jù)的存儲介質(zhì),對數(shù)據(jù)沒有任何的訪問或使用權(quán)限。
安全網(wǎng)絡(luò)存儲系統(tǒng)中比較典型的有Plutus,SAND以及Corslet等,Plutus是Cepheus思想在網(wǎng)絡(luò)存儲系統(tǒng)中的擴(kuò)展,在Plutus系統(tǒng)中,客戶端負(fù)責(zé)所有的密鑰分發(fā)與管理,在共享過程中為用戶數(shù)據(jù)與元數(shù)據(jù)提供端到端的機(jī)密性和完整性保護(hù),SAND提出了一種密鑰對象的數(shù)據(jù)結(jié)構(gòu),為網(wǎng)絡(luò)存儲系統(tǒng)提供了端到端的安全解決方案,Corslet是一個(gè)棧式文件系統(tǒng),通過引入可信第三方服務(wù)器,消除了用戶對底層存儲系統(tǒng)的依賴,在不可信的網(wǎng)絡(luò)環(huán)境下為用戶提供端到端的數(shù)據(jù)私密性、完整性的保護(hù)以及區(qū)分讀寫的訪問權(quán)限控制功能。
云存儲的廉價(jià)、易擴(kuò)展等特性使得它一出現(xiàn)就成為人們研究的熱點(diǎn),由于用戶將數(shù)據(jù)存放在云存儲中便意味著喪失了對數(shù)據(jù)的絕對控制權(quán),云存儲系統(tǒng)對安全性有著十分迫切的需求,在這種需求的驅(qū)使下,Microsoft于2009年提出了CryptographicCloud Storage,Cryptographic Cloud Storage系統(tǒng)以加密的方式為數(shù)據(jù)提供機(jī)密性保護(hù)、以審計(jì)的方式為數(shù)據(jù)提供持有性保護(hù),同時(shí)為系統(tǒng)提供了細(xì)粒度的訪問控制功能,并在系統(tǒng)的原型設(shè)計(jì)中使用了可搜索的加密機(jī)制(searchable encryption)、基于屬性的加密機(jī)制(attribute_based encryption)、數(shù)據(jù)持有性證明(probable of data possession)等技術(shù),在提高系統(tǒng)整體性能的同時(shí)增強(qiáng)了用戶的體驗(yàn)效果。
同業(yè)界一樣,學(xué)術(shù)界也很重視云存儲系統(tǒng)的安全問題,2010年,Tang等人在FADE系統(tǒng)中提出了一種解決云存儲系統(tǒng)中數(shù)據(jù)可信刪除(assureddelete)的方法;Mahajan等人在Depot系統(tǒng)中提出了一種最小化云存儲中可信任(可用性方面)實(shí)體的方式,只要有一個(gè)正確(可訪問)的客戶端或服務(wù)器上有用戶需要的數(shù)據(jù),用戶就可以通過網(wǎng)絡(luò)獲取到正確的數(shù)據(jù);Shraer等人在Venus系統(tǒng)中提出了基于一個(gè)核心集(core Set)的信任體系,通過三方架構(gòu)的方式為用戶提供安全功能,2011年,Bessani等人在DEPSKY中提出了云中云的思想,在一定程度上減輕了數(shù)據(jù)機(jī)密性問題和運(yùn)營商鎖(vendordata lock—in)的問題。
3 安全云存儲系統(tǒng)的一般架構(gòu)
云存儲按照其體系結(jié)構(gòu)可分存儲層、基礎(chǔ)管理層、應(yīng)用接口層和訪問層心,在具體的安全云存儲系統(tǒng)中,由于應(yīng)用場景和研究目標(biāo)的不同,其系統(tǒng)架構(gòu)也各不相同,圖1總結(jié)歸納了現(xiàn)有安全云存儲系統(tǒng)的通用架構(gòu),具體的安全云存儲系統(tǒng)只需根據(jù)自身的特點(diǎn)實(shí)現(xiàn)部分或全部的功能。
圖1 安全云存儲系統(tǒng)通用架構(gòu)
在一般的安全云存儲系統(tǒng)中,數(shù)據(jù)訪問層進(jìn)行加密,然后通過應(yīng)用接口層的公有API接口上傳至云存儲管理服務(wù)器,也就是基礎(chǔ)管理層,基礎(chǔ)管理層可提供數(shù)據(jù)分塊存儲、建立數(shù)據(jù)索引、支持?jǐn)?shù)據(jù)密文搜索等功能提高系統(tǒng)效率和用戶體驗(yàn),最后,基礎(chǔ)管理層將數(shù)據(jù)密文和其附加信息(一般為元數(shù)據(jù),用來保證系統(tǒng)功能的正確性和高效性)通過安全高速的內(nèi)部網(wǎng)絡(luò)保存至存儲層,存儲層可以對上層存進(jìn)來的數(shù)據(jù)進(jìn)行一定的壓縮、刪冗處理,以節(jié)省成本、提高存儲空間的利用率。
現(xiàn)有的安全云存儲系統(tǒng)一般分為客戶端、服務(wù)器和云存儲服務(wù)提供商3個(gè)組件,其中客戶端屬于訪問層,服務(wù)器屬于基礎(chǔ)管理層,云存儲服務(wù)提供商屬于存儲層,客戶端與服務(wù)器之間通過公有API及不可信的網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)交互,服務(wù)器與云存儲之間通過高速的可信網(wǎng)絡(luò)傳遞數(shù)據(jù),用戶數(shù)據(jù)和訪問權(quán)限信息的機(jī)密性、完整性都由客戶端保障,服務(wù)器可以記錄一些數(shù)據(jù)的相關(guān)信息為用戶提供數(shù)據(jù)同步、數(shù)據(jù)搜索等功能,但是在任何情況下服務(wù)器均無法獲得用戶數(shù)據(jù)的明文,云存儲服務(wù)提供商的作用相當(dāng)于過去的磁盤(或磁盤陣列),用來機(jī)械式地存取數(shù)據(jù)。
4 安全云存儲系統(tǒng)的關(guān)鍵技術(shù)
為了保證安全云存儲系統(tǒng)的正確性和高效性,不同系統(tǒng)的設(shè)計(jì)者往往會根據(jù)自己系統(tǒng)的特征,為系統(tǒng)添加一些特定的解決方案,這些解決方案便稱為安全云存儲系統(tǒng)中的關(guān)鍵技術(shù),在不同的系統(tǒng)中所使用的關(guān)鍵技術(shù)也不盡相同,特別是隨著云存儲的發(fā)展與應(yīng)用,一些在傳統(tǒng)安全網(wǎng)絡(luò)存儲系統(tǒng)中所不關(guān)注的技術(shù)在安全云存儲系統(tǒng)中卻受到了重視,現(xiàn)有的云存儲系統(tǒng)中所使用到的關(guān)鍵技術(shù)大致可分為以下幾類。
4.1 安全、高效的密鑰生成管理分發(fā)機(jī)制
在目前的安全云存儲系統(tǒng)中,數(shù)據(jù)加密存儲是解決機(jī)密性問題的主流方法。數(shù)據(jù)加密時(shí)必須用到密鑰,在不同系統(tǒng)中,根據(jù)密鑰的生成粒度不同,需要管理的密鑰數(shù)量級也不一樣,若加密粒度太大,雖然用戶可以很方便地管理,卻不利于密鑰的更新和分發(fā);若加密粒度太小,雖然用戶可以進(jìn)行細(xì)粒度的訪問權(quán)限控制,但密鑰管理的開銷也會變得非常大,現(xiàn)有的安全云存儲系統(tǒng)大都采用了粒度偏小或適中的加密方式,在這種方式下系統(tǒng)將會產(chǎn)生大量密鑰,如何安全、高效地生成密鑰并對其進(jìn)行管理與分發(fā)是安全云存儲系統(tǒng)中需要解決的重要問題。
4.1.1 密鑰的生成機(jī)制
密鑰生成關(guān)鍵在于如何減少需要維護(hù)的密鑰數(shù)量和能夠高效處理密鑰的更新,目前的安全云存儲系統(tǒng)所采用的密鑰生成機(jī)制主要有以下3種。
1)隨機(jī)生成
隨機(jī)生成密鑰是最直接產(chǎn)生對稱密鑰的方式,CRUST和Plutus等系統(tǒng)均采用了這種方式產(chǎn)生對稱密鑰對數(shù)據(jù)進(jìn)行加密,這種加密方式具有良好的私密性和可擴(kuò)展性,數(shù)據(jù)內(nèi)容不容易被破解,但是密鑰不能用作其他用途(例如數(shù)據(jù)的完整性校驗(yàn)),生成的數(shù)據(jù)密文隨機(jī)性較強(qiáng),不利于系統(tǒng)的重復(fù)數(shù)據(jù)刪除操作。
2)數(shù)據(jù)收斂加密
使用數(shù)據(jù)明文的某種(或多種)屬性生成密鑰對數(shù)據(jù)本身進(jìn)行加密,使得相同數(shù)據(jù)明文經(jīng)過加密后,生成的密文也相同的技術(shù)被稱為數(shù)據(jù)收斂加密技術(shù),Corslet系統(tǒng)利用收斂加密的思想提出了一種數(shù)據(jù)白加密的方式(如圖2所示),通過每個(gè)文件塊的散列值與偏移量作為密鑰,對文件塊本身進(jìn)行加密。
圖2 數(shù)據(jù)自加密
數(shù)據(jù)收斂加密的好處主要體現(xiàn)在以下幾個(gè)方面:①若密鑰的生成方式與數(shù)據(jù)的散列值有關(guān),生成的密鑰則可以用來校驗(yàn)數(shù)據(jù)的完整性,從而節(jié)省了存儲空間;
②修改數(shù)據(jù)的同時(shí)會修改密鑰,因此特別適合懶惰權(quán)限撤銷;
懶惰權(quán)限撤銷是指在基于共享的安全云存儲系統(tǒng)中,若某個(gè)用戶的訪問權(quán)限被撤銷,系統(tǒng)并不立即更換密鑰對數(shù)據(jù)重新進(jìn)行加密,而是采用觸發(fā)的方式,當(dāng)某個(gè)特定的事件發(fā)生時(shí)才對數(shù)據(jù)重新加密,例如,使用自加密技術(shù)后,若某個(gè)用戶的訪問權(quán)限被撤銷,系統(tǒng)只需在訪問控制信息中刪除此用戶的相關(guān)信息,待下次寫操作發(fā)生時(shí)再對數(shù)據(jù)重新加密即可;
③相同內(nèi)容的文件加密后密文依然相同,非常適合在系統(tǒng)中進(jìn)行重復(fù)數(shù)據(jù)刪除操作。
3)通過特殊計(jì)算生成
在一些特定的應(yīng)用場景中,為了提供一些特殊的功能,有時(shí)對文件密鑰的生成也有一些特殊的要求,例如Vanish系統(tǒng)為了提供可信刪除機(jī)制,要求密鑰能夠分成研份,用戶只需要取得其中行份就能夠解密文件,通過特殊計(jì)算生成的密鑰通常是為了實(shí)現(xiàn)某個(gè)特定的功能,喪失了一定的通用性。
4.1.2密鑰的管理機(jī)制
目前的安全云存儲系統(tǒng)大都采用分層密鑰管理方式,其基本思想是將所有的密鑰以金字塔形式排列,上層密鑰用來加密/解密下層密鑰,這樣層層加密后,用戶只需要管理位于金字塔尖的密鑰,其他的密鑰均可以放在不可信的環(huán)境中,或者以不可信的方式進(jìn)行分發(fā)傳遞,因此,分層密鑰管理方式可以在保證系統(tǒng)安全性的前提下,將大量的密鑰交給不可信的實(shí)體進(jìn)行管理,用戶及可信實(shí)體只需要保存極少量的密鑰就可以達(dá)到以前的效果,大大提高了用戶的方便性。
安全云存儲系統(tǒng)大都采用2~3層的密鑰管理方式,一般來說,無論某個(gè)系統(tǒng)將密鑰分為多少層,我們都可以將它看成兩層——頂層和其他層,現(xiàn)有系統(tǒng)在管理與分發(fā)頂層密鑰時(shí)大都采用了PKI。26一體系中的公私鑰算法,或是直接交給一個(gè)可信的第三方進(jìn)行,相對地,其他層密鑰可以直接存放在云存儲中,合法用戶在需要時(shí)從云存儲中下載即可。
通過分層密鑰管理的方式,安全云存儲系統(tǒng)中的眾多密鑰可以被高效地組織起來,在保證數(shù)據(jù)私密性和完整性的同時(shí),能夠大量減少用戶在密鑰管理方面的開銷,提高系統(tǒng)的效率,也有利于用戶身份認(rèn)證、訪問授權(quán)等功能的安全實(shí)現(xiàn)。
4.1.3密鑰的分發(fā)機(jī)制
安全云存儲系統(tǒng)大都具有共享功能,從而有了密鑰分發(fā)的需求,一般來說,安全云存儲系統(tǒng)中的密鑰有以下3種分發(fā)方式:
1)通過客戶端進(jìn)行分發(fā)
通過客戶端對密鑰進(jìn)行分發(fā)是一種較老的分發(fā)方式,在這種方式下,服務(wù)器在任何情況下都不接觸任何形式的密鑰,因此安全程度很高,這種方式的缺點(diǎn)是要求客戶端一直在線,一旦數(shù)據(jù)擁有者下線,數(shù)據(jù)的被共享者將因?yàn)闊o法獲取密鑰而不能訪問數(shù)據(jù)。
2)密文形式通過云存儲進(jìn)行分發(fā)
密鑰經(jīng)加密后存放在云存儲中,數(shù)據(jù)被共享者訪問數(shù)據(jù)時(shí)需要先從云存儲中獲取到數(shù)據(jù)密文和加密后的密鑰,然后通過某種約定的方式(例如公私鑰加解密方式)解密出密鑰明文,隨即再解密出數(shù)據(jù)明文,這種密鑰分發(fā)的方式目前是業(yè)界中的主流方法,SpiderOAk,wuala等系統(tǒng)都是采用這種方式進(jìn)行密鑰分發(fā),這種方式的優(yōu)點(diǎn)是充分利用云存儲的存儲資源,采用了成熟的加解密技術(shù),并可以隨時(shí)對密鑰進(jìn)行發(fā)放;其缺點(diǎn)是過于依賴云存儲,同時(shí)密鑰冗余量太大,存儲資源浪費(fèi)較嚴(yán)重。
3)通過第三方機(jī)構(gòu)進(jìn)行分發(fā)
密鑰分發(fā)除了通過客戶端和云存儲進(jìn)行之外,還可以通過與客戶端和服務(wù)器獨(dú)立的“第三方”進(jìn)行,F(xiàn)ADE系統(tǒng)和Corslet系統(tǒng)使用一個(gè)可信的第三方服務(wù)器,用來集中管理分發(fā)密鑰;Vanish系統(tǒng)通過DHT網(wǎng)絡(luò)進(jìn)行密鑰分發(fā),通過第三方機(jī)構(gòu)的密鑰分發(fā)方式結(jié)合以上兩種方式的優(yōu)點(diǎn),但對應(yīng)用場景的依賴較強(qiáng),因此大都出現(xiàn)在某些特定的應(yīng)用中。
4.2基于屬性的加密方式
在公私鑰加密體系中有一種特殊的加密方式:基于屬性的加密方式(attribute-based encryption),基于屬性的加密方式以屬性作為公鑰對用戶數(shù)據(jù)進(jìn)行加密,用戶的私鑰也和屬性相關(guān),只有當(dāng)用戶私鑰具備解密數(shù)據(jù)的基本屬性時(shí)用戶才能夠解密出數(shù)據(jù)明文,例如:用戶1的私鑰有A,B兩個(gè)屬性,用戶2的私鑰有A,C兩個(gè)屬性,若有一份密文解密的基本屬性要求為A或B,則用戶1和用戶2都可以解密出明文;同樣,若密文解密的基本屬性要求為A和B,則用戶1可以解密m明文,而用戶2無法解密此密文。
基于屬性的加密方式是在公鑰基礎(chǔ)設(shè)施(PKI)體系的基礎(chǔ)上發(fā)展起來的,它將公鑰的粒度細(xì)化,使得每個(gè)公鑰都包含多個(gè)屬性,不同公鑰之間可以包含相同的屬性,基于屬性的加密機(jī)制有以下4個(gè)特點(diǎn).1)資源提供方僅需要根據(jù)屬性加密數(shù)據(jù),并不需要知道這些屬性所屬的用戶,從而保護(hù)了用戶的隱私;2)只有符合密文屬性的用戶才能解密出數(shù)據(jù)明文,保證了數(shù)據(jù)機(jī)密性;3)用戶密鑰的生成與隨機(jī)多項(xiàng)式或隨機(jī)數(shù)有關(guān),不同用戶之間的密鑰無法聯(lián)合,防止了用戶的串謀攻擊;4)該機(jī)制支持靈活的訪問控制策略,可以實(shí)現(xiàn)屬性之間的與、或、非和門限操作。
安全云存儲系統(tǒng)中基于屬性的加密方式其研究點(diǎn)在于:如何在系統(tǒng)中使用這種新的加密機(jī)制提高其服務(wù)效率與質(zhì)量,而不是加密方式本身,基于屬性的加密方式其特點(diǎn)使得它非常適合于模擬社區(qū)之類的應(yīng)用,但是,目前基于屬性的加密方式其時(shí)間復(fù)雜度很高、系統(tǒng)面向群體的安全需求很少的特點(diǎn),使得這種加密方式目前的安全云存儲系統(tǒng)中的應(yīng)用并不廣泛,隨著安全云存儲系統(tǒng)研究的進(jìn)一步深入、屬性加密方式的時(shí)間復(fù)雜度的降低,未來的安全云存儲系統(tǒng)中一定會廣為使用這種新的加密機(jī)制。
4.3基于密文的搜索方式
一些云存儲系統(tǒng)中添加了數(shù)據(jù)搜索的機(jī)制,使得用戶可以高效、準(zhǔn)確地查找自己所需要的數(shù)據(jù)資源,在安全云存儲系統(tǒng)中,為了保證用戶數(shù)據(jù)的機(jī)密性,所有數(shù)據(jù)都以密文的形式存放在云存儲中,由于加密方式和密鑰的不同,相同的數(shù)據(jù)明文加密后所生成的數(shù)據(jù)密文也不一樣,因此無法使用傳統(tǒng)的搜索方式進(jìn)行數(shù)據(jù)搜索。
為了解決這個(gè)問題,近年來一些研究機(jī)構(gòu)提出了可搜索加密機(jī)制(searchable encryption),能夠提供基于數(shù)據(jù)密文的搜索服務(wù),目前可搜索加密機(jī)制的研究可分為基于對稱加密(symmetry keycryptography based)的SE機(jī)制和基于公鑰加密(public key cryptography based)的SE機(jī)制兩類,基于對稱加密的SE機(jī)制主要是使用一些偽隨機(jī)函數(shù)生成器(pseudorandom function generator)、偽隨機(jī)數(shù)生成器(pseudorandom number generator)、散列算法和對稱加密算法構(gòu)建而成,而基于公鑰加密的SE機(jī)制主要是使用雙線性映射等工具。將安全性建立在一些難以求解復(fù)雜性問題之上,基于對稱加密的SE機(jī)制在搜索語句的靈活性等方面有所欠缺,并只能支持較簡單的應(yīng)用場景,但是加解密的復(fù)雜性較低,而基于公鑰加密的SE機(jī)制雖然有著靈活的搜索語句,能夠支持較復(fù)雜的應(yīng)用場景,但搜索過程中需要進(jìn)行群元素之前和雙線性對的計(jì)算,其開銷遠(yuǎn)高于基于對稱加密的SE機(jī)制。
在安全云存儲系統(tǒng)中,基于對稱加密的SE機(jī)制比較適用于客戶端負(fù)責(zé)密鑰分發(fā)的場景:當(dāng)數(shù)據(jù)共享給其他用戶時(shí),數(shù)據(jù)所有者需要根據(jù)用戶的搜索請求產(chǎn)生相應(yīng)的搜索憑證,或?qū)ΨQ密鑰共享給合法用戶,由合法用戶在本地產(chǎn)生相應(yīng)的搜索憑證進(jìn)行搜索,基于公鑰加密的SE機(jī)制則更加適用于存在可信第三方的應(yīng)用場景:用戶可以通過可信第三方的公鑰生成屬于可信第三方的數(shù)據(jù),若其他用戶想要對這些數(shù)據(jù)進(jìn)行搜索,只需要向可信的第三方申請搜索憑證即可,目前SE機(jī)制的難點(diǎn)與發(fā)展方向在于如何提高效率且支持靈活查詢語句,以及如何保留數(shù)據(jù)明文中的語義結(jié)果,隨著可搜索加密機(jī)制的逐步完善,安全云存儲系統(tǒng)中對數(shù)據(jù)密文搜索的關(guān)聯(lián)度、準(zhǔn)確度以及效率方面將會越來越高,越來越多的安全云存儲系統(tǒng)將會選擇添加SE機(jī)制進(jìn)行搜索,到那時(shí),安全云存儲系統(tǒng)的應(yīng)用范圍將更加廣泛。
4.4基于密文的重復(fù)數(shù)據(jù)刪除技術(shù)
在一般的云存儲系統(tǒng)中,為了節(jié)省存儲空間,系統(tǒng)或多或少會采用一些重復(fù)數(shù)據(jù)刪除(data deduplication)技術(shù)來刪除系統(tǒng)中的大量重復(fù)數(shù)據(jù),但是在安全云存儲系統(tǒng)中,與數(shù)據(jù)搜索問題一樣,相同內(nèi)容的明文會被加密成不同的密文,因此也無法根據(jù)數(shù)據(jù)內(nèi)容對其進(jìn)行重復(fù)數(shù)據(jù)刪除操作,比密文搜索更困難的是,即使將系統(tǒng)設(shè)計(jì)成服務(wù)器可以對重復(fù)數(shù)據(jù)進(jìn)行識別,由于加密密鑰的不同,服務(wù)器不能刪除掉其中任意一個(gè)版本的數(shù)據(jù)密文,否則有可能出現(xiàn)合法用戶無法解密數(shù)據(jù)的情況。
目前對數(shù)據(jù)密文刪冗的研究仍然停留在使用特殊的加密方式,相同的內(nèi)容使用相同的密鑰加密成相同的密文階段,并沒有取得實(shí)質(zhì)性的進(jìn)展,Storer等人在2008年提出了一種基于密文的重復(fù)數(shù)據(jù)刪除的方法,該方法采用收斂加密技術(shù),使得相同的數(shù)據(jù)明文的加密密鑰相同,因此在相同的加密模式下生成的數(shù)據(jù)密文也相同,這樣就可以使用傳統(tǒng)的重復(fù)數(shù)據(jù)刪除技術(shù)進(jìn)行對數(shù)據(jù)進(jìn)行刪冗操作,除此之外,近年來并無真正基于相同明文生產(chǎn)不同的密文的問題提出合適的解決辦法。
重復(fù)數(shù)據(jù)的刪除是安全云存儲系統(tǒng)中很重要的部分,但目前的研究成果僅限于采用收斂加密方式,將相同的數(shù)據(jù)加密成相同的密文才能在云存儲中進(jìn)行數(shù)據(jù)刪冗操作,因此,如何在加密方式一般化的情況下對云存儲中的數(shù)據(jù)進(jìn)行刪冗是安全云存儲系統(tǒng)中的一個(gè)很有意義的研究課題。
4.5 基于密文的數(shù)據(jù)持有性證明
在安全云存儲系統(tǒng)中,用戶數(shù)據(jù)經(jīng)加密后存放至云存儲服務(wù)器,但其中許多數(shù)據(jù)可能用戶在存放至服務(wù)器后極少訪問,例如歸檔存儲等,在TWinstrata公司2012年的調(diào)查報(bào)告中,這類應(yīng)用在云存儲系統(tǒng)的使用中占據(jù)不小的比例,在這種應(yīng)用場景下,即使云存儲丟失了用戶數(shù)據(jù),用戶也很難察覺到,因此用戶有必要每隔一段時(shí)間就對自己的數(shù)據(jù)進(jìn)行持有性證明檢測,以檢查自己的數(shù)據(jù)是否完整地存放在云存儲中。
目前的數(shù)據(jù)持有性證明主要有可證明數(shù)據(jù)持有(provable data possession,PDP)和數(shù)據(jù)證明與恢復(fù)(proof of retrievability,POR)兩種方案,PDP方案通過采用云存儲計(jì)算數(shù)據(jù)某部分散列值等方式來驗(yàn)證云端是否丟失或刪除數(shù)據(jù),文獻(xiàn)[41]最早提出了遠(yuǎn)程數(shù)據(jù)的持有性證明,通過基于RSA的散列函數(shù)計(jì)算文件的散列值,達(dá)到持有性證明的目的。在此之后,許多文獻(xiàn)各自采用了同態(tài)可認(rèn)證標(biāo)簽、公鑰同態(tài)線性認(rèn)證器、校驗(yàn)塊循環(huán)隊(duì)列以及代數(shù)簽名副等結(jié)構(gòu)或方式,分別在數(shù)據(jù)通信量、計(jì)算開銷、存儲空間開銷以及安全性與檢查次數(shù)等方面進(jìn)行了優(yōu)化,POR方案在PDP方案的基礎(chǔ)上添加了數(shù)據(jù)恢復(fù)機(jī)制,使得系統(tǒng)在云端丟失數(shù)據(jù)的情況下仍然有可能恢復(fù)數(shù)據(jù),最早的POR方案通過糾刪碼提供數(shù)據(jù)的可恢復(fù)機(jī)制,之后的工作在持有性證明方面作了一定的優(yōu)化,但也大都使用糾刪碼機(jī)制提供數(shù)據(jù)的可恢復(fù)功能。
云存儲的不可信使得用戶有著數(shù)據(jù)是否真的存放在云端的擔(dān)憂,從而有了數(shù)據(jù)持有性證明的需求,現(xiàn)有的數(shù)據(jù)持有性證明在加密效率、存儲效率、通信效率、檢測概率和精確度以及恢復(fù)技術(shù)方面仍然有加強(qiáng)的空間,此外,由于不同安全云存儲系統(tǒng)的安全模型和信任體系并不相同,新的數(shù)據(jù)持有性證明應(yīng)該考慮到不同的威脅模型,提出符合相應(yīng)要求的持有性證明方案,以徹底消除安全云存儲系統(tǒng)中用戶數(shù)據(jù)在存儲過程中是否完整的擔(dān)憂。
4.6數(shù)據(jù)的可信刪除
云存儲的可靠性機(jī)制在提高數(shù)據(jù)可靠性的同時(shí)也為數(shù)據(jù)的刪除帶來了安全隱患:數(shù)據(jù)存儲在云存儲中,當(dāng)用戶向云存儲下達(dá)刪除指令時(shí),云存儲可能會惡意地保留此文件,或者由于技術(shù)原因并未刪除所有副本,一旦云存儲通過某種非法途徑獲得數(shù)據(jù)密鑰,數(shù)據(jù)也就面臨著被泄露的風(fēng)險(xiǎn),為了解決這個(gè)問題,2007年P(guān)erlman等人在文獻(xiàn)[47]中首次提出了可信刪除(assured delete)的機(jī)制,通過建立第三方可信機(jī)制,以時(shí)間或者用戶操作作為刪除條件,在超過規(guī)定的時(shí)間后自動刪除數(shù)據(jù)密鑰,從而使得任何人都無法解密出數(shù)據(jù)明文,Vanish系統(tǒng)中提出了一種基于DHT網(wǎng)絡(luò)的數(shù)據(jù)可信刪除機(jī)制:用戶在發(fā)送郵件之前將數(shù)據(jù)進(jìn)行加密,然后將加密密鑰分成”份存放在DHT網(wǎng)絡(luò)中,郵件的接收者只需要拿到k(k≤n)份密鑰就能夠正常地解密,所有的密鑰在超過規(guī)定的時(shí)間后將自動刪除,使得在超過規(guī)定的時(shí)間后任何人無法恢復(fù)數(shù)據(jù)明文。
FADE系統(tǒng)在文獻(xiàn)[47]的基礎(chǔ)上提出了一種基于策略(policy-based)的可信刪除方式:每個(gè)文件都對應(yīng)一條或多條訪問策略(訪問策略類似于屬性加密(attribute-based encryption)機(jī)制中的屬性,例如Bob可以訪問和2013年之前是兩條不同的策略),不同的訪問策略之間可以通過邏輯“與”和邏輯“或”組成混合策略,只有當(dāng)文件的訪問者符合訪問策略的條件時(shí)才能解密出數(shù)據(jù)明文,在具體的實(shí)現(xiàn)中,首先隨機(jī)生成一個(gè)對稱密鑰K加密文件,然后為每個(gè)訪問策略生成一個(gè)隨機(jī)密鑰S,,并按照混合策略的表達(dá)式對對稱密鑰K進(jìn)行加密,第三方可信的密鑰管理服務(wù)器(key manager)為每一個(gè)S,生成一個(gè)公私鑰對,客戶端使用此公鑰加密S,后,將數(shù)據(jù)密文、對稱密鑰K的密文以及S,的密文保存在云存儲端,當(dāng)數(shù)據(jù)刪除操作發(fā)生或策略失效時(shí),密鑰管理服務(wù)器只需要?jiǎng)h除相應(yīng)的私鑰就能夠保證數(shù)據(jù)無法被恢復(fù),從而實(shí)現(xiàn)了數(shù)據(jù)的可信刪除。
云存儲不可控的特性產(chǎn)生了用戶對數(shù)據(jù)的可信刪除機(jī)制的需求,目前在數(shù)據(jù)可信刪除方面的研究還停留在初始階段,需要通過第三方機(jī)構(gòu)刪除密鑰的方式保證數(shù)據(jù)的可信刪除,因此在實(shí)際的安全云存儲系統(tǒng)中,如何引入第三方機(jī)構(gòu)讓用戶相信數(shù)據(jù)真的已經(jīng)被可信刪除,或是采用新的架構(gòu)來保證數(shù)據(jù)的可信刪除都是很值得研究的內(nèi)容。
5 總結(jié)與展望
安全云存儲系統(tǒng)是云存儲領(lǐng)域中的一個(gè)重要研究方向,本文介紹了云存儲系統(tǒng)的安全需求、安全云存儲系統(tǒng)的現(xiàn)狀和一般架構(gòu),詳細(xì)闡述了在現(xiàn)有安全云存儲系統(tǒng)中所使用到的一些關(guān)鍵技術(shù),并指出了未來安全云存儲系統(tǒng)的研究方向。
云存儲的服務(wù)性質(zhì)讓用戶失去了對數(shù)據(jù)的絕對控制權(quán),從而產(chǎn)生了云存儲環(huán)境中特有的安全隱患,為此,安全云存儲系統(tǒng)的設(shè)計(jì)者根據(jù)不同的應(yīng)用場景,提出安全假設(shè)并建立相應(yīng)的威脅模型與信任體系,采用合適的關(guān)鍵技術(shù),設(shè)計(jì)并實(shí)現(xiàn)了各式各樣的安全云存儲系統(tǒng),然而,任何安全機(jī)制都是有代價(jià)的,安全云存儲系統(tǒng)無論是在效率上還是方便性上都要低于一般的云存儲系統(tǒng)。
從總體上看,未來安全云存儲系統(tǒng)的研究方向是在保證用戶數(shù)據(jù)和訪問權(quán)限信息安全的前提下,盡可能地提高系統(tǒng)效率,并提供一般云存儲系統(tǒng)所具備的功能,目前安全云存儲系統(tǒng)在密文的搜索、重復(fù)數(shù)據(jù)刪除、數(shù)據(jù)持有性證明等功能的支持上仍有待加強(qiáng),需要大家共同研究與探索,由于安全云存儲系統(tǒng)有著無可比擬的安全優(yōu)勢,相信在不久的將來,它會逐步取代一般云存儲系統(tǒng),在實(shí)際應(yīng)用中接受用戶的檢驗(yàn)。
核心關(guān)注:拓步ERP系統(tǒng)平臺是覆蓋了眾多的業(yè)務(wù)領(lǐng)域、行業(yè)應(yīng)用,蘊(yùn)涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務(wù)管理理念,功能涉及供應(yīng)鏈、成本、制造、CRM、HR等眾多業(yè)務(wù)領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴品牌。
轉(zhuǎn)載請注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/
本文標(biāo)題:安全云存儲系統(tǒng)與關(guān)鍵技術(shù)綜述
本文網(wǎng)址:http://www.ezxoed.cn/html/support/1112159218.html