

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 Rust
<a name="rust"></a>

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

La AWS Encryption SDK versión para Rust 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 para Rust es compatible con el [anillo de claves 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

La versión AWS Encryption SDK para Rust 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 está utilizando Rust AWS Encryption SDK para descifrar datos cifrados con una versión anterior a la 2.0. *x* versión de la implementación en otro idioma de la AWS Encryption SDK, es posible que deba 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 de Rust 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 para Rust, consulta los [ejemplos de Rust](https://github.com/aws/aws-encryption-sdk-dafny/tree/mainline/AwsEncryptionSDK/runtimes/rust/examples) en el aws-encryption-sdk repositorio de Rust. GitHub

**Topics**
+ [Requisitos previos](#prerequisites-rust)
+ [Instalación](#rust-installation)
+ [Ejemplos](rust-examples.md)

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

Antes de instalar el AWS Encryption SDK para Rust, asegúrate de cumplir los siguientes requisitos previos.

**Instale Rust y Cargo**  
Instala la versión estable actual de [Rust](https://www.rust-lang.org/) usando [rustup.](https://rustup.rs/)  
Para obtener más información sobre la descarga e instalación de rustup, consulta los [procedimientos de instalación](https://doc.rust-lang.org/cargo/getting-started/installation.html) en The Cargo Book.

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

El AWS Encryption SDK de Rust está disponible en forma de [https://crates.io/crates/aws-esdk](https://crates.io/crates/aws-esdk)caja en Crates.io. Para obtener más información sobre cómo instalar y compilar AWS Encryption SDK para Rust, consulta el [archivo README.md](https://github.com/aws/aws-encryption-sdk/tree/mainline) en el repositorio de Rust. aws-encryption-sdk GitHub

Puedes instalar el AWS Encryption SDK para Rust de las siguientes maneras.

**Manualmente**  
Para instalar el repositorio AWS Encryption SDK para Rust, clona o descarga el [aws-encryption-sdk](https://github.com/aws/aws-encryption-sdk/tree/mainline) GitHub repositorio.

**Usando Crates.io**  
Ejecute el siguiente comando Cargo en el directorio de su proyecto:  

```
cargo add aws-esdk
```
O añade la siguiente línea a tu Cargo.toml:  

```
aws-esdk = "<version>"
```