◆祝 旭
?
云計算數據安全保護問題的研究
◆祝 旭
(湖南工業職業技術學院 湖南 410208)
云計算技術以其低費用消耗、快速部署、靈活多變的規模調整等優勢得到眾多企業和科學研究機構的關注。伴隨云計算技術的日益推廣,越來越多的數據產生并分布于云計算網絡環境中,數據存儲量的增長給存儲服務領域帶來壓力,與此同時它也推動著存儲服務快速向前發展。但是我們在感慨良好態勢的同時,也必須認識到將數據存儲到云環境中可能帶來的安全問題。本文筆者根據自己的工作經驗,闡述了云計算的概述,分析了云計算數據加密技術和數據完整性保護技術。
云計算;加密技術;數據完整性
伴隨著云計算市場規模快速擴大,成熟產業鏈正在形成之中,而安全仍然是云計算無法回避的重要話題。云計算系統擁有巨大的計算和存儲能力,云中集成了眾多云提供商與用戶的隱私數據,再者公共云具有極大的開放性和復雜性,所以云的安全性承載著極為嚴峻的挑戰。要想讓云計算得到長足的發展得,解決云的安全問題尤為關鍵。用戶畢竟也需求享受云服務的便利,如果保證云安全的同時能夠保持云計算服務性能,那么對云計算的發展是非常有意義的。
云計算是一種新的超級計算模式,實現云計算模式的基礎為虛擬化技術,以軟件、平臺、基礎設施等作為提供服務的形式,通過網絡作為傳播媒介整合大規模可擴展的計算、存儲、數據、應用等分布式計算資源進行協同工作。在這種新的計算模式下,用戶不用自己花巨額的資金購買眾多的計算機硬件和定制各種應用軟件,而只需根據自己所請求的服務按需支付少量的費用給云計算服務提供商就可以利用網絡方便地獲得這些計算、存儲等資源。
云計算主要是并行計算、分布式計算和網格計算等技術演化而來,是一種動態、可擴展的計算模式。其主要特點概括如下:
(1)虛擬化技術。云計算使用虛擬化技術隔離物理層,硬件相對于用戶來說是透明的,而呈現在用戶面前的是服務接口,用戶只需通過網絡使用手機、電腦等終端來獲取所需服務,這樣就不用與復雜的硬件打交道。
(2)大規模計算能力。云計算平臺對用戶來說擁有近乎無限的計算與存儲資源.絕多數云計算服務提供商的數據中心都具有巨大規模的服務器。
(3)動態可伸縮性。在云計算體系架構中,云服務器根據用戶的實際需求大小來提分配同等資源規模給用戶的,如果當前服務器群的計算或存儲能力不夠,可以實時加入其他服務器來提高它的處理能力,當某個計算節點出現了故障時,可以根據相應的調試策略摒棄該節點,并將這個節點的任務轉交給其他空閑節點,待該節點恢復正常又可將其加入服務云計算群中。
(4)高可靠性服務。云計算中心擁有規模龐大的計算和存貯資源,為了保障云中信息服務的高可靠性,每個云都提供了多副本容錯技術和計算節點同構可互換等措施。
(5)隱私安全保護。用戶存放在云中的數據不能被外部惡意攻擊者獲得,現時也要防止云計算服務提供商故意泄露用戶隱私信息,或者利用用戶數據或信息通過分析挖掘用戶隱私數據。數據的安全和隱私保護涉及用戶數據的整個生命周期,同時涉及到所有參與服務的各層次云服務提供商。
(6)按需服務。云計算平臺的本質是一個龐大的資源池,用戶可以從中選擇所需的服務進行付費使用,不必額外擔負其它空閑計算資源的費用。就像是使用水和電的計價方式一樣,按使用定量計費。
(7)經濟性。由于云計算架構采用特殊的容錯機制,使得云計算可以用極其廉價的計算節點構成,其自動化、集中管理模式,使得企業無需負擔日益高昂的數據中心管理成本。
基于無線環境,對數據加密算法的選擇必須滿足三個條件:運算效率高、安全性高、易于實現。對稱加密算法一般分為分組密碼和序列密碼兩種,分組密碼以固定長度的分組作為基本單元,而序列密碼則以一個元素(一個字母或一位)作為基本處理單位。序列密碼是一種隨時間變化的加密變換,具有加密速度快、低錯誤傳播的優點,硬件電路實現簡單,缺點是擴散度低、混亂性不夠。序列密碼的設計涉及更多的數學理論,主要應用在軍事、外交等機密部門,因此大部分設計都是保密的。
分組密碼工作模式是利用分組密碼構造的對稱密碼方案,簡稱工作模式或者模式。按照安全功能分類,分組密碼工作模式可以分為:加密模式、認證模式和認證加密模式等。分組密碼的工作模式允許使用相同密鑰對多個分組的數據進行加密,并保證其安全性。分組密碼自身只能加密長度等于密碼分組長度的單組數據,若需要加密變長數據,則數據必須先劃分成一些單獨的分組。通常最后一個需要使用合適的填充方式將數據擴展到標準長度。一種工作模式描述每一個分組加密的過程,并使用初始向量的附加輸入值進行隨機化,以保證安全。目前常用的工作模式有六種,分別是電子密碼本、密碼分組鏈接、填充密碼分組鏈接、密文反饋、輸出反饋和計數器模式。它們在安全性和效率方面各不相同,因此在實際應用過程中要根據需要進行選擇。下面筆者著重介紹幾種。
(1)電子密碼本(ECB)模式,需要加密的消息按固定長度分組,對每個分組進行獨立加密,工作模式如圖1。
本方法的優點是執行效率高、可并行處理,但缺點在于相同的明文會被加密成相同的密文分組,不能很好的隱藏明文模式,再者明文很容易被竄改、刪除或互換,并不能提供嚴格的數據保密性,因此這種模式很少被使用于密碼協議中。
(2)密碼分組鏈接(CBC)模式,每一個明文分組先與前一個密文分組進行異或,再進行加密。這種情況下,每個密文分組都依賴于它前面的所有明文分組,同時為了保證每條消息的唯一性,第一個分組中需要使用初始化向量。

