AWS KMS의 HMAC 키 - AWS Key Management Service

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

AWS KMS의 HMAC 키

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

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

AWS KMS가 사용하는 HMAC KMS 키와 HMAC 알고리즘은 RFC 2104에 정의된 산업 표준을 준수합니다. AWS KMS GenerateMac 작업은 표준 HMAC 태그를 생성합니다. HMAC KMS 키는 중국(베이징) 및 중국(닝샤) 리전을 제외하고 FIPS 140-2 암호화 모듈 검증 프로그램에 따라 인증된 AWS KMS 하드웨어 보안 모듈에서 생성되며, AWS KMS를 암호화되지 않은 상태로 두지 않습니다. HMAC KMS 키를 사용하려면 AWS KMS를 호출해야 합니다.

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

HMAC KMS 키는 키 구성 요소가 AWS KMS 내에서 완전히 생성되어 사용되고 키에 설정한 액세스 제어가 적용되기 때문에, 애플리케이션 소프트웨어에서 HMAC 이상의 이점을 제공합니다.

작은 정보

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

지원되는 암호화 작업

HMAC KMS 키는 GenerateMacVerifyMac 암호화 작업만을 지원합니다. 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 키는 자동 키 교체를 지원하지 않으며 사용자 지정 키 스토어에서 HMAC KMS 키를 생성할 수 없습니다.

AWS 서비스에서 데이터를 암호화하기 위해 KMS 키를 생성하는 경우 대칭 암호화 키를 사용합니다. HMAC KMS 키를 사용할 수 없습니다.

리전

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

자세히 알아보기