使用 加密和解密 AWS CloudHSM 檔案 KMU - AWS CloudHSM

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用 加密和解密 AWS CloudHSM 檔案 KMU

使用 AWS CloudHSM key_mgmt_util 中的 aesWrapUnwrap命令來加密或解密磁碟上檔案的內容。此命令旨在包裝和取消包裝加密金鑰,但您可以對包含小於 4 KB (4096 個位元組) 資料的任何檔案使用它。

aesWrapUnwrap 使用AES金鑰包裝 。它會在 上使用 AES金鑰HSM作為包裝或取消包裝金鑰。然後,它會將結果寫入到磁碟上的另一個檔案。

在執行任何 key_mgmt_util 命令之前,您必須啟動 key_mgmt_util,並以加密使用者 (CU) HSM身分登入

語法

aesWrapUnwrap -h aesWrapUnwrap -m <wrap-unwrap mode> -f <file-to-wrap-unwrap> -w <wrapping-key-handle> [-i <wrapping-IV>] [-out <output-file>]

範例

這些範例示範如何使用 aesWrapUnwrap 來加密和解密檔案中的加密金鑰。

範例 :包裝加密金鑰

此命令使用 DES aesWrapUnwrap將三重對稱金鑰以HSM純文字匯出3DES.key 檔案。您可以使用類似命令來包裝在檔案中儲存的任何金鑰。

此命令會使用 -m 參數搭配 1 值來指出包裝模式。它使用 -w 參數,在 HSM(AES金鑰控制碼 6) 中指定金鑰作為包裝金鑰。它會將產生的包裝金鑰寫入 3DES.key.wrapped 檔案。

輸出顯示命令已成功,而操作使用了預設的 IV,這是慣用的操作。

Command: aesWrapUnwrap -f 3DES.key -w 6 -m 1 -out 3DES.key.wrapped Warning: IV (-i) is missing. 0xA6A6A6A6A6A6A6A6 is considered as default IV result data: 49 49 E2 D0 11 C1 97 22 17 43 BD E3 4E F4 12 75 8D C1 34 CF 26 10 3A 8D 6D 0A 7B D5 D3 E8 4D C2 79 09 08 61 94 68 51 B7 result written to file 3DES.key.wrapped Cfm3WrapHostKey returned: 0x00 : HSM Return: SUCCESS
範例 :取消包裝加密金鑰

此範例示範如何使用 aesWrapUnwrap 來將檔案中已包裝 (加密) 的金鑰取消包裝 (解密)。在將金鑰匯入 之前,您可能想要執行類似此操作的操作HSM。例如,如果您嘗試使用 imSymKey命令匯入加密的金鑰,它會傳回錯誤,因為加密的金鑰沒有該類型純文字金鑰所需的格式。

此命令會取消包裝 3DES.key.wrapped 檔案中的金鑰,並將純文字寫入 3DES.key.unwrapped 檔案。此命令會使用 -m 參數搭配 0 值來指出取消包裝模式。它使用 -w 參數,在 HSM(金鑰控制AES碼 6) 中指定金鑰作為包裝金鑰。它會將產生的包裝金鑰寫入 3DES.key.unwrapped 檔案。

Command: aesWrapUnwrap -m 0 -f 3DES.key.wrapped -w 6 -out 3DES.key.unwrapped Warning: IV (-i) is missing. 0xA6A6A6A6A6A6A6A6 is considered as default IV result data: 14 90 D7 AD D6 E4 F5 FA A1 95 6F 24 89 79 F3 EE 37 21 E6 54 1F 3B 8D 62 result written to file 3DES.key.unwrapped Cfm3UnWrapHostKey returned: 0x00 : HSM Return: SUCCESS

參數

-h

顯示命令的說明。

必要:是

-m

指定模式。若要包裝 (加密) 檔案內容,請輸入 1;若要取消包裝 (解密) 檔案內容,請輸入 0

必要:是

-f

指定要包裝的檔案。輸入包含小於 4 KB (4096 個位元組) 資料的檔案。此操作旨在包裝和取消包裝加密金鑰。

必要:是

-w

指定包裝金鑰。在 上輸入金鑰的AES金鑰控制碼HSM。此為必要參數。若要尋找金鑰控點,請使用 findKey命令。

若要建立包裝金鑰,請使用 genSymKey產生AES金鑰 (類型 31)。

必要:是

-i

指定演算法的替代初始值 (IV)。除非您有需要替代方案的特殊條件,否則請使用預設值。

預設:0xA6A6A6A6A6A6A6A6。預設值會在 AES Key Wrap 演算法規格中定義。

必要:否

-out

指定包含已包裝或取消包裝金鑰之輸出檔的替代名稱。本機目錄中的預設值是 wrapped_key (針對包裝操作) 和 unwrapped_key (針對取消包裝操作)。

如果檔案存在,aesWrapUnwrap 會覆寫檔案且不會有任何警告。如果命令失敗,aesWrapUnwrap 會建立沒有內容的輸出檔。

預設值:針對包裝:wrapped_key。針對取消包裝:unwrapped_key

必要:否

相關主題