feat: U5 land deterministic chacha20 KAT (RFC 8439 2.4.2)

- test/gen_chacha_kat.py emits KAT from RFC 8439 section 2.4.2 mapped to the impl's 64+64 counter/nonce layout; expected bytes cross-checked against pycryptodome (independent impl) and the official vector: 10f1e7e4d13b5915... byte-exact
- verdict: the 'intermittent chacha20 KAT FAIL' referenced in FUCK comments was a phantom — that test was never merged into this tree; the implementation itself matches RFC byte-for-byte
- selftest now runs KAT + page-MAC determinism checks at selftest=2; full SELFTEST PASS in QEMU (.build_tmp/qemu_serial_u5kat.log)
This commit is contained in:
Linehu
2026-10-02 15:24:15 +08:00
parent 7925c09677
commit 1e74ee9fab
12 changed files with 119 additions and 5 deletions
+1 -1
View File
@@ -17,7 +17,7 @@
- [x] U2 UTRW Slow Path 真分支(EPOCH/KEY_MISS 恢复 + MAC_FAILED/POISONED→DRR;selftest PASS)
- [ ] U3 `@sealed` 段可选标记(链接脚本 `__sealed` section)
- [x] U4 密文页 dump 工具(utrw_debug_dump_page:密文/明文 hex 对照,selftest 演示 PASS)
- [ ] U5 UTSM selftest 全覆盖(修 chacha20 KAT 间歇 FAIL,覆盖率 ≥70%)
- [x] U5 UTSM selftest 全覆盖(RFC 8439 KAT 落地,"间歇 FAIL" 确认为幽灵缺陷;全量稳定 PASS)
## 🔌 三期:自由(DKM/用户态)