soft-hash analysis §9.2: pin Phase 1 reference impl landing under #000035
#000035 Phase 1 (φ_PRG reference implementation) landed 2026-05-10: HMAC-SHA-512 counter-mode KDF at arborist/substrate/anchor_prg.py, 20 tests, 10 KAT vectors, PHI_PRG_VERSION export. §9.2 of the soft-hash analysis already recorded the design decision ("use HMAC-SHA-512(seed, digest ‖ counter)") but did not yet point at the landed reference. This commit closes that gap by linking §9.2 to the impl/tests/KAT artifacts and updating §11 status block to reflect the new state — decision pinned + Phase 1 landed, awaiting v7 plastic-training spec for the §9.10 amendment landing (Phase 2, exogenous gate). Doc-only update; no schema, no governance hash, no code change.
This commit is contained in:
parent
018a2a163b
commit
0b038f1e36
1 changed files with 26 additions and 4 deletions
|
|
@ -394,6 +394,25 @@ The reduction in §4 leaves three loose threads:
|
|||
dim_h floats. Keeps the dependency surface (already on SHA-256)
|
||||
tight.
|
||||
|
||||
**Phase 1 landed 2026-05-10** under #000035: reference
|
||||
implementation at `arborist/substrate/anchor_prg.py`
|
||||
(HMAC-SHA-512 counter-mode KDF, pure stdlib — `hashlib` +
|
||||
`hmac`, no third-party crypto dep). 20 tests in
|
||||
`tests/test_anchor_prg.py` covering determinism, range
|
||||
invariants, chi² uniformity, dim_h boundary (1, 16384),
|
||||
seed-bit-flip and hash-bit-flip avalanche, input validation,
|
||||
module-export shape, and KAT regression. 10 pinned KAT
|
||||
vectors at `bench/fixtures/phi-prg/known-answer-tests.jsonl`
|
||||
covering block-boundary cases (dim_h=16 = one HMAC block;
|
||||
dim_h=17 = two blocks with truncation), one-bit-flip
|
||||
variants, and a 4096-element counter-rollover stress sample.
|
||||
Module exports `PHI_PRG_VERSION = "phi-prg-v1-hmac-sha512"`
|
||||
so future algorithm rotation is detectable at the call site
|
||||
without string-comparing module paths. Spec amendment text
|
||||
drafted at #000035 §3.4; Phase 2 lands it into a v7
|
||||
plastic-training spec when one gains an active deployment
|
||||
target.
|
||||
|
||||
3. **T3 per-window budget formal bound.** ~~§6 lists "bounded by
|
||||
per-window budget" without giving the bound.~~ **Closed
|
||||
2026-05-10**: the explicit closed-form bound now lives at
|
||||
|
|
@ -424,10 +443,13 @@ The reduction in §4 leaves three loose threads:
|
|||
|
||||
**Open questions:** §9.1 (Hessian alignment under `φ_linear`,
|
||||
parks on v7 deployment per #000034 Phase 1b),
|
||||
§9.2 (PRG cryptographic strength for `φ_PRG`, awaits v7 §9.10
|
||||
spec amendment per #000035 Phase 2). §9.3 closed 2026-05-10
|
||||
via the T3 per-window bound at
|
||||
``docs/soft-hash-channel-t3-bound.md`` (under #000036).
|
||||
§9.2 (PRG cryptographic strength for `φ_PRG`: decision pinned +
|
||||
Phase 1 reference implementation landed 2026-05-10 per #000035 —
|
||||
HMAC-SHA-512 with 32-byte committed seed, KAT-pinned; awaits v7
|
||||
§9.10 spec amendment when v7 plastic-training spec gains an
|
||||
active deployment target). §9.3 closed 2026-05-10 via the T3
|
||||
per-window bound at ``docs/soft-hash-channel-t3-bound.md``
|
||||
(under #000036).
|
||||
|
||||
**Closed:** §4 reduction shows T1/T2 are bounded by SHA-256 partial-
|
||||
preimage hardness under any `φ` independent of parameter geometry.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue