Chain-of-custody integrity-manifest export
Export a study with a SHA-256 integrity manifest and audit snapshot so recipients can detect corruption or modification.
Problem
For regulatory or legal purposes, you want to export a DICOM file alongside an integrity manifest that lets a recipient detect whether the file (or its audit snapshot) was corrupted or modified after export. The manifest is a SHA-256 hash stored in a detached sidecar (.dcm.sig) that can be independently re-checked.
Scope. This is a corruption-detection control, not a cryptographic signature. The manifest is unkeyed, so anyone who edits the
.dcmcan recompute the hash and rewrite the sidecar; it does not prove authorship and is not tamper-proof against a deliberate adversary. Cryptographic non-repudiation via asymmetric signatures is the planned extension (use case 10.5).
Steps
- Open the DICOM file — click Open files… (⌘O) and load the file to export.
- Export with integrity manifest — click the Export button in the top bar, then select Export with Integrity Manifest….
- Download outputs — the system produces two files:
filename_export.dcm(the exported DICOM file) andfilename_export.dcm.sig(the detached integrity manifest sidecar). - Verify integrity later — open the Verify Integrity Manifest modal (⌘P, then “Verify integrity manifest…”). Upload the
.dcmfile and its.dcm.sigsidecar. Click Verify — the modal shows “Integrity verified” in green. - Test corruption detection — modify even a single byte of the
.dcmfile. Re-verify: the modal shows “Integrity check FAILED” in red, proving the hash detects any alteration. - Verification scope — the manifest hashes the entire DICOM file and its audit snapshot. Any change to either — no matter how small — causes verification to fail.
Expected Result
- The integrity-manifest export produces two files: the DICOM file and its
.dcm.sigsidecar. - Verification of an unmodified file shows “Integrity verified” (green).
- Verification of a corrupted/modified file (even 1 byte changed, or an edited audit snapshot) shows “Integrity check FAILED” (red).
- Both files must be uploaded together in the Verify modal for validation.
- The hash-based manifest provides corruption-detection assurance; adversarial tamper-evidence is the planned asymmetric-signing extension (10.5).