bitcoinfuzz icon indicating copy to clipboard operation
bitcoinfuzz copied to clipboard

Make differential fuzzing between secp256k1 libraries

Open erickcestari opened this issue 1 month ago • 6 comments

I think the main libraries we should have here are those written in different programming languages. For example, we will not add Rust-secp256k1, an FFI of secp256k1 from Bitcoin Core.

Suggestions: secp256k1 (C) noble-secp256k1 (js) NBitcoin-secp256k1 (c#) secp256k1-go (go) - LND uses this one secp256kfun (rust) k256 (rust)

We can get some ideas from cryptofuzz, since they have some targets for secp256k1: https://github.com/MozillaSecurity/cryptofuzz

erickcestari avatar Nov 19 '25 13:11 erickcestari

Since cryptofuzz is not alive anymore and I don't see constant maintaince on this Mozilla fork, I think it makes sense to have it here.

brunoerg avatar Nov 20 '25 12:11 brunoerg

Was thinking of doing differential fuzzing between libsecp256k1 and Decred’s secp256k1. If this hasn’t been started yet, can I pick it up?

NishantBansal2003 avatar Nov 23 '25 20:11 NishantBansal2003

Was thinking of doing differential fuzzing between libsecp256k1 and Decred’s secp256k1. If this hasn’t been started yet, can I pick it up?

Yes, feel free to take this on.

erickcestari avatar Nov 24 '25 11:11 erickcestari

There's also secp256kfun in Rust (you'll probably find many bugs there).

luisschwab avatar Nov 26 '25 23:11 luisschwab

And also k256. This one is a production-grade secp256k1 library.

luisschwab avatar Nov 26 '25 23:11 luisschwab

Good suggestions! Those are definitely worth having.

erickcestari avatar Nov 27 '25 00:11 erickcestari

@NishantBansal2003 Are you planning on working on adding the other modules?

erickcestari avatar Dec 16 '25 19:12 erickcestari

@NishantBansal2003 Are you planning on working on adding the other modules?

Yes, I’ll be working on this. It’s already on my mind, let me first get comfortable with Rust syntax (I haven’t programmed in Rust yet), and then I’ll raise a PR for the other modules as well.

NishantBansal2003 avatar Dec 17 '25 15:12 NishantBansal2003