Skip to content
Discussion options

You must be logged in to vote

I could use for instance sha256(privkey||sighash) as session_secrand32 and re-run secp256k1_musig_nonce_gen in 2nd musig round to get pubnonce/secnonce pair deterministically. Having current input private key in the hash adds something that attacker must not know, while sighash is used to differentiate between different transactions (or inputs).

No, this is insecure.

You must not resign with the same secnonce. So what you describe is secure IF you guarantee that there will ever only one secp256k1_musig_partial_sign(..., secnonce, ...) call per secnonce value.

I don't see how you could guarantee this using sha256(privkey||sighash). If an attacker asks an honest signer for partial signatu…

Replies: 2 comments

Comment options

You must be logged in to vote
0 replies
Answer selected by scgbckbone
Comment options

You must be logged in to vote
0 replies
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet
2 participants