-
Notifications
You must be signed in to change notification settings - Fork 2.4k
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
btcec: Implement Schnorr signatures #1212
Comments
What's the gain to extract |
That issue should be resolved with a good dependency manager. dep or vgo will most probably make that a non-issue. I would think an argument in favor is that it allows for easier experimentation with not-yet-softforked crypto stuffs without bothering btcd development. Also, cryptographic primitives that are related to Bitcoin, but not consensus-critical, could be added there, but btcd doesn't need them. F.e. tools to construct Schnorr multisigs or discrete log contracts. Basically all layer 2 crypto that btcd doesn't necessarily need. |
https://github.com/hbakhtiyor/schnorr/ implemented, feedback appreciate |
@stevenroose agreed, separate crypto package would be nice. any new thoughts, also with regards to schnorr? |
PR's touching diff packages is a major pain. Consider adding Schnorr and/or EdDSA to btcsuite/btcd ( |
The main blocker here that we were working on was to first switch over all field operations to used fixed sized limbs rather than big ints, as we'll gain quite a performance increase in the process. Once that's in place, the next step would be to implement proper constant time signing using the field elements (which #1667 doesn't use). |
The related project |
According to the proposed BIP: https://github.com/sipa/bips/blob/bip-schnorr/bip-schnorr.mediawiki
I was thinking that it would make sense for btcec to be a separate repo. It could have a separate branch where we can support experimental crypto that is not accepted standard yet, like CT-related things, f.e. The upcoming versioning improvements in Go should make it less of an issue to have it as a separate repo as well.
The text was updated successfully, but these errors were encountered: