#阈值签名 #Schnorr 签名 #Schnorr #签名 #签名方案 #阈值

no-std frost-core

支持实现灵活的优化轮Schnorr阈值签名方案(FROST)的类型和特性

10 个版本 (1 个稳定版)

2.0.0-rc.02024年6月20日
1.0.0 2024年2月19日
1.0.0-rc.02023年11月17日
0.7.0 2023年9月13日
0.1.0 2023年3月9日

#708 in 密码学

Download history 561/week @ 2024-04-30 523/week @ 2024-05-07 580/week @ 2024-05-14 614/week @ 2024-05-21 1077/week @ 2024-05-28 1195/week @ 2024-06-04 1237/week @ 2024-06-11 1584/week @ 2024-06-18 1841/week @ 2024-06-25 1273/week @ 2024-07-02 1041/week @ 2024-07-09 1278/week @ 2024-07-16 950/week @ 2024-07-23 991/week @ 2024-07-30 1340/week @ 2024-08-06 1752/week @ 2024-08-13

5,297 个月下载量
用于 11 个crate (9 直接使用)

MIT/Apache

245KB
4.5K SLoC

FROST (灵活优化的Schnorr阈值签名) 核心库

Rust中的基类和类型,以通用方式实现'使用FROST的二维阈值Schnorr签名',为Ciphersuite实现提供。

对于密钥生成,请参阅keys模块。对于特定轮次的类型和函数,请参阅round1round2模块。此模块包含与密钥生成和FROST轮次无直接关系的类型和函数。

状态 ⚠

FROST规范尚未最终确定,但在此阶段预计不会有重大变化。此代码库已由NCC审计。在发布候选阶段,frost-core中的API和类型可能会发生变化,并将在1.0.0之后遵循SemVer保证。

用法

frost-core以通用方式实现基类和类型,以便为不同的加密套件/曲线提供顶层实现,而无需从头开始实现所有FROST。如果最终用户想要签名和验证签名,他们不应使用frost-core,而应使用特定于其加密套件/曲线的crate,这些crate使用frost-core作为依赖项,例如frost_ristretto255

示例

请参阅特定加密套件的crate,例如frost_ristretto255

依赖项

~1–12MB
~130K SLoC