기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
키 자료 가져오기 2단계: 래핑 공개 키 및 가져오기 토큰 다운로드
키 자료 없이 생성한 AWS KMS key 후 AWS KMS 콘솔이나 API를 사용하여 RSA 래핑 퍼블릭 키와 해당 KMS 키용 가져오기 토큰을 다운로드합니다. GetParametersForImport 래핑 퍼블릭 키와 임포트 토큰은 함께 사용해야 하는 불가분의 세트입니다.
래핑 퍼블릭 키를 사용하여 전송에 사용할 키 자료를 암호화합니다. 다운로드하기 전에 RSA 래핑 키 쌍의 길이 (키 사양) 와 3단계에서 전송을 위해 가져온 키 자료를 암호화하는 데 사용할 래핑 알고리즘을 선택합니다.
각 래핑 퍼블릭 키와 임포트 토큰 세트는 24시간 동안 유효합니다. 다운로드한 지 24시간 이내에 주요 자료를 가져오는 데 사용하지 않으면 새 세트를 다운로드해야 합니다. 언제든지 새 래핑 퍼블릭 키를 다운로드하고 토큰 세트를 가져올 수 있습니다. 이렇게 하면 RSA 래핑 키 길이 (“키 사양”) 를 변경하거나 손실된 세트를 교체할 수 있습니다.
또한 래핑 퍼블릭 키와 임포트 토큰 세트를 다운로드하여 동일한 키 자료를 KMS 키로 다시 임포트할 수 있습니다. 이렇게 하면 키 자료의 만료 시간을 설정 또는 변경하거나 만료되거나 삭제된 키 자료를 복원할 수 있습니다. 키 자료를 가져올 때마다 키 자료를 다운로드하고 다시 암호화해야 합니다. AWS KMS
- 래핑 퍼블릭 키 사용
-
다운로드에는 사용자 AWS 계정 고유의 퍼블릭 키 (래핑 퍼블릭 키라고도 함) 가 포함되어 있습니다.
키 자료를 가져오기 전에 공개 래핑 키로 키 자료를 암호화한 다음 암호화된 키 자료를 에 업로드해야 합니다. AWS KMS 암호화된 키 자료를 AWS KMS 수신하면 AWS KMS 하드웨어 보안 모듈 (HSM) 내에서 해당 개인 키로 키 자료를 복호화한 다음 AES 대칭 키로 키 자료를 다시 암호화합니다.
- 가져오기 토큰 사용
-
다운로드에는 키 구성 요소를 올바르게 가져올 수 있도록 하는 메타데이터가 포함된 가져오기 토큰이 포함되어 있습니다. 암호화된 키 자료를 업로드할 AWS KMS 때 이 단계에서 다운로드한 것과 동일한 가져오기 토큰을 업로드해야 합니다.
래핑 퍼블릭 키 사양 선택
가져오는 동안 키 자료를 보호하려면 다운로드한 래핑 공개 키와 지원되는 래핑 알고리즘을 사용하여 키 자료를 AWS KMS 암호화해야 합니다. 래핑 퍼블릭 키와 임포트 토큰을 다운로드하기 전에 키 사양을 선택합니다. 모든 래핑 키 쌍은 AWS KMS 하드웨어 보안 모듈 (HSM) 에서 생성됩니다. 개인 키는 HSM을 일반 텍스트로 남기지 않습니다.
래핑 공개 키의 키 사양에 따라 키 자료가 전송되는 동안 키 자료를 보호하는 RSA 키 페어의 키 길이가 결정됩니다. AWS KMS 일반적으로 실용적이고 가장 긴 래핑 공개 키를 사용하는 것이 좋습니다. 다양한 HSM 및 키 관리자를 지원하기 위해 몇 가지 래핑 퍼블릭 키 사양을 제공합니다.
AWS KMS별도로 언급한 경우를 제외하고 모든 유형의 주요 자료를 가져오는 데 사용되는 RSA 래핑 키에 대한 다음 주요 사양을 지원합니다.
-
RSA_4096 (선호)
-
RSA_3072
-
RSA_2048
참고
ECC_NIST_P521 키 자료, RSA_2048 공개 래핑 키 사양 및 RSAES_OAEP_SHA_* 래핑 알고리즘과 같은 조합은 지원되지 않습니다.
ECC_NIST_P521 키 자료를 RSA_2048 공개 래핑 키로 직접 래핑할 수 없습니다. 더 큰 래핑 키나 RSA_AES_KEY_WRAP_SHA_* 래핑 알고리즘을 사용하십시오.
래핑 알고리즘 선택
가져오는 동안 키 자료를 보호하려면 다운로드한 래핑 공개 키와 지원되는 래핑 알고리즘을 사용하여 키 자료를 암호화해야 합니다.
AWS KMS여러 표준 RSA 래핑 알고리즘과 2단계 하이브리드 래핑 알고리즘을 지원합니다. 일반적으로 가져온 키 자료 및 래핑 키 사양과 호환되는 가장 안전한 래핑 알고리즘을 사용하는 것이 좋습니다. 일반적으로 키 구성 요소를 보호하는 하드웨어 보안 모듈(HSM) 또는 키 관리 시스템에서 지원되는 알고리즘을 선택합니다.
다음 표에는 각 유형의 키 구성 요소 및 KMS 키에 지원되는 래핑 알고리즘이 나와 있습니다. 알고리즘은 우선 순위에 따라 나열됩니다.
키 구성 요소 | 지원되는 래핑 알고리즘 및 사양 |
---|---|
대칭 암호화 키 256비트 AES 키
128비트 SM4 키 (중국 지역만 해당) |
|
비대칭 RSA 프라이빗 키 |
|
비대칭 타원 곡선 (ECC) 개인 키
RSA_2048 래핑 키 사양과 함께 RSAES_OAEP_SHA_* 래핑 알고리즘을 사용하여 ECC_NIST_P521 키 자료를 래핑할 수 없습니다. |
|
HMAC 키 |
|
-
RSA_AES_KEY_WRAP_SHA_256
— 사용자가 생성한 AES 대칭 키로 키 자료를 암호화한 다음 다운로드한 RSA 공개 래핑 키와 RSAES_OAEP_SHA_256 래핑 알고리즘으로 AES 대칭 키를 암호화하는 2단계 하이브리드 래핑 알고리즘입니다.RSA 개인 키 자료를 래핑하려면 RSA_AES_KEY_WRAP_SHA_* 래핑 알고리즘이 필요합니다.
-
RSA_AES_KEY_WRAP_SHA_1
— 사용자가 생성한 AES 대칭 키로 키 자료를 암호화한 다음 다운로드한 RSA 래핑 공개 키와 RSAES_OAEP_SHA_1 래핑 알고리즘으로 AES 대칭 키를 암호화하는 2단계 하이브리드 래핑 알고리즘입니다.RSA 개인 키 자료를
RSA_AES_KEY_WRAP_SHA_*
래핑하려면 래핑 알고리즘이 필요합니다. -
RSAES_OAEP_SHA_256
– SHA-256 해시 기능이 있는 OAEP(Optimal Asymmetric Encryption Padding)를 사용한 RSA 암호화 알고리즘입니다. -
RSAES_OAEP_SHA_1
– SHA-1 해시 기능이 있는 OAEP(Optimal Asymmetric Encryption Padding)를 사용한 RSA 암호화 알고리즘입니다. -
RSAES_PKCS1_V1_5
(지원 중단됨, 대칭 암호화 키 자료를 사용하는 레거시 구현에서만 지원됨) — PKCS #1 버전 1.5에 정의된 패딩 형식을 사용하는 RSA 암호화 알고리즘.
래핑 퍼블릭 키 및 임포트 토큰 다운로드 (콘솔)
AWS KMS콘솔을 사용하여 래핑 퍼블릭 키와 임포트 토큰을 다운로드할 수 있습니다.
-
방금 키 구성 요소 없이 KMS 키를 생성하기 위한 절차를 마쳤고 현재 Download wrapping key and import token(래핑 키 및 가져오기 키 다운로드) 페이지에 있다면 단계 9으로 넘어갑니다.
-
AWS Management Console에 로그인하고 https://console.aws.amazon.com/kms
에서 AWS Key Management Service(AWS KMS) 콘솔을 엽니다. -
AWS 리전을 변경하려면 페이지의 오른쪽 상단 모서리에 있는 리전 선택기를 사용합니다.
-
탐색 창에서 고객 관리형 키(Customer managed keys)를 선택합니다.
작은 정보
외부 출처가 있는 KMS 키로만 키 구성 요소를 가져올 수 있습니다 (키 구성 요소 가져오기). 이는 키 구성 요소 없이 KMS 키가 생성되었음을 나타냅니다. 테이블에 Origin(오리진) 열을 추가하려면 페이지의 오른쪽 상단 모서리에서 설정 아이콘(
)을 선택합니다. Origin(오리진)을 활성화한 다음, 확인을 선택합니다.
-
가져오기가 보류 중인 KMS 키의 별칭 또는 키 ID를 선택합니다.
-
암호화 구성(Cryptographic configuration) 탭을 선택하고 해당 값을 봅니다. 일반 구성 섹션 아래에 탭이 있습니다.
주요 자료는 KMS 키, 즉 외부 출처 (키 자료 가져오기) 로만 가져올 수 있습니다. 키 구성 요소를 가져와서 KMS 키를 생성하는 방법은 키의 키 자료 가져오기 AWS KMS 섹션을 참조하십시오.
-
키 재질 탭을 선택한 다음 키 재질 가져오기를 선택합니다.
키 재질 탭은 원본 값이 외부 (키 재질 가져오기) 인 KMS 키에만 표시됩니다.
-
래핑 키 사양 선택에서 KMS 키에 대한 구성을 선택합니다. 이 키를 생성한 후에는 키 사양을 변경할 수 없습니다.
-
[Select wrapping algorithm]에서 키 구성 요소 암호화에 사용할 옵션을 선택합니다. 옵션에 대한 자세한 내용은 래핑 알고리즘 선택을 참조하십시오.
-
[래핑 공개 키 다운로드 및 토큰 가져오기] 를 선택한 다음 파일을 저장합니다.
다음 옵션이 있는 경우 지금 프로세스를 계속하려면 다음을 선택합니다. 나중에 계속하려면 취소를 선택합니다.
-
앞 단계에 저장한
.zip
파일(Import_Parameters_
)의 압축을 해제합니다.<key_id>
_<timestamp>
폴더에는 다음 파일이 포함되어 있습니다.
-
라는 파일에 퍼블릭 키를 래핑하는 RSA.
WrappingPublicKey.bin
-
라는 이름의 파일에 있는 임포트
ImportToken.bin
토큰입니다. -
이름이 README.txt 인 텍스트 파일입니다. 이 파일에는 래핑 퍼블릭 키, 키 자료를 암호화하는 데 사용할 래핑 알고리즘, 래핑 퍼블릭 키와 임포트 토큰이 만료되는 날짜 및 시간에 대한 정보가 들어 있습니다.
-
-
프로세스를 계속하려면 키 구성 요소를 암호화를 참조하십시오.
래핑 퍼블릭 키 및 임포트 토큰 (AWS KMSAPI) 다운로드
공개 키와 가져오기 토큰을 다운로드하려면 GetParametersForImportAPI를 사용하세요. 가져온 키 구성 요소와 연결될 KMS 키를 지정합니다. 이 KMS 키에는 EXTERNAL
의 오리진 값이 있어야 합니다.
이 예에서는 RSA_AES_KEY_WRAP_SHA_256
래핑 알고리즘, RSA_3072 래핑 퍼블릭 키 사양 및 예제 키 ID를 지정합니다. 이러한 예제 값을 다운로드에 적합한 값으로 바꾸십시오. 키 ID에는 키 ID 또는 키 ARN을 사용할 수 있지만 이 작업에서는 별칭 이름이나 별칭 ARN을 사용할 수 없습니다.
$
aws kms get-parameters-for-import \ --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
\ --wrapping-algorithmRSA_AES_KEY_WRAP_SHA_256
\ --wrapping-key-specRSA_3072
명령이 제대로 실행되면 다음과 비슷한 출력이 표시됩니다.
{ "ParametersValidTo": 1568290320.0, "PublicKey": "
public key (base64 encoded)
", "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "ImportToken": "import token (base64 encoded)
" }
다음 단계를 위한 데이터를 준비하려면 퍼블릭 키와 가져오기 토큰을 base64로 디코딩하고 디코딩된 값을 파일에 저장합니다.
퍼블릭 키 및 가져오기 토큰을 base64로 디코딩하려면
-
base64로 인코딩된 퍼블릭 키(예제 출력에
퍼블릭 키(base64로 인코딩됨)
로 표시됨)를 복사하여 새 파일에 붙여넣은 후 파일을 저장합니다.PublicKey.b64
와 같은 파일을 설명하는 이름을 지정합니다. -
OpenSSL
을 이용해 파일의 콘텐츠를 base64로 디코딩하고 디코딩된 데이터를 새 파일에 저장합니다. 다음 예제는 앞의 단계에서 저장한 파일( PublicKey.b64
)의 데이터를 디코딩하고 출력을WrappingPublicKey.bin
이라는 새 파일에 저장합니다.$
openssl enc -d -base64 -A -in PublicKey.b64 -out WrappingPublicKey.bin
-
base64로 인코딩된 가져오기 토큰(예제 출력에
가져오기 토큰(base64로 인코딩됨)
로 표시됨)을 복사하여 새 파일에 붙여넣은 후 파일을 저장합니다.importtoken.b64
처럼 파일을 설명하는 이름을 지정합니다. -
OpenSSL
을 이용해 파일의 콘텐츠를 base64로 디코딩하고 디코딩된 데이터를 새 파일에 저장합니다. 다음 예제는 앞의 단계에서 저장한 파일( ImportToken.b64
)의 데이터를 디코딩하고 출력을ImportToken.bin
이라는 새 파일에 저장합니다.$
openssl enc -d -base64 -A -in importtoken.b64 -out ImportToken.bin
3단계: 키 구성 요소 암호화 항목으로 이동합니다.