圖1 ECB模式加密與解密
本方法主要缺點是在于加密過程是串行的,無法并行,且消息必須被填充到分組大小的整數倍。在加密時的雪崩效應非常明顯,明文中非常微小的改變會導致其后所有的密文分組全部發生改變,而在解密時,從相鄰兩個密文分組即可得到一個明文分組,因此解密的過程是可以并行處理,且支持隨機存取,CBC模式是最為常用的工作模式。
(3)輸出反饋(OFB)模式,可以將分組密碼變成同步的序列密碼,然后將生成的序列密碼與明文進行異或,得到密文分組。密文中的某位的翻轉會使得明文中同樣位置的位發生翻轉,正是基于這種特性,使得錯誤校正碼即使在加密前計算而在加密后進行校驗也是可行的。由于異或操作的對稱性,OFB中加解密操作完全相同。
(4)計數器模式(CTR),通過遞增一個加密計數器將分組密碼變為連續的序列密碼,其中計數器是一個要保證不產生長時間重復輸出的函數,但通常情況下只是使用一個普通的計數器。
數據完整性保護技術一直是數據安全領域的重要組成部分。在云存儲系統中,數據的完整性驗證分為兩種情況:
(1)首先當用戶向云服務器上傳數據時,數據在鏈路上可能會出現安全性問題,如果黑客將數據包截獲,然后對數據進行篡改、插入或刪除,導致數據丟失,即使數據能到達云服務器,此時的數據已被修改,這時需要在云端對數據進行完整性檢查并反饋。
(2)當用戶需要下載自己之前上傳到云端的數據時,用戶將全部數據下載到本地再檢查其完整性是不現實的,這時需要一種“邊下邊驗證”的機制。針對第一種情況,可以使用消息認證碼技術(MAC),這是一種基于發送端與接收端的消息驗證協議。第二種情況可以使用Merkle哈希樹進行實時的數據完整性驗證。
以上本文筆者對云計算數據安全保護問題進行了粗略的研究,由于時間和篇幅有限,還有許多內容沒涉及到,比如密文反饋、填充密碼分組鏈接模式、Merkle哈希樹校驗等,在今后工作中筆者將繼續研究。
[1]胡艷.云計算數據安全與隱私保護[J].科技通報 , 2013.
[2]吳旭東.云計算數據安全研究[J].信息網絡安全 , 2011.
[3]張錚.云計算環境下用戶數據的安全防護和隱私保護問題探討[J].信息技術與信息化,2015.