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