雲端 HSM-標準方案簡介
IBM Cloud® Hyper Protect Crypto Services 由雲端型 FIPS 140-2 Level 4 認證硬體安全模組 (HSM) 組成,提供標準化 API 來管理加密金鑰及執行加密作業。
何謂雲端 HSM?
硬體安全模組 (HSM) 是一種實體裝置,可保護及管理用於強型態鑑別的數位金鑰,並提供加密處理。 HSM 透過安全地管理、儲存及保護防竄改裝置內的加密金鑰,來保護加密基礎架構。
Hyper Protect Crypto Services 包含雲端型專用 HSM,可管理加密金鑰並執行加密作業。 FIPS 140-2 Level 4 認證 HSM 為雲端產業中的加密法提供最高安全等級。 使用「保留自己的金鑰 (KYOK)」功能,您可以取得雲端 HSM 的所有權,這可保證任何人 (包括雲端管理者) 都無法存取您的加密金鑰。 透過此方式,您可以從硬體型加密的最高層次獲得好處,而不需要在工作站或本端伺服器上部署實際 HSM。
若要使用 Hyper Protect Crypto Services 雲端 HSM 來保護您的金鑰和資料,請先透過載入 主要金鑰An encryption key that is used to protect a crypto unit. The master key provides full control of the hardware security module and ownership of the root of trust that encrypts the chain keys, including the root key and standard key.來控制 HSM。 主要金鑰作為金鑰包裝金鑰,擁有加密整個加密金鑰階層的信任根。 如需相關資訊,請參閱 起始設定服務實例。
透過存取雲端 HSM 來執行加密作業
Hyper Protect Crypto Services 提供一組在雲端 HSM 中執行的加密函數。 您可以執行加密作業,例如金鑰產生、資料加密及簽章驗證。 若要這麼做,請使用 PKCS #11 API 或企業 PKCS #11 over gRPC (GREP11) 來存取雲端 HSM API。
若要確保對執行加密作業的專用控制,您可以使用 憑證管理程式 CLI 外掛程式 來啟用 GREP11 或 PKCS #11 API 連線的第二層鑑別。 透過啟用此功能,您可以在 EP11 應用程式的 Identity and Access Management (IAM) 記號上新增額外的存取控制層。 建立相互 TLS 連線以確保只有具有有效用戶端憑證的 EP11 應用程式才能執行 EP11 作業。 如需如何啟用 TLS 鑑別的相關資訊,請參閱 啟用 EP11 連線的第二層鑑別。
使用 PKCS #11 API 存取雲端 HSM
公開金鑰密碼化標準(PKCS)#11 是一種業界標準,可為保留加密資訊及執行加密作業的 HSM 等裝置定義可在不同的平台上執行的 API (稱為 Cryptoki)。 使用 Hyper Protect Crypto Services,您可以使用標準 PKCS #11 API 來存取具有 PKCS #11 程式庫的雲端 HSM。 程式庫會將您的應用程式連接至雲端 HSM,以執行加密作業。
在 PKCS #11 API 支援下,您不需要變更使用 PKCS #11 標準的現有應用程式。 PKCS #11 程式庫接受來自應用程式的 PKCS #11 API 要求,並從遠端存取雲端 HSM 以執行對應的加密功能。 如需 PKCS #11 API 的相關資訊,請參閱 PKCS 簡介 #11。
使用 GREP11 API 存取雲端 HSM
除了 PKCS #11 API 之外,您還可以使用 Enterprise PKCS #11 over gRPC (GREP11) API 來存取 Hyper Protect Crypto Services 雲端 HSM。 Enterprise PKCS #11(EP11) 是在 Hyper Protect Crypto Services 雲端 HSM 中啟用的 IBM支援的加密 API。 EP11 專為尋求開放式標準及加強安全支援的使用者而設計。 EP11 程式庫 提供各種通用加密函數,並提供類似於 PKCS #11 API 的介面。 使用 PKCS #11 的現有應用程式可以受益於加強的安全,因為應用程式可以輕鬆移轉以符合 EP11 需求。
Hyper Protect Crypto Services 利用 gRPC 來啟用雲端 HSM 的遠端應用程式存取權。gRPC 是現代開放程式碼高效能遠端程序呼叫 (RPC) 架構,可連接資料中心內及資料中心之間的服務,以進行負載平衡、追蹤、性能檢查及鑑別。 使用 gRPC,應用程式可以從遠端存取 Hyper Protect Crypto Services 雲端 HSM,以呼叫 EP11 加密函數。 如需 GREP11 API 的相關資訊,請參閱 EP11 over gRPC 簡介。
使用 PKCS #11 及 GREP11 API,您可以執行遠端加密程序呼叫,且依預設會強制訊息大小限制。 接收訊息大小上限是 64 MB,送出訊息大小沒有限制。
比較 PKCS #11 API 與 GREP11 API
PKCS #11 API 和 GREP11 API 都會存取 Hyper Protect Crypto Services 雲端 HSM 所啟用的 EP11 程式庫,以執行加密函數。 下圖說明與雲端 HSM 互動的兩個選項。
與 GREP11 API 相比,標準 PKCS #11 API 的實作可啟用可攜式應用程式,並提供更廣泛的加密作業。 下表顯示兩個選項之間的主要差異。
觀點 | PKCS #11 API | GREP11 API |
---|---|---|
介面實作 | 有狀態介面。 API 要求的結果可能會因隱含狀態 (例如階段作業狀態及使用者登入狀態) 而有所不同。 在有狀態案例中,資料儲存在主機上。 | 無狀態介面。 API 要求的結果一律保持相同。 在無狀態情況下,主機上不會儲存任何資料。 |
先前安裝 | 您需要先在本端工作站上安裝 PKCS #11 程式庫,才能存取 Hyper Protect Crypto Services 雲端 HSM。 | 不需要額外安裝即可存取 Hyper Protect Crypto Services 雲端 HSM。 |
應用程式移轉 | 如果您的應用程式使用標準 PKCS #11 API,則不需要特別針對 EP11 或 gRPC修改現有的應用程式。 | 為了使用 GREP11 API,您需要確保根據 EP11 需求及 gRPC 規格來開發應用程式。 |
鑑別及存取管理 | PKCS #11 程式庫具有一組用於鑑別的標準使用者類型。 您需要在獨立配置檔中定義這些使用者類型,並將存取權管理的對應 IBM Cloud Identity and Access Management (IAM) 角色指派給不同的使用者類型。 如需相關資訊,請參閱 設定 PKCS #11 使用者類型的最佳作法。 | GREP11 API 使用標準 IAM 角色來定義對應的存取權。 如需相關資訊,請參閱 管理使用者存取權。 |
其他配置檔 | 必要。 您需要配置在此檔案中包含使用者角色的所有參數,以確保順利部署 PKCS #11 程式庫。 如需相關資訊,請參閱 配置檔範本。 | 不需要。 連接 Hyper Protect Crypto Services 雲端 HSM 所需的參數可以與應用程式碼一起設定。 |
金鑰儲存庫 | 由 Hyper Protect Crypto Services提供。 使用 PKCS #11 API 產生的金鑰受主要金鑰保護,並儲存在雲端資料庫中。 | Hyper Protect Crypto Services未提供。 您需要在本端工作站或其他裝置上儲存 GREP11 API 所產生的金鑰。 |
支援的加密作業 |
PKCS #11 API 支援大部分標準 PKCS #11 函數:
|
GREP11 API 不支援一般用途函數及階段作業管理函數。 它支援大部分 EP11 加密函數:
|