An enrolling node asks again while the mesh cannot answer, and proves it holds its key (issue 083) #19

Merged
jschoubben merged 3 commits from multiple-fixes into main 2026-09-22 12:42:57 +00:00
Owner
  • EnrolReply.TryAgain: while the mesh says it cannot answer (its store restarting), the host asks again with the same request — the same keys — every few seconds for up to two minutes, then says to wait that long and run enrol again, and to issue a new token if it is refused. answered() decides, tested.
  • EnrolRequest.Proof: the host signs EnrolProof(secret, public, overlay, sealing, serving) with the identity key it just generated. The mesh requires it before letting an enrolment finish on a token that key already spent, so a leaked token plus a public key cannot replay it. The signed bytes have a known answer repeated in mesh-controller's test.
  • The installer no longer says a token "has now been spent" when it may not have been.

Suite green. Proof: mesh-lab store-window bed green. Reviewed independently three times. Companion MRs on multiple-fixes: mesh-controller, mesh-lab, hq.

- `EnrolReply.TryAgain`: while the mesh says it cannot answer (its store restarting), the host asks again with the same request — the same keys — every few seconds for up to two minutes, then says to wait that long and run enrol again, and to issue a new token if it is refused. `answered()` decides, tested. - `EnrolRequest.Proof`: the host signs `EnrolProof(secret, public, overlay, sealing, serving)` with the identity key it just generated. The mesh requires it before letting an enrolment finish on a token that key already spent, so a leaked token plus a public key cannot replay it. The signed bytes have a known answer repeated in mesh-controller's test. - The installer no longer says a token "has now been spent" when it may not have been. Suite green. Proof: mesh-lab store-window bed green. Reviewed independently three times. Companion MRs on `multiple-fixes`: mesh-controller, mesh-lab, hq.
jschoubben added 3 commits 2026-09-22 12:42:49 +00:00
jschoubben merged commit 4fc0330937 into main 2026-09-22 12:42:57 +00:00
jschoubben deleted branch multiple-fixes 2026-09-22 12:42:57 +00:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: novox/mesh-host#19