Todos os produtos
Search
Central de documentação

Key Management Service:GenerateDataKey

Última atualização: Jun 27, 2026

Gera uma chave de dados em texto simples e sua versão criptografada usando uma chave do KMS.

Notas de uso

Visão geral

A operação GenerateDataKey usa um gerador de números aleatórios para criar uma chave de dados, criptografa-a com a versão inicial de uma chave do Key Management Service (KMS) e retorna a chave de dados em texto simples e em texto cifrado. Use a chave de dados em texto simples para criptografar dados fora do KMS. Após a criptografia, armazene a chave de dados em texto cifrado (CiphertextBlob), o vetor inicial (Iv), o algoritmo de criptografia (Algorithm) e os dados autenticados adicionais (Aad). Esses quatro valores são obrigatórios para descriptografar os dados posteriormente.

Para obter mais informações sobre especificações de chaves e modos de criptografia, consulte Tipos e especificações de chaves.

Importante
  • Somente o modo Galois/Counter Mode (GCM) é compatível para criptografar uma chave de dados.

  • O KMS usa um gerador de números aleatórios de alta qualidade para produzir a chave de dados. Esse gerador opera independentemente do material da chave do KMS usado na criptografia.

Diferença entre GenerateDataKey e AdvanceGenerateDataKey

GenerateDataKey e AdvanceGenerateDataKey geram uma chave de dados. A tabela a seguir descreve as principais diferenças:

GenerateDataKey

AdvanceGenerateDataKey

Versão da chave usada

Versão inicial

Versão primária

Tipo de chave compatível

Qualquer chave compatível

Apenas chaves simétricas em instâncias do KMS com gerenciamento de chaves por software

Valores a armazenar após a criptografia

CiphertextBlob, Iv, Algorithm, Aad

CiphertextBlob, Aad

Operações de descriptografia

Decrypt ou AdvanceDecrypt

Somente AdvanceDecrypt

Importante

Se você usar uma chave simétrica em uma instância do KMS com gerenciamento de chaves por software e rotação automática ativada, chame AdvanceGenerateDataKey em vez de GenerateDataKey. O uso de GenerateDataKey nessa configuração interrompe o recurso de rotação de chaves. Para mais detalhes, consulte Configure rotação de chaves.

Parâmetros da solicitação

Parâmetro

Tipo

Obrigatório

Exemplo

Descrição

KeyId

string

Sim

key-hzz62f1cb66fa42qo****

ID globalmente exclusivo da chave do KMS. Também é possível especificar um alias vinculado à chave.

NumberOfBytes

int

Sim

32

Comprimento da chave de dados a ser gerada.

Aad

binary

Não

Dados binários

Dados autenticados adicionais (Aad) usados para autenticar a chave de dados durante a criptografia. O modo GCM é o único modo de criptografia compatível. Se especificar este parâmetro, transmita o mesmo valor ao chamar a operação Decrypt.

Parâmetros da resposta

Parâmetro

Tipo

Exemplo

Descrição

KeyId

string

key-hzz62f1cb66fa42qo****

ID globalmente exclusivo da chave do KMS. Se a solicitação especificou um alias, este campo retorna o ID da chave à qual o alias está vinculado.

Iv

bytes

Dados binários

Vetor inicial usado na criptografia da chave de dados. Ao chamar a operação Decrypt para descriptografar a chave de dados, especifique um valor válido para Iv.

Plaintext

bytes

Texto simples binário

Chave de dados em texto simples.

CiphertextBlob

bytes

Texto cifrado binário

Chave de dados em texto cifrado.

Algorithm

string

AES_GCM

Algoritmo de criptografia.

RequestId

string

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

ID da solicitação.

Códigos de erro

Para obter uma lista de códigos de erro, consulte Códigos de erro do serviço.