ORACLE 透明加密(TDE)

2022-04-02 17:04:21 字數 1676 閱讀 2332

author:ch

date:2015

theme:oracle tde test

參考:作用:防止丟失介質後會被別人讀取到資料。在wallet開啟的情況下,使用sql語句查詢實際上是沒有限制的。

操作開始,測試於192.168.8.126(oracle_sid=db),使用oracle使用者登入電腦。

# su – oracle

# vim sqlnet.ora

encryption_wallet_location=

# sqlplus

(1)必須以dba身份登入

(2)開啟wallet修改金鑰,有兩種選擇,一種「萬能」,一種「錢夾」(wallet)

--萬能金鑰

sql> alter system set key identified by "test123456";

--錢夾金鑰(當前未使用)

sql> alter system set wallet open identified by "test123456";

開啟wallet,設定好金鑰之後,完成基礎設定。

--關閉

sql> alter system set encryption wallet close identified by "test123456";

加密檔案,路徑

若是沒開,可以到em去開啟

--對value1進行加密(在126上面有這個表,有幾條資料)

create table test2

(id int encrypt no salt,

value1 number encrypt ,

value2 int

create index idx1_test2 on test2(id);

--若是關閉了wallet,查詢會報錯

sql> alter system set encryption wallet close identified by "test123456";

select value1 from test2;

select * from test2;

ora-28365: wallet 未開啟

l         dba_encrypted_columns:記錄所有的加密字段;

l         all_encrypted_columns:記錄當前使用者所能訪問到的所有加密字段;

l         user_encrypted_columns:記錄當前使用者自身schema所有的加密字段;

(1)在加密列時,存在兩個選項:salt和no salt。

salt在加密前對資料增加隨即字串,增加破解的難度,使得同樣的字串加密結果不同;而對於no salt,則同樣字串可以獲得同樣的加密輸出,其安全性相對略低。

(2)在加密列上,如果使用salt方式,則不能建立索引,salt加密和索引兩種屬性互斥,不能同時設定。

(3)預設salt.

(1)使用tde的情況下,資料庫檔案中儲存的資料值是進行過加密的。加密過的列值一般要長於原始資料值,所以使用tde之後資料表要比不使用大。

(2)tde的加解密操作完全是建立在自動加解密基礎上。插入資料、修改資料的時候會自動將資料加密後存放在資料表中;選擇資料時會自動的將加密過的列值進行解密。這種操作無形中是增加了資料操作的成本

(3)tde是不負責資料傳輸階段加密的。資料從dbms傳出後,還是以明文方式傳輸到應用。

Oracle透明資料加密 TDE 真實環境使用分析

從oracle資料庫1og的r2版本開始,乙個叫做透明資料加密 tde 的特性讓資料加密變得極其容易。我們所需要做的就是把某列宣告成加密的,剩下的全部由oracle完成。當使用者輸入資料時,列值會被截獲 加密,然後用加密後的格式儲存。然後,當這一列被查詢時,又會自動對列值進行解密,然後把解密後的文字...

資料加密 TDE透明資料加密原理

首先需要確定你需要加密的列,oracle 10g資料庫將為包含加密列的表建立乙個私密的安全加密金鑰 表秘鑰 然後採用你指定的加密演算法 aes或3des 加密指定列的明文資料。此時,保護表的加密金鑰 表金鑰 就非常重要了。oracle 10g通過乙個master金鑰來對錶金鑰進行加密。master金...

什麼是透明資料加密 TDE

tde是sql server 2008推出的乙個新特性 透明資料加密 transparent data encryption 簡稱tde,是sql server 2008推出的乙個新特性,用來對整個資料庫提供保護。資料庫開啟tde加密後,對於連線到所選資料庫的應用程式來說是完全透明的,它不需要對現有...