ZenGo-X / curv

Rust language general purpose elliptic curve cryptography.
MIT License
265 stars 111 forks source link

Remove dependency on rust-crypto #137

Closed survived closed 3 years ago

survived commented 3 years ago

Removes deprecated dependency on rust-crypto. The only thing is changed in the library is merkle tree support.

elichai commented 3 years ago

idk, ring is quite big to take in just for sha256. Maybe we should fork/implement one of the merkle libraries? Or maybe use this? https://github.com/nervosnetwork/merkle-tree (it allows us to use whatever hash function we want)

survived commented 3 years ago

merkle-cbt looks fine to me! I changed the code to use this crate, now we have no dependency on ring! 🎉

But in favour of this dependency switching, I had to change merkle trees API, and proofs generated by previous curv still are not compatible with latest curv. But I think it's fine.