Implement encryption scheme versioning and auto-migration #15

Closed
opened 2026-02-14 11:34:32 +00:00 by Skipper · 1 comment
Owner

Implement versioned encryption and automatic re-encryption on unseal, as described in ARCHITECTURE.md section 4.2.

The schema_version column exists on aead_encrypted but no migration logic is implemented.

Requirements:

  • Define encryption scheme versions (starting with v1: ChaCha20-Poly1305)
  • On unseal, scan aead_encrypted for entries with schema_version < current
  • Re-encrypt outdated entries with the current scheme
  • Ensure re-encryption is atomic (no partial state on failure)
  • Support adding new encryption schemes in the future without data loss
Implement versioned encryption and automatic re-encryption on unseal, as described in ARCHITECTURE.md section 4.2. The `schema_version` column exists on `aead_encrypted` but no migration logic is implemented. **Requirements:** - Define encryption scheme versions (starting with v1: ChaCha20-Poly1305) - On unseal, scan `aead_encrypted` for entries with `schema_version < current` - Re-encrypt outdated entries with the current scheme - Ensure re-encryption is atomic (no partial state on failure) - Support adding new encryption schemes in the future without data loss
Skipper added the
Kind
Feature
label 2026-02-14 11:34:32 +00:00
Skipper added the
Difficulty
Medium
2
Priority
Medium
3
labels 2026-02-14 11:44:17 +00:00
Skipper added the
Status
Abandoned
3
label 2026-02-16 21:32:31 +00:00
Author
Owner

Currently abandoned as no migration is required

Currently abandoned as no migration is required
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: MarketTakers/arbiter#15