# Checksums, split and combine

> Hash a file on demand (CRC-32, MD5, SHA-1, SHA-256) with paste-to-verify, export and verify checksum manifests, split a large file into volumes that rejoin.

- Canonical: https://cwdio.com/features/checksums-split-combine/
- Updated: 2026-08-15
- Product: Cwdio File Manager (cwdio) — https://cwdio.com

Sometimes you need to *prove* that a file is what it claims to be — a download against a published hash,
a backup against the original, a set of volumes against the file they came from. cwdio does the hashing
in its host process, streams so a multi-gigabyte file never sits in memory, and reports what it found.

## What it does

- **On-demand checksum in Properties.** <kbd>Alt+Enter</kbd> on a single file shows a Checksum section:
  choose CRC-32, MD5, SHA-1 or SHA-256, click Compute, copy the digest — or paste the expected hash and get
  a ✓ / ✗ verdict on the spot. Works on files inside archives and on SFTP servers, because it hashes through
  the same provider that lists them.
- **Export checksums.** File ▸ Export checksums… hashes the selection (folders recursed) into a manifest —
  `.sfv`, `.md5`, `.sha1` or `.sha256` — with a live *Hashing… N files* line and cancel, then a review step
  before the file is saved.
- **Verify checksums.** File ▸ Verify checksums… on a manifest re-hashes every referenced file and shows a
  verdict: all matched, or per-status counts plus the list of changed and missing files.
- **Split a large file.** File ▸ Split file… writes fixed-size numbered volumes, streaming the source across
  them at byte boundaries. **Combine volumes** detects the whole set from any one part and rejoins it.
- **Verified copies, elsewhere.** The transfer queue can CRC-check every copy as it goes; see
  [Transfers and the queue](/features/transfers-and-queue/).

## How to use it

1. To check a download: select it, <kbd>Alt+Enter</kbd>, pick SHA-256, Compute, paste the line from
   `SHA256SUMS.txt`. Green tick, done. (cwdio's own releases publish exactly such a file.)
2. To fingerprint a folder before archiving it: select it, File ▸ Export checksums…, choose SHA-256, save
   `folder.sha256` beside it. Years later, File ▸ Verify checksums… on that manifest tells you whether every
   file is still intact.
3. To move a 6 GB image over a FAT32 stick: File ▸ Split file…, enter a custom 4000 MB, copy the parts, then
   select `.001` on the other machine and run Combine volumes.

## Details

- Manifests use the conventional `hash *path` layout, with a comment header; SFV carries CRC-32.
- Verify infers the algorithm from the hash width (8, 32, 40 or 64 hex characters), so a renamed manifest
  still works.
- Everything streams and everything can be cancelled from its progress line, except that closing Properties
  during a multi-gigabyte hash lets it finish in the background rather than aborting.

## What it deliberately does not do

- Properties hashes one file. There is no single digest for a folder or a multi-selection — use the
  manifest export, which is the right tool for that.
- Split and combine are local-only; an SFTP source is not split in place.
- Combine has no progress line yet, and always writes beside the volumes.

## Related

- [Transfers and the queue](/features/transfers-and-queue/) — verified copies while the bytes move.
- [Archives](/features/archives/) — hashing works on files inside a ZIP or 7z too.
- [Download](/download/) — where cwdio's own `SHA256SUMS.txt` lives.

## Frequently asked questions

**How do I check a download against its published hash?** Select the file, press Alt+Enter for Properties, pick the digest in the Checksum section (SHA-256 for most releases) and click Compute. Paste the publisher's hash — or a whole line from their manifest — into the field that appears and you get an instant ✓ Match or ✗ No match. The hash is computed in cwdio's host process; only the digest travels to the window.

**Which manifest formats are supported?** Export writes CRC-32 (.sfv), MD5, SHA-1 and SHA-256 manifests in the conventional hash *path form. Verify reads any of them; the algorithm is inferred from the hash width, so a renamed manifest still verifies, and SFV comment lines are skipped. Files are resolved relative to the manifest's own folder.

**Does verify tell me which files changed?** Yes. The report gives exact counts of ok, mismatched, missing and unreadable files and a bounded list of the changed and missing ones, so a corrupted backup names its casualties rather than just failing.

**How does split decide the volume size?** You pick it in the Split dialog — presets from 10 MB up to 4.4 GB, or a custom number of megabytes. Volumes are named name.ext.001, .002 and so on. Combine runs on any one volume, requires the run to be contiguous — a missing middle part fails loudly instead of concatenating a corrupt file — and refuses to overwrite an existing target.
