

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# AWS Encryption SDK for Python
<a name="python"></a>

本主题介绍了如何安装和使用 AWS Encryption SDK for Python。有关使用编程的详细信息 AWS Encryption SDK for Python，请参阅上的[aws-encryption-sdk-python](https://github.com/aws/aws-encryption-sdk-python/)存储库 GitHub。有关 API 文档，请参阅[阅读文档](https://aws-encryption-sdk-python.readthedocs.io/en/latest/)。

**Topics**
+ [先决条件](#python-prerequisites)
+ [安装](#python-installation)
+ [示例](python-example-code.md)

## 先决条件
<a name="python-prerequisites"></a>

在安装之前 AWS Encryption SDK for Python，请确保满足以下先决条件。

**支持的 Python 版本**  
3.2.0 及更高版本需要 Python 3.8 或更高 AWS Encryption SDK for Python 版本。  
[AWS 加密材料提供程序库](https://github.com/aws/aws-cryptographic-material-providers-library) (MPL) 是版本 4 中 AWS Encryption SDK for Python 引入的可选依赖项。 *x*。如果你打算安装 MPL，则必须使用 Python 3.11 或更高版本。
的早期版本 AWS Encryption SDK 支持 Python 2.7 和 Python 3.4 及更高版本，但我们建议您使用最新版本的 AWS Encryption SDK。  
要下载 Python，请参阅 [Python 下载](https://www.python.org/downloads/)。

**适用于 Python 的 pip 安装工具**  
`pip` 包含在 Python 3.6 及更高版本中，但您可能需要对其进行升级。有关升级或安装 `pip` 的更多信息，请参阅 `pip` 文档中的 [Installation](https://pip.pypa.io/en/latest/installation/)。

## 安装
<a name="python-installation"></a>

安装最新版本的 AWS Encryption SDK for Python。

**注意**  
[3.0.0 AWS Encryption SDK for Python 之前的所有版本都处于该阶段。end-of-support](https://docs.aws.amazon.com/sdkref/latest/guide/maint-policy.html#version-life-cycle)  
您可以安全地从 AWS Encryption SDK 版本 2.0.*x* 及更高版本更新为最新版本，无需更改任何代码或数据。但是，版本 2.0.*x* 中引入了[新的安全功能](about-versions.md#version-2)，不向后兼容。要从 1.7.*x* 之前的版本更新到 2.0.*x* 及更高版本，必须先更新到 AWS Encryption SDK最新版本 1.*x*。有关更多信息，请参阅 [迁移你的 AWS Encryption SDK](migration.md)。

`pip`用于安装 AWS Encryption SDK for Python，如以下示例所示。

**安装最新版本**  

```
pip install "aws-encryption-sdk[MPL]"
```
后`[MPL]`缀安装[AWS 加密材料提供程序库](https://github.com/aws/aws-cryptographic-material-providers-library) (MPL)。MPL 包含用于加密和解密数据的结构。MPL 是版本 4 中 AWS Encryption SDK for Python 引入的可选依赖项。 *x*。我们强烈建议安装 MPL。但是，如果您不打算使用 MPL，则可以省略后`[MPL]`缀。

有关使用 pip 安装和升级程序包的更详细信息，请参阅[安装程序包](https://packaging.python.org/tutorials/installing-packages/)。

 AWS Encryption SDK for Python 需要所有平台上的[密码学库](https://cryptography.io/en/latest/)（pyca/密码学）。`pip` 所有版本均会在 Windows 上自动安装和构建 `cryptography` 库。 `pip` 8.1 及更高版本会自动在 Linux 上安装和构建 `cryptography`。如果使用 `pip` 早期版本，并且 Linux 环境没有构建 `cryptography` 库所需的工具，您需要安装这些工具。有关更多信息，请参阅[在 Linux 上构建加密](https://cryptography.io/en/latest/installation.html#building-cryptography-on-linux)。

该版本的1.10.0和2.5.0版本将[密码学](https://cryptography.io/en/latest/)依赖关系 AWS Encryption SDK for Python 固定在2.5.0和3.3.2之间。其他版本则 AWS Encryption SDK for Python 安装最新版本的密码学。如果您需要比 3.3.2 更高的密码系统版本，我们建议您使用 AWS Encryption SDK for Python的最新主要版本。

有关的最新开发版本 AWS Encryption SDK for Python，请访问中的[aws-encryption-sdk-python](https://github.com/aws/aws-encryption-sdk-python/)存储库 GitHub。

安装完成后 AWS Encryption SDK for Python，请先查看本指南中的 [Python 示例代码](python-example-code.md)。