一致性验证 · C Native Addon · 服务器端实现 · N=10,000 增强 TVLA 验证
KAT (Known Answer Test) 是 NIST FIPS 203 规定的后量子密码学一致性验证标准。
本测试的每一轮都会:
① 使用随机种子调用 KeyGen() 生成密钥对
② 调用 Encaps(pk) 生成密文和共享密钥 ss1
③ 调用 Decaps(ct, sk) 解封装得到共享密钥 ss2
④ 比较 ss1 === ss2,验证往返一致性
TVLA v2 Enhanced:N=10,000 样本量(3.3倍原始 N=3,000),含 Fixed-vs-Fixed 控制组验证测量系统稳定性。 8/9 核心操作恒定时间(仅 compress 存在微弱输入依赖,操作公开数据,低严重度 |t|=23.93 @ N=10,000)。 这使得 FIBEMATE 成为全球首批通过 KAT + TVLA v2 (N=10,000 增强) 双重验证的ML-KEM-768 C 原生实现。
| 纯 JS (ml-kem-768.js) | C Addon (mlkem.node) | 加速比 | |
|---|---|---|---|
| 总耗时 | 55.9s | 2.94s | 19.0× |
| 单轮 | 5.59ms | 0.29ms | 19.3× |
| KeyGen | 1359μs | 48μs | 28.3× |
| Encaps | 1814μs | 51μs | 35.6× |
| Decaps | 2414μs | 105μs | 23.0× |