mirror of
https://github.com/luxfi/magnetar.git
synced 2026-07-27 02:53:47 +00:00
cmd/genkat: deterministic KAT (Known Answer Test) generator. Emits five JSON vector files under vectors/: - keygen.json: 9 vectors (3 seeds x 3 modes) - sign.json: 9 vectors (3 seeds x 3 modes; deterministic SignDeterministic on random seed-derived keys) - verify.json: 6 vectors (1 positive + 1 negative per mode x 3 modes; negative case flips a byte mid-signature) - threshold-sign.json: 3 vectors (n=3/t=2, n=5/t=3, n=7/t=4 over ModeM192s only — the recommended mode is the only one exercised in v0.1 threshold path) - dkg.json: 3 vectors (same configurations as threshold-sign) Determinism gate: re-running genkat on a clean checkout MUST produce byte-identical output. Validated by diff -r against a fresh second run; KAT replay tests in kat_test.go further check that the package reproduces every entry verbatim. Total vectors size: ~935 KB (sign.json dominates at ~494 KB because SLH-DSA-SHAKE-192s signatures are 16224 bytes each).