

# 체크섬 계산
<a name="batch-ops-compute-checksums"></a>

**체크섬 계산** 작업과 함께 S3 Batch Operations를 사용하여 Amazon S3 객체에 대한 저장 시 체크섬 계산을 수행할 수 있습니다. **체크섬 계산** 작업은 저장된 데이터의 객체를 다운로드하거나 복원하지 않고도 데이터 무결성을 검증하는 데 사용할 수 있는 객체 체크섬을 계산합니다. **체크섬 계산** 작업을 사용하여 지원되는 모든 체크섬 알고리즘에 대해 복합 및 전체 객체 체크섬 유형 모두에 대한 체크섬을 계산할 수 있습니다.

**체크섬 계산** 작업을 사용하면 단일 작업 요청을 통해 수십억 개의 객체를 처리할 수 있습니다. 이 배치 작업은 객체 크기에 관계없이 모든 S3 스토리지 클래스와 호환됩니다. **체크섬 계산** 작업을 만들려면 Amazon S3 콘솔, AWS Command Line Interface(AWS CLI), AWS SDK 또는 Amazon S3 REST API를 사용합니다.

[서버 액세스 로깅을 활성화](https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerLogs.html)하면 **체크섬 계산** 작업에 대한 로그 항목을 수신할 수도 있습니다. **체크섬 계산** 작업은 체크섬 계산을 완료한 후 별도의 서버 액세스 로그 이벤트를 내보냅니다. 이러한 로그 항목은 표준 [S3 서버 액세스 로깅 형식](https://docs.aws.amazon.com/AmazonS3/latest/userguide/LogFormat.html)을 따르며 작업 유형, 타임스탬프, [오류 코드](https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList) 및 관련 **체크섬 계산** 작업 ID와 같은 필드를 포함합니다. 이 로깅은 객체에 대해 수행된 체크섬 확인 활동의 감사 추적을 제공하여 데이터 무결성 작업을 추적하고 확인하는 데 도움이 됩니다.

**참고**  
**체크섬 계산** 작업은 고객 제공 암호화 키(SSE-C) 암호화 객체를 사용한 서버 측 암호화를 지원하지 않습니다. 그러나 **체크섬 계산** 작업은 [S3 관리형 키를 사용한 서버 측 암호화(SSE-S3)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html), AWS Key Management Service를 사용한 서버 측 암호화(DSSE-KMS)를 사용하여 암호화된 객체에 사용할 수 있습니다. **체크섬 계산** 작업을 수행할 수 있는 [적절한 AWS KMS 권한을 부여](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html#require-sse-kms)했는지 확인합니다.

Batch Operations를 사용하여 **체크섬 계산** 작업을 시작하려면 다음 중 하나를 수행할 수 있습니다.
+ 새 매니페스트 파일을 수동으로 만듭니다.
+ 기존 매니페스트를 사용합니다.
+ [작업을 만들 때 지정](https://docs.aws.amazon.com/AmazonS3/latest/userguide/batch-ops-create-job.html#specify-batchjob-manifest)한 객체 필터 기준에 따라 자동으로 매니페스트를 생성하도록 Batch Operations에 지시합니다.

그런 다음 **체크섬 계산** 작업 요청을 제출하고 상태를 모니터링합니다. **체크섬 계산** 작업이 완료되면 지정된 대상 버킷에서 완료 보고서를 자동으로 수신합니다. 이 완료 보고서에는 버킷의 모든 객체에 대한 체크섬 정보가 포함되어 있으므로 데이터 일관성을 확인할 수 있습니다. 이 보고서를 사용하여 작업을 조사하는 방법에 대한 자세한 내용은 [작업 상태 및 완료 보고서 추적](https://docs.aws.amazon.com/AmazonS3/latest/userguide/batch-ops-job-status.html)을 참조하세요.

**체크섬 계산** 기능과 콘솔에서 **체크섬 계산**을 사용하는 방법에 대한 자세한 내용은 [Amazon S3의 저장 데이터에 대한 객체 무결성 확인](checking-object-integrity-at-rest.md) 섹션을 참조하세요. **체크섬 계산**에 REST 요청을 보내는 방법에 대한 자세한 내용은 *Amazon S3 API 참조*의 [https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DescribeJob.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DescribeJob.html) 및 [https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateJob.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateJob.html) 섹션을 참조하세요.

다음 섹션에서는 S3 Batch Operations와 함께 **체크섬 계산**을 사용하여 시작할 수 있는 방법에 대해 설명합니다.

**Topics**
+ [S3 Batch Operations **체크섬 계산** 고려 사항](#batch-ops-compute-checksum-considerations)
+ [S3 Batch Operations 완료 보고서](#batch-ops-compute-checksum-completion-report)

## S3 Batch Operations **체크섬 계산** 고려 사항
<a name="batch-ops-compute-checksum-considerations"></a>

**체크섬 계산** 작업을 사용하기 전에 다음 고려 사항 목록을 검토합니다.
+ 매니페스트에 버전 ID 필드가 포함된 경우, 매니페스트 내 모든 객체에 대한 버전 ID를 제공해야 합니다. 버전 ID를 지정하지 않으면 **체크섬 계산** 요청이 객체의 최신 버전에서 작업을 수행합니다.
+ [서버 액세스 로그](https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerLogs.html)에서 **체크섬 계산** 작업 세부 정보를 수신하려면 먼저 소스 버킷에서 [서버 액세스 로깅을 활성화](https://docs.aws.amazon.com/AmazonS3/latest/userguide/enable-server-access-logging.html)하고 로그를 저장할 대상 버킷을 지정해야 합니다. 대상 버킷은 소스 버킷과 동일한 AWS 리전 및 AWS 계정에 있어야 합니다. 서버 액세스 로깅을 구성한 후 **체크섬 계산** 작업은 작업 유형, HTTP 상태 코드, [S3 오류 코드](https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList), 타임스탬프 및 연결된 **체크섬 계산** 작업 ID와 같은 표준 필드를 포함하는 [로그 레코드](https://docs.aws.amazon.com/AmazonS3/latest/userguide/LogFormat.html#log-record-fields)를 생성합니다. **체크섬 계산** 작업은 비동기적으로 실행됩니다. 따라서 [로그 항목](https://docs.aws.amazon.com/AmazonS3/latest/userguide/LogFormat.html#log-record-fields)은 로그 항목에 요청 ID가 아닌 **체크섬 계산** 작업 ID를 사용합니다.
+ 저장된 객체의 경우 보고서 생성에 최대 몇 시간이 걸릴 수 있습니다.
+ 다음 S3 Glacier 스토리지 클래스의 경우 **체크섬 계산** 작업을 완료하는 데 최대 1주일이 걸릴 수 있습니다.
  + S3 Glacier Flexible Retrieval
  + S3 Glacier Deep Archive
+ 완료 보고서를 작성할 버킷의 경우 **체크섬 계산** 작업을 실행할 때 [버킷 소유자 조건](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-owner-condition.html#bucket-owner-condition-when-to-use)을 사용해야 합니다. 제출된 작업 요청에 대해 실제 버킷 소유자가 예상 버킷 소유자와 일치하지 않으면 요청이 실패합니다. 버킷 소유자 조건을 지원하지 않는 S3 작업 목록은 [규제 및 제한](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-owner-condition.html#bucket-owner-condition-restrictions-limitations)을 참조하세요.

## S3 Batch Operations 완료 보고서
<a name="batch-ops-compute-checksum-completion-report"></a>

**체크섬 계산** 작업을 만들 때 S3 Batch Operations 완료 보고서를 요청할 수 있습니다. 이 CSV 파일에는 객체, 성공 또는 실패 코드, 출력 및 설명이 표시됩니다. 작업 추적 및 완료 보고서에 대한 자세한 내용은 [완료 보고서](https://docs.aws.amazon.com/AmazonS3/latest/userguide/batch-ops-job-status.html#batch-ops-completion-report)를 참조하세요.