日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

数据加密 - TDE透明数据加密原理

發布時間:2023/12/20 编程问答 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 数据加密 - TDE透明数据加密原理 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

首先需要確定你需要加密的列,Oracle 10g數據庫將為包含加密列的表創建一個私密的安全加密密鑰(表秘鑰),

然后采用你指定的加密算法(AES或3DES)加密指定列的明文數據。此時,保護表的加密密鑰(表密鑰)就非常重要了。

Oracle 10g通過一個master密鑰來對表密鑰進行加密。master密鑰保存在一個叫做“錢夾(wallet)”的安全的地方,

錢夾可以是數據庫服務器上的一個文件,加密的表密鑰保存在數據字典中。

?

當用戶插入數據到需要加密的列中的時候,Oracle 10g從錢夾中獲取master密鑰,用master密鑰解密數據字典中的表密鑰,

然后用解密后的表密鑰加密輸入數據,再將加密后的數據保存在數據庫中。如下圖所示:

你可以加密表的部分或者所有列,例如一個表有4列,如上圖所示,第2列和第3列被加密,但Oracle只會生成

一個表級的加密密鑰,然后用這個密鑰加密所有的加密列。在磁盤上,第1列和第4列是明文存儲的,第2列和第3列是

加密存儲的。由于數據是加密存儲的,所有后續的組建例如備份和歸檔日志,都是加密的格式。

?

當用戶查詢一個加密列的時候,Oracle 10g透明的將加密的表密鑰從數據字典中取出,再取出master密鑰,

然后解密表密鑰,再用解密后的表密鑰來解密磁盤上加密的數據,最后返回明文給用戶。

?

通過這種加密數據的方式,即使保存在磁盤上的數據被盜,由于master密鑰并沒有被盜,沒有master密鑰的情況下,

數據無法被獲取。即使“錢夾(wallet)”被盜,如果沒有錢夾密碼master密鑰還是無法獲取。因此,即使竊賊盜取了

磁盤或者數據文件的拷貝,也無法解密數據。這樣做滿足了很多規則和指南的要求,而所有的這些并不需要修改應用程序或

者編寫復雜的加密和密鑰管理系統。

?

?

注意:

  • TDE涉及3個密碼,一個是錢夾密碼,用來啟動錢夾;一個是master密鑰,用來加解密表密鑰;一個是表密鑰,用來加解密數據,錢夾密碼是用戶手工輸入的,master密鑰和表密鑰是系統管理的
  • 目前只有Oracle和微軟的SQL Server支持TDE

總結

以上是生活随笔為你收集整理的数据加密 - TDE透明数据加密原理的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。