Skip to content

Add data export/import with encryption #124

@jwaspin

Description

@jwaspin

Summary

Add encrypted data export/import in v2 so users can back up and restore securely.

Requirements

  • Export: serialize current dataset, add minimal metadata (version, created timestamp, compression flag), encrypt, and save as .json.
  • Import: decrypt first, verify AES-GCM auth tag, decompress if flagged, validate schema/version, then load.
  • Provide clear errors for wrong key, corrupted file, or version mismatch.
  • Perform heavy work off the main thread; show a visible progress indicator.

Acceptance Criteria

  • Users can export an encrypted .json backup and fully restore via import.
  • Import rejects files that fail decryption/auth-tag verification.
  • Progress/feedback is shown for long operations; UI remains responsive.
  • Round-trip tests confirm data equivalence after restore.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions