AWS CloudHSM KMU를 사용하여 프라이빗 키 가져오기 - AWS CloudHSM

AWS CloudHSM KMU를 사용하여 프라이빗 키 가져오기

AWS CloudHSM key_mgmt_util에서 importPrivateKey 명령을 사용하여 파일에서 하드웨어 보안 모듈(HSM)로 비대칭 프라이빗 키를 가져옵니다. HSM에서는 일반 텍스트로 키를 직접 가져올 수 없습니다. 명령은 사용자가 지정한 AES 래핑 키를 사용하여 프라이빗 키를 암호화하고 HSM 내에서 키 래핑을 해제합니다. AWS CloudHSM 키를 인증서와 연결하려는 경우 이 주제를 참조하십시오.

참고

대칭 키나 프라이빗 키를 사용하여 암호로 보호된 PEM 키를 가져올 수 없습니다.

OBJ_ATTR_UNWRAPOBJ_ATTR_ENCRYPT 속성 값 1이 있는 AES 래핑 키를 지정해야 합니다. 키의 속성을 찾으려면 getAttribute 명령을 사용합니다.

참고

이 명령은 가져온 키를 내보낼 수 없도록 표시하는 옵션을 제공하지 않습니다.

key_mgmt_util 명령을 실행하기 전에 먼저 key_mgmt_util을 시작하고 HSM에 Crypto User(CU)로 로그인해야 합니다.

구문

importPrivateKey -h importPrivateKey -l <label> -f <key-file> -w <wrapping-key-handle> [-sess] [-id <key-id>] [-m_value <0...8>] [min_srv <minimum-number-of-servers>] [-timeout <number-of-seconds>] [-u <user-ids>] [-wk <wrapping-key-file>] [-attest]

예시

이 예제에서는 importPrivateKey를 사용하여 프라이빗 키를 HSM으로 가져오는 방법을 보여 줍니다.

예 : 프라이빗 키 가져오기

이 명령은 rsa2048.key라는 파일에서 레이블이 rsa2048-imported인 프라이빗 키와 핸들이 524299인 래핑 키를 가져옵니다. 명령이 성공하면 importPrivateKey가 가져온 키의 키 핸들과 성공 메시지를 반환합니다.

Command: importPrivateKey -f rsa2048.key -l rsa2048-imported -w 524299 BER encoded key length is 1216 Cfm3WrapHostKey returned: 0x00 : HSM Return: SUCCESS Cfm3CreateUnwrapTemplate returned: 0x00 : HSM Return: SUCCESS Cfm3UnWrapKey returned: 0x00 : HSM Return: SUCCESS Private Key Unwrapped. Key Handle: 524301 Cluster Error Status Node id 0 and err state 0x00000000 : HSM Return: SUCCESS Node id 1 and err state 0x00000000 : HSM Return: SUCCESS Node id 2 and err state 0x00000000 : HSM Return: SUCCESS

파라미터

이 명령은 다음 파라미터를 사용합니다.

-h

명령에 대한 명령줄 도움말을 표시합니다.

필수 항목 여부: 예

-l

사용자 정의 프라이빗 키 레이블을 지정합니다.

필수 항목 여부: 예

-f

가져올 키의 파일 이름을 지정합니다.

필수 항목 여부: 예

-w

래핑 키의 키 핸들을 지정합니다. 이 파라미터는 필수 사항입니다. 키 핸들을 찾으려면 findKey 명령을 사용합니다.

키를 래핑 키로 사용할 수 있는지 여부를 확인하려면 getAttribute를 사용하여 OBJ_ATTR_WRAP 속성(262)의 값을 가져옵니다. 래핑 키를 생성하려면 genSymKey를 사용하여 AES 키(유형 31)를 생성합니다.

-wk 파라미터를 사용하여 외부 언래핑 키를 지정할 경우, 가져오기 시 -w 래핑 키가 키를 래핑하는 데 사용되고 언래핑에는 사용되지 않습니다.

필수 항목 여부: 예

-sess

가져온 키를 세션 키로 지정합니다.

기본값: 가져온 키는 클러스터에 지속적(토큰) 키로 보관됩니다.

필수 항목 여부: 아니요

-id

가져올 키의 ID를 지정합니다.

기본값: ID 값이 없음.

필수 항목 여부: 아니요

-m_value

가져온 키를 사용하는 모든 암호화 작업을 승인해야 하는 사용자의 수를 지정합니다. 0에서 8까지의 값을 입력합니다.

이 파라미터는 명령의 -u 파라미터가 m_value 요구 사항을 충족할 만큼 충분히 많은 사용자와 키를 공유할 때만 유효합니다.

기본값: 0

필수 항목 여부: 아니요

-min_srv

-timeout 파라미터의 값이 만료되기 전에 가져온 키가 동기화되는 HSM의 최소 개수를 지정합니다. 할당된 시간에 지정된 서버 개수에 키가 동기화되지 않으면 키가 생성되지 않습니다.

AWS CloudHSM은 자동으로 모든 키를 클러스터의 각 HSM과 동기화합니다. 이 과정을 더 빠르게 진행하려면 min_srv의 값을 클러스터의 HSM 개수보다 적게 설정하고 낮은 제한 시간 값을 설정합니다. 그러나 일부 요청은 키를 생성하지 않을 수 있음을 주의하십시오.

기본값: 1

필수 항목 여부: 아니요

-timout

min-serv 파라미터가 포함된 경우 키가 HSM 간에 동기화될 때까지 기다려야 하는 시간(초)을 지정합니다. 숫자를 지정하지 않으면 폴링이 영원히 계속됩니다.

기본값: 제한 없음

필수 항목 여부: 아니요

-u

가져온 프라이빗 키를 공유할 사용자 목록을 지정합니다. 이 파라미터는 다른 HSM CU(Crypto User)에게 암호화 작업에 가져온 키를 사용할 수 있는 권한을 부여합니다.

-u 5,6과 같이 쉼표로 구분된 HSM 사용자 ID 목록을 입력합니다. 현재 사용자의 HSM 사용자 ID는 포함하지 마십시오. HSM에서 CU의 HSM 사용자 ID를 찾으려면 listUsers를 사용하십시오.

기본값: 현재 사용자만 가져온 키를 사용할 수 있습니다.

필수 항목 여부: 아니요

-wk

내보내고 있는 키를 래핑하는 데 사용할 키를 지정합니다. 평문 AES 키를 포함하는 파일의 경로 및 이름을 입력합니다.

이 파라미터를 포함하면 importPrivateKey-wk 파일의 키를 사용하여 가져올 키를 래핑합니다. 또한 -w 파라미터로 지정된 키를 사용하여 언래핑합니다.

기본값: -w 파라미터에 지정된 래핑 키를 사용하여 래핑과 언래핑을 모두 합니다.

필수 항목 여부: 아니요

-attest

펌웨어 응답에서 증명 점검을 수행하여 클러스터가 실행되는 펌웨어가 손상되지 않았는지 확인합니다.

필수 항목 여부: 아니요

관련 주제