Claves HMAC en AWS KMS - AWS Key Management Service

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Claves HMAC en AWS KMS

Las claves KMS del código de autenticación de mensajes basado en hash (HMAC) son claves simétricas que se utilizan para generar y verificar HMAC en AWS KMS. El material de claves exclusivo de cada clave HMAC de KMS proporciona la clave secreta que requieren los algoritmos HMAC. Puede utilizar una clave KMS HMAC con las operaciones GenerateMac y VerifyMac para verificar la integridad y autenticidad de los datos dentro de AWS KMS.

Los algoritmos HMAC combinan una función hash criptográfica y una clave secreta compartida. Toman un mensaje y una clave secreta, como el material clave de una clave KMS HMAC, y devuelven un código o una etiquetaúnicos de tamaño fijo. Si cambia incluso un carácter del mensaje, o si la clave secreta no es idéntica, la etiqueta resultante es totalmente diferente. Al requerir una clave secreta, HMAC también proporciona autenticación; es imposible generar una etiqueta HMAC idéntica sin la clave secreta. Los HMAC a veces se llaman firmas simétricas, porque funcionan como firmas digitales, pero utilizan una única clave para la firma y la verificación.

Las claves KMS HMAC y los algoritmos HMAC que AWS KMS usa se ajustan a los estándares del sector definidos en RFC 2104. La operación de AWS KMS GenerateMac genera etiquetas HMAC estándar. Las claves KMS HMAC se generan en módulos de seguridad de hardware de certificados de AWS KMS con el Programa de validación de módulos criptográficos FIPS 140-2, (excepto en las regiones China [Pekín] y China [Ningxia]) y nunca dejan AWS KMS sin cifrar. Para utilizar una clave KMS HMAC, tiene que llamar a AWS KMS.

Puede utilizar claves KMS HMAC para determinar la autenticidad de un mensaje, como un token web JSON (JWT), información de tarjeta de crédito tokenizada o una contraseña enviada. También se pueden utilizar como funciones de derivación clave seguras (KDF), especialmente en aplicaciones que requieren claves deterministas.

Las claves KMS HMAC proporcionan una ventaja sobre los HMAC del software de aplicación porque el material de claves se genera y utiliza íntegramente en AWS KMS, sujeto a los controles de acceso que haya establecido en la clave.

sugerencia

Las prácticas recomendadas indican limitar el tiempo durante el cual cualquier mecanismo de firma, incluido un HMAC, es efectivo. Esto impide un ataque en el que el actor utiliza un mensaje firmado para establecer la validez repetidamente o mucho después de que se sustituya el mensaje. Las etiquetas del HMAC no incluyen una marca de hora, pero puede incluir una marca de hora en el token o mensaje para ayudarlo a detectar cuándo es hora de actualizar el HMAC.

Operaciones criptográficas admitidas

Las claves KMS HMAC solo admiten las operaciones criptográficas GenerateMac y VerifyMac. No puede utilizar claves KMS HMAC para cifrar datos o firmar mensajes, ni utilizar ningún otro tipo de clave KMS en las operaciones de HMAC. Cuando utiliza la operación GenerateMac, proporciona un mensaje de hasta 4096 bytes, una clave KMS HMAC y el algoritmo MAC compatible con la especificación de clave HMAC, y GenerateMac computa la etiqueta HMAC. Para verificar una etiqueta HMAC, debe proporcionar la etiqueta HMAC y el mismo mensaje, clave KMS HMAC y algoritmo MAC que GenerateMac utilizó para computar la etiqueta HMAC original. La operación VerifyMac computa la etiqueta HMAC y verifica que es idéntica a la etiqueta HMAC suministrada. Si la entrada y las etiquetas HMAC calculadas no son idénticas, la verificación falla.

Las claves HMAC de KMS no admiten rotación automática de claves y no se puede crear una clave de KMS HMAC en un almacén de claves personalizado.

Si va a crear una clave KMS para cifrar los datos de un servicio de AWS, utilice una clave de cifrado simétrica. No puede utilizar una clave KMS HMAC.

Regiones

Las claves HMAC de KMS son compatibles en todas las Regiones de AWS que AWS KMS admite.

Más información