dalek-cryptography 与adjoint-io bulletpoofs性能对比

https://github.com/dalek-cryptography/bulletproofs 中bench所实用的value和blinding为随机数,为保证比对效果,对create_aggregated_rangeproof_helperverify_aggregated_rangeproof_helper函数中的值限定为与 https://github.com/adjoint-io/bulletproofs 中的一样:

let values: Vec<u64> = (0..m).map(|_| 7238283).collect();
let blindings: Vec<Scalar> = (0..m).map(|_| Scalar::from(827361 as u64)).collect();
cargo bench

对应结果为:(限定为相应的值后,其create proof和verify proof的性能与随机数相比均有所下降。参见对比前一篇博客)

Running target/release/deps/range_proof-4c5c0d62c8330b83
Aggregated 64-bit rangeproof creation/1
                        time:   [51.444 ms 53.726 ms 56.741 ms]
                        change: [+109.88% +124.50% +141.72%] (p = 0.00 < 0.05)
                        Performance has regressed.
Aggregated 64-bit rangeproof creation/2
                        time:   [99.195 ms 106.84 ms 121.29 ms]
                        change: [+105.17% +121.95% +143.83%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 1 outliers among 10 measurements (10.00%)
  1 (10.00%) high severe
Aggregated 64-bit rangeproof creation/4
                        time:   [211.62 ms 216.40 ms 226.23 ms]
                        change: [+116.55% +136.77% +157.73%] (p = 0.00 < 0.05)
                        Performance has regressed.
Aggregated 64-bit rangeproof creation/8
                        time:   [419.66 ms 444.50 ms 467.96 ms]
                        change: [+110.17% +123.49% +138.35%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 1 outliers among 10 measurements (10.00%)
  1 (10.00%) high severe
Aggregated 64-bit rangeproof creation/16
                        time:   [791.57 ms 811.25 ms 835.03 ms]
                        change: [+97.526% +108.00% +119.60%] (p = 0.00 < 0.05)
                        Performance has regressed.
Aggregated 64-bit rangeproof creation/32
                        time:   [1.5489 s 1.5721 s 1.6022 s]
                        change: [+118.90% +127.50% +135.01%] (p = 0.00 < 0.05)
                        Performance has regressed.

Aggregated 64-bit rangeproof verification/1
                        time:   [6.6476 ms 6.7833 ms 6.9460 ms]
                        change: [+124.41% +134.32% +144.18%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 7 outliers among 100 measurements (7.00%)
  5 (5.00%) high mild
  2 (2.00%) high severe
Aggregated 64-bit rangeproof verification/2
                        time:   [11.760 ms 12.079 ms 12.499 ms]
                        change: [+90.251% +108.97% +126.25%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 7 outliers among 100 measurements (7.00%)
  2 (2.00%) low mild
  2 (2.00%) high mild
  3 (3.00%) high severe
Aggregated 64-bit rangeproof verification/4
                        time:   [20.192 ms 20.918 ms 21.726 ms]
                        change: [+125.24% +133.58% +141.28%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 13 outliers among 100 measurements (13.00%)
  1 (1.00%) low mild
  8 (8.00%) high mild
  4 (4.00%) high severe
Aggregated 64-bit rangeproof verification/8
                        time:   [28.145 ms 29.914 ms 31.996 ms]
                        change: [+110.03% +122.22% +134.80%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 21 outliers among 100 measurements (21.00%)
  12 (12.00%) low mild
  6 (6.00%) high mild
  3 (3.00%) high severe
Aggregated 64-bit rangeproof verification/16
                        time:   [39.857 ms 41.468 ms 43.204 ms]
                        change: [+37.463% +44.111% +50.717%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 9 outliers among 100 measurements (9.00%)
  1 (1.00%) low severe
  1 (1.00%) low mild
  3 (3.00%) high mild
  4 (4.00%) high severe
Aggregated 64-bit rangeproof verification/32
                        time:   [68.973 ms 74.312 ms 79.542 ms]
                        change: [+38.676% +47.817% +59.777%] (p = 0.00 < 0.05)
                        Performance has regressed.
Found 18 outliers among 100 measurements (18.00%)
  12 (12.00%) low mild
  4 (4.00%) high mild
  2 (2.00%) high severe

若只考虑单个value的性能,不考虑Aggregated的情况,修改:

static AGGREGATION_SIZES: [usize; 1] = [1];
cargo bench

对应性能表现为:

     Running target/release/deps/range_proof-4c5c0d62c8330b83
Aggregated 64-bit rangeproof creation
                        time:   [47.982 ms 52.143 ms 56.340 ms]
Found 2 outliers among 10 measurements (20.00%)
  1 (10.00%) high mild
  1 (10.00%) high severe

Aggregated 64-bit rangeproof verification
                        time:   [4.7734 ms 5.4260 ms 6.1754 ms]
Found 3 outliers among 100 measurements (3.00%)
  1 (1.00%) high mild
  2 (2.00%) high severe

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值