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
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.
Los usuarios autorizados pueden crear, administrar y utilizar las claves HMAC de KMS en su cuenta de AWS. Esto incluye habilitar y deshabilitar claves, configurar y cambiar alias y etiquetas, y borrar programación de claves KMS HMAC. También puede controlar el acceso a las claves KMS HMAC usando políticas clave, políticas de IAM y concesiones. Además, puede auditar todas las operaciones que utilizan o administran sus claves KMS HMAC dentro de AWS en los registros de AWS CloudTrail. Puede crear claves HMAC de KMS con material de claves importado. También puede crear claves KMS de varias regiones HMAC que se comportan como copias de la misma clave KMS HMAC en múltiples Regiones de AWS.
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
-
Para obtener ayuda sobre cómo elegir un tipo de clave KMS, consulte Elección de un tipo de clave KMS.
-
Para obtener una tabla que compara las operaciones de la API de AWS KMS que admite cada tipo de clave KMS, consulte Referencia de tipos de claves.
-
Para obtener información sobre cómo crear claves KMS HMAC de varias regiones, consulte Claves multirregionales en AWS KMS.
-
Para analizar las diferencias de la política de claves predeterminada que establece la consola de AWS KMS para las claves KMS HMAC, consulte Permite a los usuarios de claves utilizar la clave KMS con los servicios de AWS.
-
Para obtener más información acerca de los precios de las claves KMS HMAC, consulte Precios de AWS Key Management Service
. -
Para obtener información acerca de las cuotas que se aplican a las claves KMS HMAC, consulte Cuotas de recursos y Cuotas de solicitudes.
-
Para obtener más información acerca de cómo eliminar claves KMS HMAC, consulte Eliminación de AWS KMS keys.
-
Para obtener más información sobre el uso de HMAC para crear tokens web JSON, consulte Cómo proteger los HMAC en el interior del AWS KMS
en el Blog de seguridad de AWS. -
Escuche un podcast: Presentación de las HMAC para AWS Key Management Service
en The Official AWS Podcast.
Temas
Especificaciones de la clave para las claves KMS HMAC
AWS KMS admite claves HMAC simétricas de diferentes longitudes. La especificación de clave que seleccione puede depender de sus requisitos normativos, de seguridad o empresariales. La longitud de la clave determina el algoritmo MAC que se utiliza en VerifyMaclas operaciones GenerateMacy. En general, las claves más largas son más seguras. Utilice la clave más larga que sea práctica para su caso de uso.
Especificación de la clave HMAC | Algoritmo MAC |
---|---|
HMAC_224 | HMAC_SHA_224 |
HMAC_256 | HMAC_SHA_256 |
HMAC_384 | HMAC_SHA_384 |
HMAC_512 | HMAC_SHA_512 |