Re-reading stored backup data and proving, byte by byte, that it is still intact.
Verification is the process a backup engine uses to re-read stored data and prove it has not been corrupted, truncated, or silently altered since it was written.
Storage is not a sealed vault. Drives develop bad sectors, object stores occasionally return partial reads, network transfers get truncated, and once in a rare while a cosmic ray really does flip a bit. A backup you have never read back is a backup you do not actually have — you have a receipt for one. Verification closes that gap by pulling chunks back out of the repository and comparing what you get against what should be there.
Verification is the process; a checksum is the tool it uses. Every chunk written to the repository is hashed at the moment it is written, and that hash is stored alongside the chunk’s address. Verification re-hashes the stored chunk and compares. If the hashes match, the chunk is bit-for-bit intact. If they do not, the chunk is corrupt and the engine can flag it, pull a healthy copy from another location, or refuse to mark the snapshot as healthy.
In macup, verification runs automatically in the background — a rolling sample of chunks is re-read and re-hashed after every backup, with a full verification pass on a slower cadence. The results surface in the status sidebar so you can tell at a glance whether your last thousand snapshots are still provably intact.