Skip to content
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

Wallet: Support disabling implicit Segwit operation #12146

Closed
wants to merge 1 commit into
base: master
from

Conversation

Projects
None yet
5 participants
@luke-jr
Copy link
Member

luke-jr commented Jan 11, 2018

This optional feature (disabled by default) leaves Segwit wallet support mostly as-is, except:

  1. It disables automatic implied Segwit recognition for keys not explicitly generated as Segwit. This means each Segwit address generated needs a new backup, same as previous versions.
  2. Default address/change type is legacy.

OUTPUT_TYPE_DEFAULT is changed to an actual OutputType value, in expectation of reuse by #12119 as well as enabling the possibility of having the implicit segwit flag be set per-wallet once we have runtime wallet loading.

@fanquake fanquake added the Wallet label Jan 11, 2018

@TheBlueMatt

This comment has been minimized.

Copy link
Contributor

TheBlueMatt commented Jan 11, 2018

I see little reason to do this. While we shouldn't make a habit of recognizing outputs to mutations of addresses we've given out, if someone sends you funds to a SegWit address, and you wish to refuse it, you're welcome to not honor the payment. Instead, we should be moving towards longer-term goals like splitting the HD chain across address types and recognizing payment only to addresses we've given out in a non-backup-breaking way.

@luke-jr

This comment has been minimized.

Copy link
Member Author

luke-jr commented Jan 11, 2018

Without this, there is currently no way to even detect they were sent to a Segwit mutation of an address.

@jnewbery

This comment has been minimized.

Copy link
Member

jnewbery commented Jan 11, 2018

Much discussion of this PR here: https://botbot.me/freenode/bitcoin-core-dev/2018-01-11/?msg=95652211&page=5

I'd support fixing the general case of address malleation. I don't think this is the correct approach, and don't think it should hold up v0.16, for the reasons enumerated in IRC. Concept NACK from me.

@luke-jr luke-jr force-pushed the luke-jr:opt_wallet_segwit branch to cc78a98 Mar 31, 2018

@luke-jr

This comment has been minimized.

Copy link
Member Author

luke-jr commented Mar 31, 2018

Rebased (which simplified it quite a bit).

@MarcoFalke

This comment has been minimized.

Copy link
Member

MarcoFalke commented Aug 26, 2018

Closing for now. Let me know when you want to continue working on this.

@MarcoFalke MarcoFalke closed this Aug 26, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.