Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Maybe change crypto/secp256k1 dependency library #3207

Open
MarcoPolo opened this issue Feb 24, 2025 · 2 comments
Open

Maybe change crypto/secp256k1 dependency library #3207

MarcoPolo opened this issue Feb 24, 2025 · 2 comments

Comments

@MarcoPolo
Copy link
Collaborator

We are currently using github.com/decred/dcrd/dcrec/secp256k1/v4 for our secp256k1 cryptography. It seems Lotus folks have recently switched to gitlab.com/yawning/secp256k1-voi for their secp256k1 crypto for reasons I don't yet understand. Some Lotus folks have asked if we should move to that library as well.

I'm opening this issue to try to understand and document if there's any benefit to moving to the yawning crypto, or some other crypto library (https://github.com/mit-plv/fiat-crypto was also brought up).

Note: I don't think there is a compatibility/interoperability issue here, as any correct library should work interoperate.

Could folks with more context please chime in on one would prefer gitlab.com/yawning/secp256k1-voi or fiat-crypto or specifically not our current decred/dcrd library. And, relatedly, why go-libp2p in particular would benefit?

cc
@AnomalRoil – Expressed preference for the yawning library
@Stebalien – Involved in the change for Lotus
@ribasushi

@aschmahmann
Copy link
Collaborator

cc @prestonvanloon as you might have an opinion here as well

@MarcoPolo
Copy link
Collaborator Author

MarcoPolo commented Feb 24, 2025

A quick note that the yawning library seems to use part of the fiat-crypto library as well: https://gitlab.com/yawning/secp256k1-voi/-/tree/moon/internal/fiat

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants