

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

# の暗号化のベストプラクティス AWS Encryption SDK
<a name="encryption-sdk"></a>

[AWS Encryption SDK](https://docs.aws.amazon.com/encryption-sdk/latest/developer-guide/introduction.html) は、オープンソースのクライアント側暗号化ライブラリです。業界標準とベストプラクティスを使用して、複数の[プログラミング言語で](https://docs.aws.amazon.com/encryption-sdk/latest/developer-guide/programming-languages.html)の実装と相互運用性をサポートします。 は、安全で認証された対称キーアルゴリズムを使用してデータを AWS Encryption SDK 暗号化し、暗号化のベストプラクティスに準拠したデフォルトの実装を提供します。詳細については、「[AWS Encryption SDKでサポートされているアルゴリズムスイート](https://docs.aws.amazon.com/encryption-sdk/latest/developer-guide/supported-algorithms.html)」を参照してください。

の主な機能の 1 つは、使用中のデータの暗号化のサポート AWS Encryption SDK です。encrypt-then-use アプローチを採用することで、アプリケーションロジックで処理される前に機密データを暗号化できます。これにより、アプリケーション自体がセキュリティイベントの影響を受けている場合でも、潜在的な露出や改ざんからデータを保護することができます。

このサービスでは、以下のベストプラクティスを検討してください。
+ 「[AWS Encryption SDKのベストプラクティス](https://docs.aws.amazon.com/encryption-sdk/latest/developer-guide/best-practices.html)」に記載されているすべての推奨事項を順守してください。
+ データキーの保護に役立つラップキーを 1 つ以上選択します。詳細については、「[ラップキーの選択](https://docs.aws.amazon.com/encryption-sdk/latest/developer-guide/configure.html#config-keys)」を参照してください。
+ `KeyId`** **パラメータを [ReEncrypt](https://docs.aws.amazon.com/cli/latest/reference/kms/re-encrypt.html) オペレーションに渡し、信頼できない KMS キーの使用を防止します。詳細については、[「クライアント側の暗号化の改善: 明示的な KeyIds とキーコミットメント](https://aws.amazon.com/blogs/security/improved-client-side-encryption-explicit-keyids-and-key-commitment/) (AWS ブログ記事）」を参照してください。
+  AWS Encryption SDK で を使用する場合は AWS KMS、ローカル`KeyId`フィルタリングを使用します。詳細については、[「クライアント側の暗号化の改善: 明示的な KeyIds とキーコミットメント](https://aws.amazon.com/blogs/security/improved-client-side-encryption-explicit-keyids-and-key-commitment/) (AWS ブログ記事）」を参照してください。
+ 大量のトラフィックで暗号化または復号が必要なアプリケーション、またはアカウントが AWS KMS [リクエストクォータ](https://docs.aws.amazon.com/kms/latest/developerguide/requests-per-second.html)を超えている場合は、 [のデータキーキャッシュ](https://docs.aws.amazon.com/encryption-sdk/latest/developer-guide/data-key-caching.html)機能を使用できます AWS Encryption SDK。データキーキャッシュに関しては、以下のベストプラクティスに注意してください。
  + [キャッシュセキュリティのしきい値](https://docs.aws.amazon.com/encryption-sdk/latest/developer-guide/thresholds.html)を設定し、各キャッシュデータキーの使用期間および各データキーで保護されるデータ量を制限します。これらのしきい値を設定する際の推奨事項については、「[キャッシュセキュリティのしきい値の設定](https://docs.aws.amazon.com/encryption-sdk/latest/developer-guide/thresholds.html)」を参照してください。
  + ローカルキャッシュは、特定のアプリケーションユースケースのパフォーマンスを向上させるため、データキーの数を必要最小限に設定してください。ローカルキャッシュの制限を設定する手順と例については、「[データキーキャッシュの使用: ステップバイステップ](https://docs.aws.amazon.com/encryption-sdk/latest/developer-guide/implement-caching.html)」を参照してください。

  詳細については、[AWS Encryption SDK「: データキーキャッシュがアプリケーションに適しているかどうかを判断する方法](https://aws.amazon.com/blogs/security/aws-encryption-sdk-how-to-decide-if-data-key-caching-is-right-for-your-application/)」(AWS ブログ記事) を参照してください。