findKey - AWS CloudHSM

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

findKey

使用 key_mgmt_util 中的 findKey 命令,依金鑰屬性的值來搜尋金鑰。當一個金鑰符合您設定的所有條件時,findKey 會傳回金鑰控制代碼。若不指定任何參數,findKey 會傳回您在 HSM 中可使用之所有金鑰的金鑰控制代碼。若要尋找特定金鑰的屬性值,請使用 getAttribute

就像所有 key_mgmt_util 命令一樣,findKey 也是針對特定使用者。只會傳回目前的使用者在密碼編譯操作中可以使用的金鑰。這包括目前使用者擁有的金鑰,以及已經與目前使用者共用的金鑰。

執行任何 key_mgmt_util 命令之前,您必須先啟動 key_mgmt_util 並以加密使用者 (CU) 的身分登入 HSM。

語法

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。若要判斷目前的使用者是否擁有或共用特定金鑰,請使用getKeyInfofindAllKeys在 cloudhsm_mgmt_util 中。

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:私密。此類別包含所有對稱金鑰。

必要:否

-l

尋找具有指定標籤的金鑰。輸入確切的標籤。--l 值中不可使用萬用字元或規則表達式。

必要:否

-id

尋找具有指定 ID 的金鑰。輸入確切的 ID 字串。-id 值中不可使用萬用字元或規則表達式。

必要:否

-sess

依工作階段狀態尋找金鑰。若要尋找只在目前工作階段中有效的金鑰,請輸入 1。若要尋找持久性金鑰,請輸入 0

必要:否

-u

尋找指定的使用者和目前的使用者共用的金鑰。輸入以逗號分隔的 HSM 使用者 ID 清單,例如 -u 3-u 4,7。若要尋找 HSM 上的使用者 ID,請使用 listUsers

當您指定一個使用者 ID 時,findKey 會傳回該使用者的金鑰。當您指定多個使用者 ID 時,findKey 會傳回所有指定之使用者可以使用的金鑰。

由於 findKey 只會傳回目前使用者可以使用的金鑰,-u 結果一律與目前使用者的金鑰相同或為其中一部分。要獲取由任何用戶擁有或與任何用戶共享的所有密鑰,加密官員(COS)可以findAllKeys在 cloudhsm_mgmt_util 中使用。

必要:否

-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

相關主題