

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# KMU を使用して AWS CloudHSM キーをエクスポートする
<a name="key_mgmt_util-wrapKey"></a>

 AWS CloudHSM key\$1mgmt\$1util の **wrapKey** コマンドを使用して、対称キーまたはプライベートキーの暗号化されたコピーをハードウェアセキュリティモジュール (HSM) からファイルにエクスポートします。**wrapKey** を実行するときに、エクスポートするキー、エクスポートするキーを暗号化 (ラップ) するための HSM 上のキー、出力ファイルを指定します。

`wrapKey` コマンドは、暗号化されたキーを指定したファイルに書き込みますが、キーを HSM から削除したり、暗号化オペレーションでのキーの使用を禁止したりすることはありません。同じキーを複数回エクスポートできます。

キーは、キーの所有者 (キーを作成した Crypto User (CU)) のみエクスポートできます。キーを共有するユーザーは、キーを暗号化オペレーションで使用することはできますが、エクスポートすることはできません。

暗号化されたキーを HSM に再度インポートするには、[unWrapKey](key_mgmt_util-unwrapKey.md) を使用します。HSM からプレーンテキストキーをエクスポートするには、必要に応じて [exSymKey](key_mgmt_util-exSymKey.md) または [exportPrivateKey](key_mgmt_util-exportPrivateKey.md) を使用します。[aesWrapUnwrap](key_mgmt_util-aesWrapUnwrap.md) コマンドは、**wrapKey** で暗号化したキーを復号 (ラップ解除) することはできません。

key\$1mgmt\$1util コマンドを実行する前に、[key\$1mgmt\$1util を起動し](key_mgmt_util-setup.md#key_mgmt_util-start)、Crypto User (CU) として HSM に [ログインする](key_mgmt_util-log-in.md) 必要があります。

## Syntax
<a name="wrapKey-syntax"></a>

```
wrapKey -h

wrapKey -k <exported-key-handle>
        -w <wrapping-key-handle>
        -out <output-file>
        [-m <wrapping-mechanism>]
        [-aad <additional authenticated data filename>]
        [-t <hash-type>]
        [-noheader]
        [-i <wrapping IV>]  
        [-iv_file <IV file>]
        [-tag_size <num_tag_bytes>>]
```

## 例
<a name="wrapKey-examples"></a>

**Example**  
次のコマンドでは、192 ビット Triple DES (3DES) 対称キー (キーハンドル `7`) をエクスポートします。HSM で 256 ビット AES キー (キーハンドル `14`) を使用してキー `7` をラップします。次に、暗号化された 3DES キーを `3DES-encrypted.key` ファイルに書き込みます。  
次の出力は、キー `7` (3DES キー) が正常にラップされて指定したファイルに書き込まれたことを示しています。暗号化されたキーの長さは 307 バイトです。  

```
        Command:  wrapKey -k 7 -w 14 -out 3DES-encrypted.key -m 4

        Key Wrapped.

        Wrapped Key written to file "3DES-encrypted.key length 307

        Cfm2WrapKey returned: 0x00 : HSM Return: SUCCESS
```

## パラメータ
<a name="wrapKey-params"></a>

**-h**  
コマンドに関するヘルプを表示します。  
必須: はい

**-k**  
エクスポートするキーのキーハンドル。所有する対称キーまたはプライベートキーのキーハンドルを入力します。キーハンドルを見つけるには、[findKey](key_mgmt_util-findKey.md) コマンドを使用します。  
キーがエクスポート可能であることを検証するには、[getAttribute](key_mgmt_util-getAttribute.md) コマンドを使用して、`OBJ_ATTR_EXTRACTABLE` 属性の値を取得します。この属性は定数 `354` で表されます。キー属性の解釈については、[AWS CloudHSM KMU のキー属性リファレンス](key-attribute-table.md) を参照してください。  
ユーザーが所有するキーのみをエクスポートすることができます。キーの所有者を確認するには、[getKeyInfo](key_mgmt_util-getKeyInfo.md) コマンドを使用します。  
必須: はい

**-w**  
ラップキーを指定します。HSM の AES キーまたは RSA キーのキーハンドルを入力します。このパラメータは必須です。キーハンドルを見つけるには、[findKey](key_mgmt_util-findKey.md) コマンドを使用します。  
ラッピングキーを作成するには、[genSymKey](key_mgmt_util-genSymKey.md) を使用して AES キー (タイプ 31) を生成するか、[ genRSAKeyPair](key_mgmt_util-genRSAKeyPair.md) を使用して RSA キーペア (タイプ 0) を生成します。RSA キーペアを使用している場合は、必ず一方のキーでキーをラップし、もう一方のキーでアンラップしてください。キーをラッピングキーとして使用できることを確認するには、[getAttribute](key_mgmt_util-getAttribute.md) を使用して、定数 `OBJ_ATTR_WRAP` で表される `262` 属性の値を取得します。  
必須: はい

**-out**  
出力ファイルのパスと名前。コマンドが成功すると、このファイルに、エクスポートされたキーの暗号化されたコピーが格納されます。既存のファイルがある場合は、警告なしに上書きされます。  
必須: はい

**-m**  
ラップメカニズムを表す値。CloudHSM は、次のメカニズムをサポートしています。      
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/cloudhsm/latest/userguide/key_mgmt_util-wrapKey.html)
必須: はい  
`RSA_OAEP` ラップメカニズムを使用する場合、ラップ可能な最大キーサイズは、次のように、RSA キーのモジュールと、指定したハッシュの長さによって決まります: 最大キーサイズ = (modulusLengthInBytes-2\$1hashLengthInBytes-2)。  
RSA\$1PKCS ラップメカニズムを使用する場合、ラップ可能な最大キーサイズは、RSA キーのモジュールによって次のように決まります: 最大キーサイズ = (modulusLengthInBytes -11)。

