halkyon/packages/halkyon_base_server/test
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Tizian 「ティツィアーン」 92d2df4695
fix(auth)!: the owner's proof is bound to what it approves
A signed-in change's proof covered only its challenge and the instance,
so whoever could read and change the traffic (an http:// instance, a
TLS-intercepting proxy, TLS broken: what SRP is for) could keep the owner's
proof and code and swap in a new password, a recovery phrase or an
authenticator of their own, or turn a proof made for new recovery codes
into a deletion (the full reading's device medium 1).

SRP's identity now also carries what the proof is for and the digest of
what it sets, which the register works out from the call that brings it,
never from the device: a new password (its digest), a new phrase (its
wrapping and proof key), confirming the first or another authenticator and
removing one (its ID), new recovery codes, calling resets off, deleting;
the sessionless reset of an authenticator its own, apart from signing in.
A proof made for one of them counts for no other. Tests made for each
refusal fail with the binding taken out on both sides.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
2026-10-23 14:12:54 +02:00
..
integration fix(auth)!: the owner's proof is bound to what it approves 2026-10-23 14:12:54 +02:00
unit fix(auth)!: proofs are bound to the instance's whole base URL 2026-10-23 14:12:54 +02:00