王偉 覃曉寧 張晉華
(藍盾信息安全技術有限公司,廣東廣州 510180)
一種基于動態加解密的磁盤數據防護方案
王偉 覃曉寧 張晉華
(藍盾信息安全技術有限公司,廣東廣州 510180)
為進一步做好數據存儲的安全保護工作,本文設計了一種磁盤數據防護方案,通過本地磁盤讀寫請求的攔截機制、全盤扇區加解密機制,在內核層實時動態對磁盤數據的讀取進行加解密,能從數據源頭上都提供更為有效的防護措施,使磁盤數據免受侵擾、破壞和外泄。
動態加解密 磁盤 數據防護
隨著信息技術的普及,數據信息資源的交換、共享、使用也變得越發容易,同時也加劇了數據存儲保護的安全性問題。目前各類信息數據的存儲載體已由紙質介質為主發展到了聲、光、電、磁等多種形式共存,且由于信息化建設的快速發展,各種盜竊信息的手段防不勝防,這使得各涉密資料和重要數據被竊取并通過各類途徑傳播的風險大幅提升。在當下信息泄露事件多發,網絡安全形勢復雜的情況下,進一步做好數據存儲的安全保護工作,刻不容緩,勢在必行。
當今,由于計算機的普遍使用,磁盤自然作為存儲各信息數據的首選載體。作為數據的直接載體,磁盤所面臨的安全威脅更加嚴峻。于是,各企事業單位為了保護自身存儲的數據安全,也引進了各種安全措施以防止數據泄露,如防火墻、入侵檢測系統等安全產品,但采用這些安全措施只能保證不受非授權訪問的侵擾,若有心者繞過啟動認證流程或將該計算機上的磁盤掛到其它計算機上,即可輕易拷貝其中的數據,由此造成的后果不堪設想。
因此有必要研究更為有效的磁盤數據防護方法,用以彌補一般計算機系統保密措施的缺陷(只是限制其他用戶使用計算機,卻無法從根本上防止存儲在該計算機上的數據泄密的問題)。基于用戶的行為習慣和磁盤數據的存取方式,本文提出一種本地磁盤數據防護方案,以便從數據源頭上做好信息安全防護工作。
本方案采用先進的動態加解密技術,基于全盤物理扇區級和文件級的加密方法,結合攔截、獲取、加解密、數據存取等機制。基本工作原理是:當用戶向對磁盤數據發起讀寫請求時,啟動認證機制,對請求操作進行攔截控制,基于用戶名和密碼雙因子確認用戶身份,并基于用戶提交的驗證物對磁盤數據進行實時加密和解密操作。本方案可保護磁盤中所有數據的存儲和使用安全,避免因便攜終端或移動設備丟失、存儲設備報廢和維修所帶來的數據泄密風險。
這種加密方式,表面看來跟傳統的訪問控制和靜態加密手段相似,但其實不然。傳統的訪問控制只是通過身份授權方式,控制用戶通過正規的啟動方式進入系統,一旦用戶通過其他方式引導系統啟動或將磁盤掛靠到其它計算機上,便可輕易讀取磁盤上的數據,對于數據的深層防護遠遠不足。
靜態加密技術是指在加密期間,待加密的電子文件處于已存在但未使用狀態,操作者通過輸入密碼、密鑰證書或數字簽名等方式,對電子文件進行加密。加密文件使用時,需要操作者通過輸入密碼或密鑰證書或數字簽名等解密信息,在得到明文后才能使用。該方法無法存在不能實時處理、在面對海量數據需加密時效率不高等缺點。而本文提及的動態加解密技術是在系統內核層自動實現,無需用戶的干預,可以攔截到所有的數據讀寫請求操作,并基于用戶提交的驗證物,對磁盤進行全盤加解密。加密后的數據對于非法用戶都是密文形式,其讀取完全依賴于用戶設置的密碼,為了防止破解,系統不會在磁盤上存儲用戶的密碼,它存儲的只是算法運算后的散列值,根據現代密碼學的理論可知,通過散列值無法逆推出用戶密碼。即使其他用戶通過修改計算機啟動流程,實現了不需輸入密碼即可繼續執行的目的,但由于沒有正確的密碼,系統會用不正確的密碼去解密磁盤數據,在這種情況下,“解密”后的數據只會更混亂(因為用不正確的密碼去解密相當于用這個不正確的密碼去加密)。
接下來通過選取磁盤級加密方法,并以向磁盤寫數據為例,描述此磁盤數據防護方案的具體工作方式。
計算機在安裝該防護系統后,啟動時,會加載操作系統程序,即向本地磁盤發出讀請求,指向操作系統文件。此時攔截功能模塊會攔截該讀請求,并提示用戶輸入密碼。輸入密碼后,獲取功能模塊將獲取用戶輸入的密碼作為驗證物并提交給加解密功能模塊。
然后,數據存取功能模塊從本地磁盤讀取未解密的操作系統文件,并交由加密解密模塊功能解密。加密解密功能模塊對獲取模塊提交的驗證物作單向散列運算,得到散列值,并用該散列值以預設的加密解密策略對未解密的操作系統文件進行解密。若用戶輸入的密碼與最初加密操作系統文件所用密碼一致(即散列值一致),則可完整還原操作系統文件,進而成功加載操作系統,實現計算機正常開機;否則,由于密碼不一致,還原的操作系統文件為亂碼(或不可用),導致無法正常開機。
在計算機正常啟動后,用戶向磁盤發起寫數據請求,同樣,攔截功能模塊會攔截該寫請求,同時獲取功能模塊以正常啟動計算機時用戶提供的密碼作為驗證物提交給加解密模塊,而加密解密模塊必須對該驗證物作單向散列運算,得到散列值,并用該散列值以預設的加密解密策略對需要寫入磁盤的未加密文件進行加密。最后,數據存取功能模塊向本地磁盤的指定位置寫入經由加密解密功能模塊加密后的文件,以備后續調用。而該加密數據只有當用戶輸入的密碼正確的情況才能被解密成明文,否則,用戶得到的只是被錯誤密碼再次加密后的亂碼。
綜上,該磁盤級物理扇區加密方法確實更能保護全磁盤數據的讀寫安全。如果密鑰長度達到16個字符以上時,在現有計算機運算速度的條件下,從理論上分析,要想解密被加密后的數據,所需的時間也是以百萬年為計數單位。且通過攔截、獲取驗證碼、加密解密、數據存取四個功能模塊的系統安全設計,能從數據根源上保證數據安全,切斷泄密風險。
數據存儲方式多樣,泄密方式也千變萬化。本文淺析了一種磁盤數據防護系統,提出了本地磁盤讀寫請求的攔截機制、全盤扇區加解密機制,在內核層實時動態對磁盤數據的讀取進行加解密,能從數據源頭上都提供更為有效的防護措施,使磁盤數據免受侵擾、破壞和外泄。但各單位還需加強身份鑒別、移動介質管理、安全審計、應用控制、檢查監管、實時監控等安全防護措施,才能更進一步保證敏感信息和重要數據安全。
[1]鄭平泰.磁盤數據安全技術與編程實例[M].中國水利水電出版社,2007.
[2]高偉,谷大武,侯方勇等.磁盤安全保護技術綜述[J].計算機應用研究,2008,25(5):1288-1291.
[3]俞歷豐,侯方勇.基于硬件加密的磁盤數據保護技術綜述[C].第十五屆全國青年通信學術會議論文集,2010.