arnaucube 2d94206899 Optimize point add & mul_scalar methods
(On a Intel(R) Core(TM) i7-8705G CPU @ 3.10GHz, with 32 GB of RAM)

- before:
```
add                     time:   [53.447 us 53.467 us 53.492 us]
mul_scalar              time:   [121.19 ms 121.22 ms 121.25 ms]
```

- current:
```
add                     time:   [317.34 ns 317.44 ns 317.54 ns]
mul_scalar              time:   [131.05 us 131.28 us 131.58 us]
```

Which is `168x` improvement for `add`, and `923x` improvement for `mul_scalar`.
2020-08-01 18:18:43 +02:00
2019-07-28 21:18:08 +02:00
2019-08-04 14:16:51 +02:00
2019-07-28 21:18:08 +02:00
2019-09-09 20:42:17 +02:00

babyjubjub-rs Crates.io Build Status

BabyJubJub elliptic curve implementation in Rust. A twisted edwards curve embedded in the curve of BN128.

BabyJubJub curve explanation: https://medium.com/zokrates/efficient-ecc-in-zksnarks-using-zokrates-bd9ae37b8186

Uses:

Compatible with the BabyJubJub Go implementation from https://github.com/iden3/go-iden3-crypto

Warning

Doing this in my free time to get familiar with Rust, do not use in production.

  • point addition
  • point scalar multiplication
  • eddsa keys generation
  • eddsa signature
  • eddsa signature verification
  • {point, pk, signature} compress&decompress parsers

References

Description
No description provided
Readme GPL-3.0 99 KiB
Languages
Rust 100%