{
  "slug": "full-object-checksum",
  "term": "Full-object checksum",
  "aliases": [
    "Full object checksum",
    "FULL_OBJECT checksum"
  ],
  "definition": "A full-object checksum is an integrity value computed for an object's complete ordered byte sequence rather than for a list of its part checksums.",
  "note": "Amazon S3 calls this scope FULL_OBJECT, including for supported multipart uploads. S3 can derive a full-object CRC from part checksums by linearization without changing its byte-stream scope. [aws-s3-upload-checksums]",
  "status": "shipping",
  "advantages": [
    {
      "text": "For a fixed algorithm and unchanged object bytes, full-object verification does not require retaining the original multipart boundaries.",
      "citationIds": [
        "aws-s3-upload-checksums"
      ]
    }
  ],
  "limitations": [
    {
      "text": "Compare like with like: algorithm, digest encoding, object version and covered bytes must agree; a whole-object value does not directly validate an arbitrary downloaded range.",
      "citationIds": [
        "aws-s3-get-object",
        "hesela-checksum-scope"
      ]
    },
    {
      "text": "Retrieving checksum metadata is not proof that a client validated the download: SDK validation depends on support and settings, and unsupported algorithms can be skipped.",
      "citationIds": [
        "aws-sdk-data-integrity"
      ]
    },
    {
      "text": "Algorithm support depends on the operation: S3 Batch Operations can calculate full-object SHA-256 at rest, unlike its multipart-upload SHA-256 mode.",
      "citationIds": [
        "aws-s3-at-rest"
      ]
    }
  ],
  "related": [
    "checksum",
    "composite-checksum",
    "multipart-upload",
    "entity-tag",
    "object-storage",
    "end-to-end-data-protection"
  ],
  "supersedes": [],
  "supersededBy": [],
  "firstSeen": null,
  "lastSeen": null,
  "citations": [
    {
      "id": "aws-s3-upload-checksums",
      "title": "Amazon S3: Checking object integrity for data uploads, full-object and composite checksum types",
      "url": "https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity-upload.html",
      "accessed": "2026-10-16"
    },
    {
      "id": "aws-s3-get-object",
      "title": "Amazon S3 API Reference: GetObject, checksum mode, checksum type and requested object version",
      "url": "https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html",
      "accessed": "2026-10-16"
    },
    {
      "id": "aws-sdk-data-integrity",
      "title": "AWS SDKs and Tools Reference Guide: Data Integrity Protections for Amazon S3, response checksum validation",
      "url": "https://docs.aws.amazon.com/sdkref/latest/guide/feature-dataintegrity.html",
      "accessed": "2026-10-16"
    },
    {
      "id": "hesela-checksum-scope",
      "title": "Hesela: Object ETags, full-object checksum scope and download verification",
      "url": "https://hesela.com/analyses/object-etags-checksums-conditional-writes/#checksum-scope",
      "accessed": "2026-10-16"
    },
    {
      "id": "aws-s3-at-rest",
      "title": "Amazon S3: Checking object integrity for data at rest, supported algorithms",
      "url": "https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity-at-rest.html",
      "accessed": "2026-10-16"
    }
  ],
  "updated": "2026-10-16"
}
