

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# のバージョン AWS Encryption SDK
<a name="about-versions"></a>

 AWS Encryption SDK 言語実装では[、セマンティックバージョニング](https://semver.org/)を使用して、各リリースの変更の大きさを簡単に特定できます。1.*x*.*x* から 2.*x*.*x* のようなメジャーバージョン番号の変更は、コードの変更と計画的デプロイが必要になる可能性のある重大な変更を示します。新しいバージョンの変更がすべてのユースケースに影響を与えるとは限りません。リリースノートを確認して、影響を受けるかどうかを確認してください。*x*.1.*x* から *x*.2.*x* のようなマイナーバージョンの変更では、常に下位互換性がありますが、非推奨の要素が含まれている可能性があります。

可能な限り、 AWS Encryption SDK 選択したプログラミング言語で最新バージョンの を使用します。各バージョンの [メンテナンスとサポートのポリシー](introduction.md#support) は、プログラミング言語の実装によって異なります。お好みのプログラミング言語でサポートされているバージョンの詳細については、[GitHub リポジトリ](introduction.md#esdk-repos) の `SUPPORT_POLICY.rst` ファイルを参照してください。

アップグレードに暗号化や復号化エラーを回避するための特別な設定を必要とする新機能が含まれる場合は、中間バージョンとその使用方法の詳細な説明を提供します。例えば、バージョン 1.7.x と 1.8.x は、1.7.x より前のバージョンからバージョン 2.0.x 以降へのアップグレードに役立つ移行バージョンになるように設計されています。　 詳細については、「[の移行 AWS Encryption SDK](migration.md)」を参照してください。

**注記**  
バージョン番号の *x* は、メジャーバージョンとマイナーバージョンのパッチを示します。例えば、バージョン 1.7.*x* は 1.7 で始まるすべてのバージョンを表し、1.7.1 および 1.7.9 が含まれます。  
新しいセキュリティ機能は、もともと AWS Encryption CLI バージョン 1.7.*x* および 2.0.*x* でリリースされました。ただし、 AWS Encryption CLI バージョン 1.8.*x* はバージョン 1.7.*x* AWS に置き換わり、Encryption CLI 2.1.*x* は 2.0.*x* に置き換わります。詳細については、GitHub の [aws-encryption-sdk-cli](https://github.com/aws/aws-encryption-sdk-cli/) リポジトリで関連する[セキュリティアドバイザリ](https://github.com/aws/aws-encryption-sdk-cli/security/advisories/GHSA-2xwp-m7mq-7q3r)を参照してください。

次の表は、各プログラミング言語の でサポートされているバージョン間の主な違いの概要 AWS Encryption SDK を示しています。

## C
<a name="esdk-c-versions"></a>

すべての変更の詳細な説明については、GitHub の [aws-encryption-sdk-c](https://github.com/aws/aws-encryption-sdk-c/) リポジトリの [CHANGELOG.md](https://github.com/aws/aws-encryption-sdk-c/blob/master/CHANGELOG.md) を参照してください。


| 
| 
| **メジャーバージョン** | **詳細** | **SDK メジャーバージョンのライフサイクルフェーズ** | 
| --- |--- |--- |
| 1.x | 1.0 | Initial release. | [End-of-Supportフェーズ](https://docs.aws.amazon.com/sdkref/latest/guide/maint-policy.html#version-life-cycle) | 
| 1.7 | Updates to the AWS Encryption SDK that help users of earlier versions upgrade to versions 2.0.x and later. For more information, see [バージョン 1.7.*x*](#version-1.7). | 
| 2.x | 2.0 | Updates to the AWS Encryption SDK. For more information, see [バージョン 2.0.*x*](#version-2). | [一般提供](https://docs.aws.amazon.com/sdkref/latest/guide/maint-policy.html#version-life-cycle) (GA) | 
| 2.2 | Improvements to the message decryption process. | 
| 2.3 | Adds support for AWS KMS multi-Region keys. | 

## C\$1 / .NET
<a name="esdk-dot-net-versions"></a>

すべての変更の詳細な説明については、GitHub の [https://github.com/aws/aws-encryption-sdk/tree/mainline/AwsEncryptionSDK/runtimes/net/](https://github.com/aws/aws-encryption-sdk/tree/mainline/AwsEncryptionSDK/runtimes/net/)リポジトリの [CHANGELOG.md](https://github.com/aws/aws-encryption-sdk/tree/mainline/AwsEncryptionSDK/runtimes/net/CHANGELOG.md) を参照してください。


| 
| 
| **メジャーバージョン** | **詳細** | **SDK メジャーバージョンのライフサイクルフェーズ** | 
| --- |--- |--- |
| 3.x | 3.1.0 | Initial release. | [End-of-Support](https://docs.aws.amazon.com/sdkref/latest/guide/maint-policy.html#version-life-cycle)  [AWS Encryption SDK for .NET のバージョン 3.x ](https://www.nuget.org/packages/AWS.EncryptionSDK)がサポート終了になりました。[4.x にアップグレードしてください。](https://www.nuget.org/packages/AWS.Cryptography.EncryptionSDK) | 
| 4.x | 4.0 | Adds support for the AWS KMS Hierarchical keyring, the required encryption context CMM, and asymmetric RSA AWS KMS keyrings. | [一般提供](https://docs.aws.amazon.com/sdkref/latest/guide/maint-policy.html#version-life-cycle) (GA) | 
| 5.x | 5.0 | Updates to version 2.x of the Material Providers Library (MPL). Drops support for the AWS SDK for .NET v3 and requires the AWS SDK for .NET v4. | [一般提供](https://docs.aws.amazon.com/sdkref/latest/guide/maint-policy.html#version-life-cycle) (GA) | 

## コマンドラインインターフェイス (CLI)
<a name="esdk-cli-versions"></a>

すべての変更の詳細な説明については、GitHub の [aws-encryption-sdk-cli](https://github.com/aws/aws-encryption-sdk-cli/) リポジトリの[Encryption AWS CLI のバージョン](crypto-cli-versions.md)「」と[「CHANGELOG.rst](https://github.com/aws/aws-encryption-sdk-cli/blob/master/CHANGELOG.rst)」を参照してください。


| 
| 
| **メジャーバージョン** | **詳細** | **SDK メジャーバージョンのライフサイクルフェーズ** | 
| --- |--- |--- |
| 1.x | 1.0 | Initial release. | [End-of-Supportフェーズ](https://docs.aws.amazon.com/sdkref/latest/guide/maint-policy.html#version-life-cycle) | 
| 1.7 | Updates to the AWS Encryption SDK that help users of earlier versions upgrade to versions 2.0.x and later. For more information, see [バージョン 1.7.*x*](#version-1.7). | 
| 2.x | 2.0 | Updates to the AWS Encryption SDK. For more information, see [バージョン 2.0.*x*](#version-2). | [End-of-Supportフェーズ](https://docs.aws.amazon.com/sdkref/latest/guide/maint-policy.html#version-life-cycle) | 
| 2.1 |  `--discovery` パラメータを削除し、 `--wrapping-keys` パラメータの `discovery` 属性に置き換えます。 Encryption AWS CLI のバージョン 2.1.0 は、他のプログラミング言語のバージョン 2.0 と同等です。  | 
| 2.2 | Improvements to the message decryption process. | 
| 3.x | 3.0 | Adds support for AWS KMS multi-Region keys. | [End-of-Supportフェーズ](https://docs.aws.amazon.com/sdkref/latest/guide/maint-policy.html#version-life-cycle) | 
| 4.x | 4.0 | The AWS Encryption CLI no longer supports Python 2 or Python 3.4. As of major version 4.x of the AWS Encryption CLI, only Python 3.5 or later is supported. | [一般提供](https://docs.aws.amazon.com/sdkref/latest/guide/maint-policy.html#version-life-cycle) (GA) | 
| 4.1 | The AWS Encryption CLI no longer supports Python 3.5. As of version 4.1.x of the AWS Encryption CLI, only Python 3.6 or later is supported. | 
| 4.2 | The AWS Encryption CLI no longer supports Python 3.6. As of version 4.2.x of the AWS Encryption CLI, only Python 3.7 or later is supported. | 

## Java
<a name="esdk-java-versions"></a>

すべての変更の詳細な説明については、GitHub の [aws-encryption-sdk-java](https://github.com/aws/aws-encryption-sdk-java/) リポジトリの [CHANGELOG.rst](https://github.com/aws/aws-encryption-sdk-java/blob/master/CHANGELOG.md) を参照してください。


| 
| 
| **メジャーバージョン** | **詳細** | **SDK メジャーバージョンのライフサイクルフェーズ** | 
| --- |--- |--- |
| 1.x | 1.0 | Initial release. | [End-of-Supportフェーズ](https://docs.aws.amazon.com/sdkref/latest/guide/maint-policy.html#version-life-cycle) | 
| 1.3 | Adds support for cryptographic materials manager and data key caching. Moved to deterministic IV generation. | 
| 1.6.1 |  `AwsCrypto.encryptString()` と を廃止`AwsCrypto.decryptString()`し、 `AwsCrypto.encryptData()`および に置き換えます`AwsCrypto.decryptData()`。  | 
| 1.7 | Updates to the AWS Encryption SDK that help users of earlier versions upgrade to versions 2.0.x and later. For more information, see [バージョン 1.7.*x*](#version-1.7). | 
| 2.x | 2.0 | Updates to the AWS Encryption SDK. For more information, see [バージョン 2.0.*x*](#version-2). |  [一般提供](https://docs.aws.amazon.com/sdkref/latest/guide/maint-policy.html#version-life-cycle) (GA) のバージョン 2.x AWS Encryption SDK for Java は 2024 年にメンテナンスモードになります。  | 
| 2.2 | Improvements to the message decryption process. | 
| 2.3 | Adds support for AWS KMS multi-Region keys. | 
| 2.4 | Adds support for AWS SDK for Java 2.x. | 
| 3.x | 3.0 |  をマテリアルプロバイダーライブラリ (MPL) AWS Encryption SDK for Java と統合します。 [https://github.com/aws/aws-cryptographic-material-providers-library](https://github.com/aws/aws-cryptographic-material-providers-library) 対称および非対称 RSA AWS KMS キーリング、 AWS KMS ECDH キーリング、 AWS KMS 階層キーリング、Raw AES キーリング、Raw RSA キーリング、Raw ECDH キーリング、マルチキーリング、および必要な暗号化コンテキスト CMM のサポートが追加されました。  | [一般提供](https://docs.aws.amazon.com/sdkref/latest/guide/maint-policy.html#version-life-cycle) (GA) | 

## Go
<a name="esdk-go-versions"></a>

すべての変更の詳細な説明については、GitHub の [aws-encryption-sdk](https://github.com/aws/aws-encryption-sdk/tree/mainline) リポジトリの Go ディレクトリにある [CHANGELOG.md](https://github.com/aws/aws-encryption-sdk/tree/mainline/releases/go/encryption-sdk/CHANGELOG.md) を参照してください。


| 
| 
| **メジャーバージョン** | **詳細** | **SDK メジャーバージョンのライフサイクルフェーズ** | 
| --- |--- |--- |
| 0.1.x | 0.1.0 | Initial release. | [一般提供](https://docs.aws.amazon.com/sdkref/latest/guide/maint-policy.html#version-life-cycle) (GA) | 

## JavaScript
<a name="esdk-javascript-versions"></a>

すべての変更の詳細な説明については、GitHub の [aws-encryption-sdk-javascript](https://github.com/aws/aws-encryption-sdk-javascript/tree/master/modules) リポジトリの [CHANGELOG.md](https://github.com/aws/aws-encryption-sdk-javascript/blob/master/CHANGELOG.md) を参照してください。


| 
| 
| **メジャーバージョン** | **詳細** | **SDK メジャーバージョンのライフサイクルフェーズ** | 
| --- |--- |--- |
| 1.x | 1.0 | Initial release. | [End-of-Supportフェーズ](https://docs.aws.amazon.com/sdkref/latest/guide/maint-policy.html#version-life-cycle) | 
| 1.7 | Updates to the AWS Encryption SDK that help users of earlier versions upgrade to versions 2.0.x and later. For more information, see [バージョン 1.7.*x*](#version-1.7). | 
| 2.x | 2.0 | Updates to the AWS Encryption SDK. For more information, see [バージョン 2.0.*x*](#version-2). | [End-of-Supportフェーズ](https://docs.aws.amazon.com/sdkref/latest/guide/maint-policy.html#version-life-cycle) | 
| 2.2 | Improvements to the message decryption process. | 
| 2.3 | Adds support for AWS KMS multi-Region keys. | 
| 3.x | 3.0 | Removes CI coverage for Node 10. Upgrades dependencies to no longer support Node 8 and Node 10. |  [メンテナンス](https://docs.aws.amazon.com/sdkref/latest/guide/maint-policy.html#version-life-cycle) のバージョン 3.x のサポート AWS Encryption SDK for JavaScript は、2024 年 1 月 17 日に終了します。  | 
| 4.x | 4.0 | Requires version 3 of the AWS Encryption SDK for JavaScript's kms クライアント to use the AWS KMS keyring. | [一般提供](https://docs.aws.amazon.com/sdkref/latest/guide/maint-policy.html#version-life-cycle) (GA) | 

## Python
<a name="esdk-python-versions"></a>

すべての変更の詳細な説明については、GitHub の [aws-encryption-sdk-python](https://github.com/aws/aws-encryption-sdk-python/) リポジトリの [CHANGELOG.rst](https://github.com/aws/aws-encryption-sdk-python/blob/master/CHANGELOG.rst) を参照してください。


| 
| 
| **メジャーバージョン** | **詳細** | **SDK メジャーバージョンのライフサイクルフェーズ** | 
| --- |--- |--- |
| 1.x | 1.0 | Initial release. | [End-of-Supportフェーズ](https://docs.aws.amazon.com/sdkref/latest/guide/maint-policy.html#version-life-cycle) | 
| 1.3 | Adds support for cryptographic materials manager and data key caching. Moved to deterministic IV generation. | 
| 1.7 | Updates to the AWS Encryption SDK that help users of earlier versions upgrade to versions 2.0.x and later. For more information, see [バージョン 1.7.*x*](#version-1.7). | 
| 2.x | 2.0 | Updates to the AWS Encryption SDK. For more information, see [バージョン 2.0.*x*](#version-2). | [End-of-Supportフェーズ](https://docs.aws.amazon.com/sdkref/latest/guide/maint-policy.html#version-life-cycle) | 
| 2.2 | Improvements to the message decryption process. | 
| 2.3 | Adds support for AWS KMS multi-Region keys. | 
| 3.x | 3.0 | The AWS Encryption SDK for Python no longer supports Python 2 or Python 3.4. As of major version 3.x of the AWS Encryption SDK for Python, only Python 3.5 or later is supported. | [一般提供](https://docs.aws.amazon.com/sdkref/latest/guide/maint-policy.html#version-life-cycle) (GA) | 
| 4.x | 4.0 |  をマテリアルプロバイダーライブラリ (MPL) AWS Encryption SDK for Python と統合します。 [https://github.com/aws/aws-cryptographic-material-providers-library](https://github.com/aws/aws-cryptographic-material-providers-library)  | [一般提供](https://docs.aws.amazon.com/sdkref/latest/guide/maint-policy.html#version-life-cycle) (GA) | 

## Rust
<a name="esdk-rust-versions"></a>

すべての変更の詳細な説明については、GitHub の [aws-encryption-sdk](https://github.com/aws/aws-encryption-sdk/tree/mainline) リポジトリの Rust ディレクトリにある [CHANGELOG.md](https://github.com/aws/aws-encryption-sdk-dafny/tree/mainline/AwsEncryptionSDK/runtimes/rust/CHANGELOG.md) を参照してください。


| 
| 
| **メジャーバージョン** | **詳細** | **SDK メジャーバージョンのライフサイクルフェーズ** | 
| --- |--- |--- |
| 1.x | 1.0 | Initial release. | [一般提供](https://docs.aws.amazon.com/sdkref/latest/guide/maint-policy.html#version-life-cycle) (GA) | 

## バージョンの詳細
<a name="version-details"></a>

以下のリストでは、 AWS Encryption SDKでサポートされているバージョンの主な相違点を示します。

**Topics**
+ [1.7.x より前のバージョン](#versions-earlier)
+ [バージョン 1.7.x](#version-1.7)
+ [バージョン 2.0.x](#version-2)
+ [バージョン 2.2.x](#version2.2.x)
+ [バージョン 2.3.x](#version2.3)

### 1.7.x より前のバージョン
<a name="versions-earlier"></a>

**注記**  
のすべての 1.*x*.*x* バージョン AWS Encryption SDK は[end-of-supportフェーズ](https://docs.aws.amazon.com/sdkref/latest/guide/maint-policy.html#version-life-cycle)にあります。可能な限り早く、プログラミング言語 AWS Encryption SDK の の最新バージョンにアップグレードします。1.7.*x* より前の AWS Encryption SDK バージョンからアップグレードするには、まず 1.7.*x* にアップグレードする必要があります。詳細については、「[の移行 AWS Encryption SDK](migration.md)」を参照してください。

1.7.*x* より AWS Encryption SDK 前のバージョンでは、Galois/Counter Mode (AES-GCM) の Advanced Encryption Standard アルゴリズムによる暗号化、HMAC extract-and-expandキー取得関数 (HKDF)、署名、256 ビット暗号化キーなど、重要なセキュリティ機能が提供されます。ただし、これらのバージョンでは、[キーコミットメント](concepts.md#key-commitment)など、推奨[ベストプラクティス](best-practices.md)がサポートされません。

### バージョン 1.7.x
<a name="version-1.7"></a>

**注記**  
のすべての 1.*x*.*x* バージョン AWS Encryption SDK は[end-of-supportフェーズ](https://docs.aws.amazon.com/sdkref/latest/guide/maint-policy.html#version-life-cycle)にあります。

バージョン 1.7.*x* は、 の以前のバージョンのユーザーがバージョン 2.0.*x* 以降に AWS Encryption SDK アップグレードするのに役立つように設計されています。を初めて使用する場合は AWS Encryption SDK、このバージョンをスキップして、プログラミング言語で利用可能な最新バージョンから始めることができます。

バージョン 1.7.*x* には完全な下位互換性があり、重大な変更の導入や AWS Encryption SDKの動作の変更はありません。上位互換性もあり、バージョン 2.0.*x* と互換性があるようにコードを更新できます。これには新機能が含まれますが、完全に有効になるわけではありません。また、準備が整うまで、すべての新機能をすぐには採用できないようにする設定値が必要です。

バージョン 1.7.*x* には次の変更が含まれています。

**AWS KMS マスターキープロバイダーの更新 (必須)**  <a name="changes-to-mkps"></a>
バージョン 1.7.*x* では、 AWS Encryption SDK for Java と に新しいコンストラクタが導入されています。 AWS Encryption SDK for Python これにより、*厳格*モードまたは*検出*モードで AWS KMS マスターキープロバイダーが明示的に作成されます。このバージョンでは、 AWS Encryption SDK コマンドラインインターフェイス (CLI) に同様の変更が追加されています。詳細については、「[AWS KMS マスターキープロバイダーの更新](migrate-mkps-v2.md)」を参照してください。  
+  AWS KMS マスターキープロバイダーでは、*Strict モード*の場合、ラッピングキーのリストが必要で、指定したラッピングキーのみで暗号化と復号化が行われます。これが AWS Encryption SDK のベストプラクティスで、使用を意図したラッピングキーを使用していることが保証されます。
+  AWS KMS マスターキープロバイダーでは、*Discovery モード*の場合、ラッピングキーが使用されません。ラッピングキーを暗号化に使用することはできません。復号時には、ラッピングキーを使用して、暗号化されたデータキーを復号できます。ただし、復号化に使用するラッピングキーは、特定の AWS アカウントのものに制限できます。アカウントのフィルタリングはオプションですが、お勧めの[ベストプラクティス](best-practices.md)です。
以前のバージョンの AWS KMS マスターキープロバイダーを作成するコンストラクタは、バージョン 1.7.*x* では廃止され、バージョン 2.0.*x* では削除されています。これらのコンストラクタは、指定したラッピングキーを使用して暗号化するマスターキープロバイダーをインスタンス化します。ただし、指定したラッピングキーに関係なく、暗号化したラッピングキーを使用して、暗号化されたデータキーを復号化します。ユーザーは、 AWS KMS keys 他の AWS アカウント やリージョンなど、使用しないラッピングキーを使用してメッセージを意図せずに復号する場合があります。  
 AWS KMS マスターキーのコンストラクタに変更はありません。暗号化および復号時に、 AWS KMS マスターキーは AWS KMS key 指定した のみを使用します。

**AWS KMS キーリングの更新 (オプション)**  
バージョン 1.7.*x* では、[AWS KMS 検出キーリングを特定の に制限する新しいフィルター](use-kms-keyring.md#kms-keyring-discovery)が AWS Encryption SDK for C および AWS Encryption SDK for JavaScript 実装に追加されます AWS アカウント。この新しいアカウントフィルターはオプションですが、お勧めの[ベストプラクティス](best-practices.md)です。詳細については、「[AWS KMS キーリングの更新](migrate-keyrings-v2.md)」を参照してください。  
 AWS KMS キーリングのコンストラクタに変更はありません。標準 AWS KMS キーリングは、strict モードでマスターキープロバイダーのように動作します。 AWS KMS discovery キーリングは、discovery モードで明示的に作成されます。

**キー ID を AWS KMS 復号化する**  
バージョン 1.7.*x* 以降、暗号化されたデータキーを復号するときに、 は AWS KMS [Decrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html) オペレーションの呼び出し AWS KMS key で AWS Encryption SDK 常に を指定します。は、暗号化された各データキーのメタデータ AWS KMS key から のキー ID 値 AWS Encryption SDK を取得します。この機能では、コードの変更は必要ありません。  
対称暗号化 AWS KMS key KMS キーで暗号化された暗号文を復号するには、 のキー ID を指定する必要はありませんが、[AWS KMS ベストプラクティス](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html#KMS-Decrypt-request-KeyId)です。キープロバイダーでラッピングキーを指定する場合と同様に、この方法では、使用するラッピングキー AWS KMS のみを使用して が復号化されることが保証されます。

**キーコミットメントで暗号化テキストを復号化する**  
バージョン 1.7.*x* では、[キーコミットメント](concepts.md#key-commitment)を使用しているかどうかに関係なく、暗号化された暗号化テキストを復号化できます。ただし、キーコミットメントによって暗号化テキストを暗号化することはできません。このプロパティを使用すると、キーコミットメントで暗号化された暗号化テキストを復号化できるアプリケーションを完全にデプロイしてから、そのような暗号化テキストを処理できます。このバージョンでは、キーコミットメントなしで暗号化されたメッセージを復号化するため、暗号化テキストを再暗号化する必要はありません。  
この動作を実装するために、バージョン 1.7.*x* には、 がキー[コミットメントで暗号化または復号化できるかどうかを決定する新しいコミットメントポリシー](concepts.md#commitment-policy)設定が含まれています。 AWS Encryption SDK バージョン 1.7.*x* では、コミットメントポリシーの有効な値、`ForbidEncryptAllowDecrypt` が暗号化と復号化のすべてのオペレーションで使用されます。この値により、 AWS Encryption SDK がキーコミットメントを含む新しいアルゴリズムスイートのいずれかで暗号化することが防止されます。これにより、 AWS Encryption SDK はキーコミットメントの有無にかかわらず暗号文を復号できます。  
バージョン 1.7.*x* には有効なコミットメントポリシーの値が 1 つしかありませんが、このリリースで導入された新しい API を使用する場合は、この値を明示的に設定してください。値を明示的に設定すると、バージョン 2.1.*x* へのアップグレード時にコミットメントポリシーが自動的に `require-encrypt-require-decrypt` に変更されなくなります。その代わりに、[コミットメントポリシーを段階的に移行](migrate-commitment-policy.md)できます。

**キーコミットメントを使用するアルゴリズムスイート**  
バージョン 1.7.*x*には新しい 2 つの[アルゴリズムスイート](supported-algorithms.md)が組み込まれて、キーコミットメントがサポートされます。一方は署名を含み、もう一方は署名を含みません。以前サポートされていたアルゴリズムスイートと同様に、これらの両方の新しいアルゴリズムスイートには、AES-GCM による暗号化、256 ビット暗号化キー、HMAC ベースの抽出および展開キー取得関数 (HKDF) が含まれます。  
ただし、暗号化に使用されるデフォルトのアルゴリズムスイートは変更されません。これらのアルゴリズムスイートがバージョン 1.7.x に追加されるのは、バージョン 2.0.x 以降で使用するようにアプリケーションを準備するためです。

**CMM 実装の変更**  
バージョン 1.7.*x* では、キーコミットメントをサポートするために、デフォルト暗号化マテリアルマネージャ (CMM) インターフェイスが変更されました。この変更は、カスタム CMM を作成した場合にのみ影響します。詳細については、使用している[プログラミング言語](programming-languages.md)の API ドキュメントまたは GitHub リポジトリを参照してください。

### バージョン 2.0.x
<a name="version-2"></a>

バージョン 2.0.*x* は、指定されたラッピングキーやキーコミットメントなど AWS Encryption SDK、 で提供される新しいセキュリティ機能をサポートしています。バージョン 2.0.*x* では、これらの機能をサポートするため、前バージョンの AWS Encryption SDKが大きく変更されています。バージョン 1.7.*x* をデプロイすれば、これらの変更に備えることができます。バージョン 2.0.*x* には、バージョン 1.7.*x* で導入されたすべての新機能が含まれており、以下の追加・変更点もあります。

**注記**  
のバージョン 2.*x*.*x* AWS Encryption SDK for Python AWS Encryption SDK for JavaScript、および AWS Encryption CLI は[end-of-supportフェーズ](https://docs.aws.amazon.com/sdkref/latest/guide/maint-policy.html#version-life-cycle)にあります。  
任意のプログラミング言語でのこの AWS Encryption SDK バージョンの[サポートとメンテナンス](introduction.md#support)については、[GitHub リポジトリ](introduction.md#esdk-repos)の `SUPPORT_POLICY.rst` ファイルを参照してください。

**AWS KMS マスターキープロバイダー**  
バージョン 1.7.*x* で廃止された元の AWS KMS マスターキープロバイダーコンストラクタは、バージョン 2.0.*x* で削除されます。 AWS KMS マスターキープロバイダーは、[Strict モードまたは Discovery モード](migrate-mkps-v2.md)で明示的に構築する必要があります。

**キーコミットメントによる暗号化テキストの暗号化と復号化**  
バージョン 2.0.*x* では、[キーコミットメント](concepts.md#key-commitment)を使用しているかどうかに関係なく、暗号化テキストの暗号化と復号化ができます。その動作は、コミットメントポリシー設定によって決まります。デフォルトでは、常にキーコミットメントで暗号化し、キーコミットメントで暗号化された暗号化テキストのみを復号します。コミットメントポリシーを変更しない限り、 AWS Encryption SDK では、バージョン 1.7.*x* を含む AWS Encryption SDKの旧バージョンで暗号化された暗号化テキストが復号化されません。  
デフォルトの場合、バージョン 2.0.*x* では、キーコミットメントなしで暗号化された暗号化テキストは復号化されません。キーコミットなしで暗号化された暗号化テキストをアプリケーションで処理する可能性がある場合は、コミットメントポリシーの値を `AllowDecrypt` で設定してください。
バージョン 2.0.*x* の場合、コミットメントポリシー設定には次の 3 つの有効な値があります。  
+ `ForbidEncryptAllowDecrypt` — AWS Encryption SDK では、キーコミットメントで暗号化することはできません。キーコミットメントが使用されているかどうかにかかわらず、暗号化された暗号化テキストを復号化できます。
+ `RequireEncryptAllowDecrypt` — AWS Encryption SDK では、キーコミットメントで暗号化する必要があります。キーコミットメントが使用されているかどうかにかかわらず、暗号化された暗号化テキストを復号化できます。
+ `RequireEncryptRequireDecrypt` (デフォルト) — はキーコミットメントで暗号化 AWS Encryption SDK する必要があります。キーコミットメントによる暗号化テキストのみを復号化します。
の以前のバージョンから AWS Encryption SDK バージョン 2.0.*x* に移行する場合は、コミットメントポリシーを、アプリケーションが遭遇する可能性のある既存の暗号文をすべて復号できる値に設定します。この設定は時間の経過とともに調整することになる可能性があります。

### バージョン 2.2.x
<a name="version2.2.x"></a>

デジタル署名と暗号化データキーの制限のサポートを追加します。

**注記**  
のバージョン 2.*x*.*x* AWS Encryption SDK for Python AWS Encryption SDK for JavaScript、および AWS Encryption CLI は[end-of-supportフェーズ](https://docs.aws.amazon.com/sdkref/latest/guide/maint-policy.html#version-life-cycle)にあります。  
任意のプログラミング言語でのこの AWS Encryption SDK バージョンの[サポートとメンテナンス](introduction.md#support)については、[GitHub リポジトリ](introduction.md#esdk-repos)の `SUPPORT_POLICY.rst` ファイルを参照してください。

**デジタル署名**  
復号時の[デジタル署名](concepts.md#digital-sigs)の処理を改善するために、 には次の機能 AWS Encryption SDK が含まれています。  
+ 非ストリーミングモード — デジタル署名が存在する場合の検証を含め、すべての入力を処理した後にのみプレーンテキストを返します。　 この機能を使用すると、デジタル署名を検証するまでプレーンテキストを使用できなくなります。この機能は、デジタル署名 (デフォルトのアルゴリズムスイート) で暗号化されたデータを復号化するときに使用します。たとえば、Encryption AWS CLI は常にストリーミングモードでデータを処理するため、デジタル署名で暗号文を復号するときに `- -buffer`パラメータを使用します。
+ 署名なし専用復号モード — この機能では署名されていない暗号文のみを復号化します。復号化で暗号化テキスト内にデジタル署名が検出されると、オペレーションは失敗します。この機能を使用して、署名を検証する前に、署名付きメッセージのプレーンテキストを意図せずに処理しないようにします。

**暗号化されたデータキーの制限**  
暗号化されたメッセージ内の[暗号化されたデータキーの数を制限](configure.md#config-limit-keys)できます。この機能は、暗号化時に誤って構成されたマスターキープロバイダーまたはキーリングを検出したり、復号時に悪意のある暗号化テキストを特定したりするのに役立ちます。  
信頼できない送信元からのメッセージを復号する場合は、暗号化されたデータキーを制限してください。不必要でコストがかかり、潜在的に網羅的な方法によって、キーインフラストラクチャを呼び出すことを防止できます。

### バージョン 2.3.x
<a name="version2.3"></a>

 AWS KMS マルチリージョンキーのサポートを追加しました。詳細については、「[マルチリージョンの使用 AWS KMS keys](configure.md#config-mrks)」を参照してください。

**注記**  
 AWS Encryption CLI は、バージョン 3.0.*x* 以降のマルチリージョンキーをサポートしています。  
のバージョン 2.*x*.*x* AWS Encryption SDK for Python AWS Encryption SDK for JavaScript、および AWS Encryption CLI は[end-of-supportフェーズ](https://docs.aws.amazon.com/sdkref/latest/guide/maint-policy.html#version-life-cycle)にあります。  
任意のプログラミング言語でのこの AWS Encryption SDK バージョンの[サポートとメンテナンス](introduction.md#support)の詳細については、[GitHub リポジトリ](introduction.md#esdk-repos)の `SUPPORT_POLICY.rst` ファイルを参照してください。