allow signing messages with 'change' addresses #3105

issue dooglus opened this issue on October 17, 2013
  1. dooglus commented at 6:30 PM on October 17, 2013: contributor

    I just asked someone to sign a message with the address they sent a transaction from to prove he sent it. He was unable to, since the address he sent from wasn't in his 'receive' tab.

    It turned out the transaction was funded by one of his 'change' addresses which don't show up on the 'receive' tab.

    In the end I had to talk him through using the debug console to run 'walletpassphrase' and 'signmessage' but it's kind of ugly, and results in his wallet passphrase appearing on the screen.

    It would be better if there was some way of signing a message with a change address from within the 'sign message' gui. Maybe a checkbox in 'receive' (defaulting to off) to show all addresses in the wallet including change addresses.

  2. jgarzik commented at 6:32 PM on October 17, 2013: contributor

    Agreed. Also, I would like to see Bitcoin-QT (and bitcoind?) support the simple wrapper that multibit employs.

  3. dooglus commented at 6:35 PM on October 17, 2013: contributor

    I'm not familiar with multibit. What does its simple wrapper do?

  4. sipa commented at 6:37 PM on October 17, 2013: member

    That's a good suggestion, but I'd like to keep the distinction between the wallet abstraction (where addresses are things to receive transactions with, transactions don't have a sender, coins belong to a wallet) and the internal representation (where coins are assigned to addresses). Coin control breaks this abstraction (and I like it because it gives insight in how the system works, but only inside an advanced view). I guess it makes sense to move message signing to this advanced view as well, when coin control is merged?

  5. jgarzik commented at 6:37 PM on October 17, 2013: contributor

    It looks like the ASCII armoring provided by PGP: ---BEGIN BITCOIN SIGNED MESSAGE--- etc.

    Makes life a bit easier when sending and receiving via email attachment, easier to detect truncation and other attributes. In Bitcoin-QT, a user could select a file with a file dialog, verifying (or signing) with a click.

  6. gmaxwell commented at 6:48 PM on October 17, 2013: contributor

    @dooglus I am confused by this issue.

    The sign message dialog in Bitcoin-qt lets you freely type in or paste the address you want to sign with already. There should have been no need to use the console.

  7. dooglus commented at 9:26 PM on October 17, 2013: contributor

    @gmaxwell That's a good point. I was thinking I had to use one of the addresses in the 'receive' tab, because that tab's 'sign message' is inactive until I select an address. But now I see I can also pick 'sign message' from the file menu.

  8. laanwj commented at 9:34 PM on October 17, 2013: member

    Already possible, so closing

  9. laanwj closed this on Oct 17, 2013

  10. luke-jr commented at 9:55 PM on October 17, 2013: member

    I'd argue that it shouldn't be possible. Signed messages only work for receiving, not for sending. It doesn't make sense to sign with a change address.

  11. dooglus commented at 10:26 PM on October 17, 2013: contributor

    @luke-jr Signing a message with a change address proves that the signer controls the change address that sent a transaction. Why would you argue for removing useful functionality?

    What does it even mean to say "Signed messages only work for receiving, not for sending"? Signing a message with an address is unrelated to sending or receiving a transaction.

  12. luke-jr commented at 7:29 AM on October 18, 2013: member

    @dooglus Signing proves you receive at the address. Just because you receive at a given address, does not mean you sent the coins in a later transaction consuming the outputs (and indeed, the contrary is often true). Addresses are only used for receiving, not for sending.

    If people need the ability to prove they sent a transaction, some new standard (whereby they sign with a transaction instead of an address) is needed.

  13. Bushstar referenced this in commit d6ca9a78ef on Apr 8, 2020
  14. MarcoFalke locked this on Sep 8, 2021

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-04-13 21:15 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me