18个版本

0.4.11 2022年4月14日
0.4.10 2021年11月25日
0.4.9 2021年9月20日
0.4.7 2021年6月10日
0.4.1 2019年7月24日

#2540 in 密码学

MIT/Apache

38MB
1M SLoC

GNU Style Assembly 567K SLoC // 0.0% comments C 354K SLoC // 0.2% comments Bitbake 59K SLoC // 0.0% comments Rust 1.5K SLoC // 0.0% comments Python 1.5K SLoC // 0.1% comments SWIG 348 SLoC // 0.0% comments Jinja2 204 SLoC INI 5 SLoC

frodo

此crate包含了对以下方案C实现的绑定,来自PQClean

此项目包装了参与NIST PQC标准化工作的后量子密码学算法。它目前是围绕PQClean项目的C实现的一组包装。

序列化

如果您需要serde支持,请启用serialization功能。

PQClean中包含的实现

以下是一个包含的方案列表及其从PQClean获取的对应实现。在Rust友好接口中使用的是“默认”实现,替代实现仅作为ffi方法公开。

  • frodokem640aes
    • opt
    • clean
  • frodokem640shake
    • opt
    • clean
  • frodokem976aes
    • opt
    • clean
  • frodokem976shake
    • opt
    • clean
  • frodokem1344aes
    • opt
    • clean
  • frodokem1344shake
    • opt
    • clean

注意

如果您通过FFI接口使用它:Frodo的clean实现需要大量的栈空间,请指定环境变量RUST_MIN_STACK以确保它在线程中有足够的栈空间。

这对于“正常”api方法不适用。

许可证

此项目中的包装和包装生成脚本受MIT或Apache 2.0许可证的保护,您可任选其一。

我们链接到的实现不受此限制。有关适当的许可证,请参阅PQClean项目。

依赖项