翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
の JCE を使用したキー抽出 AWS CloudHSM
Java Cryptography Extension (JCE) は、さまざまな暗号化実装をプラグインできるアーキテクチャを使用します。 は、暗号化オペレーションを HSM にオフロードする 1 つの JCE プロバイダーを AWS CloudHSM 出荷します。他のほとんどの JCE プロバイダーが AWS CloudHSM に保存されているキーを操作するには、HSM のキーバイトをクリアテキストでマシンのメモリに抽出して使用する必要があります。HSM では通常、キーを ラップされたオブジェクト としてのみ抽出でき、クリアテキストとして抽出することはできません。ただし、プロバイダー間の統合のユースケースをサポートするために、 は、クリア内のキーバイトの抽出を有効にするオプトイン設定オプション AWS CloudHSM を許可します。
重要
JCE は、AWS CloudHSM プロバイダーが指定されるか、 AWS CloudHSM キーオブジェクトが使用される AWS CloudHSM たびに、オペレーションを にオフロードします。HSM 内でオペレーションが行われることが予想される場合は、キーを明確に抽出する必要はありません。クリアテキストでのキー抽出が必要なのは、サードパーティのライブラリや JCE プロバイダーの制限により、アプリケーションがキーのラップやラップ解除などの安全なメカニズムを使用できない場合のみです。
AWS CloudHSM JCE プロバイダーは、デフォルトで外部 JCE プロバイダーと連携するパブリックキーの抽出を許可します。以下の方法は常に許可されています。
| Class | 方法 | Format (getEncoded) |
|---|---|---|
| EcPublicKey | getEncoded () | X.509 |
| getW() | 該当なし | |
| RSAPublicKey | getEncoded () | X.509 |
| getPublicExponent() | 該当なし | |
| CloudHsmRsaPrivateCrtKey | getPublicExponent() | 該当なし |
AWS CloudHSM JCE プロバイダーは、デフォルトでは、プライベートキーまたはシークレットキーに対してクリアなキーバイトの抽出を許可しません。ユースケースで必要な場合は、以下の条件で プライベート または シークレット キーのキーバイトを消去して抽出できます。
プライベートまたはシークレットキーの
EXTRACTABLE属性は「true」に設定されています。デフォルトでは、プライベートキーとシークレットキーの
EXTRACTABLE属性は「true」に設定されています。EXTRACTABLEキーは HSM からのエクスポートが許可されているキーです。詳細については、「クライアント SDK 5 向けサポートされている Java 属性」を参照してください。
プライベートキーとシークレットキーの
WRAP_WITH_TRUSTED属性は「false」に設定されます。getEncoded、getPrivateExponent、getSおよびクリアでエクスポートできないプライベートキーでは使用できません。WRAP_WITH_TRUSTEDは、プライベートキーを HSM からクリアにエクスポートすることはできません。詳細については、「信頼できるキーを使ったキーのアンラップの制御」を参照してください。