

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

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

En este tema se explica cómo instalar y usar AWS Encryption SDK for Go. Para obtener más información sobre la programación con AWS Encryption SDK for Go, consulte el directorio [go](https://github.com/aws/aws-encryption-sdk/tree/mainline/releases/go/encryption-sdk/) del aws-encryption-sdk repositorio en GitHub.

 AWS Encryption SDK for Go se diferencia de algunas de las implementaciones de otros lenguajes de programación AWS Encryption SDK en los siguientes aspectos:
+ No hay soporte para el almacenamiento en [caché de claves de datos](data-key-caching.md). Sin embargo, AWS Encryption SDK for Go es compatible con el [llavero AWS KMS jerárquico](use-hierarchical-keyring.md), una solución alternativa de almacenamiento en caché de materiales criptográficos.
+ No es compatible con el streaming de datos

El AWS Encryption SDK for Go incluye todas las funciones de seguridad introducidas en las versiones 2.0. *x* y versiones posteriores de las implementaciones en otros idiomas del AWS Encryption SDK. Sin embargo, si utiliza AWS Encryption SDK for Go para descifrar datos cifrados con una versión anterior a la versión 2.0. *x* versión de la implementación en otro idioma de la AWS Encryption SDK, es posible que necesite ajustar su política de [compromisos](concepts.md#commitment-policy). Para obtener más información, consulte [¿Cómo establecer su política de compromiso?](migrate-commitment-policy.md#migrate-commitment-step1).

El AWS Encryption SDK for Go es un producto de [Dafny](https://github.com/dafny-lang/dafny/blob/master/README.md), un lenguaje de verificación formal en el que se escriben las especificaciones, el código para implementarlas y las pruebas para probarlas. AWS Encryption SDK El resultado es una biblioteca que implementa las características del AWS Encryption SDK en una trama que garantiza la corrección funcional.

**Más información**
+ Para ver ejemplos que muestran cómo configurar las opciones del AWS Encryption SDK, como especificar un conjunto de algoritmos alternativo, limitar las claves de datos cifrados y utilizar claves AWS KMS multirregionales, consulte. [Configuración del AWS Encryption SDK](configure.md)
+ Para ver ejemplos que muestran cómo configurar y usar AWS Encryption SDK for Go, consulta los [ejemplos de Go](https://github.com/aws/aws-encryption-sdk/tree/mainline/releases/go/encryption-sdk/examples) en el aws-encryption-sdk repositorio correspondiente. GitHub

**Topics**
+ [Requisitos previos](#prerequisites-go)
+ [Instalación](#go-installation)

## Requisitos previos
<a name="prerequisites-go"></a>

Antes de instalar AWS Encryption SDK for Go, asegúrese de cumplir los siguientes requisitos previos.

**Una versión compatible de Go**  
 AWS Encryption SDK Para Go es necesaria la versión 1.23 o posterior.  
Para obtener más información sobre la descarga e instalación de Go, consulta [Instalación de Go](https://go.dev/doc/install).

## Instalación
<a name="go-installation"></a>

Instala la última versión de AWS Encryption SDK for Go. Para obtener más información sobre la instalación y creación de AWS Encryption SDK for Go, consulta el [archivo README.md](https://github.com/aws/aws-encryption-sdk/tree/mainline/releases/go/encryption-sdk/README.md) en el directorio go del aws-encryption-sdk repositorio en cuestión. GitHub

**Para instalar la versión más reciente**
+ Instala el for Go AWS Encryption SDK 

  ```
  go get github.com/aws/aws-encryption-sdk/releases/go/encryption-sdk@latest
  ```
+ Instale la [biblioteca de proveedores 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
  ```