

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

# KMU を使用して AWS CloudHSM キーをラップ解除する
<a name="key_mgmt_util-unwrapKey"></a>

 AWS CloudHSM key\_mgmt\_util ツールの **unWrapKey** コマンドを使用して、ラップされた (暗号化された) 対称キーまたはプライベートキーをファイルから HSM にインポートします。key\_mgmt\_util の [wrapKey](key_mgmt_util-wrapKey.md) コマンドでラップされた暗号化されたキーをインポートするように設計されていますが、他のツールでラップされたキーをアンラップするためにも使用できます。ただし、このような場合は、[PKCS\#11](pkcs11-library.md) または [JCE](java-library.md) ソフトウェアライブラリを使用して、キーをラップ解除することをお勧めします。

インポートされたキーは、 によって生成されたキーのように機能します AWS CloudHSM。ただし、[OBJ\_ATTR\_LOCAL 属性](key-attribute-table.md)の値は 0 であり、ローカルに生成されたものでないことを示しています。

キーをインポートしたら、必ずキーファイルをマークまたは削除してください。このコマンドでは、同じキーマテリアルを複数回インポートすることが禁止されません。その結果、異なるキーハンドルと同じキーマテリアルを持つ複数のキーにより、キーマテリアルの使用を追跡し、暗号化の制限を超えないようにすることが困難になります。

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

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

```
unWrapKey -h

unWrapKey -f {{<key-file-name>}} 
          -w {{<wrapping-key-handle>}} 
          [-sess]
          [-min_srv {{<minimum-number-of-HSMs>}}]          
          [-timeout {{<number-of-seconds>}}]
          [-aad {{<additional authenticated data filename>}}]
          [-tag_size {{<tag size>}}]
          [-iv_file {{<IV file>}}]
          [-attest]
          [-m {{<wrapping-mechanism>}}]
          [-t {{<hash-type>}}]
          [-nex]
          [-u {{<user id list>}}]
          [-m_value {{<number of users needed for approval>}}]
          [-noheader]
          [-l {{<key-label>}}]
          [-id {{<key-id>}}]
          [-kt {{<key-type>}}]
          [-kc {{<key-class>}}]
          [-i {{<unwrapping-IV>}}]
```

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

これらの例では、**unWrapKey** を使用して、ラップされたキーをファイルから HSM にインポートする方法を示します。最初の例では、**[wrapKey](key_mgmt_util-wrapKey.md)** key\_mgmt\_util コマンドでラップされたキーをアンラップしているため、ヘッダーがあります。2 番目の例では、key\_mgmt\_util の外部でラップされたため、ヘッダーがないキーをアンラップします。

**Example : キーのラップ解除 (ヘッダー付き)**  
このコマンドでは、3DES 対称キーのラップされたコピーを HSM にインポートします。キーはラベル `6` が付いた AES キーでラップ解除されます。このキーは、3 DES キーのラップに使用されたキーと暗号的に同一です。この出力は、ファイルのキーがラップ解除されてインポ​​ートされたことと、インポートされたキーのハンドルが `29` であることを示しています。  

```
        Command:  unWrapKey -f 3DES.key -w 6 -m 4

        Cfm3UnWrapKey returned: 0x00 : HSM Return: SUCCESS

        Key Unwrapped.  Key Handle: 29

        Cluster Error Status
        Node id 1 and err state 0x00000000 : HSM Return: SUCCESS
        Node id 0 and err state 0x00000000 : HSM Return: SUCCESS
```

**Example : キーのラップ解除 (ヘッダーなし)**  
このコマンドでは、3DES 対称キーのラップされたコピーを HSM にインポートします。キーはラベル `6` が付いた AES キーでラップ解除されます。このキーは、3 DES キーのラップに使用されたキーと暗号的に同一です。この 3DES キーは key\_mgmt\_util でラップされていないため、`noheader` パラメータは、キー・ラベル (`unwrapped3DES`)、キー・クラス (`4`)、キー・タイプ (`21`) など必要な付随パラメータとともに指定されます。この出力は、ファイルのキーがラップ解除されてインポ​​ートされたことと、インポートされたキーのハンドルが `8` であることを示しています。  

```
Command: unWrapKey -f 3DES.key -w 6 -noheader -l unwrapped3DES -kc 4 -kt 21 -m 4
      
      Cfm3CreateUnwrapTemplate2 returned: 0x00 : HSM Return: SUCCESS
       Cfm2UnWrapWithTemplate3 returned: 0x00 : HSM Return: SUCCESS

       Key Unwrapped. Key Handle: 8

       Cluster Error Status
       Node id 1 and err state 0x00000000 : HSM Return: SUCCESS
       Node id 0 and err state 0x00000000 : HSM Return: SUCCESS
```

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

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

**-f**  
ラップされたキーが含まれているファイルのパスと名前を指定します。  
必須: はい

**-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` 属性の値を取得します。  
必須: はい

**-sess**  
現在のセッションにのみ存在するキーを作成します。セッション終了後、キーをリカバリすることはできません。  
このパラメータは、別のキーを暗号化してからすばやく復号化するラッピングキーなど、キーが短時間だけ必要な場合に使用します。セッション終了後に復号する必要がある可能性のあるデータを暗号化するためにセッションキーを使用しないでください。  
セッションキーを永続(トークン)キーに変更するには、[setAttribute](key_mgmt_util-setAttribute.md) を使用します。  
デフォルト: キーは永続的です。  
必須: いいえ

**-min\_srv**  
`-timeout` パラメーターの値が期限切れになる前に、キーが同期される HSM の最小数を指定します。キーが割り当てられた時間内に指定された数のサーバーに同期されない場合は、作成されません。  
AWS CloudHSM は、すべてのキーをクラスター内のすべての HSM に自動的に同期します。プロセスを高速化するため、`min_srv` の値をクラスターの HSM の数より少なく設定し、低いタイムアウト値を設定します。ただし、一部のリクエストでキーが生成されない場合があることに注意してください。  
デフォルト: 1  
必須: いいえ

**-timeout**  
キーが `min_srv` パラメータで指定された HSM の数に同期されるのをコマンドが待機する時間 (秒単位) を指定します。  
このパラメータは、`min_srv` パラメータがコマンドでも使用されている場合にのみ有効です。  
デフォルト: タイムアウトなし。このコマンドは無期限に待機し、キーが最小数のサーバーと同期されている場合にのみ戻ります。  
必須: いいえ

**-attest**  
クラスターを実行するファームウェアが改ざんされていないことを確認する整合性チェックを実行します。  
デフォルト: 認証チェックなし。  
必須: いいえ

**-nex**  
キーを抽出できなくなります。生成されたキーは [HSM からエクスポートできません](export-keys.md)。  
デフォルト: キーは抽出可能です。  
必須: いいえ

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

**-t**      
[See the AWS documentation website for more details](http://docs.aws.amazon.com/ja_jp/cloudhsm/latest/userguide/key_mgmt_util-unwrapKey.html)
必須: いいえ

**-noheader**  
key\_mgmt\_util の外部でラップされたキーをラップ解除する場合は、このパラメータと他のすべての関連パラメータを指定する必要があります。  
必須: いいえ  
このパラメータを指定する場合は、`-noheader` パラメータも指定する **必要があります**。
+ **-I**

  ラップ解除されたキーに追加するラベルを指定します。

  必須: はい
+ **-kc**

  ラップ解除するキーのクラスを指定します。使用できる値は以下のとおりです。

  3 = パブリックキーとプライベートキーのペアのプライベートキー

  4: シークレット (対称) キー

  必須: はい
+ **-kt**

  ラップ解除するキーのタイプを指定します。使用できる値は以下のとおりです。

  0 = `RSA`

  1 = `DSA`

  3 = `ECC`

  16 = `GENERIC_SECRET`

  21 = `DES3`

  31 = `AES`

  必須: はい
**オプション**で次の `-noheader` パラメータを指定することもできます。  
+ **-id**

  ラップ解除されたキーに追加する ID。

  必須: いいえ
+ **-i**

  使用するラップ解除対象の初期ベクトル (IV)。

  必須: いいえ

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

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