KMU を使用して属性で AWS CloudHSM キーを検索する
AWS CloudHSM key_mgmt_util の findKey コマンドを使用して、キー属性の値でキーを検索します。設定したすべての基準にキーが一致すると、findKey はキーハンドルを返します。パラメータがない場合、findKey は HSM で使用できるすべてのキーのキーハンドルを返します。特定のキーの属性値を検索するには、getAttribute を使用します。
すべての key_mgmt_util コマンドと同様に、findKey はユーザー固有です。暗号化オペレーションで現在のユーザーが使用できるキーのみが返されます。これには、現在のユーザーが所有しているキーおよび現在のユーザーと共有されているキーが含まれます。
key_mgmt_util コマンドを実行する前に、key_mgmt_util を起動し、Crypto User (CU) として HSM に ログインする 必要があります。
Syntax
findKey -h findKey [-c
<key class>
] [-t<key type>
] [-l<key label>
] [-id<key ID>
] [-sess (0 | 1)] [-u<user-ids>
] [-m<modulus>
] [-kcv<key_check_value>
]
例
この例では、findKey を使用して HSM でキーを検索および特定する方法を示します。
例 : すべてのキーを検索する
このコマンドは、HSM の現在のユーザーのすべてのキーを検索します。出力には、そのユーザーが所有および共有しているキーと、HSM のすべてのパブリックキーが含まれます。
特定のキーハンドルを持つキーの属性を取得するには、getAttribute を使用します。現在のユーザーが特定のキーを所有しているか共有しているかを判断するには、cloudhsm_mgmt_util で getKeyInfo または findAllKeys を使用します。
Command:
findKey
Total number of keys present 13 number of keys matched from start index 0::12 6, 7, 524296, 9, 262154, 262155, 262156, 262157, 262158, 262159, 262160, 262161, 262162 Cluster Error Status Node id 1 and err state 0x00000000 : HSM Return: SUCCESS Node id 0 and err state 0x00000000 : HSM Return: SUCCESS Cfm3FindKey returned: 0x00 : HSM Return: SUCCESS
例 : タイプ、ユーザー、およびセッションでキーを検索する
次のコマンドでは、現在のユーザーとユーザー 3 が使用できる永続 AES キーを検索します (ユーザー 3 は、現在のユーザーが表示できない他のキーを使用できる場合があります)。
Command:
findKey -t 31 -sess 0 -u 3
例 : クラスおよびラベルでキーを検索する
次のコマンドでは、2018-sept
ラベルで現在のユーザーのすべてのパブリックキーを検索します。
Command:
findKey -c 2 -l 2018-sept
例 : モジュラスで RSA キーを検索する
次のコマンドでは、m4.txt
ファイルのモジュラスを使用して作成された、現在のユーザーの RSA キー (タイプ 0) を検索します。
Command:
findKey -t 0 -m m4.txt
パラメータ
- -h
-
コマンドに関するヘルプを表示します。
必須: はい
- -t
-
指定されたタイプのキーを検索します。キークラスを表す定数を入力します。たとえば、3DES キーを検索するには、
-t 21
と入力します。有効な値:
必須:いいえ
- -c
-
指定されたクラスのキーを検索します。キークラスを表す定数を入力します。たとえば、パブリックキーを検索するには「
-c 2
」と入力します。各キータイプに有効な値:
-
2: パブリック。このクラスには、公開 - プライベートのキーペアの公開キーが含まれています。
-
3: プライベート。このクラスには、公開 - プライベートのキーペアの公開キーが含まれています。
-
4: シークレット。このクラスには、対称キーすべてが含まれています。
必須:いいえ
-
- -I
-
指定されたラベルのキーを検索します。正確なラベルを入力します。
--l
値にはワイルドカード文字も正規表現も使用できません。必須:いいえ
- -id
-
指定された ID のキーを検索します。正確な ID 文字列を入力します。
-id
値にはワイルドカード文字も正規表現も使用できません。必須:いいえ
- -sess
-
セッションステータスでキーを検索します。現在のセッションでのみ有効なキーを検索するには「
1
」と入力します。永続キーを検索するには「0
」と入力します。必須:いいえ
- -u
-
指定されたユーザーと現在のユーザーが共有しているキーを検索します。HSM ユーザー ID のカンマ区切りリスト (
-u 3
や-u 4,7
など) を入力します。HSM のユーザーの ID を検索するには、listUsers を使用します。1 つのユーザー ID を指定すると、findKey はそのユーザーのキーを返します。複数のユーザー ID を指定すると、findKey は指定したユーザーすべてが使用できるキーを返します。
findKey は現在のユーザーが使用できるキーのみを返すため、
-u
の結果は常に、現在のユーザーのキーと同じかそのサブセットです。任意のユーザーが所有または共有するすべてのキーを取得するために、暗号オフィサー (CO) は cloudhsm_mgmt_util の findAllKeys を使用できます。必須:いいえ
- -m
-
指定したファイルの RSA モジュラスを使用して作成されたキーを検索します。モジュラスを保存するファイルのパスを入力します。
-m は、一致する RSA モジュラスを含むバイナリファイルを指定します (オプション)。
必須:いいえ
- -kcv
-
指定されたキーのチェック値のキーを検索します。
キーチェック値 (KCV) は、HSM がキーをインポートまたは生成するときに生成されるキーの3バイトのハッシュまたはチェックサムです。キーをエクスポートした後など、HSM の外部で KCV を計算することもできます。次に、KCV 値を比較して、キーのアイデンティティと整合性を確認できます。キーの KCV を取得するには、getAttribute を使用します。
AWS CloudHSM は、次のスタンダードメソッドを使用してキーチェック値を生成します。
-
対称キー: ゼロブロックをキーで暗号化した結果の最初の 3 バイト。
-
非対称キーペア: 公開キーの SHA-1 ハッシュの最初の 3 バイト。
-
HMAC キー : 現時点では、HMAC キーの KCV はサポートされていません。
必須:いいえ
-
出力
findKey の出力には、一致するキーの合計数とそのキーハンドルが一覧表示されます。
Command: findKey Total number of keys present 10 number of keys matched from start index 0::9 6, 7, 8, 9, 10, 11, 262156, 262157, 262158, 262159 Cluster Error Status Node id 1 and err state 0x00000000 : HSM Return: SUCCESS Node id 2 and err state 0x00000000 : HSM Return: SUCCESS Cfm3FindKey returned: 0x00 : HSM Return: SUCCESS
関連トピック
-
cloudhsm_mgmt_util の中の findAllKeys です。