KMU を使用して AWS CloudHSM キー属性を取得する
AWS CloudHSM key_mgmt_util の getAttribute コマンドを使用して、AWS CloudHSM キーの 1 つまたはすべての属性値をファイルに書き込みます。AES キーのモジュラスなど、キータイプに指定した属性が存在しない場合は、getAttribute はエラーを返します。
キー属性はキーのプロパティです。キー属性には、キータイプ、クラス、ラベル、ID などの特性と、キーで実行できるアクション (暗号化、復号、ラップ、署名、検証など) を表す値が含まれています。
getAttribute は、所有しているキーと共有しているキーに対してのみ使用できます。このコマンドまたは cloudhsm_mgmt_util で getAttribute コマンドを実行できます。このコマンドは、クラスターのすべての HSM からキーの1つの属性値を取得し、それを stdout またはファイルに書き込みます。
属性とそれを表す定数のリストを取得するには、listAttributes コマンドを使用します。既存のキーの属性値を変更するには、key_mgmt_util の setAttribute および cloudhsm_mgmt_util の setAttribute を使用します。キー属性の解釈については、KMU の AWS CloudHSM キー属性リファレンス を参照してください。
key_mgmt_util コマンドを実行する前に、key_mgmt_util を起動し、Crypto User (CU) として HSM に ログインする 必要があります。
Syntax
getAttribute -h getAttribute -o
<key handle>
-a<attribute constant>
-out<file>
例
以下の例では、getAttribute を使用して HSM でキーの属性を取得する方法を示します。
例 : キータイプを取得する
次の例では、AES、3DES、汎用キーなどのキータイプ、RSA または楕円曲線キーペアを取得します。
最初のコマンドでは listAttributes を実行し、キーの属性およびそれを表す定数を取得します。出力は、キータイプの定数が 256
であることを示しています。キー属性の解釈については、KMU の AWS CloudHSM キー属性リファレンス を参照してください。
Command:
listAttributes
Description =========== The following are all of the possible attribute values for getAttributes. OBJ_ATTR_CLASS = 0 OBJ_ATTR_TOKEN = 1 OBJ_ATTR_PRIVATE = 2 OBJ_ATTR_LABEL = 3 OBJ_ATTR_KEY_TYPE = 256 OBJ_ATTR_ID = 258 OBJ_ATTR_SENSITIVE = 259 OBJ_ATTR_ENCRYPT = 260 OBJ_ATTR_DECRYPT = 261 OBJ_ATTR_WRAP = 262 OBJ_ATTR_UNWRAP = 263 OBJ_ATTR_SIGN = 264 OBJ_ATTR_VERIFY = 266 OBJ_ATTR_LOCAL = 355 OBJ_ATTR_MODULUS = 288 OBJ_ATTR_MODULUS_BITS = 289 OBJ_ATTR_PUBLIC_EXPONENT = 290 OBJ_ATTR_VALUE_LEN = 353 OBJ_ATTR_EXTRACTABLE = 354 OBJ_ATTR_KCV = 371
2 番目のコマンドでは getAttribute を実行します。これは、キーハンドル 524296
のキータイプ (属性 256
) をリクエストし、attribute.txt
ファイルに書き込みます。
Command:
getAttribute -o 524296 -a 256 -out attribute.txt
Attributes dumped into attribute.txt file
最後のコマンドでは、キーファイルの内容を取得します。出力は、キータイプが 0x15
または 21
の Triple DES (3 DES) キーであることを示しています。クラスとタイプの値の定義については、「キー属性リファレンス」を参照してください。
$
cat attribute.txt
OBJ_ATTR_KEY_TYPE 0x00000015
例 : キーのすべての属性を取得する
次のコマンドでは、キーハンドル 6
でキーのすべての属性を取得し、attr_6
ファイルに書き込みます。すべての属性を表す属性値として 512
を使用します。
Command:
getAttribute -o 6 -a 512 -out attr_6
got all attributes of size 444 attr cnt 17 Attributes dumped into attribute.txt file Cfm3GetAttribute returned: 0x00 : HSM Return: SUCCESS>
次のコマンドでは、すべての属性の値とサンプルの属性ファイルのコンテンツを示します。値の中で、キーは 256 ビット AES キーで ID は test_01
、ラベルは aes256
であることを示しています。キーは抽出可能で永続的であり、セッション専用キーではありません。キー属性の解釈については、KMU の AWS CloudHSM キー属性リファレンス を参照してください。
$
cat attribute.txt
OBJ_ATTR_CLASS 0x04 OBJ_ATTR_KEY_TYPE 0x15 OBJ_ATTR_TOKEN 0x01 OBJ_ATTR_PRIVATE 0x01 OBJ_ATTR_ENCRYPT 0x01 OBJ_ATTR_DECRYPT 0x01 OBJ_ATTR_WRAP 0x01 OBJ_ATTR_UNWRAP 0x01 OBJ_ATTR_SIGN 0x00 OBJ_ATTR_VERIFY 0x00 OBJ_ATTR_LOCAL 0x01 OBJ_ATTR_SENSITIVE 0x01 OBJ_ATTR_EXTRACTABLE 0x01 OBJ_ATTR_LABEL aes256 OBJ_ATTR_ID test_01 OBJ_ATTR_VALUE_LEN 0x00000020 OBJ_ATTR_KCV 0x1a4b31
パラメータ
- -h
-
コマンドに関するヘルプを表示します。
必須: はい
- -オ
-
ターゲットキーのキーハンドルを指定します。各コマンドに指定できるキーは 1 つのみです。キーのキーハンドルを取得するには、findKey を使用します。
また、指定するキーは所有しているか、共有している必要があります。キーのユーザーを確認するには、getKeyInfo を使用します。
必須: はい
- -a
-
属性を識別します。属性を表す定数を入力するか、すべての属性を表す
512
を入力します。たとえば、キーの種類を取得するには「256
」と入力します。これはOBJ_ATTR_KEY_TYPE
属性を表す定数です。属性とその定数のリスト化するために、listAttributes を使用します。キー属性の解釈については、KMU の AWS CloudHSM キー属性リファレンス を参照してください。
必須: はい
- -out
-
指定したファイルに出力を書き込みます。ファイルパスを入力します。出力を
stdout
に書き込むことはできません。指定したファイルが既に存在する場合、getAttribute は警告なしにそのファイルを上書きします。
必須: はい
関連トピック
cloudhsm_mgmt_util の中の setAttribute です。