

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Perlindungan Integritas Data untuk Amazon S3
<a name="feature-dataintegrity"></a>

**catatan**  
Untuk bantuan dalam memahami tata letak halaman pengaturan, atau dalam menafsirkan tabel **Support by AWS SDKs and tools** berikut, lihat[Memahami halaman pengaturan panduan ini](settings-reference.md#settingsPages).

Untuk beberapa waktu, AWS SDKs telah mendukung pemeriksaan integritas data saat mengunggah data ke atau mengunduh data dari Amazon Simple Storage Service. Sebelumnya, pemeriksaan ini adalah opt-in. Sekarang, kami telah mengaktifkan pemeriksaan ini secara default, menggunakan algoritma berbasis CRC seperti CRC32 atau NVME. CRC64 Meskipun setiap SDK atau alat memiliki algoritma default, Anda dapat memilih algoritma yang berbeda. Anda juga dapat terus menyediakan checksum yang telah dihitung sebelumnya secara manual untuk diunggah jika Anda mau. Perilaku konsisten di seluruh unggahan, unggahan multibagian, unduhan, dan mode enkripsi menyederhanakan pemeriksaan integritas sisi klien. 

 Versi terbaru dari kami AWS SDKs dan AWS CLI secara otomatis menghitung [checksum berbasis pemeriksaan redundansi siklik (CRC)](https://en.wikipedia.org/wiki/Cyclic_redundancy_check) untuk setiap unggahan dan mengirimkannya ke Amazon S3. Amazon S3 secara independen menghitung checksum di sisi server dan memvalidasinya terhadap nilai yang diberikan sebelum menyimpan objek dan checksumnya secara tahan lama dalam metadata objek. Dengan menyimpan checksum dalam metadata di samping objek, ketika objek diunduh, checksum yang sama dapat secara otomatis dikembalikan dan digunakan untuk memvalidasi unduhan juga. Anda juga dapat memverifikasi checksum yang disimpan dalam metadata objek kapan saja. 

 *Untuk mempelajari lebih lanjut tentang operasi checksum, unggahan multibagian, atau daftar algoritme checksum yang didukung, lihat [Memeriksa integritas objek di Amazon S3 di](https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html) Panduan Pengguna Layanan Penyimpanan Sederhana Amazon.* 

 **Unggahan multipart:**

Amazon S3 juga memberi pengembang checksum objek lengkap yang konsisten di seluruh unggahan satu bagian dan multibagian. 

Saat mengunggah file di beberapa bagian, SDKs menghitung checksum untuk setiap bagian. Amazon S3 menggunakan checksum ini untuk memverifikasi integritas setiap bagian melalui API. `UploadPart` Selain itu, Amazon S3 memvalidasi seluruh ukuran file dan checksum saat Anda memanggil API. `CompleteMultipartUpload` 

Jika SDK Anda memiliki Manajer Transfer Amazon S3 untuk membantu unggahan multibagian, checksum akan divalidasi untuk komponen menggunakan algoritme default khusus SDK yang ditemukan dalam tabel. [Support oleh AWS SDKs dan alat](#dataintegrity-sdk-compat) Anda dapat ikut serta ke checksum objek lengkap dengan mengatur pengaturan `checksum_type` ke `FULL_OBJECT` atau dengan memilih untuk menggunakan algoritma CRC64 NVME.

**Jika Anda menggunakan versi SDK yang lebih lama atau AWS CLI:** 

Jika aplikasi Anda menggunakan versi SDK atau alat sebelum Desember 2024, Amazon S3 masih menghitung CRC64 checksum NVME pada objek baru dan menyimpannya di metadata objek untuk referensi future. Anda nantinya dapat membandingkan CRC yang disimpan dengan CRC yang dihitung di sisi Anda dan memverifikasi transmisi jaringan sudah benar. Selain itu, Anda masih dapat memperluas perlindungan integritas secara manual dengan menyediakan checksum yang telah dihitung sebelumnya dengan [https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html)permintaan [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html)atau Anda, yang merupakan teknik standar untuk menangani ini dalam versi yang lebih lama. 



Konfigurasikan fungsi ini dengan menggunakan yang berikut ini:

**`request_checksum_calculation`- Pengaturan AWS `config` file bersama`AWS_REQUEST_CHECKSUM_CALCULATION`- variabel lingkungan`aws.requestChecksumCalculation`- Properti sistem JVM: hanya Java/Kotlin **  
Secara default, pengguna memilih untuk menghitung checksum permintaan saat mengirim permintaan. Pengguna dapat memilih salah satu [algoritma checksum yang tersedia](https://docs.aws.amazon.com/AmazonS3/latest/API/API_Checksum.html) sebagai bagian dari membangun permintaan. Jika tidak, algoritma default khusus SDK digunakan. Lihat [Support oleh AWS SDKs dan alat](#dataintegrity-sdk-compat) tabel untuk algoritme default untuk setiap SDK atau alat.  
**Nilai default:** `WHEN_SUPPORTED`  
**Nilai yang valid:**  
+ **`WHEN_SUPPORTED`**— Validasi Checksum dilakukan pada semua muatan permintaan saat didukung oleh operasi API, seperti transfer data ke Amazon S3.
+ **`WHEN_REQUIRED`**— Validasi Checksum dilakukan hanya bila diperlukan oleh operasi API.

**`response_checksum_validation`- Pengaturan AWS `config` file bersama`AWS_RESPONSE_CHECKSUM_VALIDATION`- variabel lingkungan`aws.responseChecksumValidation`- Properti sistem JVM: hanya Java/Kotlin **  
Secara default, pengguna ikut serta dalam validasi checksum respons saat mengirim permintaan. Checksum dihitung untuk muatan respons dan dibandingkan dengan header respons checksum. Jika validasi checksum gagal, kesalahan akan muncul ke pengguna saat payload dibaca.  
 Header respons checksum juga menunjukkan algoritma untuk checksum. Klien Amazon S3 mencoba memvalidasi checksum respons untuk semua operasi API Amazon S3 yang mendukung checksum. Namun, jika SDK belum menerapkan algoritma checksum yang ditentukan maka validasi ini dilewati.   
**Nilai default:** `WHEN_SUPPORTED`  
**Nilai yang valid:**  
+ **`WHEN_SUPPORTED`**— Validasi Checksum dilakukan pada semua muatan respons saat didukung oleh operasi API, seperti transfer data ke Amazon S3.
+ **`WHEN_REQUIRED`**— Validasi Checksum dilakukan hanya ketika didukung oleh operasi API dan pemanggil telah secara eksplisit mengaktifkan checksum untuk operasi. Misalnya, ketika `GetObject` API Amazon S3 dipanggil dan `ChecksumMode` parameter disetel ke diaktifkan.

## Support oleh AWS SDKs dan alat
<a name="dataintegrity-sdk-compat"></a>

Berikut ini SDKs mendukung fitur dan pengaturan yang dijelaskan dalam topik ini. Setiap pengecualian sebagian dicatat. Setiap pengaturan properti sistem JVM didukung oleh AWS SDK untuk Java dan satu-satunya. AWS SDK untuk Kotlin 

**catatan**  
Dalam tabel berikut, 'CRT' mengacu pada [AWS Pustaka Runtime Umum (CRT)](common-runtime.md) dan mungkin perlu menambahkan ketergantungan tambahan ke proyek Anda.


| SDK | Didukung | Algoritma checksum default | Algoritma checksum yang didukung | Catatan atau informasi lebih lanjut | 
| --- | --- | --- | --- | --- | 
| [AWS CLI v2](https://docs.aws.amazon.com/cli/latest/userguide/) | Ya | CRC64NVME | CRC64NVME,, CRC32 C,, CRC32, xxHash3 SHA1, xxHash64 SHA256, xxHash128, SHA512 | Untuk AWS CLI v1, algoritma default dan algoritma yang didukung akan identik dengan Python (Boto3). | 
| [SDK for C\+\+](https://docs.aws.amazon.com/sdk-for-cpp/latest/developer-guide/) | Ya | CRC64NVME | CRC64NVME,, CRC32 C,, CRC32, xxHash3 SHA1, xxHash64 SHA256, xxHash128, SHA512  |  | 
| [SDK for Go V2 (1.x)](https://docs.aws.amazon.com/sdk-for-go/v2/developer-guide/) | Ya | CRC32 | CRC64NVME,, CRC32 C CRC32,, SHA1 SHA256 |  | 
| [SDK for Go 1.x (V1)](https://docs.aws.amazon.com/sdk-for-go/latest/developer-guide/) | Tidak |  |  |  | 
| [SDK for Java 2.x](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/) | Ya | CRC32 | CRC32, CRC32 C, SHA1, SHA256<br />**Hanya melalui CRT:** CRC64 NVME, xxHash3, xxHash64, xxHash128, SHA512 |  | 
| [SDK for Java 1.x](https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/) | Tidak |  |  |  | 
| [SDK untuk 3.x JavaScript ](https://docs.aws.amazon.com/sdk-for-javascript/latest/developer-guide/) | Ya | CRC32 | CRC32, CRC32 C, SHA1, SHA256 |  | 
| [SDK untuk 2.x JavaScript ](https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/) | Tidak |  |  |  | 
| [SDK para Kotlin](https://docs.aws.amazon.com/sdk-for-kotlin/latest/developer-guide/) | Ya | CRC32 | CRC32, CRC32 C, SHA1, SHA256 |  | 
| [SDK for .NET 4.x](https://docs.aws.amazon.com/sdk-for-net/latest/developer-guide/) | Ya | CRC32 | CRC32, CRC32 C, SHA1, SHA256, SHA512 |  | 
| [SDK for .NET 3.x](https://docs.aws.amazon.com/sdk-for-net/v3/developer-guide/) | Ya | CRC32 | CRC32, CRC32 C, SHA1, SHA256, SHA512 |  | 
| [SDK for PHP 3.x](https://docs.aws.amazon.com/sdk-for-php/latest/developer-guide/) | Ya | CRC32 | CRC32, SHA1, SHA256<br />**Hanya melalui CRT: C** CRC32 | awscrtekstensi diperlukan untuk menggunakan CRC32 C. | 
| [SDK untuk Python (Boto3)](https://boto3.amazonaws.com/v1/documentation/api/latest/guide/quickstart.html) | Ya | CRC32 | CRC32, SHA1, SHA256<br />**Melalui CRT saja:** CRC32 C, CRC64 NVME, xxHash3, XxHash64, xxHash128, SHA512 |  | 
| [SDK for Ruby 3.x](https://docs.aws.amazon.com/sdk-for-ruby/latest/developer-guide/) | Ya | CRC32 | CRC32, SHA1, SHA256<br />**Hanya melalui CRT:** CRC64 NVME, C CRC32 |  | 
| [SDK untuk Rust](https://docs.aws.amazon.com/sdk-for-rust/latest/dg/) | Ya | CRC32 | CRC64NVME,, CRC32 C CRC32,, SHA1 SHA256 |  | 
| [SDK para Swift](https://docs.aws.amazon.com/sdk-for-swift/latest/developer-guide/) | Ya | CRC32 | CRC64NVME,, CRC32 C CRC32,, SHA1 SHA256 | Ketergantungan CRT diperlukan untuk semua algoritma. | 
| [Alat untuk PowerShell V5](https://docs.aws.amazon.com/powershell/latest/userguide/) | Ya | CRC32 | CRC32, CRC32 C,, SHA1 SHA256, XxHash3, SHA512 |  | 
| [Alat untuk PowerShell V4](https://docs.aws.amazon.com/powershell/v4/userguide/) | Ya | CRC32 | CRC32, CRC32 C, SHA1, SHA256, SHA512 |  | 