Checksum Support Reference¶
This page summarizes the end-to-end data-integrity guarantees MSC provides for each supported storage backend. Integrity here means that a checksum is computed on one side of the wire and verified on the other:
On upload, the client computes a checksum, sends it alongside the object, and the server rejects the request if the received bytes do not match.
On download, the server returns a checksum with the object, and the client rejects the response if the bytes it read do not match.
Summary¶
Provider |
Upload integrity |
Download integrity |
Notes |
|---|---|---|---|
|
Yes |
Yes |
Default upload algorithm is |
|
Yes |
No |
Default upload algorithm is |
|
Yes |
Yes |
SDK |
|
No |
No |
Flexible checksum support is disabled in MSC because GCS’s S3-compatible API does not support S3-style checksum headers. |
|
No |
No |
No transfer checksum controls in the AIStore Python SDK. |
|
No |
No |
AIStore S3 silently ignores checksum headers and does not validate or persist them. |
|
Yes |
Yes |
|
|
No |
No |
SDK supports opt-in checksum parameters, but MSC does not pass them. |
|
Yes |
Partial (size check) |
Uploads use |
|
N/A |
N/A |
Integrity is delegated to the operating system / filesystem. |
Rust client ( |
Partial |
No |
Upload only; |
How to Enable¶
s3¶
Enabled by default. See S3StorageProvider for supported checksum algorithms.
profiles:
my-aws-s3:
storage_provider:
type: s3
options:
base_path: my-bucket
region_name: us-east-1
checksum_algorithm: SHA256
s8k¶
Enabled by default. See S8KStorageProvider for supported checksum algorithms.
profiles:
my-swiftstack:
storage_provider:
type: s8k
options:
base_path: my-bucket
endpoint_url: https://swiftstack.example.com
checksum_algorithm: SHA256
gcs¶
Enabled by default. There is no MSC checksum configuration option for the native GCS provider.
azure¶
Set the
AzureBlobStorageProvider
validate_content option to true. Keep download ranges and
io_chunksize at 4 MiB or less.
profiles:
my-azure:
storage_provider:
type: azure
options:
base_path: my-container
endpoint_url: https://my-storage-account.blob.core.windows.net
validate_content: true
io_chunksize: 4194304
rust client¶
For the Rust client on s3 and s8k, set
rust_client.checksum_algorithm: SHA256.
profiles:
my-aws-s3-rust:
storage_provider:
type: s3
options:
base_path: my-bucket
region_name: us-east-1
rust_client:
checksum_algorithm: SHA256