**-t**  
ハッシュアルゴリズムを表す値。CloudHSM は、次のアルゴリズムをサポートしています。      
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/cloudhsm/latest/userguide/key_mgmt_util-wrapKey.html)
必須: いいえ

**-aad**  
`AAD` を含むファイル名。  
`AES_GCM` および `CLOUDHSM_AES_GCM` メカニズムに対してのみ有効です。
必須: いいえ

**-noheader**  
CloudHSM 固有の [キー属性](key_mgmt_util-reference.md)を指定するヘッダーを除外します。このパラメータは、key\$1mgmt\$1util 以外のツールでキーをアンラップする場合に *のみ* 使用してください。  
必須: いいえ

**-i**  
初期化ベクトル (IV) (16 進値)。  
`CLOUDHSM_AES_KEY_WRAP` と `NIST_AES_WRAP` メカニズムの `-noheader` パラメータで渡された場合にのみ有効です。
必須: いいえ

**-iv\$1file**  
応答で取得した IV 値を書き込むファイル。  
`AES_GCM` メカニズムの `-noheader` パラメータで渡された場合にのみ有効です。
必須: いいえ

**-tag\$1size**  
ラップされた blob とともに保存されるタグのサイズ。  
`AES_GCM` と `CLOUDHSM_AES_GCM` メカニズムの `-noheader` パラメータで渡された場合にのみ有効です。タグの最小サイズは 8 です。
必須: いいえ

[1] NIST ガイダンスに従い、2023 年以降の FIPS モードのクラスターでは、これは許可されません。FIPS 以外のモードのクラスターでは、2023 年以降も許可されます。詳細については、「[FIPS 140 コンプライアンス: 2024 年 メカニズムの非推奨](compliance-dep-notif.md#compliance-dep-notif-1)」を参照してください。

## 関連トピック
<a name="wrapKey-seealso"></a>
+ [exSymKey](key_mgmt_util-exSymKey.md)
+ [imSymKey](key_mgmt_util-imSymKey.md)
+ [unWrapKey](key_mgmt_util-unwrapKey.md)