Todos los productos
Search
Centro de documentos

Key Management Service:GenerateDataKey

Última actualización: Sep 03, 2026

Genera una clave de datos en texto plano y su contraparte cifrada mediante una clave de KMS.

Notas de uso

Descripción general

GenerateDataKey utiliza un generador de números aleatorios para crear una clave de datos, la cifra con la versión inicial de una clave de Key Management Service (KMS) y devuelve tanto la clave de datos en texto plano como la cifrada. Use la clave de datos en texto plano para cifrar información fuera de KMS. Después del cifrado, almacene la clave de datos cifrada (CiphertextBlob), el vector inicial (Iv), el algoritmo de cifrado (Algorithm) y los datos autenticados adicionales (Aad); estos cuatro valores son obligatorios para descifrar la información posteriormente.

Para obtener más información sobre las especificaciones de claves y los modos de cifrado, consulte Key types and specifications.

Importante
  • Solo se admite el modo Galois/Counter Mode (GCM) al cifrar una clave de datos.

  • KMS emplea un generador de números aleatorios de alta calidad para producir la clave de datos. Este generador funciona de manera independiente del material de la clave de KMS que se usa para cifrar dicha clave.

Diferencias entre GenerateDataKey y AdvanceGenerateDataKey

Tanto GenerateDataKey como AdvanceGenerateDataKey generan una clave de datos. A continuación se describen las principales diferencias:

GenerateDataKey

AdvanceGenerateDataKey

Versión de clave utilizada

Versión inicial

Versión principal

Tipo de clave compatible

Cualquier clave compatible

Solo claves simétricas en instancias de KMS con gestión de claves por software

Valores que deben almacenarse tras el cifrado

CiphertextBlob, Iv, Algorithm, Aad

CiphertextBlob, Aad

Operaciones de descifrado

Decrypt o AdvanceDecrypt

Únicamente AdvanceDecrypt

Importante

Si usa una clave simétrica en una instancia de KMS con gestión de claves por software que tenga habilitada la rotación automática, invoque AdvanceGenerateDataKey en lugar de GenerateDataKey. El uso de GenerateDataKey bajo esta configuración provoca que la función de rotación de claves deje de funcionar. Para obtener más información, consulte Configure key rotation.

Parámetros de solicitud

Parámetro

Tipo

Obligatorio

Ejemplo

Descripción

KeyId

string

Sí

key-hzz62f1cb66fa42qo****

El identificador único global de la clave de KMS. También puede especificar un alias vinculado a la clave.

NumberOfBytes

int

Sí

32

La longitud de la clave de datos por generar.

Aad

binary

No

Datos binarios

Los datos autenticados adicionales (Aad) que se utilizan para autenticar la clave de datos durante el cifrado. El modo GCM es el único modo de cifrado compatible. Si especifica este parámetro, pase el mismo valor al invocar la operación Decrypt.

Parámetros de respuesta

Parámetro

Tipo

Ejemplo

Descripción

KeyId

string

key-hzz62f1cb66fa42qo****

El identificador único global de la clave de KMS. Si la solicitud especificó un alias, este campo devuelve el identificador de la clave a la que está vinculado dicho alias.

Iv

bytes

Datos binarios

El vector inicial utilizado al cifrar la clave de datos. Al invocar la operación Decrypt para descifrar la clave de datos, debe especificar un valor válido para Iv.

Plaintext

bytes

Texto plano binario

La clave de datos en texto plano.

CiphertextBlob

bytes

Texto cifrado binario

La clave de datos cifrada.

Algorithm

string

AES_GCM

El algoritmo de cifrado.

RequestId

string

475f1620-b9d3-4d35-b5c6-3fbdd941423d

El identificador de la solicitud.

Códigos de error

Para consultar la lista de códigos de error, consulte Códigos de error del servicio.