複製鏈接
請複製以下鏈接發送給好友

數據庫加密

(基於透明加密技術、主動防禦機制的數據庫防泄漏系統)

鎖定
數據庫加密系統是一款基於透明加密技術、主動防禦機制的數據庫防泄漏系統,該產品能夠實現對數據庫中的敏感數據加密存儲、訪問控制增強、應用訪問安全、安全審計以及三權分立等功能。有效防止明文存儲引起的數據泄密、突破邊界防護的外部黑客攻擊、來自於內部高權限用户的數據竊取,防止繞開合法應用系統直接訪問數據庫,從根本上解決數據庫敏感數據泄漏問題,真正實現了數據高度安全、應用完全透明、密文高效訪問等技術特點。
數據庫安全技術之一,數據庫安全技術主要包括:數據庫漏洞掃描、數據庫加密、數據庫防火牆數據脱敏數據庫安全審計系統
數據庫透明加密是數據庫加密技術的關鍵,避免了應用系統程序需要大量改造,產生很多的附加成本。
中文名
數據庫加密
外文名
DES
專利技術
密文索引和應用透明

數據庫加密應用介紹

數據庫加密應用背景

當前我國涉密部門(軍隊軍工政府、金融行業、保險行業、電信行業等)中,80%以上應用系統使用國外數據庫產品,特別是Oracle;如何保證系統在高性能、高可用的同時提升數據的安全性,確保關鍵信息不被泄露、國家利益不受損失已經迫在眉睫。

數據庫加密政策要求

2020年1月1日,《中華人民共和國密碼法 [1]  正式施行,對數據庫加密技術提出了密碼技術要求,國家對密碼實行分類管理。密碼分為核心密碼、普通密碼和商用密碼
第七條 核心密碼、普通密碼用於保護國家秘密信息,核心密碼保護信息的最高密級為絕密級,普通密碼保護信息的最高密級為機密級。
核心密碼、普通密碼屬於國家秘密。密碼管理部門依照本法和有關法律、行政法規、國家有關規定對核心密碼、普通密碼實行嚴格統一管理

數據庫加密存在問題

當前主流Oracle安全增強方案包括前置代理、應用加密和Oracle自帶加密選件TDE等。前置代理需要應用大幅改造、大量Oracle核心特性無法使用;應用加密必須由應用實現數據加密,加密數據無法檢索,已有系統無法透明移植;TDE不能集成國產加密算法,不符合國家密碼政策。因此這幾種方案一直未能得到有效推廣。
成熟的數據庫加密軟件應該解決兩大重要難題,一是應用透明 [1]  ,二是密文索引 [2]  。在安裝了數據庫加密軟件後,原有的應用系統基本不需要改造,因為大型的應用程序改造起來很困難,有的甚至源程序沒有了,導致無法改造;明文轉為密文後,原有按明文構造的索引必然失效,這就需要按照密文對應明文查詢的順序構造密文索引 [3]  ,通過密文索引可以讓數據庫查詢速度幾乎不減慢。

數據庫加密實現技術

