

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Como AWS Encryption SDK funciona
<a name="how-it-works"></a>

[Os fluxos de trabalho desta seção explicam como AWS Encryption SDK criptografa dados e descriptografa mensagens criptografadas.](concepts.md#message) Esses fluxos de trabalho descrevem o processo básico usando os atributos padrão. Para obter detalhes sobre como definir e usar componentes personalizados, consulte o GitHub repositório de cada [implementação de linguagem](programming-languages.md) compatível.

O AWS Encryption SDK usa criptografia de envelope para proteger seus dados. Cada mensagem é criptografada em uma chave de dados exclusiva. Em seguida, a chave de dados é criptografada pelas chaves de encapsulamento que você especificar. Para descriptografar a mensagem criptografada, ele AWS Encryption SDK usa as chaves de encapsulamento que você especifica para descriptografar pelo menos uma chave de dados criptografada. Em seguida, ele pode descriptografar o texto cifrado e retornar uma mensagem de texto simples.

Precisa de ajuda com a terminologia que usamos no AWS Encryption SDK? Consulte [Conceitos no AWS Encryption SDK](concepts.md).

## Como o AWS Encryption SDK criptografa os dados
<a name="encrypt-workflow"></a>

 AWS Encryption SDK Ele fornece métodos que criptografam cadeias de caracteres, matrizes de bytes e fluxos de bytes. Para obter exemplos de código, consulte o tópico Exemplos em cada seção de [Linguagens de programação](programming-languages.md).

1. Crie um [token de autenticação](choose-keyring.md) (ou um [provedor de chave mestra](concepts.md#master-key-provider)) que especifique as chaves de agrupamento que protegem seus dados.

1. Transmita o chaveiro e os dados do texto simples para um método de criptografia. Recomendamos transmitir um [contexto de criptografia](concepts.md#encryption-context) opcional, não secreto.

1. O método de criptografia solicita materiais de criptografia ao token de autenticação. O chaveiro retorna chaves de criptografia de dados exclusivas para a mensagem: uma chave de dados em texto simples e uma cópia dessa chave de dados criptografada por cada uma das chaves de encapsulamento especificadas.

1. O método de criptografia usa a chave de dados de texto não criptografado para criptografar os dados e, em seguida, descarta a chave de dados de texto não criptografado. Se você fornecer um contexto de criptografia (uma [prática recomendada](best-practices.md) do AWS Encryption SDK ), o método de criptografia também vinculará de forma criptográfica o contexto de criptografia aos dados criptografados.

1. O método de criptografia retorna uma [mensagem criptografada](concepts.md#message) que contém os dados criptografados, as chaves de dados criptografadas e outros metadados, incluindo o contexto de criptografia, se você o usou.

## Como o AWS Encryption SDK decifra uma mensagem criptografada
<a name="decrypt-workflow"></a>

 AWS Encryption SDK Fornece métodos que decifram a [mensagem criptografada](concepts.md#message) e retornam texto sem formatação. Para obter exemplos de código, consulte o tópico Exemplos em cada seção de [Linguagens de programação](programming-languages.md).

O [token de autenticação](choose-keyring.md) (ou o [provedor de chave mestra](concepts.md#master-key-provider)) que descriptografará a mensagem criptografada deve ser compatível com aquele usado para criptografar a mensagem. Uma das chaves de encapsulamento dele deve ser capaz descriptografar uma chave de dados criptografada na mensagem criptografada. Para obter informações sobre compatibilidade com tokens de autenticação e provedores de chaves mestra, consulte [Compatibilidade dos tokens de autenticação](choose-keyring.md#keyring-compatibility).

1. Crie um token de autenticação ou provedor de chave mestra com chaves de encapsulamento que possam descriptografar seus dados. É possível usar o mesmo token de autenticação fornecido para o método de criptografia ou um token diferente.

1. Transmita a [mensagem criptografada](concepts.md#message) e o token de autenticação para um método de descriptografia.

1. O método de descriptografia solicita que o token de autenticação ou o provedor de chave mestra descriptografe uma das chaves de dados criptografadas na mensagem criptografada. Ele passa informações da mensagem criptografada, incluindo as chaves de dados criptografadas.

1. O token de autenticação usa suas chaves de empacotamento para descriptografar uma das chaves de dados criptografadas. A resposta incluirá a chave de dados em texto simples, se for bem-sucedida. Caso nenhuma das chaves de encapsulamento especificadas pelo token de autenticação ou provedor da chave mestra possa descriptografar uma chave de dados criptografada, a chamada de descriptografia falhará.

1. O método de descriptografia usa a chave de dados de texto simples para descriptografar os dados, descarta a chave de dados de texto simples e retorna os dados de texto simples.