云計算環境數據安全研究論文
云計算是網格計算、分布式計算、效用計算等技術發展融合的產物,如今普及速度非常快。亞馬遜、谷歌、微軟等企業向用戶提供了在云環境中開發應用和遠程訪問應用的功能。由于云環境的數據托管給服務商存儲在遠程服務器中,且應用數據通過互聯網傳輸,數據存儲和傳輸安全是一個重要的問題。在實現云計算之前,首先應該解決由此帶來的安全問題。論文描述了云計算中數據安全相關的挑戰,研究了對于數據安全不同層面的解決方案。
1 引言
云計算是基于下一代互聯網的計算系統,提供了方便和可定制的服務供用戶訪問或者與其他云應用協同工作。云計算通過互聯網將云應用連接在一起,向用戶提供了在任意地點通過網絡訪問和存儲數據的服務。
通過選擇云服務,用戶能夠將本地數據副本存儲在遠端云環境中。在云環境中存儲的數據能通過云服務提供商提供的服務進行存取。在云計算帶來方便的同時,必須考慮數據存儲的安全性。如今云計算安全是一個值得注意的問題。如果對數據的傳輸和存儲不采取合適的手段,那么數據處于高風險的環境中,關鍵數據泄露可能造成非常大的損失。由于云服務向公共用戶群提供了訪問數據的功能,數據存儲可能存在高風險問題。在后續章節中,本文首先介紹了云計算模型,然后針對云計算本身的屬性帶來的信息安全問題,研究了已有數據安全解決方案的應用范圍。
2 云計算應用模式
云計算的應用模式主要有軟件即服務(SaaS)、平臺即服務(PaaS)、基礎設施即服務(IaaS)等。在SaaS中,廠商提供服務供客戶使用,客戶使用服務在云基礎架構中運行應用。SaaS相對比較簡單,不需要購買任何硬件,使用容易。但是數據全部保存在云端,且存放方式不受用戶控制,存在安全隱患。PaaS則通過使用云計算服務商提供的中間件平臺開發和測試應用,例如谷歌的App Engine。由于不同的中間件平臺提供的API不一樣,同一個應用不能再不同的平臺通用,存在一定的兼容性問題。在IaaS模型中,用戶可以控制存儲設備、網絡設備等基礎計算架構,或者直接使用服務商提供的虛擬機去滿足特定的軟件需求,靈活性高但是使用難度也比較大。
隨著云計算的蓬勃發展,云計算安全作為不能忽視的層面,應該引起足夠的重視。如果對數據的傳輸和存儲不采取合適的手段,那么數據將處于高風險的環境中。由于云計算向用戶群提供了訪問數據的功能,不論采用三種主要應用模式的任意一種,數據都存儲在公共平臺中,由此帶來了數據存儲和傳輸的安全問題。
3 數據安全挑戰
3.1 數據保障
當多個用戶共享同一個資源的時候存在資源誤用的風險。為了避免這個風險,有必要對數據存儲、數據傳輸、數據處理等過程實施安全方面的措施。數據的保護是在云計算中最重要的挑戰。為了加強云計算的安全,有必要提供認證授權和訪問控制的手段確保數據存儲的安全。數據安全的主要幾個方面:健壯性——使用測試工具檢查數據的安全脆弱性,查看云計算應用是否有常見的漏洞,比如跨站腳本、SQL注入漏洞等;保密性——為了保護客戶端數據的安全,應當使用資源消耗少的瘦客戶端,盡量將客戶端的功能精簡,將數據的運算放置在云服務端完成;可用性——數據安全中最重要的部分,具體實施情況由廠商和客戶直接協商決定。以上措施決定了數據的可用性、可靠性和安全性。
3.2 數據正確性
在保證數據安全的同時也要保證數據的正確性。每個在云計算中的事務必須遵守ACID準則保持數據的正確性。否則會造成數據的“臟讀”,“幻讀”等現象,造成數據的不準確,事后排查花費的代價高。大多數Web服務使用HTTP協議都面臨著事物管理的問題。HTTP協議本身并不提供事務的功能,事務的功能可以使用程序內部的機制解決。
3.3 數據訪問
數據訪問主要是指數據安全訪問管理機制。在一個公司中,應根據公司的安全條例,給予不同崗位職工特定數據的訪問權限,保證該數據不能被公司的其他員工訪問。可以使用加密技術保證數據傳輸安全,采取令牌管理手段提升用戶密碼的猜解復雜程度。
3.4 保密性
由于在云環境中,用戶將文本、視頻等數據存儲在云端,數據保密性成為了一個重要的需求。用戶應該了解保密數據的存放情況和數據的訪問控制實施情況。
3.5 數據隔離
云計算的重要特征之一是多用戶租用公共服務或設備。由于公用云向所有用戶提供服務的特點,存在數據入侵的可能。通過注入代碼等手段,可能造成云端存儲的數據被非授權獲取。所以有必要將用戶數據和程序數據分開存儲,增加數據被非授權獲取的難度。通常可以通過SQL注入、數據驗證等方式驗證潛在的漏洞是否存在。
3.6 數據備份
云端數據備份主要目的是在數據意外丟失的情況下找。數據丟失是一個很普遍的問題,一份2009年的調查表明,66%的被訪者聲稱個人電腦的文件存在丟失情況。云端數據備份還可以方便將數據恢復到某個時期的版本。云計算作為公用服務,已有大量用戶使用網盤將數據副本存儲在云端,但是還有很多應用的業務數據未在用戶本地設備中存儲。無論云端存儲數據的性質,云端都應定時將存儲的數據備份,保障云服務的正常運行。
3.7 法律法規風險
在云計算中,數據有可能分布存儲在不同的國家和地區中。當數據被轉移到其他的國家和地區中后,必須遵守當地的法律法規。所以在云計算中,存在數據放置地理位置的問題,客戶應當知曉數據存儲的地理位置防范風險。
4 數據安全解決方案
對于數據安全問題,需要方案解決云環境中數據潛在的風險。其中由于云環境的公用特性,數據保密應當作為主要解決目標。針對上節的數據保障、正確性、訪問等問題,多位云計算安全專家在不同層面已先后提出了幾套完整的解決方案,其目標主要是保證云環境中數據共享的安全性。在不可信的公共云環境中,數據共享的同時保證數據對第三方的保密性。
4.1 基本方案
數據加密是一個比較好的保證數據安全的方案。在云端存儲數據之前最好能先加密數據。數據的擁有者能將數據的訪問權給予特定的用戶群體。應當設計一個包括認證、數據加密、數據正確性、數據恢復等功能的模型去保證數據在云端的安全。
為了保證數據不能被非授權訪問,將數據加密使其完全對于其他用戶無法解析是一個比較好的方法。在上傳數據到云端之前,建議用戶驗證數據是否在本地有完整的備份,可以通過計算文件的哈希值來驗證數據是否一致。數據傳輸應當采用加密方式,防止敏感信息被中間人監聽。SaaS要求必須在物理層面和應用層面將不同用戶的數據隔離。可以使用采用基于角色的訪問控制或者是自主訪問控制,以及分布式的訪問控制架構控制云計算中的數據訪問。一個設計良好的訪問控制機制可以極大地保護數據的安全,還可以采用入侵防御系統實時監測網絡入侵。入侵防御系統主要功能為識別可疑行為,記錄行為的詳細信息并試圖阻止。
上述基本方案可以解決數據保障、數據正確性、數據訪問及保密性等問題。但是,在實際應用中沒有考慮效率,僅僅作為基本手段不能滿足用戶云環境數據共享的特定需求。
4.2 屬性基加密
屬性基加密(Attribute-based Encryption)相對于傳統的公用密鑰加密具有很大的優勢。傳統的公用密鑰加密采用公私鑰對,公鑰加密的信息只能用私鑰解密,保證了僅有接收人能得到明文;私鑰加密的信息只能用公鑰解密,保證了信息的來源。公鑰基礎設施體系和對稱加密方式相比,解決了信息的保密性、完整性、不可否認性問題。屬性基加密則在公用密鑰加密的基礎上,更多考慮了數據共享和訪問控制的問題。在屬性基加密系統中,密鑰由屬性集合標識。僅當公私鑰對指定的屬性相同或者具有規定的包含關系時,才能完成解密密文。例如,用戶如果為了數據安全將文檔加密,但是需要同公司的人能解密該密文,那么可以設置密鑰的屬性位“組織”,只有屬性位“組織”為該用戶公司的密鑰才能將該密文解密,不滿足條件的密鑰則不能解密,如圖1所示。
屬性基加密分為密鑰策略(KP-ABE)和密文策略(CP-ABE)。KP-ABE模式中,密文具有屬性集合,解密密鑰則和訪問控制策略關聯。加密方定義了能成功解密密文的密鑰需要滿足的屬性集合。KP-ABE模式適用于用戶查詢類應用,例如搜索、視頻點播等。CP-ABE模式中,加密方定義了訪問控制策略,訪問控制策略被包含在密文內,而密鑰僅僅是屬性的集合。CP-ABE模式主要適用于訪問控制類應用,例如社交網站、電子醫療等。
屬性基加密方式,不僅可以應用在云存儲共享中,在審計日志共享方面也有很廣泛的應用。審計日志共享大都存在時間段的限制,屬性基加密方式可以在密文中添加時間屬性位和用戶屬性,提供對不同用戶共享不同時間段日志的功能。屬性基加密緊密結合了訪問控制的特性,在傳統公用密鑰的基礎上,提高了數據共享的方便程度。
屬性基加密雖然提高了數據共享的方便程度,但是沒有從根本上解決云環境數據加解密過程中,解密為明文導致的敏感數據泄露問題。
4.3 代理重加密
由于云環境是公用的,用戶無法確定服務提供商是否嚴格的將用戶資料保存,不泄露給第三方。所以,當用戶之間有在云環境中共享資料的需求時,必須考慮資料的保密性問題。
用戶A希望和用戶B共享自己的數據,但是不希望直接將自己的私鑰Pa給B,否則B能直接用Pa解密自己采用私鑰加密的其他數據。對于這種情況,有一些解決方案。
(1)用戶A將加密數據從云端取回,解密后通過安全方式(例如采用用戶B的公鑰加密)發送給用戶B。這種方式要求用戶A必須一直在線,存在一定的局限性,并且數據量比較大時,本地耗費的'計算量可能非常大。
(2)用戶A可以將自己的私鑰給云服務提供商,要求提供數據共享的服務。在這種情況中,用戶A必須相信云端不會將私鑰泄露。
(3)用戶A可以采用一對一加密機制。A將解密密鑰分發給每個想共享數據的用戶,A必須針對每個用戶生成并存儲不同的加密密鑰和密文。當新用戶數量很多時,這個方案造成了磁盤空間的大量占用,存儲數據冗余度高。
代理重加密(Proxy Re-Encryption)手段可以很好的解決云環境數據共享的問題。代理重加密手段設立了一個解密代理。首選A由私鑰Pa和B的公鑰Pb計算出轉換密鑰Rk。轉換密鑰可以直接將由私鑰Pa加密的密文轉加密為由公鑰Pb加密的密文。在轉換過程中,A的原始密文不會解密為明文,而轉加密后的密文也只能由用戶B解密。當用戶B想訪問A共享的資料時,只需要解密代理使用Rk將A的密文轉換為只有B能解密的密文即可。這種機制保證了包括云在內的所有第三方都不能獲取A共享給B的明文,如圖2所示。
代理重加密解決了云環境中數據共享而不泄露明文的基本問題,側重于數據的保密。該技術手段關注數據的保密性,未考慮實際應用中數據共享方便程度等其他問題。
4.4 基于代理重加密的屬性基加密方法
代理重加密技術可以和在云存儲中使用的屬性基加密機制結合,屬性基加密側重于加密方面的訪問控制,而代理重加密從加密手段上保證了數據的隱秘性。通過將這兩種機制結合,用戶可以更加高效的分享數據。數據擁有者可以根據新的訪問控制規則生成轉換密鑰,然后將轉換密鑰上傳至云服務器,服務器將原有的密文轉加密為新的密文。新的密文在不影響原有用戶解密的情況下,可以使新用戶成功解密。而在轉換原有密文的整個過程中,服務器無法將密文解密為明文。
該類加密方法既保證了轉換效率,又保證了數據的保密性。此類方法中,不考慮抗選擇密文攻擊的算法計算轉換密鑰的資源消耗相對較小,考慮了抗選擇密文攻擊的算法資源消耗量和密鑰屬性基的大小正相關。
5 結束語
雖然云計算是一個帶來了很多益處給用戶的新興技術,但它也同時面臨著很多安全方面的挑戰。本文說明了云計算方面的安全挑戰和對應的解決方案,從而降低云計算可能帶來的安全風險。為了保證云存儲的安全訪問,在技術層面,可以采用健壯的數據加密機制;在管理層面,采用合適的令牌管理機制,分發令牌給用戶從而保證數據只能被授權的訪問。隨著云計算的普及,相信云服務提供商和用戶對于云環境數據安全方面會越來越重視。在相關安全策略實施后,云計算能在提供良好服務的同時,讓用戶使用更加放心。
【云計算環境數據安全研究論文】相關文章:
云計算環境下的數據挖掘研究論文10-28
大數據時代基于云計算的數據監護研究論文11-01
分析論文:云計算環境下大數據06-26
大數據環境下的數據安全研究論文10-30
云計算環境下大規模數據處理技術研究論文11-07
大數據環境下云會計的論文06-10
云計算環境下網絡技術研究論文11-07
云計算環境下的分布存儲技術研究論文11-06