feat: add protected enrollment storage development #64
No reviewers
Labels
No labels
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
kaiba/kaiba-provisioning!64
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "codex/protected-enrollment-state"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The inspection system keeps writable state in RAM, so a device enrollment key and staged certificate would disappear on reboot. Add a bounded encrypted credential filesystem and require boot-based enrollment clients to verify the actual protected mount before creating or opening their state.
This PR is stacked on #63 (
codex/device-enrollment-client); review and merge that client PR first.kaiba-enrollment-storagebundle using the existing firmware-HMAC derivation, runtime binding, memory protections and one-use storage journal. Its supported development lifecycle is create → close → restart → reopen → close on a separately prepared 65 MiB partition.Validation: repository fast checks, focused Go race tests, static Go contracts, static bundle checks, a disposable LUKS/ext4 VM with client key/certificate continuity across reboot and failure cases, and all 20 real-service fleet rehearsal scenarios against this client. The VM uses synthetic firmware and real encrypted storage. Required CI runs after publication.
This implements a two-boot development experiment. Normal volume reopening/recovery, isolated real-device development eligibility, authenticated station orchestration and physical execution remain follow-up work. Hardware qualification and production enrollment remain false; no admission rule changes or private device evidence are included.