

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á.

# AWS Encryption SDK para Go
<a name="go"></a>

Este tópico explica como instalar e usar o AWS Encryption SDK for Go. Para obter detalhes sobre a programação com o AWS Encryption SDK for Go, consulte o diretório [go](https://github.com/aws/aws-encryption-sdk/tree/mainline/releases/go/encryption-sdk/) do aws-encryption-sdk repositório on GitHub.

O AWS Encryption SDK for Go difere de algumas das outras implementações de linguagem de programação do AWS Encryption SDK das seguintes maneiras:
+ Não há suporte para armazenamento em [cache de chaves de dados](data-key-caching.md). No entanto, o AWS Encryption SDK for Go suporta o [AWS KMS chaveiro hierárquico](use-hierarchical-keyring.md), uma solução alternativa de cache de materiais criptográficos.
+ Não há suporte para streaming de dados

O AWS Encryption SDK for Go inclui todos os recursos de segurança introduzidos nas versões 2.0. *x* e posteriores de outras implementações de linguagem do AWS Encryption SDK. No entanto, se você estiver usando o for Go AWS Encryption SDK para descriptografar dados que foram criptografados por uma versão pré-2.0. versão *x* outra implementação de linguagem do AWS Encryption SDK, talvez seja necessário ajustar sua [política de compromisso](concepts.md#commitment-policy). Para obter detalhes, consulte [Como definir sua política de compromisso](migrate-commitment-policy.md#migrate-commitment-step1).

O AWS Encryption SDK for Go é um produto do AWS Encryption SDK in [Dafny](https://github.com/dafny-lang/dafny/blob/master/README.md), uma linguagem de verificação formal na qual você escreve especificações, o código para implementá-las e as provas para testá-las. O resultado é uma biblioteca que implementa os atributos do AWS Encryption SDK em uma estrutura que garante a correção funcional.

**Saiba mais**
+ Para ver exemplos que mostram como configurar opções no AWS Encryption SDK, como especificar um conjunto alternativo de algoritmos, limitar chaves de dados criptografadas e usar chaves AWS KMS multirregionais, consulte. [Configurando o AWS Encryption SDK](configure.md)
+ Para ver exemplos de como configurar e usar o AWS Encryption SDK for Go, consulte os [exemplos de Go](https://github.com/aws/aws-encryption-sdk/tree/mainline/releases/go/encryption-sdk/examples) no aws-encryption-sdk repositório em GitHub.

**Topics**
+ [Pré-requisitos](#prerequisites-go)
+ [Instalação](#go-installation)

## Pré-requisitos
<a name="prerequisites-go"></a>

Antes de instalar o AWS Encryption SDK for Go, verifique se você tem os seguintes pré-requisitos.

**Uma versão compatível do Go**  
O Go 1.23 ou posterior é exigido pelo AWS Encryption SDK for Go.  
Para obter mais informações sobre como baixar e instalar o Go, consulte [Instalação do Go](https://go.dev/doc/install).

## Instalação
<a name="go-installation"></a>

Instale a versão mais recente do AWS Encryption SDK for Go. Para obter detalhes sobre como instalar e criar o AWS Encryption SDK for Go, consulte o [README.md](https://github.com/aws/aws-encryption-sdk/tree/mainline/releases/go/encryption-sdk/README.md) no diretório go do repositório em. aws-encryption-sdk GitHub

**Para instalar a versão mais recente**
+ Instale o AWS Encryption SDK for Go

  ```
  go get github.com/aws/aws-encryption-sdk/releases/go/encryption-sdk@latest
  ```
+ Instale a [Biblioteca de Provedores de Material Criptográfico](https://github.com/aws/aws-cryptographic-material-providers-library) (MPL)

  ```
  go get github.com/aws/aws-cryptographic-material-providers-library/releases/go/mpl
  ```