vhnatyk / emerald-city

WASM/HW-friendly lightweight client application for threshold ECDSA
GNU General Public License v3.0
3 stars 1 forks source link

Dev/vhnat/benches i7 libsecp256k1 pure rust #3

Closed vhnatyk closed 5 years ago

vhnatyk commented 5 years ago

Continuation of PR #9

Seems the speedup is, most probably, due to pure Rust Secp256k1 crate is not constant time (CT) 😞, but speed up is significant - overall, with regards to platforms that are targeted in this repo, this may be less relevant (since side channel and, specifically, timing attacks are of less concern on secure MCU's and while WASM itself seems isn't CT safe yet)

Seems there can be two branches - one for WASM targets with the new crate, and one for no_std targets with prior crate. For now - merging this to master, while prior C based crate can be branched from previous commits.

Now current libsecp256k1 crate (pure Rust)

64bit: x64-pc-windows-msvc on nightly-x64-pc-windows-msvc

prior secp256k1 crate (C based)

64bit: x64-pc-windows-msvc on nightly-x64-pc-windows-msvc