-
Notifications
You must be signed in to change notification settings - Fork 13
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
Always use tweaked keys with taproot #17
Conversation
Codecov Report
@@ Coverage Diff @@
## main #17 +/- ##
==========================================
- Coverage 79.83% 78.14% -1.69%
==========================================
Files 10 10
Lines 709 691 -18
==========================================
- Hits 566 540 -26
- Misses 143 151 +8
... and 1 file with indirect coverage changes 📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
codecov is failing with a config issue: [2023-09-05T17:09:04.026Z] ['error'] There was an error running the uploader: Error uploading to https://codecov.io: Error: There was an error fetching the storage URL during POST: 404 - {'detail': ErrorDetail(string='Unable to locate build via Github Actions API. Please upload with the Codecov repository upload token to resolve issue.', code='not_found')} All other tests are passing so I'll go ahead and merge to unblock external users. |
When doing taproot signatures with distributed keys, it is necessary to always use tweaked keys even when there is no script spend path. This is because a malicious DKG actor can insert a hidden script spend if the key is not tweaked.
So for all taproot sign functions, the merkle root should be optional, but tweaking the keys is not. If there is no merkle root, then the tweak is the hash of the public key only.