Llaves para fines especiales - 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.

Llaves para fines especiales

AWS Key Management Service (AWS KMS) admite varios tipos diferentes de claves para diferentes usos.

Al crear una AWS KMS key, de forma predeterminada, se obtiene una clave KMS de cifrado simétrico. En AWS KMS, una clave KMS de cifrado simétrico representa una clave AES-GCM de 256 bits que se utiliza para el cifrado y el descifrado, excepto en las regiones de China, donde representa una clave simétrica y simétrica de 128 bits que utiliza el cifrado SM4. El material de la clave simétrica nunca queda sin cifrar. AWS KMS A menos que su tarea requiera explícitamente un cifrado asimétrico o claves HMAC, las claves KMS de cifrado simétrico, que nunca se dejan AWS KMS sin cifrar, son una buena opción. Además, los servicios de AWS que se integran con AWS KMS utilizan solo claves KMS de cifrado simétricas para cifrar sus datos. Estos servicios no admiten cifrado con claves de KMS asimétricas.

Puede utilizar una clave KMS de cifrado simétrico para cifrar, descifrar y volver AWS KMS a cifrar datos, generar claves de datos y pares de claves de datos y generar cadenas de bytes aleatorias. Puede importar su propio material de claves en una clave KMS de cifrado simétrica y crear claves KMS de cifrado simétricas en almacenes de claves personalizadas. Para obtener una tabla en la que se comparan las operaciones que puede realizar en las claves KMS simétricas y asimétricas, consulte Referencia de tipos de claves.

AWS KMS también admite los siguientes tipos de claves KMS de uso especial:

Elección de un tipo de clave KMS

AWS KMS admite varios tipos de claves KMS: claves de cifrado simétricas, claves HMAC simétricas, claves de cifrado asimétricas y claves de firma asimétricas.

Las claves KMS difieren porque contienen material de claves criptográfico diferente.

  • Clave de KMS de cifrado simétrica: representa una única clave de cifrado AES-GCM de 256 bits, excepto en las regiones de China, donde representa una clave de cifrado SM4 de 128 bits. El material de claves simétricas nunca se queda sin cifrar. AWS KMS Para usar su clave KMS de cifrado simétrico, debe llamar. AWS KMS

    Las claves de cifrado simétricas, que son las claves KMS predeterminadas, son ideales para la mayoría de los usos. Si necesita una clave KMS para proteger sus datos Servicio de AWS, utilice una clave de cifrado simétrica, a menos que se le indique que utilice otro tipo de clave.

  • Clave KMS asimétrica: representa un par de clave pública y clave privada relacionados matemáticamente que puede usar para cifrar y descifrar, firmar y verificar o derivar secretos compartidos (debe elegir un tipo de uso de clave). La clave privada nunca sale sin cifrar. AWS KMS Puedes usar la clave pública interna AWS KMS llamando a las operaciones de la AWS KMS API, o bien descargar la clave pública y usarla fuera de AWS KMS ella.

  • Clave KMS HMAC (simétrica): representa una clave simétrica de longitud variable que se utiliza para generar y verificar códigos de autenticación de mensajes basados en hash. El material de claves en una clave KMS HMAC nunca deja AWS KMS sin cifrar. Para usar tu clave HMAC KMS, debes llamar AWS KMS.

El tipo de clave KMS que crea varía en gran medida en función de cómo tiene pensado utilizar la clave KMS, los requisitos de seguridad y los requisitos de autorización. Al crear su clave KMS, recuerde que la configuración criptográfica de la clave KMS, incluido el uso de la clave y la especificación de la clave, se establecen cuando crea la clave KMS y no se puede cambiar.

Utilice las siguientes directrices para determinar qué tipo de clave KMS necesita en función de su caso de uso.

Cifrar y descifrar datos

Utilice una clave KMS simétrica para la mayoría de los casos de uso que requieren cifrar y descifrar datos. El algoritmo de cifrado simétrico que utiliza AWS KMS es rápido, eficaz y asegura la confidencialidad y la autenticidad de los datos. Admite el cifrado autenticado con datos autenticados adicionales (AAD), definidos como un contexto de cifrado. Este tipo de clave KMS requiere que tanto el remitente como el destinatario de los datos cifrados dispongan de AWS credenciales válidas para llamar AWS KMS.

Si su caso de uso requiere que los usuarios que no pueden llamar AWS los cifren fuera o no AWS KMS, las claves KMS asimétricas son una buena opción. Puede distribuir la parte pública de la clave KMS asimétrica para permitir que estos usuarios cifren los datos. Las aplicaciones que necesitan descifrar estos datos pueden utilizar la parte privada de la clave KMS asimétrica en AWS KMS.

Firmar mensajes y verificar firmas

Para firmar mensajes y verificar firmas, tiene que utilizar una clave KMS asimétrica. Puede utilizar una clave KMS con una especificación de clave que representa un par de claves de RSA, un par de claves de curva elíptica (ECC) o un par de claves SM2 (solo en las regiones de China). La especificación de clave que seleccione la determina el algoritmo de firma que desea utilizar. Se recomiendan los algoritmos de firma ECDSA que admiten los pares de claves ECC en lugar de los algoritmos de firma RSA. Sin embargo, es posible que necesites usar una especificación de clave y un algoritmo de firma específicos para ayudar a los usuarios a verificar las firmas fuera de ellos. AWS

Cifre con pares de claves asimétricas

Para cifrar los datos con un par de claves asimétricas, debe utilizar una clave KMS asimétrica con una especificación de clave RSA o una especificación de clave SM2 (solo para regiones de China). Para cifrar los datos AWS KMS con la clave pública de un par de claves de KMS, utilice la operación de cifrado. También puede descargar la clave pública y compartirla con las partes que necesitan cifrar los datos fuera de AWS KMS.

Cuando descarga la clave pública de una clave KMS asimétrica, puede utilizarla fuera de AWS KMS. Sin embargo, ya no está sujeta a los controles de seguridad que protegen la clave KMS. AWS KMS Por ejemplo, no puede usar políticas o concesiones AWS KMS clave para controlar el uso de la clave pública. Tampoco puede controlar si la clave se utiliza únicamente para el cifrado y el descifrado mediante los algoritmos de cifrado AWS KMS compatibles. Para obtener más información, consulte Consideraciones especiales para la descarga de claves públicas.

Para descifrar los datos que se cifraron con la clave pública externa AWS KMS, ejecute la operación de descifrado. La operación Decrypt falla si los datos se cifran con una clave pública de una clave KMS con un uso de la clave de SIGN_VERIFY. También se producirá un error si se cifró mediante un algoritmo que AWS KMS no sea compatible con la especificación de clave que ha seleccionado. Para obtener más información sobre las especificaciones de claves y los algoritmos compatibles, consulte Especificaciones de claves asimétricas.

Para evitar estos errores, cualquier persona que utilice una clave pública fuera de ella AWS KMS debe almacenar la configuración de la clave. La AWS KMS consola y la GetPublicKeyrespuesta proporcionan la información que debe incluir al compartir la clave pública.

Obtenga los secretos compartidos

Para obtener los secretos compartidos, utilice una clave KMS con una curva elíptica recomendada por el NIST o un material clave SM2 (solo para regiones de China). AWS KMS utiliza el cofactor criptográfico de curva elíptica Diffie-Hellman Primitive (ECDH) para establecer un acuerdo de claves entre dos pares mediante la obtención de un secreto compartido a partir de sus pares de claves público-privadas de curva elíptica. Puede utilizar el secreto compartido sin procesar que devuelve la DeriveSharedSecretoperación para obtener una clave simétrica que pueda cifrar y descifrar los datos que se envían entre dos partes, o generar y verificar los HMAC. AWS KMS recomienda que siga las recomendaciones del NIST para la derivación de claves cuando utilice el secreto compartido sin procesar para obtener una clave simétrica.

Generación y verificación de códigos HMAC

Para generar y verificar códigos de autenticación de mensajes basados en hash, utilice una clave KMS HMAC. Al crear una clave HMAC AWS KMS, AWS KMS crea y protege el material de la clave y se asegura de utilizar los algoritmos MAC correctos para la clave. Los códigos HMAC también se pueden utilizar como números pseudoaleatorios y, en ciertos escenarios, para la firma simétrica y la tokenización.

Las claves KMS HMAC son claves simétricas. Al crear una clave KMS HMAC en la consola de AWS KMS , elija el tipo de clave Symmetric.

Úselo con servicios AWS

Para crear una clave KMS para usarla con un AWS servicio integrado AWS KMS, consulte la documentación del servicio. AWS los servicios que cifran los datos requieren una clave KMS de cifrado simétrico.

Además de estas consideraciones, las operaciones criptográficas en las claves KMS con diferentes especificaciones de clave tienen diferentes precios y diferentes cuotas de solicitud. Para obtener información sobre AWS KMS los precios, consulte AWS Key Management Service Precios. Para obtener más información acerca de las cuotas de solicitud, consulte Cuotas de solicitudes.

Seleccionar el uso de la clave

El uso de la clave de una clave KMS determina si la clave KMS se utiliza para el cifrado y el descifrado o para la firma y la verificación de firmas, o para la generación y la verificación de etiquetas HMAC. Cada clave KMS tiene solo un uso de claves. El uso de una clave KMS para más de un tipo de operaciones hace que el producto de todas las operaciones sea más vulnerable a ataques.

Cada clave de KMS solo puede tener un uso. Como se muestra en la siguiente tabla, las claves KMS de cifrado simétricas se pueden utilizar solo para cifrar y descifrar. Las claves KMS HMAC solo se pueden utilizar para generar y verificar códigos HMAC. Debe tomar una decisión sobre el uso de las claves KMS asimétricas. Las claves KMS asimétricas con pares de claves RSA se pueden usar para cifrar o descifrar datos o firmar y verificar mensajes (pero no ambos). Las claves KMS asimétricas con los pares de claves de curva elíptica recomendados por el NIST se pueden usar para firmar y verificar mensajes o para obtener secretos compartidos (pero no ambos). Las claves KMS asimétricas con ECC_SECG_P256K1 pares de claves solo se pueden usar para firmar y verificar mensajes. Las claves KMS asimétricas con pares de claves SM2 (solo para regiones de China) se pueden usar para cifrar y descifrar datos, firmar y verificar mensajes o derivar secretos compartidos (debe elegir un tipo de uso de clave).

Usos de la clave válidos para los tipos de claves KMS
Tipo de clave KMS Cifrar y descifrar

ENCRYPT_DECRYPT

Firmar y verificar

SIGN_VERIFY

Generar y verificar MAC

GENERATE_VERIFY_MAC

Obtenga secretos compartidos

KEY_AGREEMENT

Claves de KMS de cifrado simétrico Green checkmark icon indicating success or completion. Red circle with diagonal line, commonly used to indicate prohibition or "no" symbol. Red circle with diagonal line, commonly used to indicate prohibition or "no" symbol. Red circle with diagonal line, commonly used to indicate prohibition or "no" symbol.
Claves KMS HMAC (simétricas) Red circle with diagonal line, commonly used to indicate prohibition or "no" symbol. Red circle with diagonal line, commonly used to indicate prohibition or "no" symbol. Green checkmark icon indicating success or completion. Red circle with diagonal line, commonly used to indicate prohibition or "no" symbol.
Claves KMS asimétricas con pares de claves de RSA Green checkmark icon indicating success or completion. Green checkmark icon indicating success or completion. Red circle with diagonal line, commonly used to indicate prohibition or "no" symbol. Red circle with diagonal line, commonly used to indicate prohibition or "no" symbol.
Claves KMS asimétricas con pares de claves de ECC Red circle with diagonal line, commonly used to indicate prohibition or "no" symbol. Green checkmark icon indicating success or completion. Red circle with diagonal line, commonly used to indicate prohibition or "no" symbol. Green checkmark icon indicating success or completion.

Debe utilizar una clave KMS asimétrica con el material de clave de curva elíptica recomendado por el NIST para obtener los secretos compartidos.

Claves de KMS asimétricas con pares de claves SM2 (solo en regiones de China) Green checkmark icon indicating success or completion. Green checkmark icon indicating success or completion. Red circle with diagonal line, commonly used to indicate prohibition or "no" symbol. Green checkmark icon indicating success or completion.

En la AWS KMS consola, primero debe elegir el tipo de clave (simétrica o asimétrica) y, a continuación, el uso de la clave. El tipo de clave que elija determina qué opciones de uso de clave se muestran. El uso de la clave que elija determina qué especificaciones de clave se muestran, si hay alguno.

Para elegir el uso de una clave en la AWS KMS consola:

  • Para las claves KMS de cifrado simétricas (predeterminada), elija Cifrado y descifrado.

  • Para las claves KMS HMAC, elija Generate and verify MAC (Generar y verificar MAC).

  • Para las claves KMS asimétricas con el material de clave de curva elíptica (ECC) recomendado por el NIST, elija Firmar y verificar o Acuerdo de claves.

  • Para las claves KMS asimétricas con material ECC_SECG_P256K1 clave, elija Firmar y verificar.

  • Para las claves KMS asimétricas con el material de claves de RSA, elija Encrypt and decrypt (Cifrar y descifrar) o Sign and verify (Firmar y verificar).

  • Para las claves KMS asimétricas con material de clave SM2, elija Cifrar y descifrar, Firmar y verificar o Acuerdo de clave. La especificación de clave SM2 solo está disponible en las regiones de China.

Para permitir que los principales creen claves KMS solo para un uso de clave determinado, utilice la clave de condición kms:. KeyUsage También puede utilizar la clave de condición kms:KeyUsage para permitir que las entidades principales llamen a las operaciones de la API para una clave KMS basada en su uso de claves. Por ejemplo, puede permitir un permiso que deshabilite una clave KMS solo si su uso de clave es SIGN_VERIFY.

Seleccionar la especificación de clave

Cuando crea una clave KMS asimétrica o una clave KMS HMAC, seleccione su especificación de clave. La especificación clave, que es una propiedad de cada AWS KMS key, representa la configuración criptográfica de la clave de KMS. Se selecciona la especificación de clave al crear la clave KMS y no se puede cambiar. Si ha seleccionado una especificación de clave errónea, elimine la clave KMS y cree una nueva.

nota

La especificación de clave para una clave KMS se conocía como “especificación de clave maestra del cliente”. El CustomerMasterKeySpec parámetro de la CreateKeyoperación está obsoleto. En su lugar, utilice el parámetro KeySpec. La respuesta de las DescribeKeyoperaciones CreateKey y incluye un CustomerMasterKeySpec elemento KeySpec and con el mismo valor.

La especificación de clave determina si la clave de KMS es simétrica o asimétrica, el tipo de material de clave de la clave de la clave de KMS y los algoritmos de cifrado, de firma o de código de autenticación de mensajes (MAC) AWS KMS compatibles con la clave de KMS. La especificación de clave que seleccione suele estar determinada por el caso de uso y los requisitos normativos. Sin embargo, las operaciones criptográficas en las claves KMS con diferentes especificaciones de clave tienen un precio diferente y están sujetas a diferentes cuotas de solicitud. Para obtener más información sobre precios, consulte precios de AWS Key Management Service. Para obtener más información acerca de las cuotas de solicitud, consulte Cuotas de solicitudes.

Para determinar las especificaciones clave que los directores de tu cuenta pueden usar para las claves de KMS, usa la clave de condición kms:. KeySpec

AWS KMS admite las siguientes especificaciones clave para las claves de KMS:

Especificaciones de la clave de cifrado simétricas (predeterminado)
  • SYMMETRIC_DEFAULT

Especificaciones de la clave HMAC
  • HMAC_224

  • HMAC_256

  • HMAC_384

  • HMAC_512

Especificaciones de clave de RSA (cifrado y descifrado o firma y verificación)
  • RSA_2048

  • RSA_3072

  • RSA_4096

Especificaciones de clave de curva elíptica
  • Pares de claves de curva elíptica asimétricas recomendados por el NIST (para firmar y verificar o derivar secretos compartidos)

    • ECC_NIST_P256 (secp256r1)

    • ECC_NIST_P384 (secp384r1)

    • ECC_NIST_P521 (secp521r1)

  • Otros pares de claves de curva elíptica asimétricas (firma y verificación)

    • ECC_SECG_P256K1 (secp256k1), que se suele utilizar para las criptomonedas.

Especificación de clave SM2 (cifrado y descifrado, o firma y verificación, u obtención de secretos compartidos)
  • SM2 (solo en regiones de China)