Feature: backup integrity verification (SHA-256 checksums) #15

Open
opened 2026-06-02 20:29:29 +00:00 by jmiller · 1 comment
Owner

Store and verify SHA-256 checksums for backup archives.

Description

After creating a backup, compute and store a SHA-256 hash. Provide a "Verify" button in the admin UI that re-computes the hash and compares.

Requirements

  • SHA-256 computed after ZIP creation
  • Hash stored in backup record (new checksum column)
  • "Verify Integrity" button in backup list/detail
  • Verification result shown to admin
  • Hash included in remote upload metadata
Store and verify SHA-256 checksums for backup archives. ## Description After creating a backup, compute and store a SHA-256 hash. Provide a "Verify" button in the admin UI that re-computes the hash and compares. ## Requirements - [ ] SHA-256 computed after ZIP creation - [ ] Hash stored in backup record (new `checksum` column) - [ ] "Verify Integrity" button in backup list/detail - [ ] Verification result shown to admin - [ ] Hash included in remote upload metadata
jmiller added the type: featurepriority: mediumcomponent: enginestatus: ready labels 2026-06-02 20:29:29 +00:00
Author
Owner

Testing Plan

TC-F2.1: Checksum generation

  1. Run backup
  2. Verify backup record has non-empty checksum field
  3. Manually compute SHA-256 of the archive file
  4. Verify it matches the stored checksum

TC-F2.2: Integrity verification

  1. Click "Verify" on a backup record
  2. Verify success message
  3. Modify the archive file (corrupt it)
  4. Click "Verify" again
  5. Verify failure message with mismatch details

TC-F2.3: Missing file

  1. Delete the archive file from disk
  2. Click "Verify"
  3. Verify appropriate error message
## Testing Plan **TC-F2.1: Checksum generation** 1. Run backup 2. Verify backup record has non-empty checksum field 3. Manually compute SHA-256 of the archive file 4. Verify it matches the stored checksum **TC-F2.2: Integrity verification** 1. Click "Verify" on a backup record 2. Verify success message 3. Modify the archive file (corrupt it) 4. Click "Verify" again 5. Verify failure message with mismatch details **TC-F2.3: Missing file** 1. Delete the archive file from disk 2. Click "Verify" 3. Verify appropriate error message
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: MokoConsulting/MokoJoomBackup#15