KMU を使用して AWS CloudHSM ファイルを暗号化および復号する - AWS CloudHSM

KMU を使用して AWS CloudHSM ファイルを暗号化および復号する

AWS CloudHSM key_mgmt_util の aesWrapUnwrap コマンドを使用して、ディスク上のファイルの内容を暗号化または復号化します。このコマンドは、暗号化キーをラップおよびラップ解除するように設計されていますが、4 KB (4096 バイト) 未満のデータを含むすべてのファイルに使用できます。

aesWrapUnwrapAES キーのラップを使用します。HSM で、ラップまたはラップ解除キーとして、AES キーを使用します。その後、ディスク上の別のファイルに結果が書き込まれます。

key_mgmt_util コマンドを実行する前に、key_mgmt_util を起動し、Crypto User (CU) として HSM に ログインする 必要があります。

Syntax

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

以下の例では、aesWrapUnwrap を使用してファイルの暗号化キーを暗号化および復号する方法を示します。

例 : 暗号化キーをラップする

次のコマンドでは、aesWrapUnwrap を使用してプレーンテキストで HSM からエクスポートされた Triple DES 対称キーを 3DES.key ファイルにラップします。同様のコマンドを使用して、ファイルに保存されたキーをラップできます。

コマンドは、ラップモードを示す 1 の値で -m パラメータを使用します。-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

ラップキーを指定します。HSM で AES キーのキーハンドルを入力します。このパラメータは必須です。キーハンドルを見つけるには、findKey コマンドを使用します。

ラッピングキーを作成するには、genSymKey を使用して AES キー (タイプ 31) を生成します。

必須: はい

-i

アルゴリズムの代替の初期値 (IV) を指定します。代替を必要とする特殊な条件がなければ、デフォルト値を使用します。

デフォルト: 0xA6A6A6A6A6A6A6A6。デフォルト値は AES キーのラップのアルゴリズム仕様で定義されています。

必須:いいえ

-out

ラップまたはラップ解除されたキーを含む出力ファイルに代わりの名前を指定します。デフォルトは、ローカルディレクトリの wrapped_key (ラップオペレーション) および unwrapped_key (ラップ解除オペレーション) です。

既存のファイルがある場合、aesWrapUnwrap は警告なしに上書きされます。コマンドが失敗すると、aesWrapUnwrap で内容のない出力ファイルが作成されます。

デフォルト: ラップ: wrapped_key。ラップ解除: unwrapped_key

必須:いいえ

関連トピック