KMU를 사용하여 프라이빗 AWS CloudHSM 키 내보내기
AWS CloudHSM key_mgmt_util에서 exportPrivateKey 명령을 사용하여 하드웨어 보안 모듈(HSM)에서 비대칭 프라이빗 키를 파일로 내보냅니다. HSM에서는 일반 텍스트로 키를 직접 내보낼 수 없습니다. 이 명령은 사용자가 지정한 AES 래핑 키를 사용하여 프라이빗 키를 래핑하고, 래핑된 바이트를 해독하며, 일반 텍스트 프라이빗 키를 파일에 복사합니다.
exportPrivateKey 명령은 HSM에서 키를 제거하거나 키 속성을 변경하거나 향후 암호화 작업에서 키를 사용하는 것을 방지하지 않습니다. 동일한 키를 여러 번 내보낼 수 있습니다.
OBJ_ATTR_EXTRACTABLE
속성 값이 1
인 프라이빗 키만 내보낼 수 있습니다. OBJ_ATTR_WRAP
및 OBJ_ATTR_DECRYPT
속성 값 1
이 있는 AES 래핑 키를 지정해야 합니다. 키의 속성을 찾으려면 getAttribute 명령을 사용합니다.
key_mgmt_util 명령을 실행하기 전에 먼저 key_mgmt_util을 시작하고 HSM에 Crypto User(CU)로 로그인해야 합니다.
구문
exportPrivateKey -h exportPrivateKey -k
<private-key-handle
-w<wrapping-key-handle>
-out<key-file>
[-m<wrapping-mechanism>
] [-wk<wrapping-key-file>
]
예시
이 예제에서는 exportPrivateKey를 사용하여 HSM에서 프라이빗 키를 내보내는 방법을 보여 줍니다.
예 : 프라이빗 키 내보내기
이 명령은 핸들이 16
인 래핑 키를 사용하여 핸들이 15
인 프라이빗 키를 exportKey.pem
이라는 PEM 파일로 내보냅니다. 명령이 성공하면 exportPrivateKey가 성공 메시지를 반환합니다.
Command:
exportPrivateKey -k 15 -w 16 -out exportKey.pem
Cfm3WrapKey returned: 0x00 : HSM Return: SUCCESS Cfm3UnWrapHostKey returned: 0x00 : HSM Return: SUCCESS PEM formatted private key is written to exportKey.pem
파라미터
이 명령은 다음 파라미터를 사용합니다.
-h
-
명령에 대한 명령줄 도움말을 표시합니다.
필수 항목 여부: 예
-k
-
내보낼 프라이빗 키의 키 핸들을 지정합니다.
필수 항목 여부: 예
-w
-
래핑 키의 키 핸들을 지정합니다. 이 파라미터는 필수 사항입니다. 키 핸들을 찾으려면 findKey 명령을 사용합니다.
키를 래핑 키로 사용할 수 있는지 여부를 확인하려면 getAttribute를 사용하여
OBJ_ATTR_WRAP
속성(262)의 값을 가져옵니다. 래핑 키를 생성하려면 genSymKey를 사용하여 AES 키(유형 31)를 생성합니다.-wk
파라미터를 사용하여 외부 언래핑 키를 지정할 경우, 내보내기 시-w
래핑 키가 키를 래핑하는 데 사용되고 언래핑에는 사용되지 않습니다.필수 항목 여부: 예
-out
-
내보낸 프라이빗 키를 쓸 파일 이름을 지정합니다.
필수 항목 여부: 예
-m
-
내보내고 있는 프라이빗 키를 래핑할 래핑 메커니즘을 지정합니다. 유일하게 유효한 값은
NIST_AES_WRAP mechanism.
을 나타내는4
입니다.기본값: 4(
NIST_AES_WRAP
)필수 항목 여부: 아니요
-wk
-
내보내고 있는 키를 언래핑하는 데 사용할 키를 지정합니다. 평문 AES 키를 포함하는 파일의 경로 및 이름을 입력합니다.
이 파라미터를 포함할 경우, exportPrivateKey는
-w
파일의 키를 사용하여 내보낼 키를 래핑하고-wk
파라미터로 지정된 키를 사용하여 언래핑합니다.기본값:
-w
파라미터에 지정된 래핑 키를 사용하여 래핑과 언래핑을 모두 합니다.필수 항목 여부: 아니요