メニュー
アマゾン ウェブ サービス
全般的なリファレンス (Version 1.0)

Amazon S3 クライアント側の暗号化の AWS SDK によるサポート

次の表は、言語固有の AWS SDK でサポートされている暗号化アルゴリズムと機能の一覧です。特定の SDK 用の機能の使用方法については、SDK 開発者ガイドを参照してください。

初めて暗号化を使用する場合は、AWS Key Management Service Developer Guideの「暗号化の基礎」を参照して用語と概念に精通してください。

注記

AWS 暗号化 SDK は、言語固有の SDK とは別の暗号化ライブラリです。この暗号化ライブラリを使用すると、アプリケーションで暗号化のベストプラクティスをより簡単に実装できます。言語固有の AWSSDK の Amazon S3 暗号化クライアントとは異なり、AWS 暗号化 SDK は Amazon S3 専用ではなく、任意の場所にデータを保存または復号するために使用できます。

この AWS 暗号化 SDK と Amazon S3 暗号化クライアントは、さまざまなデータ形式で暗号化テキストを生成するため、互換性がありません。AWS 暗号化 SDK の詳細については、AWS 暗号化 SDK 開発者ガイド を参照してください。

Amazon S3 クライアント側の暗号化に関する AWS SDK の機能

次の表は、各列は特定の言語用の AWS SDK が、クライアント側の暗号化で使用される機能をサポートしているかどうかを示しています。

Amazon S3 クライアント側の暗号化機能を使用して、Amazon S3 にアップロードする前にデータを暗号化するには、Amazon S3 暗号化クライアントにマスターキーを提供する必要があります。クライアント側のマスターキーを提供するか、AWS KMS で管理されたマスターキー機能を使用できます。AWS KMS で管理されたマスターキー機能を使用すると、簡単な方法でデータの暗号化に使用されるキーを作成および管理できます。これらの機能の詳細については、[Feature] 列に記載されているリンクを選択してください。

特定の SDK 用の機能の使用については、SDK 開発者ガイドを参照してください。

機能 Java .NET Ruby v2 CLI Boto3 PHP v3 JavaScript Go C++
Amazon S3 クライアント側の暗号化 はい はい はい いいえ いいえ はい いいえ はい はい
AWS KMS で管理されたマスターキー はい いいえ はい いいえ いいえ はい いいえ はい はい

クライアント側の暗号化をサポートしている各言語固有の SDK の Amazon S3 暗号化クライアントの詳細については、以下のブログ投稿を参照してください。

Amazon S3 暗号化クライアントの暗号化アルゴリズム

以下の表に、Amazon S3 暗号化クライアントを使用する場合に、キーとデータの暗号化のために各言語固有の AWS SDK がサポートするアルゴリズムを示します。

Algorithm Java .NET Ruby v2 CLI Boto3 PHP v3 JavaScript Go C++
AES/ECB キーのラップ (推奨されません) はい はい はい いいえ いいえ いいえ いいえ いいえ いいえ
AES/Wrap キーのラップ はい いいえ いいえ いいえ いいえ いいえ いいえ いいえ はい
RSA キーのラップ はい いいえ はい いいえ いいえ いいえ いいえ いいえ いいえ
AES/CBC コンテンツの暗号化 (暗号化専用モード) はい はい はい いいえ いいえ はい いいえ はい はい
AES/GCM コンテンツの暗号化 (厳格な認証モード) はい いいえ はい いいえ いいえ はい いいえ はい はい
AES/CTR コンテンツの暗号化 (レンジ GET での復号に使用される認証モードのみ) はい いいえ はい いいえ いいえ いいえ いいえ いいえ はい

認証と暗号化専用モードの詳細については、「Amazon S3 クライアント側の認証された暗号化」というブログ記事を参照してください。