Author

Topic: Rust MuSig2 Crate Development (Read 35 times)

newbie
Activity: 1
Merit: 0
November 26, 2023, 07:35:23 PM
#1
I started this MuSig2 rust implementation a few weeks ago: https://github.com/conduition/musig2

I published a detailed description/announcement on my blog: https://conduition.io/code/musig2-crate/

I created the musig2 crate because I was struggling to find a reputable or well-maintained MuSig library that was compatible with BIP327. Only afterwards did I discover the schnorr_fun crate: https://docs.rs/schnorr_fun/0.9.1/schnorr_fun/musig/index.html

My crate still has some important advantages compared to schnorr_fun. My crate:

1. can use bare libsecp256k1. Doesn't need the experimental cryptography from libsecp256kfun.
2. supports building with pure Rust, using the k256 crate for curve math.
3. provides two different APIs, either of which may be more appropriate for different use-cases.
4. is more discoverable. People searching 'musig' or 'musig2' on crates.io are going to see my crate first.

Just today, I posted this PR which adds support for adaptor signatures: https://github.com/conduition/musig2/pull/1

If anyone has some time for code review, or even just feedback on the crate's API, I would most humbly appreciate it.
Jump to: