深入認識存儲安全的復雜性
存儲安全已經成為讓IT經理夜不能寐的最棘手問題之一,他們擔心數據是否會泄露到那些企圖盜取從信用卡、社會保障號碼到銀行賬戶、企業機密甚至是名人護照文件的不法分子手中。
最理想的情況是,信息從創建到被銷毀都是經過加密的。而且大家還希望鎖定數據,這樣只有那些授權用戶才能訪問到每份文件。如果所有系統都支持這種機制就再好不過了,這樣你就不會看到像間諜電影中那樣數據被盜取的場景。當然,如果沒有非常深入的研究是不可能實現這些的。
但是隨著數據丟失事件像數據量本身那樣飛速增長,應該是時候挑戰一下支持整體數據安全。當然,研發和采用一個端對端解決方案是兩碼事,但是如果我們了解了這個問題的難度和復雜性,就等于有了一個解決問題的良好開端。
密鑰管理
密鑰管理一直是IT管理者最嚴峻的挑戰之一,其理由非常簡單:你很難對包括文件、存儲網絡、磁盤驅動器、磁帶以及其他所有設備實施統一而安全的密鑰管理。不同行業與政府對密鑰管理的要求都是不同的。不同企業機構、甚至是機構內部的不同部門對安全性的等級要求都是不一樣的,而且需要的安全策略類型也是不同的。
有些企業機構可能需要一種特定人群具有修改密鑰權限的模式,還有一些企業機構可能需要讓一人或者多人擁有相同的數據安全密鑰控制權限。
你還需要解決安全性等級的問題。現在,你有針對磁帶和磁盤驅動器不同的你要管理架構,更不用說數據路徑下的其他因素了。現在有很多組織機構都致力于密鑰管理的實施和統一。IEEE協會就是其中之一,去年在IEEE Mass Storage Conference上他們舉行了一次關于密鑰管理的峰會。未來密鑰管理仍將是一個我們需要面對的難題。
#p#
性能問題
加密的另一大挑戰就是性能問題。當然,加密的成本是取決于在哪加密、使用什么方法加密數據。例如,使用LTO-4加密硬件或者希捷Cheetah驅動器的數據加密功能是不需要任何成本的,原因非常簡單:這些設備都采用了基于硬件的加密技術。
有些設備是在存儲網絡中進行加密的。這些設備可能是完全基于設備的,但是這對磁帶來說并不是一件好事。如果你在壓縮之前加密,那么壓縮的幾率就會降低;你需要做的是,先壓縮后加密。這時候又有一個問題,inline設備能夠對磁帶驅動器進行完全壓縮或者加密。隨著磁帶速度越來越快,這往往需要很高的成本。
那么服務器方面呢?我發現很多HSM應用能夠在讀取或者向磁帶寫入數據的時候進行校驗和。我還發現當啟動校驗和的時候,磁帶性能就會大幅下滑。
我們都知道,校驗和計算的復雜性遠低于加密算法的復雜性。加密算法的計算非常密集,而且通用CPU可能并不適用于運行這些復雜算法。這些類型的算法最適宜于在向ASIC或者更快的FPGAs這樣專門的硬件上運行。CPU速度越來越快,但是內存帶寬的增長速度并沒有與CPU性能增長保持一致,將數據移入或者移出內存來在系統I/O處理密集的中加密或者解密數據,這可能無法卯足加密需求以確保設備滿足I/O需求。
#p#
相關標準
即使有一個專門制定關于密鑰管理標準的組織,但這遠遠不能解決問題,因為這無法解決針對整個數據路徑的安全性和密鑰管理需求。
因為加密架構需要能夠在文件系統內定義加密功能(我發現一些機構希望在內存中加密數據,然后在處理之前解密數據),所以一個加密架構應該能夠針對文件系統內的每一份文件支持不同等級的加密功能,確保能夠追蹤到來源并且在文件生命周期內保留它的來源。
除了這種維護措施之外,還要解決長期擁有的問題。例如,如果一份文件是被一位用戶加密,但是需要被另外一位用戶使用,那么其他用戶是如何獲得認證的?如果原始用戶并不是在理想狀態下創建的文件將會發生什么?文件如何被解密然后送交另一位用戶?誰擔負這個責任?需要怎樣的安全機制來確保文件所有權被遷移、而負責遷移的人不會獲得文件訪問權?在加密環境下,你擁有根密碼并不意味著你能夠看到所有數據。
這只是文件系統可能會發生的一些問題。我相信你肯定會設想一個由存儲網絡、存儲控制器和存儲設備構成的完全安全的環境。管理架構是一個難題。
標準組織聯合起來
因為性能問題和管理復雜性,所有可以說加密是一個很難解決的問題。如果希望能夠有效而可管理地加密,需要解決的就不僅僅是密鑰管理問題——盡管這可能是重要的***步,而且還需要從用戶一直到設備的標準架構。不同的標準組織應該聯合起來,也就是說,像The OpenGroup (POSIX)、IETF、ANSI T10、T11和T13這些組織都應該致力于SAN設備的相關標準,如果FCoE是未來的存儲發展趨勢,我們還需要把FCoE也納入其中。
現在加密只能解決單點問題:對磁帶進行加密,這樣我們運輸磁帶的時候就不用擔心數據安全問題;對磁盤驅動器進行加密,這樣如果卸載磁盤驅動器就不能對其進行讀取。這些解決方案解決了現實環境中諸多問題,不過還不足以解決TJX相關問題。
我認為,在開始實施端對端加密之前,我們必須解決兩個短期內的主要問題。首先,我們需要找出如何不利用CPU在主機加密的方法,因為雖然現有的CPU技術仍然為物理應用提高了足夠的計算能力,但是無法以線速率進行加密和解密。
其次,我們需要端對端標準解決數據路徑和數據遷移環境中的加密和密鑰管理問題。也就是說,必須利用像NFS、ftp、插槽和其他一些遷移方法。這對標準組織和必須執行這些標準的廠商來說都是一個重要要求。
我認為現在我們離數據安全領域還有很長一段路要走。當然,已經有很多廠商推出了專門的解決方案,但如果我們沒有一個基于標準的架構,那么可能所有人都是朝著一個方向前進的。