kaidokert/krabipqc-rs

GitHub: kaidokert/krabipqc-rs

该项目是一个面向微控制器的 Rust no_std 后量子密码学原型库,实现 ML-DSA 和 ML-KEM 算法,旨在探索嵌入式平台上的后量子加密可行性。

Stars: 1 | Forks: 0

# krabipqc-rs [![Rust](https://static.pigsec.cn/wp-content/uploads/repos/cas/97/972965ca7bbf78f3ac2cef0abbd5f4e4ba10a5b0802deeebaa60e5b9b30b8f53.svg)](https://github.com/kaidokert/krabipqc-rs/actions/workflows/rust.yml) [![Cortex-M](https://static.pigsec.cn/wp-content/uploads/repos/cas/af/aff87f321802a0cc806fd6275eae5a98dc03a5c997bd8f8f731349754015c6e2.svg)](https://github.com/kaidokert/krabipqc-rs/actions/workflows/cortex_m.yml) [![覆盖率状态](https://coveralls.io/repos/github/kaidokert/krabipqc-rs/badge.svg?branch=main)](https://coveralls.io/github/kaidokert/krabipqc-rs?branch=main) [![crates.io](https://img.shields.io/crates/v/krabipqc.svg)](https://crates.io/crates/krabipqc) [![docs.rs](https://docs.rs/krabipqc/badge.svg)](https://docs.rs/krabipqc) 面向微控制器的 `no_std` ML-DSA 和 ML-KEM 原型。 ## 范围 - ML-DSA: `ml_dsa_44`, `ml_dsa_65`, `ml_dsa_87` — keygen / sign / verify。 - ML-KEM: `ml_kem_512`, `ml_kem_768`, `ml_kem_1024` — keygen / encaps / decaps。 - 不使用 unsafe,不使用堆,不使用 `alloc` ## 资源占用 在 QEMU 下测量。`.text` 是链接后的示例二进制文件大小;stack 是峰值高水位标记。更大的参数集会按比例增加资源占用。 | 操作 | Cortex-M3 .text | Cortex-M3 stack | RISC-V .text | RISC-V stack | |------------------------------|----------------:|----------------:|-------------:|-------------:| | ML-DSA-44 verify | 14.5 KiB | 23 868 B | 17.2 KiB | 23 736 B | | ML-DSA-44 sign (`lowmem`) | 16.5 KiB | 67 956 B | 20.3 KiB | 67 940 B | | ML-KEM-512 decaps | 17.8 KiB | 28 156 B | 21.7 KiB | 28 116 B | 默认 sign 峰值约为 80 KiB stack;`lowmem` 在每次重试时重新推导 NTT 向量,以在拒绝时增加额外机器周期为代价,将其降至约 68 KiB。 ## 状态 非常处于实验阶段。API 会发生变化;尚未分析 side-channel 属性;未经审计。请勿用于任何重要场合。 ## 许可证 Apache-2.0;详见 [`LICENSE`](LICENSE)。
标签:可视化界面, 通知系统