

# Amazon S3 でのオブジェクトの整合性のチェック
<a name="checking-object-integrity"></a>

Amazon S3 は、オブジェクトのストレージライフサイクル全体でさまざまなデータ保護機能を提供します。Amazon S3 では、チェックサム値を使用して、アップロードまたはダウンロードするデータの整合性を検証できます。さらに、S3 に保存するオブジェクトについて、別のチェックサム値を計算するようにリクエストすることもできます。

データをアップロード、コピー、または管理する場合は、サポートされているいくつかのチェックサムアルゴリズムから選択できます。
+ CRC-64/NVME (`CRC64NVME`)
**注記**  
`CRC64NVME` チェックサムアルゴリズムは、チェックサム計算に使用されるデフォルトのチェックサムアルゴリズムです。
+ CRC-32 (`CRC32`)
+ CRC-32C (`CRC32C`)
+ SHA-1 (`SHA1`)
+ SHA-256 (`SHA256`)
+ MD5 (`MD5`)
**注記**  
マルチパートアップロードの場合、[チェックサムを計算] オペレーションは `MD5` を使用してフルオブジェクトのチェックサム値を提供します。これはアップロード中には使用できません。単一パートアップロードの場合、`content-MD5 header` はオブジェクトの S3 ETag を使用してのみ利用でき、SSE-S3 暗号化を使用する必要があります。

オブジェクトを S3 にアップロードする際に、チェックサムのアルゴリズムの使用法を指定できます。アップロードでは、すべての AWS 所有クライアントでオブジェクトのチェックサムが計算され、アップロードリクエストとともに送信されます。次に、S3 はサーバー側のオブジェクトのチェックサム値を個別に計算し、指定された値で検証してから、オブジェクトとチェックサム値を保存します。単一パートアップロードまたはマルチパートアップロードを実行するときに (マルチパートアップロードにはフルオブジェクトのチェックサムタイプを使用)、これらのチェックサムアルゴリズムに事前計算された値を指定することもできます。複数のオブジェクトで事前計算された値を使用するには、AWS CLI または AWS SDK を使用します。

あるいは、データを復元またはダウンロードすることなく S3 でデータセットを検証する場合は、S3 バッチオペレーションで **[チェックサムを計算]** オペレーションを使用できます。**[チェックサムを計算]** オペレーションを使用すると、1 つのジョブリクエストで数十億のオブジェクトを効率的に検証できます。**[チェックサムを計算]** オペレーションが実行されると、S3 は保管中のオブジェクトのリストのチェックサム値を計算します。ジョブリクエストの最後に、自動的に生成された整合性レポート (完了レポートとも呼ばれます) を受け取ります。これを使用して、データセットがそのまま維持されていることを確認できます。

**Topics**
+ [Amazon S3 でデータアップロードのオブジェクトの整合性をチェックする](checking-object-integrity-upload.md)
+ [Amazon S3 で保管中のデータのオブジェクトの整合性を確認する](checking-object-integrity-at-rest.md)