-
Notifications
You must be signed in to change notification settings - Fork 4
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
Track coins lost due to committing to invalid BIP340 public keys #6
Comments
Thanks for pointing this out. I'll take a look to see how pervasive this issue is. |
As the blog post points out, there aren't tools to verify BIP340 compliance for public keys so I'm going to have to write something to check this. As you can see, I'm not on this full time so I don't know when I'll be able to get to this. I'm open to whomever would like to help. |
@anders94 I've been learning so much from your website's blockchain demo, I would like to help here. |
Thanks @0xSaksham for the offer of help. I haven't had the time to work on the above if that's something you can help with... |
Please lead me to helpful resources related to the project. |
Look at the secp256k1 parameters and make a tool that checks to see if the x coordinate is on the curve. Reference the above article and this: http://www.secg.org/sec2-v2.pdf - you could also look at the various implementations and wrap one of them in a try / catch block or something. |
Inspired by this article: https://suredbits.com/taproot-funds-burned-on-the-bitcoin-blockchain/
There are P2TR outputs on mainnet whose 32-byte scriptPubKey commitment isn't a valid x-coordinate of a secp256k1 point as specified in BIP340, and so are forever unspendable. The article shows an example output that burned 0.0002 BTC.
The text was updated successfully, but these errors were encountered: