10个版本
0.1.0-alpha.9 | 2023年6月23日 |
---|---|
0.1.0-alpha.8 | 2023年6月20日 |
0.1.0-alpha.7 | 2023年5月16日 |
0.1.0-alpha.3 | 2023年2月28日 |
#919 in 密码学
112 每月下载量
1MB
20K SLoC
Rust的高级加密库
这个库是将DEDIS kyber库部分迁移到纯Rust的库。
这个库为Rust提供了高级加密原语的工具箱,这些原语需要比简单的签名和加密更多。请参阅Rust包文档以了解库的目的和API功能。
以下表格显示了与DEDIS库相比已实现的功能。
功能 | 基本完成 | 完成 |
---|---|---|
Blake3 XOF | ✔️ | |
实用程序包 | 🔶 | |
DH | ✔️ | |
KYBER点 | ✔️ | |
KYBER标量 | ✔️ | |
KYBER群 | 🔶 | |
VSS | ✔️ | |
DKG | ✔️ | |
加密 | ✔️ | |
EdDsa | ✔️ | |
Schnorr签名 | ✔️ | |
DSS | ✔️ | |
洗牌包 | ||
PVSS | ||
更多签名方案 | ||
配对包 | ||
证明包 | ||
Keccak XOF | ||
Blake2 XOF |
这个第一个版本的任务是提供一个旨在与Ed25519签名方案一起使用的纯Rust实现的DKG API。测试和基准测试也已全部实现。
使用模块
您可以通过将其添加到项目中Cargo.toml
文件中来包含这个库。
[dependencies]
kyber_rs = "0.1.0-alpha"
为了了解如何使用此库,src/examples
下提供了示例。
贡献
如果您想为此库添加更多功能或提出修复建议,我们欢迎您这样做!要直接向仓库贡献,只需叉项目,将您的更改推送到您的分支并创建一个pull request。
联系方式
如果您想与我们联系,请随时通过[email protected]联系我们
关于派生共享密钥的说明
传统上,ECDH(椭圆曲线Diffie-Hellman)仅从x点推导共享密钥。在这个框架中,您可以手动检索值或使用MarshalBinary方法将组合的(x,y)值作为共享密钥。我们建议后者过程,因为对于使用此框架的新软件/协议来说,它更干净且可以泛化到不同类型的群(例如,整数和椭圆曲线),尽管它可能与ECDH的其他实现不兼容。请参阅ECDH的维基百科页面。
报告安全漏洞
此库按现状提供,不提供保证。在将其用于安全关键型应用之前,需要对其进行独立的安全审查。如果您将Kyber集成到您的应用程序中,安排审计是您的责任。
依赖项
~13–25MB
~372K SLoC