#bls-signatures #bls12-381 #curve #attack #verification #message

dusk-bls12_381-sign

BLS12-381曲线实现的BLS签名

12个不稳定版本 (4个破坏性更新)

0.6.0 2023年12月13日
0.5.1-rc.02023年11月28日
0.5.0 2023年10月12日
0.4.1 2022年10月19日
0.1.0-rc.32022年1月25日

#1450 in 密码学

Download history 63/week @ 2024-04-02 16/week @ 2024-04-09 21/week @ 2024-04-16 19/week @ 2024-04-23 12/week @ 2024-04-30 13/week @ 2024-05-07 3/week @ 2024-05-14 11/week @ 2024-05-21

每月488次下载
用于 5 个crate(4个直接使用)

MPL-2.0 许可证

25KB
457 代码行

使用BLS12-381曲线实现BLS签名。

此实现目前仅支持抵抗恶意密钥攻击的批处理,不支持独立消息验证。

基准测试

机器规格

基准测试在2020年13.3英寸MacBook Pro上运行。

CPU

$ lscpu
Intel(R) Core(TM) i7-1068NG7 CPU @ 2.30GHz

RAM

16 GB 3733 MHz LPDDR4X

结果

test benches::bench_aggregate_pk    ... bench:   1,654,552 ns/iter (+/- 107,025)
test benches::bench_aggregate_sig   ... bench:      36,893 ns/iter (+/- 3,399)
test benches::bench_sign            ... bench:   1,480,169 ns/iter (+/- 106,151)
test benches::bench_sign_vulnerable ... bench:   1,024,052 ns/iter (+/- 111,395)
test benches::bench_verify          ... bench:   4,740,114 ns/iter (+/- 336,036)

lib.rs:

BLS12-381曲线上的BLS签名实现。参考论文:https://crypto.stanford.edu/~dabo/pubs/papers/BLSmultisig.html

依赖关系

~2.5–3.5MB
~83K SLoC