Commit e7b0131
Threat model and paper draft, adversarially produced - and the IK claim was false
Two documents drafted by a subagent fan-out, two per item, adversarially
looped: drafter -> hostile critic (verify every number against BENCH-netem.md,
every mechanism against the source; the code wins over the docs) -> reviser,
three rounds each; the critics failed every round, which is where the quality
came from. 14 agents, ~1.25M tokens.
docs/THREAT-MODEL.md - Phase 0 of the audit plan, code-verified. Its findings
are the point:
- THE HANDSHAKE IS NOT NOISE IK. core/Handshake.kt has no initiator static and
no responder ephemeral: it is N-pattern-shaped (e, es) hybridized with
ML-KEM. NOTICE and AUDIT-PLAN said IK; both corrected. Consequences the
threat model now states plainly: the initiator is cryptographically
anonymous (anyone with the server's published keys can connect), and
first-flight forward secrecy is bounded by both server statics.
- The ticket key is a concentrated-risk asset: one operator key roots ticket
encryption, retry tokens, AND stateless-reset tokens - compromise yields
recorded-resumed-session keys, off-path connection kills, and validation
bypass at once. An auditor should start there.
- Resumed sessions have no forward secrecy at all (no fresh DH/KEM on the
resumption path); strictly weaker than fresh connects.
- Two stale in-code comments flagged (StatelessReset.kt header-protection and
idle-timeout claims vs the authoritative code).
docs/paper/DRAFT.md - the arXiv cs.NI draft. The abstract is the calibration
the week earned: the mechanism account labelled inferred-not-packet-traced, the
CC comparison hedged at n=3 per arm, the FEC side's own 2.7 s low-rate boundary
reported against itself, 11 [CITE:] placeholders and one [VERIFY] instead of
invented references. Every load-bearing number spot-checked against
BENCH-netem.md after generation.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>1 parent 5cae3f0 commit e7b0131
4 files changed
Lines changed: 282 additions & 98 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
59 | 59 | | |
60 | 60 | | |
61 | 61 | | |
62 | | - | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
63 | 71 | | |
64 | 72 | | |
65 | 73 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
15 | 15 | | |
16 | 16 | | |
17 | 17 | | |
18 | | - | |
19 | | - | |
20 | | - | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
21 | 23 | | |
22 | 24 | | |
23 | 25 | | |
| |||
0 commit comments