-
Notifications
You must be signed in to change notification settings - Fork 38.8k
Permit Combiner to strip bip32_deriv information #30341
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
base: master
Are you sure you want to change the base?
Conversation
|
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers. Code Coverage & BenchmarksFor details see: https://corecheck.dev/bitcoin/bitcoin/pulls/30341. ReviewsSee the guideline for information on the review process.
If your review is incorrectly listed, please react with 👎 to this comment and the bot will ignore it on the next update. ConflictsReviewers, this pull request conflicts with the following ones:
If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first. LLM Linter (✨ experimental)Possible typos and grammar issues:
drahtbot_id_4_m |
db364a5 to
31cc0f4
Compare
31cc0f4 to
f3e2a7f
Compare
Maybe @achow101 ? Otherwise given no interest in this in 8 months, maybe we should just close. |
Previously setting bip32derivs to false with walletprocesspsbt does not include bip32_derivs for inputs, but does include bip32_derivs for outputs. User may want to strip all bip32 derivation paths for privacy reasons however. It may make sense to do this after signing your inputs and outputs during a manual coinjoin for example. Therefore add functionality to `combinepsbt` permitting stripping of all bip32_derivation paths found in all provided psbts. As this RPC can be called with a single psbt, it can be used to strip derivation paths from any psbt.
These asserts check that when calling `combinepsbt` RPC with `stripderivs=true`, all derivation paths are stripped from all inputs and outputs.
f3e2a7f to
be9246e
Compare
|
Approach NACK I don't think it's up to the combiner to strip this information. If a signer wants to preserve their own privacy, then they should remove it prior to sending the PSBT to any of their counterparties, or the combiner. I think it would be better to have the strip functionality be in |
Closes: #30294
Looking for approach (N)ACK.
Previously setting the
bip32derivsflag to false with thewalletprocesspsbtRPC correctly does not includebip32_derivsfor inputs in the PSBT, but does includebip32_derivsfor outputs.User may want to actively strip all bip32 derivation paths from a PSBT for privacy reasons however. It may make sense to do this after signing your inputs and outputs during a manual coinjoin as demonstrated in the BIP174 example.
To me, this makes more sense to include in the
CombinerPSBT role. It's then separated from signing done by theSigners.Therefore add functionality to
combinepsbtpermitting stripping of allbip32_derivationpaths found in all provided psbts' inputs and outputs.As this RPC can be called with a single PSBT, it can be used to strip derivation paths from a PSBT with any number of participants.