使用封套加密保護資料

Key Protect 採用封套加密 以協助保護您的 Key Protect 時間。 信封加密涉及使用資料加密金鑰對資料進行加密,然後使用根金鑰對資料加密金鑰進行加密。 本主題說明 封套加密的流程以及如何使用 Key Protect 加密和解密您的資料。

在處理敏感資料時,使用高級加密技術來防止資料外洩非常重要。 如果您擁有大量機密資料, 通常建議使用金鑰管理系統來協助確保資料安全。 Key Protect使用信封加密技術來保持資料的彈性。 信封加密是使用加密金鑰、資料加密金鑰和根金鑰來保護敏感資料的過程。

想像一下,您打算寫一封信給一位同事。 您想要討論高度敏感的訊息,因此您產生一個密碼(資料加密金鑰),用於在信件中寫入(加密)訊息。 信件被傳送到郵箱(包裝資料加密金鑰) 只有擁有郵箱密鑰(根密鑰)副本的人(包括同事)才能打開。 任何沒有密鑰精確副本的人都將無法打開郵箱並查看其內容。 當您的同事使用金鑰解鎖(解密)信箱時,他們需要知道信件所寫入的密碼才能理解郵件。 每個不知道密碼的人都會得出結論,這封信是字符的隨機組合,並且無法理解信件的內容。

資料加密金鑰(DEK)旨在對您的資料進行加密,可由您的服務或IBM Cloud 服務進行產生與管理

信封加密為保護您的資料提供了多種優勢:

  • 多種演算法組合的保護信封加密利用對稱和公鑰演算法的最佳優勢來確保金鑰的安全。
    1. 對稱金鑰演算法比公鑰演算法工作速度更快、可擴展性更強且更安全。 公鑰演算法使用複雜的數學,這會增加計算開銷,特別是在處理大量資料時。 由於具有易於被駭客識別的私鑰演算法元件,公鑰演算法也更容易受到暴力攻擊。 對稱密鑰演算法需要較少的計算能力,並且由於具有不太可識別的結構而能夠抵抗強力攻擊。
    2. 與對稱密鑰演算法相比,公鑰演算法在授予個人級別的密鑰存取權限時可以更輕鬆地進行存取控制。 對稱金鑰演算法存在金鑰交換問題,即只能透過安全傳輸來交換對金鑰的存取。 透過使用公鑰演算法,加密的 DEK ( wDEKs ) 只能由有權存取加密根金鑰的人員共用和解密,從而緩解對稱演算法的金鑰交換問題。
  • 更輕鬆的金鑰管理 您可以在單一根金鑰下加密多個 DEK,從而最大程度地減少您可能需要在金鑰管理服務中管理的金鑰數量。 您還可以選擇僅輪換根密鑰,而不是輪換和重新加密所有 DEK,從而節省密鑰維護時間。 請注意,在人員流動、流程故障或偵測到安全問題等情況下,建議輪換與事件相關的所有 DEK 和根金鑰。
  • 資料金鑰保護 由於您的 DEK 被根金鑰封裝,因此您不必擔心如何儲存加密的資料金鑰。 因此,您可以將wDEK與關聯的加密資料一起儲存。

Key Protect 採用高盧斯/計數模式(AES GCM )下的進階加密標準(AES)演算法,對 DEK 進行加密與解密。 未導入的 CRK 是使用 256 位元金鑰材質建立的。 導入的 CRK 可以具有 128、192 或 256 位元金鑰材料。

信封加密的工作原理

信封加密的工作原理是使用根密鑰來包裝(加密)一個或多個資料加密金鑰 (DEK)。 根密鑰透過加密演算法保護您的打包(加密)DEK,防止它們受到未經授權的存取或洩漏。

解封 DEK 是透過使用相關的 根金鑰來逆向執行封套加密過程,最終得到經過解密與驗證的 DEK。 經過封裝的 DEK 若沒有 對應的根金鑰,便無法 解封,這為您的資料增添了額外一層 安全性。

「NIST 特殊出版品 800-57」的「金鑰管理建議」中,簡要地論述封套加密。 要了解更多信息,請參閱 NIST SP 800-57 Pt. 1 修訂版 4

金鑰類型

對於資料的進階加密及管理,服務支援兩種金鑰類型:根金鑰及標準金鑰。

根金鑰
根鍵是 Key Protect. 它們是對稱金鑰包裝金鑰,用來作為信任根源,以包裝(加密)及解除包裝(解密)資料服務中所儲存的其他金鑰。 根密鑰包含用於包裝和解開 DEK 的密鑰材料。 根密鑰的密鑰材料可以是導入的,也可以是根密鑰產生的 Key Protect服務。
透過 Key Protect,您可以建立、 儲存並管理根金鑰的生命週期,從而全面掌控 儲存於雲端中的其他數位金鑰(DEK)。 與標準金鑰不同, 根金鑰的明文絕不能超出 Key Protect服務。
標準金鑰
標準金鑰,可用作DEK,可以將加密資料儲存在 Key Protect. 產生明文標準金鑰並保護底層資料後,銷毀明文並安全地儲存加密的標準金鑰。

使用信封加密封裝密鑰

您可以透過在 Key Protect 中指定一個 由您完全管理的根金鑰, 將一個或多個 DEK 套用進階加密演算法進行加密。

完成以下步驟以透過信封加密對資料進行加密:

  1. 從IBM Cloud服務(例如 COS) 產生或配置 DEK,以加密您的敏感資料。 DEK 將對您的敏感資料進行加密。
  2. 產生匯入 將用於保護步驟 1 中的 DEK 的根金鑰。
  3. 使用根金鑰加密或 包裝 DEK。 為了提供最大程度的加密安全性,您可以在打包請求期間指定其他經過驗證的資料 (AAD)。 請注意,解開 DEK 時將需要相同的身份驗證資料。
  4. 然後,加密的資料會作為元資料儲存在Key Protect中 服務。 將包裝的 DEK 的base64編碼輸出儲存並維護在安全位置(例如應用程式或服務)。

您可以透過在包裝請求中省略 plaintext 屬性來產生新的 DEK。 新建立的 DEK 將自動包裝為請求的一部分。

解除包裝金鑰

解開資料加密金鑰 (DEK) 可解密並驗證金鑰內受保護的資料。

如果您的企業應用程式需要存取封裝 DEK 的內容, 您可以使用 Key Protect API 向該服務發送 解封裝請求

完成以下步驟以透過信封加密對資料進行加密:

  1. 檢索包裝的 DEK 的base64編碼密文。
  2. 檢索與 DEK 關聯的根密鑰的密鑰 ID
  3. 向Key Protect發出 解包請求。 請注意,如果您在先前的包裝請求中指定了其他經過驗證的資料 (AAD),則必須在解包請求中提供它。
  4. 使用傳回的base64編碼的明文來解密受DEK保護的資料。

與 IBM Cloud 服務整合

IBM® Key Protect for IBM Cloud®與許多集成 IBM Cloud服務,使用客戶管理的金鑰為這些服務啟用加密。

將雲端資料服務中的資源與根密鑰相關聯 Key Protect允許您的資料在靜態時受到保護,同時對根金鑰進行管理控制。

有關提供整合的服務的更多信息 Key Protect,請參閱 整合服務