

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# AWS KMS keys
<a name="concepts"></a><a name="key-mgmt"></a><a name="kms_keys"></a>

자체 암호화 애플리케이션에서 사용하기 위해 생성하고 관리하는 KMS 키는 *고객 관리형 키*라고 하는 유형입니다. 고객 관리형 키는 KMS 키를 사용하여 AWS 서비스가 사용자를 대신하여 저장하는 데이터를 암호화하는 서비스와 함께 사용할 수도 있습니다. 고객 관리형 키는 해당 키의 수명 주기와 사용을 완전히 제어하려는 고객에게 권장됩니다. 계정에 고객 관리형 키를 보유하는 데는 월별 비용이 발생합니다. 또한 요청 사용 및/또는 키 관리에는 사용 비용이 발생합니다. 자세한 내용은 [AWS Key Management Service 요금](https://aws.amazon.com/kms/pricing/)을 참조하세요.

고객이 AWS 서비스에서 데이터를 암호화하기를 원하지만 키 관리의 오버헤드를 원하지 않고 키에 대한 비용을 지불하고 싶지 않은 경우가 있습니다. *AWS 관리형 키*는 계정에 존재하지만 특정 상황에서만 사용할 수 있는 KMS 키입니다. 특히 운영 중인 AWS 서비스의 컨텍스트에서만 사용할 수 있으며 키가 있는 계정 내의 보안 주체만 사용할 수 있습니다. 이러한 키의 수명 주기 또는 권한은 관리할 수 없습니다. AWS 서비스에서 암호화 기능을 사용하면 'aws<service code>' 형식의 별칭을 사용할 수 AWS 관리형 키있습니다. 예를 들어 `aws/ebs` 키는 EBS 볼륨을 암호화하는 데만 사용할 수 있으며 키와 동일한 계정의 IAM 위탁자가 사용하는 볼륨에만 사용할 수 있습니다. 계정의 사용자만 계정의 리소스에 사용할 수 AWS 관리형 키 있도록 범위가 축소된를 생각해 보세요. 에서 암호화된 리소스를 다른 계정 AWS 관리형 키 과 공유할 수 없습니다. 계정에 AWS 관리형 키 가 무료로 존재하지만 키에 할당된 AWS 서비스에서이 키 유형을 사용하는 경우 요금이 부과됩니다.

AWS 관리형 키 는 2021년부터 새 AWS 서비스에 대해 더 이상 생성되지 않는 레거시 키 유형입니다. 대신 새 (및 레거시) AWS 서비스는 기본적으로 라고 하는 *AWS 소유 키*를 사용하여 고객 데이터를 암호화합니다. AWS 소유 키 는 AWS 서비스에서 관리하는 계정에 있는 KMS 키이므로 서비스 운영자는 수명 주기 및 사용 권한을 관리할 수 있습니다. 를 사용하면 AWS 소유 키 AWS 서비스가 데이터를 투명하게 암호화하고 키 권한에 대해 걱정할 필요 없이 쉽게 교차 계정 또는 교차 리전에서 데이터를 공유할 수 있습니다. 더 쉽고, 더 자동화된 데이터 보호를 제공하는 기본 암호화 워크로드에 AWS 소유 키 를 사용합니다. 이러한 키는에서 소유 및 관리하므로 존재 또는 사용에 대한 요금이 부과 AWS되지 않으며, 정책을 변경할 수 없고, 이러한 키에 대한 활동을 감사할 수 없으며, 삭제할 수 없습니다. 제어가 중요한 경우 고객 관리형 키를 사용하고 편의성이 가장 중요한 경우 AWS 소유 키 를 사용합니다.


|  |  |  |  | 
| --- |--- |--- |--- |
|  |  고객 관리형 키  |  AWS 관리형 키  |  AWS 소유 키  | 
|  키 정책  | 고객이 독점적으로 제어 | 서비스에서 제어, 고객이 볼 수 있음 | 데이터를 암호화하는 AWS 서비스에서만 독점적으로 제어되고 볼 수 있음 | 
|  로깅  | CloudTrail 고객 추적 또는 이벤트 데이터 저장소 | CloudTrail 고객 추적 또는 이벤트 데이터 저장소 | 고객이 볼 수 없음 | 
|  수명 주기 관리  | 고객이 교체, 삭제 및 리전 위치 관리 | AWS KMS 는 교체(연간), 삭제 및 리전 위치를 관리합니다. | AWS 서비스 는 교체, 삭제 및 리전 위치를 관리합니다. | 
|  요금  |  키 존재에 대한 월별 요금(시간당 비례 배분 기준). 키 사용에 대해서도 요금이 부과됨  | 월별 수수료는 없지만 호출자에게 이러한 키의 API 사용에 대한 요금이 부과됨 | 고객에게 부과되는 요금 없음 | 

사용자가 생성하는 KMS 키는 [고객 관리형 키](#customer-mgn-key)입니다. KMS 키를 사용하여 서비스 리소스를 암호화하는 AWS 서비스 는 종종 사용자를 위해 키를 만듭니다. AWS 계정에서가 AWS 서비스 생성하는 KMS 키는 입니다[AWS 관리형 키](#aws-managed-key). 서비스 계정에서를 AWS 서비스 생성하는 KMS 키는 입니다[AWS 소유 키](#aws-owned-key).


| KMS 키의 유형 | KMS 키 메타데이터 보기 가능 | KMS 키 관리 가능 | 내 에만 사용됨 AWS 계정 | [자동 회전](rotate-keys.md) | [요금](https://aws.amazon.com/kms/pricing/) | 
| --- | --- | --- | --- | --- | --- | 
| [고객 관리형 키](#customer-mgn-key) | 예 | 예 | 예 | 선택 사항. | 월 요금(시간당 비례 배분)사용량 기준 요금 | 
| [AWS 관리형 키](#aws-managed-key) | 예 | 아니요 | 예 | 필수 사항입니다. 매년(약 365일) | 월 요금 없음사용당 요금(일부는이 요금을 대신 AWS 서비스 지불) | 
| [AWS 소유 키](#aws-owned-key) | 아니요 | 아니요 | 아니요 | 는 교체 전략을 AWS 서비스 관리합니다. | 요금 없음 | 

[AWS 와 통합되는 서비스는 AWS KMS](service-integration.md) KMS 키에 대한 지원이 다릅니다. 일부 AWS 서비스는 기본적으로 AWS 소유 키 또는를 사용하여 데이터를 암호화합니다 AWS 관리형 키. 일부 AWS 서비스는 고객 관리형 키를 지원합니다. 다른 AWS 서비스는 모든 유형의 KMS 키를 지원하여의 용이성 AWS 소유 키,의 가시성 AWS 관리형 키또는 고객 관리형 키의 제어를 허용합니다. AWS 서비스가 제공하는 암호화 옵션에 대한 자세한 내용은 사용 설명서의 *저장 시 암호화* 주제 또는 서비스의 개발자 안내서를 참조하세요.

## 고객 관리형 키
<a name="customer-mgn-key"></a>

사용자가 생성하는 KMS 키는 *고객 관리형 키*입니다. 고객 관리형 키는 AWS 계정 사용자가 생성, 소유 및 관리하는의 KMS 키입니다. 사용자는 [키 정책, IAM 정책 및 권한 부여](control-access.md)의 설정 및 유지 관리, [활성화 및 비활성화](enabling-keys.md), [암호화 구성 요소 교체](rotate-keys.md), [태그 추가](tagging-keys.md), KMS 키를 가리키는 [별칭 생성](alias-create.md), [KMS 키 삭제 예약](deleting-keys.md) 등을 포함해 이러한 KMS 키에 대한 완전한 제어 권한을 가집니다.

고객 관리형 키는 AWS KMS에 대한 AWS Management Console 의 **고객 관리형 키** 페이지에 나타납니다. 고객 관리형 키를 명확하게 식별하려면 [DescribeKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html) 작업을 사용합니다. 고객 관리형 키에서는 `DescribeKey` 응답의 `KeyManager` 필드 값이 `CUSTOMER`입니다.

암호화 작업에서 사용자 관리형 키를 사용하고 AWS CloudTrail 로그에서 사용을 감사할 수 있습니다. 뿐만 아니라 [AWS KMS에 통합된 다양한AWS 서비스](service-integration.md) 덕분에 사용자를 위해 저장 및 관리하는 데이터를 보호하도록 고객 관리형 키를 지정할 수 있습니다.

고객 관리형 키는 매달 요금이 발생하며, 프리 티어를 초과해서 사용한 만큼 요금이 부과됩니다. 계정 AWS KMS [의 할당량](limits.md)에 포함됩니다. 자세한 내용은 [AWS Key Management Service 요금](https://aws.amazon.com/kms/pricing/) 및 [할당량](limits.md) 섹션을 참조하세요.

## AWS 관리형 키
<a name="aws-managed-key"></a>

*AWS 관리형 키*는 [AWS 와 통합된 서비스가 AWS KMS](https://aws.amazon.com/kms/features/#AWS_Service_Integration) 사용자를 대신하여 생성, 관리 및 사용하는 계정의 KMS 키입니다.

일부 AWS 서비스를 사용하면 AWS 관리형 키 또는 고객 관리형 키를 선택하여 해당 서비스의 리소스를 보호할 수 있습니다. 일반적으로 리소스를 보호하는 암호화 키를 제어해야 하는 경우가 아니면 AWS 관리형 키 를 선택하는 것이 좋습니다. 키 또는 키 정책을 만들거나 유지할 필요가 없으며 AWS 관리형 키에 대한 월 요금도 없습니다.

계정에서 [를 보고 AWS 관리형 키](viewing-keys.md), [키 정책을 보고](key-policy-viewing.md), AWS CloudTrail 로그에서 [사용을 감사할 수 있는](logging-using-cloudtrail.md) 권한이 있습니다. 그러나의 속성을 변경하거나 AWS 관리형 키, 교체하거나, 키 정책을 변경하거나, 삭제를 예약할 수 없습니다. 또한 암호화 작업에 AWS 관리형 키 를 직접 사용할 수 없습니다. 암호화 작업을 생성하는 서비스는 사용자를 대신하여 암호화 작업을 사용합니다.

조직의 [리소스 제어 정책](resource-control-policies.md)은 AWS 관리형 키에 적용되지 않습니다.

AWS 관리형 키 는 AWS Management Console 의 **AWS 관리형 키** 페이지에 표시됩니다 AWS KMS. 와 `aws/service-name`같은 형식의 별칭 AWS 관리형 키 으로 식별할 수도 있습니다`aws/redshift`. 를 명확하게 식별하려면 [DescribeKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html) 작업을 AWS 관리형 키사용합니다. AWS 관리형 키에서는 `DescribeKey` 응답의 `KeyManager` 필드 값이 `AWS`입니다.

모든 AWS 관리형 키 는 매년 자동으로 교체됩니다. 이 교체 일정은 변경할 수 없습니다.

**참고**  
2022년 5월에의 교체 일정을 3년마다(약 1,095일) AWS 관리형 키 에서 1년마다(약 365일)로 AWS KMS 변경했습니다.

에 대한 월별 요금은 없습니다 AWS 관리형 키. 프리 티어를 초과하여 사용할 경우 요금이 부과될 수 있지만 일부 AWS 서비스에서는 이러한 비용을 부담합니다. 자세한 내용은 서비스에 대한 사용 설명서 또는 개발자 안내서의 *저장 시 암호화* 주제를 참조하세요. 자세한 내용은 [AWS Key Management Service 요금](https://aws.amazon.com/kms/pricing/)을 참조하세요.

AWS 관리형 키 는 계정의 각 리전에 있는 KMS 키 수에 대한 리소스 할당량에 포함되지 않습니다. 그러나 계정의 보안 주체 대신 사용되는 KMS 키는 요청 할당량에 포함됩니다. 자세한 내용은 [할당량](limits.md)을 참조하세요.

## AWS 소유 키
<a name="aws-owned-key"></a>

*AWS 소유 키*는 AWS 서비스가 여러에서 사용하기 위해 소유하고 관리하는 KMS 키 모음입니다 AWS 계정. AWS 소유 키 는에 없지만 AWS 계정 AWS 서비스는를 AWS 소유 키 사용하여 계정의 리소스를 보호할 수 있습니다.

일부 AWS 서비스를 사용하면 AWS 소유 키 또는 고객 관리형 키를 선택할 수 있습니다. 일반적으로 리소스를 보호하는 암호화 키를 감사하거나 제어해야 하는 경우가 아니면 AWS 소유 키 를 선택하는 것이 좋습니다. AWS 소유 키 는 완전히 무료(월별 요금 또는 사용 요금 없음)이며 계정[AWS KMS 의 할당량](limits.md)에 포함되지 않으며 사용하기 쉽습니다. 키 또는 키 정책을 만들거나 유지하지 않아도 됩니다.

의 교체는 서비스마다 AWS 소유 키 다릅니다. 특정의 교체에 대한 자세한 내용은 서비스 사용 설명서 또는 개발자 안내서의 *저장 시 암호화* 주제를 AWS 소유 키참조하세요.

## AWS KMS key 계층 구조
<a name="key-hierarchy"></a>

키 계층 구조는 최상위 논리적 키인 로 시작합니다 AWS KMS key. KMS 키는 최상위 키 구성 요소의 컨테이너를 나타내며, Amazon 리소스 이름(ARN)을 사용하여 AWS 서비스 네임스페이스에 고유하게 정의됩니다. ARN에는 고유하게 생성된 키 식별자인 *키 ID*가 포함되어 있습니다. KMS 키는 사용자가 시작한 요청을 기반으로 생성됩니다 AWS KMS. 수신 시는 KMS 키 컨테이너에 배치할 초기 HSM 백업 키(HBK) 생성을 AWS KMS 요청합니다. HBK는 도메인의 HSM에 생성되며 HSM에서 일반 텍스트로 내보낼 수 없도록 설계되었습니다. 대신 HBK는 HSM 관리 도메인 키로 암호화되어 내보내집니다. 이러한 내보낸 HBK를 내보낸 키 토큰(EKT)이라고 합니다.

EKT는 내구성이 높고 대기 시간이 짧은 스토리지로 내보내집니다. 예를 들어 논리적 KMS 키에 대한 ARN 수신한다고 가정합니다. 이는 키 계층 구조 또는 암호화 컨텍스트의 최상위를 나타냅니다. 계정 내에 여러 KMS 키를 생성하고 다른 AWS 명명된 리소스와 마찬가지로 KMS 키에 정책을 설정할 수 있습니다.

특정 KMS 키의 계층 구조 내에서 HBK는 KMS 키의 한 버전이라고 할 수 있습니다. KMS 키를 교체하려는 경우 AWS KMS새 HBK가 생성되고 KMS 키에 대한 활성 HBK로 KMS 키와 연결됩니다. 이전 HBK는 보존되며 이전에 보호된 데이터를 복호화하고 확인하는 데 사용할 수 있습니다. 단, 새 정보를 보호하는 데에는 활성 암호화 키만 사용할 수 있습니다.

![\[AWS KMS key 계층 구조.\]](http://docs.aws.amazon.com/ko_kr/kms/latest/developerguide/images/CMK-Hierarchy.png)


 AWS KMS 를 통해 KMS 키를 사용하여 정보를 직접 보호하도록 요청하거나 KMS 키로 보호되는 추가 HSM 생성 키를 요청할 수 있습니다. 이러한 키를 고객 데이터 키(CDK)라고 합니다. CDK는 암호화 텍스트(CT), 일반 텍스트 또는 두 가지 형식 모두로 암호화된 상태로 반환될 수 있습니다. KMS 키(고객 제공 데이터 또는 HSM 생성 키)로 암호화된 모든 객체는 직접 호출을 통해 HSM에서만 복호화할 수 있습니다 AWS KMS.

반환된 사이퍼텍스트 또는 해독된 페이로드는 내에 저장되지 않습니다 AWS KMS. 이 정보는 AWS KMS에 대한 TLS 연결을 통해 사용자에게 반환됩니다. 이는 사용자를 대신하여 AWS 서비스에서 수행한 호출에도 적용됩니다.

다음 표에는 키 계층 구조 및 특정 키 속성이 나와 있습니다.


| Key(키) | 설명 | 수명 주기 | 
| --- | --- | --- | 
|  **도메인 키**  |  HSM 메모리에만 있는 256비트 AES-GCM 키로, KMS 키의 버전, 즉 HSM 백업 키를 래핑하는 데 사용됩니다.  |  매일 교체됨1  | 
|  **HSM 백업 키**  |  256비트 대칭 키 또는 RSA 또는 타원 곡선 개인 키로, 고객 데이터 및 키를 보호하는 데 사용되며 도메인 키로 암호화됩니다. 하나 이상의 HSM 백업 키가 KMS 키를 구성하며 keyId로 표시됩니다.  |  매년 교체됨2(선택적 구성)  | 
|  **추출된 암호화 키**  |  HSM 메모리에만 있는 256비트 AES-GCM 키로, 고객 데이터 및 키를 암호화하는 데 사용됩니다. 각 암호화에 대해 HBK에서 추출됩니다.  |  암호화당 한 번 사용되며 복호화할 때 다시 생성됩니다.  | 
|  **고객 데이터 키**  |  HSM에서 일반 텍스트 및 암호화 텍스트 형식으로 내보낸 사용자 정의 대칭 또는 비대칭 키입니다. HSM 백업 키로 암호화되며, TLS 채널을 통해 권한 있는 사용자에게 반환됩니다.  |  교체 및 애플리케이션에 의한 통제된 사용  | 

1 AWS KMS 도메인 관리 및 구성 작업을 고려하기 위해 도메인 키 교체를 최대 매주 완화할 수 있습니다.

2 사용자를 대신하여 AWS KMS 에서 AWS 관리형 키 생성하고 관리하는 기본값은 매년 자동으로 교체됩니다.

## 키 식별자(KeyId)
<a name="key-id"></a>

키 식별자는 KMS 키의 이름과 같은 역할을 합니다. 콘솔에서 KMS 키를 인식하는 데 도움이 됩니다. 이를 사용하여 AWS KMS API 작업, 키 정책, IAM 정책 및 권한 부여에 사용할 KMS 키를 나타냅니다. 키 식별자 값은 KMS 키와 연결된 키 자료와 전혀 관련이 없습니다.

AWS KMS 는 여러 키 식별자를 정의합니다. KMS 키를 생성할 때는 KMS 키의 속성인 키 ARN 및 키 ID를 AWS KMS 생성합니다. [별칭을](kms-alias.md) 생성할 때는 사용자가 정의한 별칭 이름을 기반으로 별칭 ARN을 AWS KMS 생성합니다. 및 AWS KMS API에서 키 AWS Management Console 및 별칭 식별자를 볼 수 있습니다.

 AWS KMS 콘솔에서 키 ARN, 키 ID 또는 별칭 이름을 기준으로 KMS 키를 보고 필터링하고 키 ID 및 별칭 이름을 기준으로 정렬할 수 있습니다. 콘솔에서 키 식별자를 찾는 방법에 대한 도움말은 [키 ID 및 키 ARN 찾기](find-cmk-id-arn.md) 섹션을 참조하세요.

 AWS KMS API에서 KMS 키를 식별하는 데 사용하는 파라미터의 이름은 `KeyId` 또는와 같은 `TargetKeyId` 또는 변형입니다`DestinationKeyId`. 그러나 이러한 파라미터의 값은 키 ID로 제한되지 않습니다. 일부는 유효한 키 식별자를 취할 수 있습니다. 각 파라미터의 값에 대한 자세한 내용은 AWS Key Management Service API 참조의 파라미터 설명을 참조하세요.

**참고**  
 AWS KMS API를 사용할 때는 사용하는 키 식별자에 주의해야 합니다. API에 따라 다른 키 식별자가 필요합니다. 일반적으로 작업에 가장 완전하고 실용적인 키 식별자를 사용하십시오.

AWS KMS 는 다음과 같은 키 식별자를 지원합니다.

**키 ARN**  <a name="key-id-key-ARN"></a>
키 ARN은 KMS 키의 Amazon 리소스 이름(ARN)입니다. KMS 키에 대한 고유한 정규화된 식별자입니다. 키 ARN에는 AWS 계정, 리전 및 키 ID가 포함됩니다. KMS 키의 키 ARN을 찾는 방법에 대한 도움말은 [키 ID 및 키 ARN 찾기](find-cmk-id-arn.md) 섹션을 참조하세요.  
키 ARN의 형식은 다음과 같습니다.  

```
arn:<partition>:kms:<region>:<account-id>:key/<key-id>
```
다음은 단일 리전 KMS 키의 키 ARN 예입니다.  

```
arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
```
[다중 리전 키](multi-region-keys-overview.md)의 키 ARN의 *key-id* 요소는 `mrk-` 접두사로 시작합니다. 다음은 다중 리전 키에 대한 예제 키 ARN입니다.  

```
arn:aws:kms:us-west-2:111122223333:key/mrk-1234abcd12ab34cd56ef1234567890ab
```

**키 ID**  <a name="key-id-key-id"></a>
키 ID는 계정 및 리전 내의 KMS 키를 고유하게 식별합니다. KMS 키의 키 ID를 찾는 방법에 대한 도움말은 [키 ID 및 키 ARN 찾기](find-cmk-id-arn.md) 섹션을 참조하세요.  
다음은 단일 리전 KMS 키의 키 ID 예입니다.  

```
1234abcd-12ab-34cd-56ef-1234567890ab
```
[다중 리전 키](multi-region-keys-overview.md)의 키 ID는 `mrk-` 접두사로 시작합니다. 다음은 다중 리전 키에 대한 예제 키 ID입니다.  

```
mrk-1234abcd12ab34cd56ef1234567890ab
```

**별칭 ARN**  <a name="key-id-alias-ARN"></a>
별칭 ARN은 AWS KMS 별칭의 Amazon 리소스 이름(ARN)입니다. 별칭 및 해당 별칭이 나타내는 KMS 키에 대한 고유한 정규화된 식별자입니다. 별칭 ARN에는 AWS 계정, 리전 및 별칭 이름이 포함됩니다.  
지정된 시간에 별칭 ARN은 하나의 특정 KMS 키를 식별합니다. 그러나 별칭과 연결된 KMS 키를 변경할 수 있으므로 별칭 ARN이 서로 다른 시간에 서로 다른 KMS 키를 식별할 수 있습니다. KMS 키의 별칭 ARN을 찾는 방법에 대한 도움말은 [KMS 키의 별칭 이름 및 별칭 ARN 찾기](alias-view.md) 섹션을 참조하세요.  
별칭 ARN의 형식은 다음과 같습니다.  

```
arn:<partition>:kms:<region>:<account-id>:alias/<alias-name>
```
다음은 가상 `ExampleAlias`의 별칭 ARN입니다.  

```
arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias
```

**별칭 이름**  <a name="key-id-alias-name"></a>
별칭 이름은 최대 256자의 문자열입니다. 계정 및 리전 내의 연결된 KMS 키를 고유하게 식별합니다. AWS KMS API에서 별칭 이름은 항상 로 시작합니다`alias/`. KMS 키의 별칭 이름을 찾는 방법에 대한 도움말은 [KMS 키의 별칭 이름 및 별칭 ARN 찾기](alias-view.md) 섹션을 참조하세요.  
별칭 이름의 형식은 다음과 같습니다.  

```
alias/<alias-name>
```
예:  

```
alias/ExampleAlias
```
별칭 이름의 `aws/` 접두사는 [AWS 관리형 키](#aws-managed-key)용으로 예약됩니다. 이 접두사를 가진 별칭은 만들 수 없습니다. 예를 들어 Amazon Simple Storage Service(Amazon S3) AWS 관리형 키 용의 별칭 이름은 다음과 같습니다.  

```
alias/aws/s3
```

# 의 비대칭 키 AWS KMS
<a name="symmetric-asymmetric"></a>

*비대칭 KMS 키*는 수학적으로 관련된 퍼블릭 키 및 프라이빗 키 페어를 나타냅니다. 퍼블릭 키는 신뢰할 수 없더라도 누구에게나 제공할 수 있지만 프라이빗 키는 비밀로 유지해야 합니다.

비대칭 KMS 키에서 프라이빗 키는에서 생성 AWS KMS 되며 암호화되지 않은 상태로 두 AWS KMS 지 않습니다. 프라이빗 키를 사용하려면를 호출해야 합니다 AWS KMS. AWS KMS API 작업을 호출 AWS KMS 하여 내에서 퍼블릭 키를 사용할 수 있습니다. 또는 [퍼블릭 키를 다운로드하여 외부에서](download-public-key.md) 사용할 수 있습니다 AWS KMS.

를 호출할 수 없는 사용자가 외부 AWS 에서 암호화해야 하는 사용 사례의 경우 AWS KMS비대칭 KMS 키를 선택하는 것이 좋습니다. 그러나 AWS 서비스에서 저장하거나 관리하는 데이터를 암호화하기 위해 KMS 키를 생성하는 경우 대칭 암호화 KMS 키를 사용합니다. [AWS 와 통합된 서비스는 AWS KMS](https://aws.amazon.com/kms/features/#AWS_Service_Integration) 대칭 암호화 KMS 키만 사용하여 데이터를 암호화합니다. 이러한 서비스는 비대칭 KMS 키를 사용한 암호화를 지원하지 않습니다.

로 4KB보다 큰 메시지에 서명 AWS KMS하는 경우 서명 AWS KMS 하기 전에 외부에서 메시지를 해시해야 합니다. AWS KMS 는 메시지 입력을 처리하기 `RAW` 위한 세 가지 `MessageType` 옵션을 제공합니다. 일반 텍스트 메시지의 경우(가 해시를 AWS KMS 수행하는 경우), 미리 해시된 메시지의 `DIGEST` 경우(가 해시 단계를 AWS KMS 건너뛰는 경우), `EXTERNAL_MU` 특히 입력이 64바이트 대표 μ 값인 ML-DSA KMS 키 사양의 경우 입니다. 4KB 제한을 초과하는 큰 메시지의 경우 메시지를 외부에서 해시하고 AWS KMS [Sign](https://docs.aws.amazon.com/kms/latest/APIReference/API_Sign.html) 및 AWS KMS [Verify](https://docs.aws.amazon.com/kms/latest/APIReference/API_Verify.html) 작업을 호출할 때 [https://docs.aws.amazon.com/kms/latest/APIReference/API_Sign.html#KMS-Sign-request-MessageType](https://docs.aws.amazon.com/kms/latest/APIReference/API_Sign.html#KMS-Sign-request-MessageType) (또는 ML-DSA KMS 키[https://docs.aws.amazon.com/kms/latest/APIReference/API_Sign.html#KMS-Sign-request-MessageType](https://docs.aws.amazon.com/kms/latest/APIReference/API_Sign.html#KMS-Sign-request-MessageType)의 경우)를 사용합니다.

AWS KMS 는 여러 유형의 비대칭 KMS 키를 지원합니다.

**RSA KMS 키**  
암호화 및 복호화 또는 서명 및 확인을 위한 RSA 키 페어가 있는 KMS 키(둘 다 아님).는 다양한 보안 요구 사항에 대해 여러 키 길이를 AWS KMS 지원합니다.  
가 RSA KMS 키에 대해 AWS KMS 지원하는 암호화 및 서명 알고리즘에 대한 기술적 세부 정보는 [RSA 키 사양을 참조하세요](symm-asymm-choose-key-spec.md#key-spec-rsa).

**타원 곡선(ECC) KMS 키**  
서명 및 확인 또는 공유 보안 암호 도출(둘 다 아님)을 위한 타원 곡선 키 페어가 있는 KMS 키입니다.는 일반적으로 사용되는 여러 곡선을 AWS KMS 지원합니다.  
가 ECC KMS 키에 대해 AWS KMS 지원하는 서명 알고리즘에 대한 기술적 세부 정보는 [타원 곡선 키 사양을 참조하세요](symm-asymm-choose-key-spec.md#key-spec-ecc).

**ML-DSA KMS 키**  
서명 및 검증을 위한 ML-DSA 키 페어가 있는 KMS 키입니다. ML-DSA는 양자 컴퓨팅으로 인해 발생할 보안 위협에 대응하기 위해 미국 국립표준기술원(NIST)이 개발한 양자 내성 암호 표준입니다. ML-DSA는 RSA 또는 타원 곡선 기반 디지털 서명 알고리즘에서 안전한 양자 내성 암호로 전환하려는 조직에 권장되는 디지털 서명 알고리즘입니다.  
AWS KMS 는 다양한 보안 요구 사항에 대해 여러 키 길이를 지원합니다. 가 ML-DSA KMS 키에 대해 AWS KMS 지원하는 서명 알고리즘에 대한 기술적 세부 정보는 [ML-DSA 키 사양을](symm-asymm-choose-key-spec.md#key-spec-mldsa) 참조하세요.

**SM2 KMS 키 사양(중국 리전만 해당)**  
암호화 및 복호화, 서명 및 검증 또는 공유 비밀 도출(한 가지 [Key usage](create-keys.md#key-usage) 유형을 선택해야 함)을 위한 SM2 키 페어가 있는 KMS 키입니다.  
가 SM2 KMS 키에 대해 AWS KMS 지원하는 암호화 및 서명 알고리즘에 대한 기술적 세부 정보는 [SM2 키 사양을](symm-asymm-choose-key-spec.md#key-spec-sm) 참조하세요(중국 리전만 해당).

비대칭 키 구성 선택에 대한 도움말은 [생성할 KMS 키 유형 선택](create-keys.md#symm-asymm-choose) 섹션을 참조하세요.

**리전**

비대칭 KMS 키 및 비대칭 데이터 키 페어는가 지원하는 모든에서 AWS KMS 지원 AWS 리전 됩니다.

**자세히 알아보기**
+ 비대칭 KMS 키를 만들려면 [비대칭 KMS 키 생성](asymm-create-key.md) 섹션을 참조하세요.
+ 다중 리전 비대칭 KMS 키를 만들려면 [다중 리전 프라이머리 키 생성](create-primary-keys.md) 섹션을 참조하세요.
+ 비대칭 KMS 키를 사용하여 메시지에 서명하고 서명을 확인하는 방법을 알아보려면 *AWS 보안 플로그*의 [새로운 비대칭 키 기능으로 디지털 서명 AWS KMS](https://aws.amazon.com/blogs/security/digital-signing-asymmetric-keys-aws-kms/)을 참조하세요.
+ 비대칭 KMS 키 삭제에 대한 특별 고려 사항에 대한 자세한 내용은 [Deleting asymmetric KMS keys](deleting-keys.md#deleting-asymmetric-cmks) 단원을 참조하세요.
+ 비대칭 KMS 키를 식별하고 보려면 [비대칭 KMS 키 식별](identify-key-types.md#identify-asymm-keys) 단원을 참조하세요.

# 의 HMAC 키 AWS KMS
<a name="hmac"></a>

해시 기반 메시지 인증 코드(HMAC) KMS 키는 AWS KMS내에서 HMAC를 생성 및 확인하는 데 사용하는 대칭 키입니다. 각 HMAC KMS 키와 관련된 고유한 키 구성 요소는 HMAC 알고리즘에 필요한 비밀 키를 제공합니다. `[GenerateMac](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateMac.html)` 및 [https://docs.aws.amazon.com/kms/latest/APIReference/API_VerifyMac.html](https://docs.aws.amazon.com/kms/latest/APIReference/API_VerifyMac.html) 작업과 함께 HMAC KMS 키를 사용하여 AWS KMS내에서 데이터 무결성 및 신뢰성을 확인할 수 있습니다.

HMAC 알고리즘은 암호화 해시 함수와 공유 비밀 키를 결합합니다. HMAC KMS 키의 키 구성 요소와 같은 메시지와 비밀 키를 가져와서 고정된 크기의 고유한 코드 또는 태그**를 반환합니다. 메시지의 한 문자라도 변경되거나 비밀 키가 동일하지 않은 경우 결과 태그는 완전히 달라집니다. 비밀 키를 요구함으로써 HMAC는 신뢰성도 제공합니다. 비밀 키가 없다면 동일한 HMAC 태그를 생성할 수 없습니다. HMAC는 디지털 서명처럼 작동하지만 서명과 확인 모두에 단일 키를 사용하기 때문에 대칭 서명**이라고도 합니다.

HMAC KMS 키와를 AWS KMS 사용하는 HMAC 알고리즘은 [RFC 2104](https://datatracker.ietf.org/doc/html/rfc2104)에 정의된 업계 표준을 준수합니다. AWS KMS [GenerateMac](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateMac.html) 작업은 표준 HMAC 태그를 생성합니다. HMAC KMS 키는 FIPS 140-3 암호화 모듈 검증 프로그램(중국(베이징) 및 중국(닝샤) 리전 제외)에 따라 인증된 AWS KMS 하드웨어 보안 모듈에서 생성되며 암호화 AWS KMS 되지 않은 상태로 두지 않습니다. [https://csrc.nist.gov/projects/cryptographic-module-validation-program/certificate/4884](https://csrc.nist.gov/projects/cryptographic-module-validation-program/certificate/4884) HMAC KMS 키를 사용하려면 AWS KMS를 호출해야 합니다.

HMAC KMS 키를 사용하여 JSON 웹 토큰(JWT), 토큰화된 신용 카드 정보 또는 제출된 암호와 같은 메시지의 신뢰성을 결정할 수 있습니다. 특히 결정적 키가 필요한 애플리케이션에서 안전한 키 추출 함수(KDF)로 사용할 수도 있습니다.

HMAC KMS 키는 키 구성 요소가 키에 설정한 액세스 제어에 AWS KMS따라 완전히 생성되고 사용되므로 애플리케이션 소프트웨어의 HMACs에 비해 이점이 있습니다.

**작은 정보**  
모범 사례에서는 HMAC을 비롯한 모든 서명 메커니즘이 유효한 시간을 제한하는 것이 좋습니다. 이렇게 하면 행위자가 서명된 메시지를 사용하여 반복적으로나 메시지가 대체된 후 유효성을 설정하는 공격을 차단합니다. HMAC 태그에는 타임스탬프가 포함되지 않지만 토큰이나 메시지에 타임스탬프를 포함시켜 HMAC 새로 고침 시간을 감지할 수 있습니다.

**지원되는 암호화 작업**  
HMAC KMS 키는 [https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateMac.html](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateMac.html) 및 [https://docs.aws.amazon.com/kms/latest/APIReference/API_VerifyMac.html](https://docs.aws.amazon.com/kms/latest/APIReference/API_VerifyMac.html) 암호화 작업만을 지원합니다. HMAC KMS 키를 사용하여 데이터를 암호화하거나 메시지에 서명하거나 HMAC 작업에서 다른 유형의 KMS 키를 사용할 수 없습니다. `GenerateMac` 작업을 사용할 때 최대 4,096바이트의 메시지, HMAC KMS 키 및 HMAC 키 사양과 호환되는 MAC 알고리즘을 제공하고, `GenerateMac`이 HMAC 태그를 계산합니다. HMAC 태그를 확인하려면 HMAC 태그와 `GenerateMac`에서 원래 HMAC 태그를 계산하는 데 사용하는 동일한 메시지, HMAC KMS 키 및 MAC 알고리즘을 제공해야 합니다. `VerifyMac` 작업은 HMAC 태그를 계산하고 제공된 HMAC 태그와 동일한지 확인합니다. 입력 태그와 계산된 HMAC 태그가 동일하지 않으면 확인이 실패합니다.  
HMAC KMS 키는 [자동 키 교체](rotate-keys.md)를 지원하지 *않으며* [사용자 지정 키 스토어](key-store-overview.md#custom-key-store-overview)에서 HMAC KMS 키를 생성할 수 없습니다.  
KMS 키를 생성하여 AWS 서비스의 데이터를 암호화하는 경우 대칭 암호화 키를 사용합니다. HMAC KMS 키를 사용할 수 없습니다.

**리전**  
HMAC KMS 키는가 지원하는 모든에서 AWS KMS 지원 AWS 리전 됩니다.

**자세히 알아보기**
+ HMAC KMS 키를 생성하려면 [HMAC KMS 키 생성](hmac-create-key.md) 단원을 참조하세요.
+ 다중 리전 HMAC KMS 키를 생성하려면 [의 다중 리전 키 AWS KMS](multi-region-keys-overview.md) 단원을 참조하세요.
+  AWS KMS 콘솔이 HMAC KMS 키에 대해 설정하는 기본 키 정책의 차이를 검사하려면 섹션을 참조하세요[키 사용자가 암호화 작업에 KMS 키를 사용하도록 허용](key-policy-default.md#key-policy-users-crypto).
+ HMAC KMS 키를 식별하고 보려면 [HMAC KMS 키 식별](identify-key-types.md#hmac-view) 단원을 참조하세요.
+ HMAC을 사용하여 JSON 웹 토큰을 생성하는 방법에 대한 자세한 내용은 *AWS 보안 블로그*의 [AWS KMS내부에서 HMAC를 보호하는 방법](https://aws.amazon.com/blogs/security/how-to-protect-hmacs-inside-aws-kms/)을 참조하세요.
+ *공식 AWS 팟캐스트*에서 [AWS Key Management Service를 위한 HMAC 소개](https://aws.amazon.com/podcasts/introducing-hmacs-apis-in-aws-key-management-service) 팟캐스트를 들어보세요.

# 의 ML-DSA 키 AWS KMS
<a name="mldsa"></a>

AWS Key Management Service (AWS KMS)는 포스트 퀀텀 암호화 서명에 대해 ML-DSA(모듈 래티스 디지털 서명 알고리즘)를 지원합니다. 이 구현은 향후 양자 컴퓨팅 위협에 대비하기 위해 [연방 정보 처리 표준(FIPS) 204 표준](https://csrc.nist.gov/pubs/fips/204/final)을 따릅니다. AWS KMS 는 FIPS 140-3 보안 수준 3 검증된 하드웨어 보안 모듈에서 모든 ML-DSA 키 및 서명 작업을 생성하고 보호합니다. 의 ML-DSA는 보안과 성능의 균형을 맞추기 위해 다양한 키 사양인 ML\$1DSA\$144, ML\$1DSA\$165 및 ML\$1DSA\$187을 통해 세 가지 보안 수준을 AWS KMS 제공합니다.

AWS KMS 는 메시지 유형을 사용하여 최대 4KB의 `RAW` 메시지에 대해 비대칭 키 서명을 지원합니다. 더 큰 메시지의 경우, NIST FIPS 204 섹션 6.2에 정의된 대로 ML-DSA 서명에 사용되는 64바이트 메시지 표현 μ를 외부에서 컴퓨팅해야 합니다. AWS KMS [서명](https://docs.aws.amazon.com/kms/latest/APIReference/API_Sign.html) 작업의 `EXTERNAL_MU` 메시지 유형을 사용하여이 사전 처리된 64바이트 메시지를 지정합니다. 외부에서 컴퓨팅된 μ로 생성된 서명은 동일한 메시지와 프라이빗 키를 사용할 경우 `RAW`에서 생성된 서명과 동일합니다. 이 서명은 NIST FIPS 204 섹션 5.4의 “pre-hash” ML-DSA 또는 HashML-DSA와는 다릅니다.

ML-DSA 및 EXTERNAL\$1MU 메시지 유형 사용에 대한 자세한 내용은 [ML-DSA 키 사양](symm-asymm-choose-key-spec.md#key-spec-mldsa) 페이지를 참조하세요.

ML-DSA와 EXTERNAL\$1MU 메시지 유형을 사용하는 예시는 [ML-DSA 키 페어를 사용한 오프라인 검증](offline-operations.md#mldsa-offline-verification) 페이지를 참조하세요.

# 의 다중 리전 키 AWS KMS
<a name="multi-region-keys-overview"></a>

AWS KMS 는 *여러 리전에 동일한 키*가 있는 것처럼 서로 교환하여 사용할 수 AWS 리전 있는 다른의 다중 리전 키를 지원합니다. AWS KMS keys 각 *관련* 다중 리전 키 세트는 키 구성 요소와 [키 ID](concepts.md#key-id-key-id)가 동일하므로 다시 암호화하거나 리전 간 호출을 수행하지 AWS 리전 않고도 한의 데이터를 암호화 AWS 리전 하고 다른의 데이터를 복호화할 수 있습니다 AWS KMS.

모든 KMS 키와 마찬가지로 다중 리전 키는 암호화 AWS KMS 되지 않은 상태로 두지 않습니다. 암호화 또는 서명을 위한 대칭 또는 비대칭 다중 리전 키를 생성하고 HMAC 태그를 생성 및 확인하기 위한 HMAC 다중 리전 키를 생성하고 [가져온 키 구성 요소](importing-keys.md) 또는 AWS KMS 가 생성한 키 구성 요소가 있는 다중 리전 키를 생성할 수 있습니다. 별칭 및 태그 생성, 키 정책 및 권한 부여 설정, 선택적으로 활성화 및 비활성화를 포함하여 독립적으로 각 다중 리전 키를 관리해야 합니다. 단일 리전 키로 수행할 수 있는 모든 암호화 작업에서 다중 리전 키를 사용할 수 있습니다.

다중 리전 키는 많은 일반적인 데이터 보안 시나리오를 위한 유연하고 강력한 솔루션입니다.

**재해 복구 **  
백업 및 복구 아키텍처에서 다중 리전 키를 사용하면 AWS 리전 중단 발생 시에도 중단 없이 암호화된 데이터를 처리할 수 있습니다. 백업 리전에서 유지 관리되는 데이터는 백업 리전에서 해독할 수 있으며, 백업 리전에서 새로 암호화된 데이터는 해당 리전이 복원될 때 기본 리전에서 해독할 수 있습니다.

**글로벌 데이터 관리**  
전 세계적으로 운영되는 비즈니스에는 AWS 리전에서 일관되게 사용할 수 있는 전 세계적으로 분산된 데이터가 필요합니다. 데이터가 상주하는 모든 리전에서 다중 리전 키를 만든 다음 교차 리전 호출의 지연 시간 또는 각 리전의 다른 키로 데이터를 다시 암호화하는 비용 없이 단일 리전 키인 것처럼 키를 사용할 수 있습니다.

**분산 서명 애플리케이션**  
교차 리전 서명 기능이 필요한 애플리케이션은 다중 리전 비대칭 서명 키를 사용하여 다른 AWS 리전에서 일관되고 반복적으로 동일한 디지털 서명을 생성할 수 있습니다.  
단일 글로벌 신뢰 스토어(단일 루트 CA(인증 기관) 및 루트 CA에서 서명한 리전의 중간 CA에 대해 인증서 체인을 사용하는 경우 다중 리전 키가 필요하지 않습니다. 그러나 시스템에서 애플리케이션 서명과 같은 중간 CA를 지원하지 않는 경우 다중 리전 키를 사용하여 리전 인증에 일관성을 유지할 수 있습니다.

**여러 리전에 걸친 활성/활성 애플리케이션**  
일부 워크로드 및 애플리케이션은 여러 리전에 걸쳐 활성/활성 아키텍처에 있을 수 있습니다. 이러한 애플리케이션의 경우 다중 리전 키는 리전 경계를 넘어 이동할 수 있는 데이터에 대한 동시 암호화 및 해독 작업에 동일한 키 구성 요소를 제공하여 복잡성을 줄일 수 있습니다.

클라이언트 측 암호화 라이브러리(예: [AWS Encryption SDK](https://docs.aws.amazon.com/encryption-sdk/latest/developer-guide/), [AWS Database Encryption SDK](https://docs.aws.amazon.com/dynamodb-encryption-client/latest/devguide/) 및 [Amazon S3 클라이언트 측 암호화](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingClientSideEncryption.html))와 함께 다중 리전 키를 사용할 수 있습니다 

유휴 시 암호화 또는 디지털 서명을 위해 [AWS 와 통합되는 대부분의 서비스는 AWS KMS](https://aws.amazon.com/kms/features/) 현재 다중 리전 키를 단일 리전 키인 것처럼 취급합니다. 리전 간에 이동된 데이터를 다시 래핑하거나 다시 암호화할 수 있습니다. 예를 들어 Amazon S3 리전 간 복제는 다중 리전 키로 보호되는 객체를 복제하는 경우에도 대상 리전의 KMS 키로 데이터를 해독하고 다시 암호화합니다. 서비스가 암호화된 데이터를 복제하는 방법과 다중 리전 키를 다르게 처리하는지 여부를 알아보려면 서비스별 설명서를 참조하세요.

다중 리전 키는 글로벌 키가 아닙니다. 다중 리전 기본 키를 만든 다음 [AWS 파티션](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) 내에서 선택한 리전에 복제합니다. 그런 다음 각 리전에서 다중 리전 키를 독립적으로 관리합니다. AWS 는 AWS KMS 사용자를 대신하여 다중 리전 키를 자동으로 생성하거나 복제하지 않습니다. AWS 서비스[AWS 관리형 키](concepts.md#aws-managed-key)에서 계정에서 생성하는 KMS 키인는 항상 단일 리전 키입니다.

중국 리전에서는 다중 리전 키 기능을 사용해 중국 리전 파티션(`aws-cn`) 내에서 KMS 키를 복제할 수 있습니다. 예를 들어 중국(베이징) 리전에서 중국(닝샤) 리전으로, 또는 그 반대로 키를 복제할 수 있습니다. 한 중국 리전에서 다른 중국 리전으로 키를 복제하면 대상 리전 AWS Key Management Service 의를 사용하고 대상 리전에 적용되는 모든 계약 조건을 준수하는 데 동의하는 것입니다. 베이징 및 닝샤 리전에서 중국 리전 파티션 외부의 AWS 리전으로 키를 복제할 수 없습니다. 마찬가지로 중국 리전 파티션 외부의 리전에서 베이징 또는 닝샤 리전으로 키를 복제할 수 없습니다.

기존 단일 리전 키는 다중 리전 키로 변환할 수 없습니다. 이러한 설계는 기존 단일 리전 키로 보호되는 모든 데이터가 동일한 데이터 상주 및 데이터 주권 속성을 유지하도록 보장합니다.

대부분의 데이터 보안 요구 사항에 대해 리전 리소스의 리전 격리 및 내결함성으로 인해 표준 AWS KMS 단일 리전 키가 가장 적합한 솔루션입니다. 그러나 여러 리전의 클라이언트 측 애플리케이션에서 데이터를 암호화하거나 서명해야 하는 경우 다중 리전 키가 해결책일 수 있습니다.



**리전**

다중 리전 키는가 지원하는 모든에서 지원 AWS 리전 됩니다 AWS KMS .

**요금 및 할당량**

관련된 다중 리전 키 세트의 모든 키는 가격 책정 및 할당량에 대해 하나의 KMS 키로 계산됩니다. [AWS KMS 할당량](limits.md)은 계정의 각 리전에 대해 별도로 계산됩니다. 각 리전에서 다중 리전 키의 사용 및 관리는 해당 리전의 할당량에 포함됩니다.

**지원되는 KMS 키 유형**

다음 유형의 멀티 리전 KMS 키를 만들 수 있습니다.
+ 대칭 암호화 KMS 키
+ 비대칭 KMS 키
+ HMAC KMS 키
+ 가져온 키 구성 요소가 있는 KMS 키

사용자 지정 키 스토어에서는 다중 리전 키를 만들 수 없습니다.

**자세히 알아보기**
+ 다중 리전 KMS 키에 대한 액세스를 제어하는 방법을 알아보려면 [다중 리전 키에 대한 액세스 제어](multi-region-keys-auth.md) 단원을 참조하세요.
+ 모든 유형의 다중 리전 기본 KMS 키를 생성하려면 [다중 리전 프라이머리 키 생성](create-primary-keys.md) 단원을 참조하세요.
+ 다중 리전 복제본 KMS 키를 생성하려면 [다중 리전 복제본 키 생성](multi-region-keys-replicate.md) 단원을 참조하세요.
+ 기본 리전을 업데이트하려면 [다중 리전 키 세트에서 프라이머리 키 변경](multi-region-update.md) 단원을 참조하세요.
+ 다중 리전 KMS 키를 식별하고 보려면 [HMAC KMS 키 식별](identify-key-types.md#hmac-view) 단원을 참조하세요.
+ 다중 리전 KMS 키 삭제에 대한 특별 고려 사항에 대한 자세한 내용은 [Deleting multi-Region keys](deleting-keys.md#deleting-mrks) 단원을 참조하세요.

## 용어 및 개념
<a name="multi-region-concepts"></a>

다중 리전 키에 사용되는 용어와 개념은 다음과 같습니다.

### 다중 리전 키
<a name="multi-Region-concept"></a>

*다중 리전 키*는 다른 AWS 리전에서 동일한 키 ID와 키 구성 요소(및 다른[공유 속성](#mrk-replica-key))를 가진 KMS 키 집합 중 하나입니다 각 다중 리전 키는 완벽하게 작동하는 KMS 키이며 관련 다중 리전 키와 완전히 독립적으로 사용할 수 있습니다. 모든 *관련* 다중 리전 키는 키 ID와 키 구성 요소가 동일하므로 *상호 운용 가능합니다*. 즉, 모든의 모든 관련 다중 리전 키는 다른 모든 관련 다중 리전 키로 암호화된 사이퍼텍스트를 해독 AWS 리전 할 수 있습니다.

KMS 키를 생성할 때 다중 리전 속성을 설정합니다. 기존 키에서는 다중 리전 속성을 변경할 수 없습니다. 단일 리전 키를 다중 리전 키로 변환하거나 다중 리전 키를 단일 리전 키로 변환할 수 없습니다. 기존 워크로드를 다중 리전 시나리오로 이동하려면 데이터를 다시 암호화하거나 새로운 다중 리전 키로 새 서명을 만들어야 합니다.

다중 리전 키는 [대칭 또는 비대칭](symmetric-asymmetric.md)일 수 있으며 AWS KMS 키 구성 요소 또는 [가져온 키 구성 요소를](importing-keys.md) 사용할 수 있습니다. [사용자 지정 키 스토어](key-store-overview.md#custom-key-store-overview)에서는 다중 리전 키를 만들 수 없습니다.

관련된 다중 리전 키 세트에는 항상 정확히 하나의 [기본 키](#mrk-primary-key)가 있습니다. 다른 AWS 리전에서 해당 기본 키의 [복제본 키](#mrk-replica-key)를 생성할 수 있습니다. [기본 리전을 업데이트](multi-region-update.md#update-primary-console)할 수도 있습니다. 즉, 기본 키를 복제본 키로 변경하고 지정된 복제본 키를 기본 키로 변경하는 것입니다. 그러나 각각에 하나의 기본 키 또는 복제본 키만 유지할 수 있습니다 AWS 리전. 모든 리전은 동일한 [AWS 파티션](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)에 있어야 합니다.

동일 또는 다른 AWS 리전에 여러 관련 다중 리전 키 세트가 있을 수 있습니다. 관련된 다중 리전 키는 상호 운용이 가능하지만 관련되지 않은 다중 리전 키는 상호 운용할 수 없습니다.

### 프라이머리 키
<a name="mrk-primary-key"></a>

다중 리전 *기본 키*는 동일한 파티션 AWS 리전 의 다른에 복제할 수 있는 KMS 키입니다. 각 다중 리전 키 세트에는 기본 키가 하나만 있습니다.

기본 키와 복제본 키는 차이점은 다음과 같습니다.
+ 기본 키만 [복제될](multi-region-keys-replicate.md) 수 있습니다.
+ 기본 키는 키 구성 요소 및 키 ID를 포함하여 [복제 키](#mrk-replica-key)의 [공유 속성](#mrk-replica-key)에 대한 소스입니다.
+ 기본 키에서만 [자동 키 교체](rotate-keys.md)를 활성화, 비활성화할 수 있습니다.
+ 언제든지 [기본 키의 삭제를 예약](deleting-keys.md#deleting-mrks)할 수 있습니다. 그러나 AWS KMS 는 모든 복제본 키가 삭제될 때까지 기본 키를 삭제하지 않습니다.

기본 키와 복제본 키는 암호화 속성에서 다르지 않습니다. 기본 키와 해당 복제 키를 서로 바꿔서 사용할 수 있습니다.

따라서 기본 키를 복제할 필요는 없습니다. KMS 키와 마찬가지로 사용할 수 있으며 유용할 때 복제할 수 있습니다. 그러나 다중 리전 키는 단일 리전 키와 보안 속성이 다르기 때문에 다중 리전 키를 복제하려는 경우에만 다중 리전 키를 만드는 것이 좋습니다.

### 복제본 키
<a name="mrk-replica-key"></a>

다중 리전 *복제본 키*는 [프라이머리 키](#mrk-primary-key) 및 관련 복제본 키와 [키 ID](concepts.md#key-id-key-id) 및 키 구성 요소가 동일하지만 다른 AWS 리전에 존재하는 KMS 키입니다.

복제 키는 자체 키 정책, 권한 부여, 별칭, 태그 및 기타 속성을 포함하는 완전한 기능을 갖춘 KMS 키입니다. 기본 키 또는 다른 키의 복사본이나 포인터가 아닙니다. 기본 키 및 모든 관련 복제본 키가 비활성화되어 있어도 복제본 키를 사용할 수 있습니다. 복제본 키를 기본 키로, 기본 키를 복제본 키로 변환할 수도 있습니다. 복제 키는 일단 생성되면 [키 교체](rotate-keys.md#multi-region-rotate) 및 [기본 리전 업데이트](multi-region-update.md)에 대해서만 기본 키에 의존합니다.

기본 키와 복제 키는 암호화 속성에서 다르지 않습니다. 기본 키와 해당 복제 키를 서로 바꿔서 사용할 수 있습니다. 기본 키 또는 복제본 키로 암호화된 데이터는 동일한 키 또는 관련된 기본 키 또는 복제본 키로 해독할 수 있습니다.

### 복제
<a name="replicate"></a>

다중 리전 [기본 키를](#mrk-primary-key) 동일한 파티션 AWS 리전 의 다른에 *복제*할 수 있습니다. 이렇게 하면가 기본 [키와 동일한 키 ID 및 기타 공유 속성을 사용하여 지정된 리전에 다중 리전 복제본](#mrk-replica-key) 키를 AWS KMS 생성합니다. [키 ID](concepts.md#key-id-key-id) [공유 속성](#mrk-sync-properties) `AWS_KMS` 오리진이 있는 KMS 키의 경우는 키 구성 요소를 리전 경계를 통해 AWS KMS 안전하게 전송하고 내부에서 새 복제본 키와 연결합니다 AWS KMS. `EXTERNAL` 오리진이 있는 KMS 키의 경우 기본 리전 키로 가져온 것과 동일한 키 구성 요소를 개별적으로 리치 복제본 리전 키로 가져와야 합니다.

### 공유 속성
<a name="mrk-sync-properties"></a>

*공유 속성*은 복제본 키와 공유되는 다중 리전 기본 키의 속성입니다.는 기본 키와 동일한 공유 속성 값을 가진 복제본 키를 AWS KMS 생성합니다. 그런 다음 기본 키의 공유 속성 값을 복제 키와 주기적으로 동기화합니다. 복제본 키에는 이러한 속성을 설정할 수 없습니다.

다음은 다중 리전 키의 공유 속성입니다.
+ [키 ID](concepts.md#key-id-key-id) — ([키 ARN](concepts.md#key-id-key-ARN)의 `Region` 요소가 다릅니다.)
+ [키 구성](create-keys.md#key-origin) 요소 - 관련 다중 리전 키 세트의 기본 키와 복제본 키는 동일한 키 구성 요소를 공유합니다. 키 구성 요소가 AWS KMS (`AWS_KMS` 오리진)에 의해 생성되는 다중 리전 키의 경우는 복제본이 생성되거나 자동 또는 온디맨드 교체를 통해 새 키 구성 요소가 생성될 때 모든 키 구성 요소를 기본 복제본에서 각 복제본으로 AWS KMS 안전하게 전송합니다. 가져온 키 구성 요소(`EXTERNAL` 오리진)가 있는 다중 리전 키의 경우는 기본 키에서 키 구성 요소 식별자를 AWS KMS 동기화하지만 각 복제본 키로 키 구성 요소를 독립적으로 가져와야 합니다.
+ [키 구성 요소 오리진](create-keys.md#key-origin)
+ [키 사양](create-keys.md#key-spec) 및 암호화 알고리즘
+ [키 사용](create-keys.md#key-usage)
+ [자동 키 교체](rotating-keys-enable.md) — 기본 키에서만 자동 키 교체를 활성화하거나 비활성화할 수 있습니다. 공유 키 구성 요소의 모든 버전을 사용하여 새 복제본 키가 생성됩니다. 자세한 내용은 [Rotating multi-Region keys](rotate-keys.md#multi-region-rotate)을 참조하세요.
+ [온디맨드 교체](rotating-keys-on-demand.md) - 프라이머리 키에서만 온디맨드 교체를 수행할 수 있습니다. 키 구성 요소가 AWS KMS (`AWS_KMS` 오리진)에 의해 생성되는 다중 리전 키의 경우는 공유 키 구성 요소의 모든 버전으로 복제본 키를 AWS KMS 생성합니다. 가져온 키 구성 요소(`EXTERNAL` 오리진)가 있는 다중 리전 키의 경우는 키 구성 요소 ID와 키 구성 요소 설명을 기본 키에서 복제본 키로 AWS KMS 전파하지만 키 구성 요소는 전파하지 않습니다. 올바른 키 구성 요소를 각 복제본 키로 개별적으로 가져와야 합니다. 자세한 내용은 [Rotating multi-Region keys](rotate-keys.md#multi-region-rotate)을 참조하세요.

또한 관련 다중 리전 키의 기본 및 복제 지정을 공유 속성으로 생각할 수 있습니다. [새 복제본 키를 생성](#mrk-replica-key)하거나 [기본 키를 업데이트](multi-region-update.md#update-primary-console)하면는 모든 관련 다중 리전 키에 대한 변경 사항을 AWS KMS 동기화합니다. 이러한 변경이 완료되면 관련된 모든 다중 리전 키가 기본 키와 복제 키를 정확하게 나열합니다.

다중 리전 키의 다른 모든 속성은 키 설명, [키 정책](key-policies.md), [권한 부여](grants.md), [활성화 및 비활성화된 키 상태](enabling-keys.md), [별칭](kms-alias.md) 및 [태그를](tagging-keys.md) 포함한 *독립적인 속성*입니다. 관련된 모든 다중 리전 키에서 이러한 속성에 대해 동일한 값을 설정할 수 있지만 독립 속성의 값을 변경하면 AWS KMS 가 동기화하지 않습니다.

다중 리전 키의 공유 속성 동기화를 추적할 수 있습니다. AWS CloudTrail 로그에서 [SynchronizeMultiRegionKey](ct-synchronize-multi-region-key.md) 이벤트를 찾습니다.

# 다중 리전 키에 대한 보안 고려 사항
<a name="mrk-when-to-use"></a>

 AWS KMS 다중 리전 키는 필요한 경우에만 사용합니다. 다중 리전 키는 AWS 리전 간에 암호화된 데이터를 이동하거나 지역 간 액세스가 필요한 워크로드에 유연하고 확장 가능한 솔루션을 제공합니다. 여러 리전에서 보호된 데이터를 공유, 이동 또는 백업해야 하거나 다른 리전에서 작동하는 애플리케이션의 동일한 디지털 서명을 만들어야 하는 경우 다중 리전 키를 고려하십시오.

그러나 다중 지역 키를 만드는 프로세스는 AWS KMS내의 AWS 리전 경계를 넘어 키 구송 요소를 이동합니다. 다중 리전 키에 의해 생성된 암호문은 여러 지리적 위치에 있는 여러 관련 키에 의해 해독될 수 있습니다. 또한 지역적으로 격리된 서비스 및 리소스에도 상당한 이점이 있습니다. 각 AWS 리전 은 격리되어 있으며 다른 리전에 독립적입니다. 리전에서는 내결함성, 안정성 및 복원성을 지원하고 지연 시간을 줄일 수도 있습니다. 이를 통해 사용자는 가용 상태를 유지하며 다른 리전에서 중단되는 경우 영향을 받지 않는 중복 리소스를 생성할 수 있습니다. 또한 AWS KMS에서는 모든 사이퍼텍스트를 하나의 키로만 복호화할 수 있습니다.

또한 리전 지역 키는 새로운 보안 고려 사항을 제기합니다.
+ 다중 리전 키를 사용하면 액세스 제어 및 데이터 보안 정책 적용이 더욱 복잡해집니다. 격리된 여러 리전의 키에 대해 정책을 일관되게 감사해야 합니다. 또한 별도의 키에 의존하는 대신 정책을 사용하여 경계를 적용해야합니다.

  예를 들어, 한 리전의 급여 팀이 다른 지역의 급여 데이터를 읽을 수 없도록 데이터에 대한 정책 조건을 설정해야 합니다. 또한 한 리전의 다중 리전 키가 한 테넌트의 데이터를 보호하고 다른 리전의 관련 다중 리전 키가 다른 테넌트의 데이터를 보호하는 시나리오를 방지하려면 액세스 제어를 사용해야 합니다.
+ 리전 간 키 감사 또한 더 복잡합니다. 다중 리전 키를 사용하면 여러 리전의 감사 활동을 검사하고 조정하여 보호된 데이터에 대한 주요 활동을 완벽하게 이해할 수 있어야 합니다.
+ 데이터 상주 규정 준수는 더욱 복잡할 수 있습니다. 격리된 리전을 사용하면 데이터 상주 및 데이터 주권 준수를 보장할 수 있습니다. 지정된 리전의 KMS 키는 해당 리전의 민감한 데이터만 해독할 수 있습니다. 한 리전에서 암호화된 데이터는 완전히 보호되고 다른 리전에서는 액세스할 수 없게 됩니다.

  다중 리전 키를 사용하여 데이터 레지던시 및 데이터 주권을 확인하려면 액세스 정책을 구현하고 여러 리전에서 AWS CloudTrail 이벤트를 컴파일해야 합니다.

다중 리전 키에 대한 액세스 제어를 더 쉽게 관리할 수 있도록 다중 리전 키 복제 권한([kms:ReplicateKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_ReplicateKey.html)) 복제 권한은 키 생성을 위한 표준 권한([kms:CreateKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateKey.html))과 별개입니다. 또한는 다중 리전 키를 생성, 사용 또는 관리할 수 있는 권한을 허용하거나 거부`kms:MultiRegion`하는와 다중 리전 키를 복제할 수 있는 리전을 제한`kms:ReplicaRegion`하는를 포함하여 다중 리전 키에 대한 여러 정책 조건을 AWS KMS 지원합니다. 자세한 내용은 [다중 리전 키에 대한 액세스 제어](multi-region-keys-auth.md)을 참조하세요.

# 다중 리전 키의 작동 방식
<a name="mrk-how-it-works"></a>

먼저 미국 동부(버지니아 북부)와 같이가 AWS 리전 AWS KMS 지원하는에서 대칭 또는 비대칭 [다중 리전 기본 키를](multi-region-keys-overview.md#mrk-primary-key) 생성합니다. 키를 만들 때만 키가 단일 리전인지 또는 다중 리전인지를 결정합니다. 나중에 이 속성을 변경할 수 없습니다. 다른 KMS 키와 마찬가지로 다중 리전 키에 대한 키 정책을 설정하고 권한 부여를 만들고 분류 및 권한 부여를 위한 별칭 및 태그를 추가할 수 있습니다. (이들은 다른 키와 공유되거나 동기화되지 않는 [독립적인 속성](multi-region-keys-overview.md#mrk-sync-properties)입니다.) 암호화 또는 서명에 대한 암호화 작업에 다중 리전 기본 키를 사용할 수 있습니다.

 AWS KMS 콘솔에서 또는 `MultiRegion` 파라미터가 로 설정된 [CreateKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateKey.html) API를 사용하여 [다중 리전 기본 키를 생성할](create-primary-keys.md) 수 있습니다`true`. 다중 리전 키에는 `mrk-`로 시작하는 구분 키 ID가 있습니다. `mrk-` 접두사를 사용하여 프로그래밍 방식으로 MRK를 식별할 수 있습니다.

![\[Multi-Region primary key icon with red key symbol and sample key ID format.\]](http://docs.aws.amazon.com/ko_kr/kms/latest/developerguide/images/multi-region-primary-key.png)


선택한 경우 다중 리전 기본 키를 유럽(아일랜드)과 같은 동일한 [AWS 파티션](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) AWS 리전 에서 하나 이상의 다른에 [복제](multi-region-keys-overview.md#replicate)할 수 있습니다. 이렇게 하면가 기본 [키와 동일한 키 ID 및 기타 공유 속성을 사용하여 지정된 리전에서 복제](multi-region-keys-overview.md#mrk-replica-key)본 키를 AWS KMS 생성합니다. [공유 속성](multi-region-keys-overview.md#mrk-sync-properties) 그 결과 두 개의 *관련* 다중 리전 키(기본 키와 복제본 키)가 생성되며, 이 키를 서로 바꿔 사용할 수 있습니다..

 AWS KMS 콘솔에서 또는 [ReplicateKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_ReplicateKey.html) API[를 사용하여 다중 리전 복제본 키를 생성할](multi-region-keys-replicate.md) 수 있습니다.

![\[Diagram showing multi-Region primary and replica keys in US East and EU regions with key IDs.\]](http://docs.aws.amazon.com/ko_kr/kms/latest/developerguide/images/multi-region-replica-key.png)


결과 [다중 리전 복제본 키](multi-region-keys-overview.md#mrk-replica-key)는 기본 키와 동일한 [공유 속성](multi-region-keys-overview.md#mrk-sync-properties)을 가진 완전한 기능의 KMS 키입니다. 다른 모든 측면에서 자체 설명, 키 정책, 권한 부여, 별칭 및 태그가 있는 독립 KMS 키입니다. 다중 리전 키를 사용하거나 사용하지 않도록 설정해도 관련된 다중 리전 키에는 영향을 주지 않습니다. 기본 키와 복제 키를 암호화 작업에서 독립적으로 사용하거나 사용을 조정할 수 있습니다. 예를 들어 미국 동부(버지니아 북부) 리전의 기본 키를 사용하여 데이터를 암호화하고, 데이터를 유럽(아일랜드) 리전으로 이동하고, 복제 키를 사용하여 데이터를 해독할 수 있습니다.

관련 다중 리전 키는 동일한 키 ID를 갖습니다. 키 ARN(Amazon 리소스 이름)은 리전 필드에서만 다릅니다. 예를 들어 다중 리전 기본 키 및 복제본 키에는 다음 예제 키 ARN이 있을 수 있습니다. 키 ID(키 ARN의 마지막 요소)는 동일합니다. 두 키 모두 다중 리전 키의 구분적 키 ID를 가지며, **mrk-**로 시작합니다.

```
Primary key: arn:aws:kms:us-east-1:111122223333:key/mrk-1234abcd12ab34cd56ef12345678990ab
Replica key: arn:aws:kms:eu-west-1:111122223333:key/mrk-1234abcd12ab34cd56ef12345678990ab
```

상호 운용성을 위해서는 동일한 키 ID가 필요합니다. 암호화할 때는 KMS 키의 키 ID를 사이퍼텍스트로 AWS KMS 바인딩하므로 사이퍼텍스트는 해당 KMS 키 또는 키 ID가 동일한 KMS 키로만 복호화할 수 있습니다. 또한 이 기능을 사용하면 관련 다중 리전 키를 쉽게 인식할 수 있으며 상호 교환 방식으로 쉽게 사용할 수 있습니다. 예를 들어 애플리케이션에서 이러한 키를 사용하는 경우 공유 키 ID로 관련 다중 리전 키를 참조할 수 있습니다. 그런 다음 필요한 경우 리전 또는 ARN을 지정하여 구분합니다.

데이터가 변경되면 기본 키를 미국 서부(오레곤) 및 아시아 태평양(시드니)과 같은 동일한 파티션 AWS 리전 의 다른에 복제할 수 있습니다. 결과는 다음 다이어그램과 같이 동일한 키 구성 요소 및 키 ID를 가진 4개의 *관련* 다중 리전 키입니다. 키를 독립적으로 관리합니다. 가져온 키 구성 요소가 있는 다중 리전 키의 경우 키 구성 요소를 각 관련 키로 개별적으로 가져와야 합니다. 독립적으로 또는 조정된 방식으로 사용할 수 있습니다. 예를 들어 아시아 태평양(시드니)의 복제본 키를 사용하여 데이터를 암호화하고, 데이터를 미국 서부(오레곤)로 이동한 다음, 미국 서부(오레곤)의 복제 키를 사용하여 암호를 해독할 수 있습니다.

![\[다중 리전 키의 프라이머리 키 및 복제본 키\]](http://docs.aws.amazon.com/ko_kr/kms/latest/developerguide/images/multi-region-keys.png)


다중 리전 키에 대한 기타 고려 사항은 다음과 같습니다.

*공유 속성 동기화* - 다중 리전 키의 [공유 속성](multi-region-keys-overview.md#mrk-sync-properties)이 변경되면는 [기본 키](multi-region-keys-overview.md#mrk-primary-key)에서 모든 [복제본 키](multi-region-keys-overview.md#mrk-replica-key)로 변경 사항을 AWS KMS 자동으로 동기화합니다. 공유 속성의 동기화를 요청하거나 강제할 수 없습니다.는 모든 변경 사항을 AWS KMS 감지하고 동기화합니다. 그러나 CloudTrail 로그에서 [SynchronizeMultiRegionKey](ct-synchronize-multi-region-key.md) 이벤트를 사용하여 동기화를 감사할 수 있습니다.

예를 들어 오리진이 있는 대칭 다중 리전 기본 키에서 자동 키 교체를 활성화하면는 해당 설정을 모든 복제본 키로 `AWS_KMS` AWS KMS 복사합니다. 키 구성 요소가 교체되면 모든 관련 다중 리전 키 간에 교체가 동기화되므로 동일한 현재 키 구성 요소를 가지며 모든 이전 버전의 키 구성 요소에 액세스할 수 있습니다. 새 복제 키를 만들면 관련된 모든 다중 리전 키와 동일한 현재 키 구성 요소를 가지며 이전 버전의 키 구성 요소에 액세스할 수 있습니다. 자세한 내용은 [Rotating multi-Region keys](rotate-keys.md#multi-region-rotate)을 참조하세요.

*기본 키 변경* — 모든 다중 리전 키 세트에는 정확히 하나의 기본 키가 있어야 합니다. [기본 키](multi-region-keys-overview.md#mrk-primary-key)는 복제 할 수있는 유일한 키입니다. 또한 복제 키의 공유 속성의 소스이기도합니다. 하지만 기본 키를 복제본으로 변경하고 복제본 키 중 하나를 기본 키로 승격할 수 있습니다. 이를 수행하여 특정 리전에서 다중 리전 기본 키를 삭제하거나 프로젝트 관리자와 더 가까운 지역에서 기본 키를 찾을 수 있습니다. 자세한 내용은 [다중 리전 키 세트에서 프라이머리 키 변경](multi-region-update.md)을 참조하세요.

*다중 리전 키 삭제 -* 모든 KMS 키와 마찬가지로에서 삭제하기 전에 다중 리전 키 AWS KMS 삭제를 예약해야 합니다. 키가 삭제 대기 중인 동안에는 어떠한 암호화 작업에도 해당 키를 사용할 수 없습니다. 그러나 AWS KMS 는 모든 복제본 키가 삭제될 때까지 다중 리전 기본 키를 삭제하지 않습니다. 자세한 내용은 [Deleting multi-Region keys](deleting-keys.md#deleting-mrks) 섹션을 참조하십시오.

# 키의 AWS KMS 키 구성 요소 가져오기
<a name="importing-keys"></a>

제공하는 키 구성 요소를 사용하여 AWS KMS keys (KMS 키)를 생성할 수 있습니다.

KMS 키는 데이터 키를 논리적으로 표현한 것입니다. KMS 키의 메타데이터에는 암호화 작업을 수행하는 데 사용되는 키 구성 요소의 ID가 포함됩니다. [KMS 키를 생성할](create-keys.md) 때 기본적으로는 해당 KMS 키의 키 구성 요소를 AWS KMS 생성합니다. 그러나 키 구성 요소 없이 KMS 키를 생성한 다음 자신의 키 구성 요소를 해당 KMS 키로 가져올 수 있습니다. 이 KMS 키는 종종 “자체 키 사용"(BYOK)이라고 합니다.

![\[표시하는 키 구성 요소를 강조하는 키 아이콘입니다.\]](http://docs.aws.amazon.com/ko_kr/kms/latest/developerguide/images/import-key.png)


**참고**  
AWS KMS 는 가져온 키 구성 요소가 있는 KMS 키로 암호화되었 AWS KMS더라도 외부에서 AWS KMS 대칭 암호화 KMS 키로 암호화된 사이퍼텍스트의 복호화를 지원하지 않습니다.는이 작업에 필요한 사이퍼텍스트 형식을 게시하지 AWS KMS 않으며 형식은 예고 없이 변경될 수 있습니다.

가져온 키 구성 요소를 사용하는 경우가 해당 구성 요소의 사본을 사용하도록 허용하면서 키 구성 요소에 대한 책임은 계속 AWS KMS 사용자에게 있습니다. 이렇게 하기로 선택하는 경우는 다음과 같습니다.
+ 요구 사항에 부합하는 엔트로피 소스를 사용하여 키 구성 요소를 생성했음을 입증하기 위해.
+  AWS 서비스와 함께 자체 인프라의 키 구성 요소를 사용하고를 사용하여 AWS KMS 내에서 해당 키 구성 요소의 수명 주기를 관리합니다 AWS.
+ 코드 서명 AWS KMS, PKI 인증서 서명 및 인증서 고정 애플리케이션을 위한 키와 같이에서 기존의 잘 설정된 키를 사용하려면
+ 에서 키 구성 요소의 만료 시간을 설정하고 AWS [수동으로 삭제](importing-keys-delete-key-material.md)하지만 나중에 다시 사용할 수 있도록 하려면 . 반면 [키 삭제를 예약](deleting-keys.md#deleting-keys-how-it-works)하려면 7 - 30일의 대기 기간이 필요하며, 이 기간이 지나면 삭제한 KMS 키를 복구할 수 없습니다.
+ 키 구성 요소의 원본 사본을 소유하고 키 구성 요소의 전체 수명 주기 동안 추가 내구성 및 재해 복구를 AWS 위해 외부에 보관합니다.
+ 비대칭 키 및 HMAC 키의 경우 가져오기는 내부 및 외부에서 작동하는 호환 가능하고 상호 운용 가능한 키를 생성합니다 AWS.

**지원되는 KMS 키 유형**

AWS KMS 는 다음 유형의 KMS 키에 대해 가져온 키 구성 요소를 지원합니다. [사용자 지정 키 스토어](key-store-overview.md#custom-key-store-overview)의 KMS 키에 키 구성 요소를 가져올 수 없습니다.
+ [대칭 암호화 KMS 키](symm-asymm-choose-key-spec.md#symmetric-cmks)
+ [비대칭 KMS 키(ML-DSA 키 제외)](symmetric-asymmetric.md)
+ [HMAC KMS 키](hmac.md)
+ 지원되는 모든 유형의 [다중 리전 키](multi-region-keys-overview.md)

**리전**

가져온 키 구성 요소는가 지원하는 모든에서 지원 AWS 리전 됩니다 AWS KMS .

중국 리전의 경우 대칭 암호화 KMS 키에 대한 주요 구성 요소 요구 사항은 다른 리전과 다릅니다. 자세한 내용은 [3단계: 키 구성 요소 암호화](importing-keys-encrypt-key-material.md)을 참조하세요.

**자세히 알아보기**
+ 가져온 키 구성 요소로 KMS 키를 생성하려면 [가져온 키 구성 요소가 있는 KMS 키 생성](importing-keys-conceptual.md) 단원을 참조하세요.
+ KMS 키의 가져온 키 구성 요소 만료일이 가까워지면 알려주는 알람을 만들려면 [가져온 키 구성 요소의 만료 여부에 대한 CloudWatch 경보 생성](imported-key-material-expiration-alarm.md) 단원을 참조하세요.
+ 키 구성 요소를 KMS 키로 다시 가져오려면 [키 구성 요소 다시 가져오기](importing-keys-import-key-material.md#reimport-key-material) 단원을 참조하세요.
+ 새로운 키 구성 요소를 온디맨드 교체를 위해 KMS 키에 가져오려면 [새 키 구성 요소 가져오기](importing-keys-import-key-material.md#import-new-key-material) 및 [온디맨드 키 교체 수행](rotating-keys-on-demand.md) 페이지를 참조하세요.
+ 가져온 키 요소가 있는 KMS 키를 식별하고 보려면 [가져온 키 구성 요소로 KMS 키 식별](identify-key-types.md#identify-imported-keys) 단원을 참조하세요.
+ 가져온 키 구성 요소가 있는 KMS 키를 삭제하기 위한 특별 고려 사항에 대해 알아보려면 [Deleting KMS keys with imported key material](deleting-keys.md#import-delete-key) 단원을 참조하세요.

# 가져온 키 구성 요소에 대한 특별 고려 사항
<a name="importing-keys-considerations"></a>

키 구성 요소를 로 가져오기 전에 가져온 키 구성 요소의 다음 특성을 이해해야 AWS KMS합니다.

**키 구성 요소를 생성합니다.**  
보안 요구 사항에 부합하는 임의 소스를 이용해 키 구성 요소를 생성해야 합니다.

**가용성과 지속성에 대한 책임은 고객에게 있습니다.**  
AWS KMS 는 가져온 키 구성 요소를 고가용성으로 유지하도록 설계되었습니다. 그러나 AWS KMS 는 가져온 키 구성 요소의 내구성을가 AWS KMS 생성하는 키 구성 요소와 동일한 수준으로 유지하지 않습니다. 자세한 내용은 [가져온 키 구성 요소 보호](import-keys-protect.md)을 참조하세요.

**키 구성 요소를 삭제할 수 있음**  
KMS 키에서 [가져온 키 구성 요소를 삭제](importing-keys-delete-key-material.md)하여 즉시 KMS 키를 사용할 수 없게 만들 수 있습니다. 또한 키 구성 요소를 KMS 키로 가져올 때 키의 만료 여부를 결정하고 [만료 시간을 설정](importing-keys-import-key-material.md#importing-keys-expiration)할 수 있습니다. 만료 시간이 되면가 AWS KMS [키 구성 요소를 삭제합니다](importing-keys-delete-key-material.md). 키 구성 요소가 없으면 어떠한 암호화 작업에도 KMS 키를 사용할 수 없습니다. 키를 복원하려면 같은 키 구성 요소를 다시 가져와야 합니다.

**비대칭 및 HMAC 키의 키 구성 요소는 변경할 수 없습니다.**  
KMS 키로 키 구성 요소를 가져오면, KMS 키는 키 구성 요소와 영구적으로 연결됩니다. [동일한 키 구성 요소를 가져오되](importing-keys-import-key-material.md#reimport-key-material), 다른 키 구성 요소를 KMS 키로 가져올 수는 없습니다. 또한 가져온 키 구성 요소가 있ㄴ느 KMS 키에 대한 [자동 키 교체를 활성화](rotate-keys.md)할 수 없습니다. 하지만 가져온 키 구성 요소가 있는 [KMS 키를 수동 교체](rotate-keys-manually.md)할 수 있습니다.

**대칭 암호화 키에 대해 온디맨드 교체를 수행할 수 있습니다.**  
가져온 키 구성 요소가 있는 대칭 암호화 키는 온디맨드 교체를 지원합니다. [여러 키 구성 요소](importing-keys-import-key-material.md#import-new-key-material)를 이러한 키에 가져와 [온디맨드 교체](rotating-keys-on-demand.md)를 통해 현재 키 구성 요소를 업데이트할 수 있습니다. 현재 키 구성 요소는 암호화와 복호화에 모두 사용되지만, 다른(현재가 아닌) 키 구성 요소는 복호화에만 사용할 수 있습니다.

**키 구성 요소 오리진을 변경할 수 없음**  
가져온 키 구성 요소용으로 설계된 KMS 키에는 변경할 수 없는 [오리진](create-keys.md#key-origin) `EXTERNAL` 값이 있습니다. 가져온 키 구성 요소의 KMS 키를를 포함한 다른 소스의 키 구성 요소를 사용하도록 변환할 수 없습니다 AWS KMS. 마찬가지로 AWS KMS 키 구성 요소가 있는 KMS 키를 가져온 키 구성 요소용으로 설계된 키로 변환할 수 없습니다.

**키 구성 요소를 내보낼 수 없음**  
가져온 키 구성 요소는 내보낼 수 없습니다. 가져온 키 구성 요소는 어떤 형식으로도 반환할 수 AWS KMS 없습니다. 가져온 키 구성 요소의 사본을 외부 AWS, 가급적이면 하드웨어 보안 모듈(HSM)과 같은 키 관리자에 보관하여 키 구성 요소를 삭제하거나 만료되면 다시 가져올 수 있도록 해야 합니다.

**가져온 키 구성 요소가 있는 다중 리전 키를 생성할 수 있음**  
가져온 키 구성 요소가 있는 다중 리전에는 가져온 키 구성 요소가 있는 KMS 키의 특징을 가지며, AWS 리전간에 상호 운용이 가능합니다. 가져온 키 구성 요소가 있는 다중 리전 키를 생성하려면 동일한 키 구성 요소를 기본 KMS 키와 각 복제본 키로 가져와야 합니다. 다중 리전 키의 키 구성 요소 가져오기에 대한 자세한 내용은 섹션을 참조하세요[새 키 구성 요소 가져오기](importing-keys-import-key-material.md#import-new-key-material).

**비대칭 키 및 HMAC 키는 이동 가능하며 상호 운용이 가능함**  
외부에서 비대칭 키 구성 요소와 HMAC 키 구성 요소를 사용하여 가져온 키 구성 요소가 동일한 AWS KMS 키와 상호 작용 AWS 할 수 있습니다.  
알고리즘에 사용되는 KMS 키에 불가역적으로 바인딩되는 AWS KMS 대칭 사이퍼텍스트와 달리는 암호화, 서명 및 MAC 생성에 표준 HMAC 및 비대칭 형식을 AWS KMS 사용합니다. 따라서 키는 이동이 가능하며 기존 에스크로 키 시나리오를 지원합니다.  
KMS 키에 키 구성 요소를 가져온 경우 외부에서 가져온 키 구성 요소를 사용하여 다음 작업을 AWS 수행할 수 있습니다.  
+ HMAC 키 - 가져온 키 구성 요소가 있는 HMAC KMS 키로 생성된 HMAC 태그를 확인할 수 있습니다. 가져온 키 구성 요소와 함께 HMAC KMS 키를 사용하여 외부의 키 구성 요소에 의해 생성된 HMAC 태그를 확인할 수도 있습니다 AWS.
+ 비대칭 암호화 키 - 외부에서 프라이빗 비대칭 암호화 키를 사용하여 KMS 키로 암호화된 사이퍼텍스트를 해당 퍼블릭 키로 AWS 복호화할 수 있습니다. 비대칭 KMS 키를 사용하여 외부에서 생성된 비대칭 사이퍼텍스트를 복호화할 수도 있습니다 AWS.
+ 비대칭 서명 키 - 가져온 키 구성 요소와 함께 비대칭 서명 KMS 키를 사용하여 외부에서 프라이빗 서명 키로 생성된 디지털 서명을 확인할 수 있습니다 AWS. 외부에서 비대칭 퍼블릭 서명 키를 사용하여 비대칭 KMS 키로 생성된 서명을 AWS 확인할 수도 있습니다.
+ 비대칭 키 계약 키 - 가져온 키 구성 요소가 있는 비대칭 키 계약 KMS 키를 사용하여 AWS외부 피어와 공유된 비밀을 도출할 수 있습니다.
동일한 키 구성 요소를 동일한 AWS 리전의 다른 KMS 키로 가져오는 경우 이러한 키도 상호 운용할 수 있습니다. 서로 다른에서 상호 운용 가능한 KMS 키를 생성하려면 가져온 키 구성 요소가 있는 다중 리전 키를 AWS 리전생성합니다.  

**RSA 프라이빗 키**
+ AWS KMS 에서는 가져온 RSA 프라이빗 키에 [FIPS 186-5, 섹션 A. 1.3](https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.186-5.pdf)에 설명된 테스트를 준수하는 주요 요소가 있어야 합니다. 다른 소프트웨어 또는 장치는 RSA 프라이빗 키의 이러한 소인수 검증에 대해 다른 알고리즘을 사용할 수 있습니다. 드문 경우지만 다른 알고리즘으로 검증된 키가 AWS KMS에서 허용되지 않을 수 있습니다.

**대칭 암호화 키는 이동하거나 상호 운용할 수 없음**  
가 AWS KMS 생성하는 대칭 사이퍼텍스트는 이동하거나 상호 운용할 수 없습니다.는 이동성에 필요한 대칭 사이퍼텍스트 형식을 게시하지 AWS KMS 않으며, 형식은 예고 없이 변경될 수 있습니다.  
+ AWS KMS 는 가져온 키 구성 요소를 사용 AWS하더라도 외부에서 암호화하는 대칭 사이퍼텍스트를 해독할 수 없습니다.
+ AWS KMS 는 사이퍼텍스트가 가져온 키 구성 요소가 있는 KMS 키로 암호화되었 AWS KMS더라도 외부의 AWS KMS 대칭 사이퍼텍스트 복호화를 지원하지 않습니다.
+ 가져온 키 구성 요소가 동일한 KMS 키는 상호 운용이 불가능합니다. 각 KMS 키에 고유한 사이퍼텍스트를 AWS KMS 생성하는 대칭 사이퍼텍스트입니다. 이 사이퍼텍스트 형식은 데이터를 암호화한 KMS 키만 해독할 수 있도록 보장합니다.
또한 [AWS Encryption SDK](https://docs.aws.amazon.com/encryption-sdk/latest/developer-guide/) 또는 [Amazon S3 클라이언트 측 암호화](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingClientSideEncryption.html)와 같은 AWS 도구를 사용하여 대칭 사이퍼텍스트를 AWS KMS 해독할 수 없습니다.  
따라서 가져온 키 구성 요소가 있는 키를 사용하여 키 구성 요소에 조건부로 액세스할 수 있는 권한이 있는 타사가 외부의 특정 사이퍼텍스트를 복호화할 수 있는 키 에스크로 배열을 지원할 수 없습니다 AWS KMS. 키 에스크로를 지원하려면 [AWS Encryption SDK](https://docs.aws.amazon.com/encryption-sdk/latest/developer-guide/java-example-code.html#java-example-multiple-providers)를 사용하여 AWS KMS와 독립적인 키로 메시지를 암호화합니다.

# 가져온 키 구성 요소 보호
<a name="import-keys-protect"></a>

가져온 키 구성 요소는 전송 중 및 보관 중에 보호됩니다. 키 구성 요소를 가져오기 전에 [FIPS 140-3 암호화 모듈 검증 프로그램에](https://csrc.nist.gov/projects/cryptographic-module-validation-program/certificate/4884) 따라 검증된 AWS KMS 하드웨어 보안 모듈(HSMs)합니다. 래핑 퍼블릭 키를 사용하여 키 구성 요소를 직접 암호화하거나 AES 대칭 키를 사용하여 키 구성 요소를 암호화한 다음 RSA 퍼블릭 키를 사용하여 AES 대칭 키를 암호화할 수 있습니다.

수신 시는 AWS KMS HSM의 해당 프라이빗 키로 키 구성 요소를 AWS KMS 해독하고 HSM의 휘발성 메모리에만 있는 AES 대칭 키로 다시 암호화합니다. 키 구성 요소는 HSM을 일반 텍스트로 두지 않습니다. 사용 중이고 AWS KMS HSMs.

가져온 키 구성 요소와 함께 KMS 키를 사용하는 것은 KMS 키에 설정한 [액세스 제어 정책](control-access.md)에 의해서만 결정됩니다. 또한 [별칭](kms-alias.md)과 [태그](tagging-keys.md)를 사용하여 KMS 키에 대한 [액세스를 식별하고 제어](abac.md)할 수 있습니다. AWS CloudTrail과 같은 서비스를 사용하여 키를 [활성화 및 비활성화](enabling-keys.md)하고 [확인](viewing-keys.md)하며 [모니터링](monitoring-overview.md)할 수 있습니다.

하지만 키 구성 요소의 유일한 안전 장치 복사본은 유지해야 합니다. 이러한 추가 제어 조치의 대가로 가져온 키 구성 요소의 내구성과 전체 가용성에 대한 책임은 사용자에게 있습니다. AWS KMS 는 가져온 키 구성 요소를 고가용성을 유지하도록 설계되었습니다. 그러나 AWS KMS 는 가져온 키 구성 요소의 내구성을가 AWS KMS 생성하는 키 구성 요소와 동일한 수준으로 유지하지 않습니다.

내구성의 이러한 차이는 다음과 같은 경우에 의미가 있습니다.
+ 가져온 키 구성 요소의 [만료 시간을 설정](importing-keys-import-key-material.md#importing-keys-expiration)하면는 키 구성 요소가 만료된 후 AWS KMS 삭제합니다.는 KMS 키 또는 메타데이터를 삭제하지 AWS KMS 않습니다. 가져온 키 구성 요소의 만료일이 가까워지면 이를 알리는 [Amazon CloudWatch 경보를 생성](imported-key-material-expiration-alarm.md)할 수 있습니다.

  가 KMS 키에 대해 AWS KMS 생성하는 키 구성 요소를 삭제할 수 없으며 AWS KMS 키 구성 요소가 만료되도록 설정할 수 없습니다.
+ [가져온 키 구성 요소를 수동으로 삭제](importing-keys-delete-key-material.md)하면가 키 구성 요소를 AWS KMS 삭제하지만 KMS 키 또는 메타데이터는 삭제하지 않습니다. 반대로 [키 삭제를 예약](deleting-keys.md#deleting-keys-how-it-works)하려면 7\$130일의 대기 기간이 필요하며, 그 후에는가 KMS 키, 메타데이터 및 키 구성 요소를 AWS KMS 영구적으로 삭제합니다.
+ 드물지만에 영향을 미치는 특정 리전 전체의 장애 AWS KMS (예: 전체 전원 손실)가 발생하는 경우는 가져온 키 구성 요소를 자동으로 복원 AWS KMS 할 수 없습니다. 그러나 AWS KMS 는 KMS 키와 메타데이터를 복원할 수 있습니다.

사용자가 제어하는 시스템의 외부 AWS 에 가져온 키 구성 요소의 사본을 보관해야 *합니다*. 하드웨어 보안 모듈(HSM)과 같은 키 관리 시스템에 가져온 키 구성 요소의 내보내기 가능한 복사본을 저장하는 것이 좋습니다. 가장 좋은 방법은 내보낼 수 있는 키 구성 요소 사본과 함께 KMS 키 ARN과 AWS KMS 가 생성한 키 구성 요소 ID에 대한 참조를 저장하는 것입니다. 가져온 키 구성 요소가 삭제되거나 만료되면 동일한 키 구성 요소를 다시 가져올 때까지 관련 KMS 키를 사용할 수 없게 됩니다. 가져온 키 구성 요소가 영구적으로 손실되면 KMS 키로 암호화된 사이퍼텍스트를 복구할 수 없습니다.

**중요**  
대칭 암호화 키에는 여러 키 구성 요소가 연결될 수 있습니다. 이러한 키 구성 요소 중 하나를 삭제하거나 해당 키 구성 요소 중 하나가 만료되는 즉시 전체 KMS 키를 사용할 수 없게 됩니다(삭제되거나 만료되는 키 구성 요소가 `PENDING_ROTATION` 또는가 아닌 경우`PENDING_MULTI_REGION_IMPORT_AND_ROTATION`). 이러한 키와 연결된 만료되었거나 삭제된 키 구성 요소는 키가 암호화 작업에 사용 가능해지기 전에 반드시 다시 가져와야 합니다.

# CloudHSM 키 저장소의 KMS 키
<a name="manage-cmk-keystore"></a>

 AWS CloudHSM 키 스토어 AWS KMS keys 에서의 삭제를 생성, 보기, 관리, 사용 및 예약할 수 있습니다. 사용하는 절차는 다른 KMS 키에 사용하는 절차와 매우 비슷합니다. 유일한 차이점은 KMS AWS CloudHSM 키를 생성할 때 키 스토어를 지정한다는 것입니다. 그런 다음 키 스토어와 연결된 클러스터의 KMS 키에 AWS CloudHSM 대해 추출할 수 없는 AWS CloudHSM 키 구성 요소를 AWS KMS 생성합니다. AWS CloudHSM 키 스토어에서 KMS 키를 사용하는 경우 [암호화 작업은](#use-cmk-keystore) 클러스터의 HSMs에서 수행됩니다.

**지원되는 기능**  
이 단원에서 설명하는 절차 외에도 AWS CloudHSM 키 스토어의 KMS 키를 사용하여 다음을 수행할 수 있습니다.  
+ 키 정책, IAM 정책 및 권한 부여를 사용해 KMS 키에 대한 [액세스 권한](control-access.md)을 부여합니다.
+ KMS 키를 [사용하거나 사용하지 않도록 설정](enabling-keys.md)합니다.
+ [태그](tagging-keys.md)를 할당하고 [별칭](kms-alias.md)을 생성하고 ABAC(속성 기반 액세스 제어)를 사용하여 KMS 키에 대한 액세스 권한을 부여합니다.
+ KMS 키를 이용하여 다음 암호화 작업을 수행합니다.
  + [암호화](https://docs.aws.amazon.com/kms/latest/APIReference/API_Encrypt.html)
  + [Decrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html)
  + [GenerateDataKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html)
  + [GenerateDataKeyWithoutPlaintext](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKeyWithoutPlaintext.html)
  + [ReEncrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_ReEncrypt.html)

  비대칭 데이터 키 페어를 생성하는 작업인 [GenerateDataKeyPair](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKeyPair.html) 및 [GenerateDataKeyPairWithoutPlaintext](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKeyPairWithoutPlaintext.html)는 사용자 지정 키 스토어에서 지원되지 *않습니다*.
+ 고객 관리형 KMS 키를 지원하고 [AWS KMS에 통합되는AWS 서비스](service-integration.md)와 함께 KMS 키를 사용합니다.
+ [AWS CloudTrail 로그](logging-using-cloudtrail.md)와 [Amazon CloudWatch 모니터링 도구](monitoring-overview.md)에서 KMS 키 사용을 추적합니다.

**지원되지 않는 기능**  
+ AWS CloudHSM 키 스토어는 대칭 암호화 KMS 키만 지원합니다. AWS CloudHSM 키 스토어에서는 HMAC KMS 키, 비대칭 KMS 키 또는 비대칭 데이터 키 페어를 생성할 수 없습니다.
+ [키 스토어의 KMS 키로 키 구성 요소를 가져올](importing-keys.md) 수 AWS CloudHSM 없습니다.는 클러스터의 KMS 키에 대한 키 구성 요소를 AWS KMS 생성합니다. AWS CloudHSM 
+ 키 AWS CloudHSM 스토어에서 KMS 키에 대한 키 구성 요소의 [자동 교체](rotate-keys.md)를 활성화하거나 비활성화할 수 없습니다.

**키 스토어에서 KMS AWS CloudHSM 키 사용**  
요청에 KMS 키를 사용하는 경우 ID 또는 별칭으로 KMS 키를 식별합니다. AWS CloudHSM 키 스토어 또는 AWS CloudHSM 클러스터를 지정할 필요가 없습니다. 응답에는 모든 비대칭 암호화 KMS 키에서 반환된 동일한 필드가 포함되어 있습니다.  
그러나 AWS CloudHSM 키 스토어에서 KMS 키를 사용하면 AWS CloudHSM 키 스토어와 연결된 AWS CloudHSM 클러스터 내에서 암호화 작업이 완전히 수행됩니다. 이 작업에서는 사용자가 선택한 KMS 키와 연결된 클러스터의 키 구성 요소를 사용합니다.  
이것이 가능하려면 다음 조건이 충족되어야 합니다.  
+ KMS 키의 [키 상태](key-state.md)가 `Enabled`여야 합니다. 키 상태를 찾으려면 [AWS KMS 콘솔](finding-keys.md#viewing-console-details)의 **Status**(상태) 필드 또는 [DescribeKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html) 응답의 `KeyState` 필드를 사용합니다.
+  AWS CloudHSM 키 스토어는 AWS CloudHSM 클러스터에 연결되어야 합니다. [AWS KMS 콘솔](view-keystore.md)의 **Status**(상태) 또는 [DescribeCustomKeyStores](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeCustomKeyStores.html) 응답의 `ConnectionState`는 `CONNECTED`여야 합니다.
+ 사용자 지정 키 스토어와 연결된 AWS CloudHSM 클러스터에는 하나 이상의 활성 HSM이 포함되어야 합니다. 클러스터에서 활성 HSMs 수를 찾으려면 [AWS KMS 콘솔](view-keystore.md), AWS CloudHSM 콘솔 또는 [DescribeClusters](https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_DescribeClusters.html) 작업을 사용합니다.
+  AWS CloudHSM 클러스터에는 KMS 키의 키 구성 요소가 포함되어야 합니다. 클러스터에서 키 구성 요소가 삭제된 경우나 키 구성 요소를 포함하지 않은 백업에서 HSM이 생성된 경우에는 암호화 작업이 실패합니다.
이러한 조건이 충족되지 않으면 암호화 작업이 실패하고가 `KMSInvalidStateException` 예외를 AWS KMS 반환합니다. 일반적으로 [AWS CloudHSM 키 스토어를 다시 연결](connect-keystore.md)하기만 하면 됩니다. 추가적인 도움말은 [오류가 발생하는 KMS 키를 수정하는 방법](fix-keystore.md#fix-cmk-failed) 섹션을 참조하십시오.  
 AWS CloudHSM 키 스토어에서 KMS 키를 사용하는 경우 각 AWS CloudHSM 키 스토어의 KMS 키는 암호화 작업에 대한 [사용자 지정 키 스토어 요청 할당량을](requests-per-second.md#rps-key-stores) 공유한다는 점에 유의하세요. 할당량을 초과하면가를 AWS KMS 반환합니다`ThrottlingException`. AWS CloudHSM 키 스토어와 연결된 AWS CloudHSM 클러스터가 키 스토어와 관련이 없는 명령을 포함하여 많은 명령을 처리하는 경우 훨씬 더 낮은 속도로 `ThrottlingException`를 얻을 AWS CloudHSM 수 있습니다. 어떤 요청에 대해 `ThrottlingException`이 반환된 경우에는 요청 속도를 낮추고 명령을 다시 시도하십시오. 사용자 지정 키 스토어 요청 할당량에 대한 자세한 내용은 [사용자 지정 키 스토어 요청 할당량](requests-per-second.md#rps-key-stores) 섹션을 참조하세요.

**자세히 알아보기**  
+  AWS CloudHSM 키 스토어에 대한 자세한 내용은 섹션을 참조하세요[AWS CloudHSM 키 스토어](keystore-cloudhsm.md).
+ 키 스토어에서 KMS AWS CloudHSM 키를 생성하려면 섹션을 참조하세요[키 스토어에서 KMS AWS CloudHSM 키 생성](create-cmk-keystore.md).
+ 키 스토어에서 KMS AWS CloudHSM 키를 식별하고 보려면 섹션을 참조하세요[키 스토어에서 KMS AWS CloudHSM 키 식별](identify-key-types.md#identify-key-hsm-keystore).
+ 키 스토어에서 KMS 키와 AWS CloudHSM 키 구성 요소를 찾으려면 섹션을 참조하세요[키 스토어에서 KMS 키 및 AWS CloudHSM 키 구성 요소 찾기](find-key-material.md).
+  AWS CloudHSM 키 스토어에서 KMS 키를 삭제하기 위한 특별 고려 사항에 대해 알아보려면 [AWS CloudHSM 키 스토어에서 KMS 키 삭제를 참조하세요](deleting-keys.md#delete-cmk-keystore).

# 외부 키 저장소의 KMS 키
<a name="keystore-external-key-manage"></a>

외부 키 스토어에서 KMS 키를 생성, 확인, 관리, 사용 및 삭제하도록 예약하려면 다른 KMS 키에 사용하는 것과 매우 유사한 절차를 사용합니다. 그러나 외부 키 스토어에서 KMS 키를 생성할 때는 [외부 키 스토어](keystore-external.md#concept-external-key-store)와 [외부 키](keystore-external.md#concept-external-key)를 지정합니다. 외부 키 스토어에서 KMS 키를 사용하면 외부 키 관리자가 지정된 외부 키를 사용하여 [암호화 및 복호화 작업](keystore-external.md#xks-how-it-works)을 수행합니다.

AWS KMS 는 외부 키 관리자에서 암호화 키를 생성, 보기, 업데이트 또는 삭제할 수 없습니다. AWS KMS 는 외부 키 관리자 또는 외부 키에 직접 액세스하지 않습니다. 암호화 작업에 대한 모든 요청은 [외부 키 스토어 프록시](keystore-external.md#concept-xks-proxy)에 의해 조정됩니다. 외부 키 스토어에서 KMS 키를 사용하려면 KMS 키를 호스팅하는 외부 키 스토어가 외부 키 스토어 프록시에 [연결](xks-connect-disconnect.md)되어 있어야 합니다.

**지원되는 기능**  
이 섹션에서 설명한 절차 외에도 외부 키 스토어에서 KMS 키를 통해 다음을 수행할 수 있습니다.  
+ [키 정책](key-policies.md), [IAM 정책](iam-policies.md) 및 [권한 부여](grants.md)를 사용하여 KMS 키에 대한 액세스를 제어합니다.
+ KMS 키를 [사용하거나 사용하지 않도록 설정](enabling-keys.md)합니다. 이러한 작업은 외부 키 관리자의 외부 키에 영향을 주지 않습니다.
+ [태그](tagging-keys.md)를 할당하고 [별칭](kms-alias.md)을 생성하고 [ABAC(속성 기반 액세스 제어)](abac.md)를 사용하여 KMS 키에 대한 액세스 권한을 부여합니다.
+ KMS 키를 이용하여 다음 암호화 작업을 수행합니다.
  + [암호화](https://docs.aws.amazon.com/kms/latest/APIReference/API_Encrypt.html)
  + [Decrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html)
  + [GenerateDataKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html)
  + [GenerateDataKeyWithoutPlaintext](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKeyWithoutPlaintext.html)
  + [ReEncrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_ReEncrypt.html)

  비대칭 데이터 키 페어를 생성하는 작업인 [GenerateDataKeyPair](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKeyPair.html) 및 [GenerateDataKeyPairWithoutPlaintext](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKeyPairWithoutPlaintext.html)는 사용자 지정 키 스토어에서 지원되지 *않습니다*.
+ [고객 관리형 키](concepts.md#customer-mgn-key)를 지원하고 [AWS KMS와 통합되는AWS 서비스](https://aws.amazon.com/kms/features/#AWS_Service_Integration)와 함께 KMS 키를 사용합니다.

**지원되지 않는 기능**  
+ 외부 키 스토어는 [대칭 암호화 KMS 키](symm-asymm-choose-key-spec.md#symmetric-cmks)만 지원합니다. 외부 키 스토어에서 HMAC KMS 키 또는 비대칭 KMS 키를 생성할 수 없습니다.
+ [GenerateDataKeyPair](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKeyPair.html)와 [GenerateDataKeyPairWithoutPlaintext](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKeyPairWithoutPlaintext.html)는 외부 키 스토어의 KMS 키에서 지원되지 않습니다.
+ [AWS::KMS::Key CloudFormation 템플릿](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html)을 사용하여 외부 키 저장소를 생성하거나 외부 키 저장소에 KMS 키를 생성할 수 없습니다.
+ [다중 리전 키](multi-region-keys-overview.md)는 외부 키 스토어에서 지원되지 않습니다.
+ [가져온 키 구성 요소](importing-keys.md)가 있는 KMS 키는 외부 키 스토어에서 지원되지 않습니다.
+ 외부 키 스토어의 KMS 키에는 [자동 키 교체](rotate-keys.md)가 지원되지 않습니다.

**외부 키 저장소에서 KMS 키 사용**  
요청에서 KMS 키를 사용하는 경우 [키 ID, 키 ARN, 별칭 또는 별칭 ARN](concepts.md#key-id)으로 KMS 키를 식별합니다. 외부 키 스토어를 지정할 필요가 없습니다. 응답에는 모든 비대칭 암호화 KMS 키에서 반환된 동일한 필드가 포함되어 있습니다. 그러나 외부 키 스토어에서 KMS 키를 사용하면 외부 키 관리자가 KMS 키와 연결된 외부 키를 사용하여 암호화 및 복호화 작업을 수행합니다.  
외부 키 스토어의 KMS 키로 암호화된 사이퍼텍스트가 최소한 표준 KMS 키로 암호화된 사이퍼텍스트만큼 안전한지 확인하기 위해는 [이중 암호화](keystore-external.md#concept-double-encryption)를 AWS KMS 사용합니다. 데이터는 먼저 AWS KMS 키 구성 요소를 AWS KMS 사용하여에서 암호화됩니다. 그런 다음 KMS 키의 외부 키를 사용하여 외부 키 관리자에 의해 암호화됩니다. 이중 암호화된 암호화 텍스트를 복호화하기 위해 먼저 KMS 키의 외부 키를 사용하여 외부 키 관리자에 의해 사이퍼텍스트가 복호화됩니다. 그런 다음 KMS 키의 AWS KMS 키 구성 요소를 AWS KMS 사용하여에서 복호화됩니다.  
이것이 가능하려면 다음 조건이 충족되어야 합니다.  
+ KMS 키의 [키 상태](key-state.md)가 `Enabled`여야 합니다. 키 상태를 찾으려면 [AWS KMS 콘솔](finding-keys.md#viewing-console-details)의 고객 관리형 키에 대한 **Status**(상태) 필드 또는 [DescribeKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html) 응답의 `KeyState` 필드를 확인합니다.
+ KMS 키를 호스팅하는 외부 키 스토어는 [외부 키 스토어 프록시](keystore-external.md#concept-xks-proxy)에 연결되어야 합니다. 즉, 외부 키 스토어의 [연결 상태](xks-connect-disconnect.md#xks-connection-state)가 `CONNECTED`여야 합니다.

  연결 상태는 AWS KMS 콘솔의 **외부 키 스토어** 페이지 또는 [DescribeCustomKeyStores](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeCustomKeyStores.html) 응답에서 볼 수 있습니다. 외부 키 스토어의 연결 상태는 AWS KMS 콘솔의 KMS 키에 대한 세부 정보 페이지에도 표시됩니다. 세부 정보 페이지에서 **Cryptographic configuration**(암호화 구성) 탭을 선택하고 **Custom key store**(사용자 지정 키 스토어) 섹션의 **Connection state**(연결 상태) 필드를 봅니다.

  연결 상태가 `DISCONNECTED`면 먼저 연결해야 합니다. 연결 상태가 `FAILED`면 문제를 해결하고 외부 키 스토어를 연결 해제한 다음 연결해야 합니다. 지침은 [외부 키 저장소 연결 및 연결 해제](xks-connect-disconnect.md) 섹션을 참조하세요.
+ 외부 키 스토어 프록시는 외부 키를 찾을 수 있어야 합니다.
+ 외부 키가 활성화되고 암호화 및 복호화를 수행해야 합니다.

  외부 키의 상태는 KMS 키 활성화 및 비활성화를 포함하여 KMS 키의 [키 상태](key-state.md) 변경과 독립적이며 영향을 받지 않습니다. 마찬가지로 외부 키를 비활성화하거나 삭제해도 KMS 키의 키 상태는 변경되지 않지만 연결된 KMS 키를 사용하는 암호화 작업은 실패합니다.
이러한 조건이 충족되지 않으면 암호화 작업이 실패하고가 `KMSInvalidStateException` 예외를 AWS KMS 반환합니다. [외부 키 스토어를 다시 연결](xks-connect-disconnect.md)하거나 외부 키 관리자 도구를 사용하여 외부 키를 재구성 또는 복구해야 할 수 있습니다. 추가적인 도움말은 [외부 키 스토어 문제 해결](xks-troubleshooting.md) 섹션을 참조하십시오.  
외부 키 스토어에서 KMS 키를 사용할 때는 각 외부 키 스토어의 KMS 키가 암호화 작업에 대해 [사용자 지정 키 스토어 요청 할당량](requests-per-second.md#rps-key-stores)을 공유한다는 점에 유의하세요. 할당량을 초과하면가를 AWS KMS 반환합니다`ThrottlingException`. 사용자 지정 키 스토어 요청 할당량에 대한 자세한 내용은 [사용자 지정 키 스토어 요청 할당량](requests-per-second.md#rps-key-stores) 섹션을 참조하세요.

**자세히 알아보기**  
+ 외부 키 저장소에 대한 자세한 내용은 [외부 키 스토어](keystore-external.md) 단원을 참조하세요.
+ 외부 키 저장소의 키 구성 요소에 대한 자세한 내용은 [외부 키](keystore-external.md#concept-external-key) 단원을 참조하세요.
+ 외부 키 저장소에서 KMS 키를 생성하려면 [외부 키 저장소에서 KMS 키 생성](create-xks-keys.md) 단원을 참조하세요.
+ 외부 키 저장소에서 KMS 키를 식별하고 보려면 [외부 키 저장소에서 KMS 키 식별](identify-key-types.md#view-xks-key) 단원을 참조하세요.
+ 외부 키 저장소에서 KMS 키를 삭제할 경우의 특별한 고려 사항에 대해 알아보려면 [외부 키 저장소에서 KMS 키 삭제](deleting-keys.md#delete-xks-key)를 참조하세요.