Referência de corpo de dados autenticados adicionais (AAD) para o SDK de criptografia da AWS - SDK de criptografia da AWS

Se fornecermos uma tradução da versão em inglês do guia, a versão em inglês prevalecerá caso haja qualquer conflito entre as versões. A tradução é fornecida com o uso de tradução por máquina.

Referência de corpo de dados autenticados adicionais (AAD) para o SDK de criptografia da AWS

As informações nesta página são uma referência para criar sua própria biblioteca de criptografia compatível com o SDK de criptografia da AWS. Se você não está criando sua própria biblioteca de criptografia compatível, você provavelmente não precisa dessas informações.

Para usar o SDK de criptografia da AWS em uma das linguagens de programação compatíveis, consulte Linguagens de programação.

Para a especificação que define os elementos de uma implementação adequada do SDK de criptografia da AWS, consulte a Especificação do SDK de criptografia da AWS no repositório aws-encryption-sdk-specification no GitHub.

Você deve fornecer dados autenticados adicionais (AAD) para o algoritmo AES-GCM para cada operação de criptografia. Isso é verdadeiro para dados de corpo com e sem moldura. Para obter mais informações sobre a AAD e como é utilizada no modo Galois/Counter (GCM), consulte Recomendações para os modos de funcionamento de blocos de controlo: Galois/Counter Mode (GCM) e GMAC.

A tabela a seguir descreve os campos que formam o AAD do corpo. Os bytes são anexados na ordem mostrada.

Estrutura do AAD do corpo
Campo Tamanho, em bytes
ID de mensagem 16
Conteúdo do AAD do corpo Variável Consulte Conteúdo do AAD do copo na lista a seguir.
Número de sequência 4.
Content-Length 8.
ID de mensagem

O mesmo valor de ID de mensagem definido no cabeçalho da mensagem.

Conteúdo do AAD do corpo

Um valor codificado em UTF-8 determinado pelo tipo de dados de corpo usado.

Para dados sem moldura, use o valor AWSKMSEncryptionClient Single Block.

Para molduras normais em dados com moldura, use o valor AWSKMSEncryptionClient Frame.

Para a moldura final nos dados com moldura, use o valor AWSKMSEncryptionClient Final Frame.

Número de sequência

Um valor de 4 bytes interpretado como um inteiro não assinado de 32 bits.

Para dados com moldura, esse é o número sequencial da moldura.

Para dados sem moldura, use o valor 1, codificado como os 4 bytes 00 00 00 01 em notação hexadecimal.

Content-Length

O tamanho, em bytes, do texto não criptografado fornecido ao algoritmo para criptografia. É um valor de 8 bytes interpretado como um inteiro não assinado de 64 bits.