對數據進行加密,主要有三種方式:系統中加密、客户端(DBMS外層)加密、服務器端(DBMS內核層)加密。客户端加密的好處是不會加重數據庫服務器的負載,並且可實現網上的傳輸加密,這種加密方式通常利用數據庫外層工具實現。而服務器端的加密需要對數據庫管理系統本身進行操作,屬核心層加密,如果沒有數據庫開發商的配合,其實現難度相對較大。此外,對那些希望通過ASP獲得服務的企業來説,只有在客户端實現加解密,才能保證其數據的安全可靠。
常用數據庫加密技術
信息安全主要指三個方面。一是數據安全,二是系統安全,三是電子商務的安全。核心是數據庫的安全,將數據庫的數據加密就抓住了信息安全的核心問題。
對數據庫中數據加密是為增強普通關係數據庫管理系統的安全性,提供一個安全適用的數據庫加密平台,對數據庫存儲的內容實施有效保護。它通過數據庫存儲加密等安全方法實現了數據庫數據存儲保密和完整性要求,使得數據庫以密文方式存儲並在密態方式下工作,確保了數據安全。
數據庫加密功能特性
經過近幾年的研究,我國數據庫加密技術已經比較成熟。
一般而言,一個行之有效的數據庫加密技術主要有以下6個方面的功能和特性。
用户除提供用户名、口令外,還必須按照系統安全要求提供其它相關安全憑證。如使用終端密鑰。
(2) 通信加密與完整性保護:
有關數據庫的訪問在網絡傳輸中都被加密,通信一次一密的意義在於防重放、防篡改
(3) 數據庫數據存儲加密與完整性保護:
數據庫系統採用數據項級存儲加密,即數據庫中不同的記錄、每條記錄的不同字段都採用不同的密鑰加密,輔以校驗措施來保證數據庫數據存儲的保密性和完整性,防止數據的非授權訪問和修改。
(4)數據庫加密設置:
系統中可以選擇需要加密的數據庫列,以便於用户選擇那些敏感信息進行加密而不是全部數據都加密。只對用户的敏感數據加密可以提高數據庫訪問速度。這樣有利於用户在效率與安全性之間進行自主選擇
(5)多級密鑰管理模式:
主密鑰和主密鑰變量保存在安全區域,二級密鑰受主密鑰變量加密保護,數據加密的密鑰存儲或傳輸時利用二級密鑰加密保護,使用時受主密鑰保護。
(6) 安全備份:
系統提供數據庫明文備份功能和密鑰備份功能。
數據庫加密基本要求
(1) 字段加密;
(2) 密鑰動態管理;
(3) 合理處理數據;
(4) 不影響合法用户的操作;
(5) 防止非法拷貝;
數據庫數據加密實現
使用數據庫安全保密中間件對數據庫進行加密是最簡便直接的方法。主要是通過系統中加密、DBMS內核層(服務器端)加密和DBMS外層(客户端)加密。
在系統中加密,系統無法辨認數據庫文件中的數據關係,將數據先在內存中進行加密,然後文件系統把每次加密後的內存數據寫入到數據庫文件中去,讀入時再逆方面進行解密就,這種加密方法相對簡單,只要妥善管理密鑰就可以了。缺點對數據庫的讀寫都比較麻煩,每次都要進行加解密的工作,對程序的編寫和讀寫數據庫的速度都會有影響。
在DBMS內核層實現加密需要對數據庫管理系統本身進行操作。這種加密是指數據在物理存取之前完成加解密工作。這種加密方式的優點是加密功能強,並且加密功能幾乎不會影響DBMS的功能,可以實現加密功能與數據庫管理系統之間的無縫耦合。其缺點是加密運算在服務器端進行,加重了服務器的負載,而且DBMS和加密器之間的接口需要DBMS開發商的支持。
在DBMS外層實現加密的好處是不會加重數據庫服務器的負載,並且可實現網上的傳輸,加密比較實際的做法是將數據庫加密系統做成DBMS的一個外層工具,根據加密要求自動完成對數據庫數據的加解密處理。
採用這種加密方式進行加密,加解密運算可在客户端進行,它的優點是不會加重數據庫服務器的負載並且可以實現網上傳輸的加密,缺點是加密功能會受到一些限制,與數據庫管理系統之間的耦合性稍差。
數據庫加密系統分成兩個功能獨立的主要部件:一個是加密字典管理程序,另一個是數據庫加解密引擎。數據庫加密系統將用户對數據庫信息具體的加密要求以及基礎信息保存在加密字典中,通過調用數據加解密引擎實現對數據庫表的加密、解密及數據轉換等功能。數據庫信息的加解密處理是在後台完成的,對數據庫服務器是透明的。
按以上方式實現的數據庫加密系統具有很多優點:首先,系統對數據庫的最終用户是完全透明的,管理員可以根據需要進行明文和密文的轉換工作;其次,加密系統完全獨立於數據庫應用系統,無須改動數據庫應用系統就能實現數據加密功能;第三,加解密處理在客户端進行,不會影響數據庫服務器的效率。
數據庫加解密引擎是數據庫加密系統的核心部件,它位於應用程序與數據庫服務器之間,負責在後台完成數據庫信息的加解密處理,對應用開發人員和操作人員來説是透明的。數據加解密引擎沒有操作界面,在需要時由操作系統自動加載並駐留在內存中,通過內部接口與加密字典管理程序和用户應用程序通訊。數據庫加解密引擎由三大模塊組成:加解密處理模塊、用户接口模塊和數據庫接口模塊。
參考資料