<p>You cannot "own" a transaction. But you can own the private keys for one or more of the addresses from the inputs of the transaction.</p>

<p>A (regular) transaction must be signed with the private keys of the addresses of all the inputs. So if you own one of the addresses, the transaction could not have been verified without you, which may count as "ownership" if you want to call it that way.</p>

<p>Proving that you own an address can be done by signing a message using the private key of that address. Most wallets provide signing functionality. Just agree on a message, something like "I, [name with which the other party knows you], am the owner of address [address from the input]." After signing, you can send the message and the signature to the other party and he will be able to verify your ownership of the private key.</p>

CC BY-SA 3.0
2013-12-11T16:42:31.220Z
2013-12-11T16:42:31.220Z
Steven Roose
<p>Yes, it is possible. You would do that by signing a message using the private key of the address which you sent the transaction from. Bitcoin-QT offers this functionality by clicking the button called "Sign Message". Anybody can then verify that the message could only have come from the owner of said address.</p>

<p>To ensure privacy, you would perhaps not want to put private information into that message, but rather announce to the third party that you will send them a message with some sort of passphrase (or ask them what passphrase they would like you to use), e.g. "This verifies my ownership - 54123" and then later on, send them exactly that message signed by using your private key.</p>

CC BY-SA 3.0
2013-12-11T11:14:03.857Z
What address would you use to sign the message? There's no "sender" address in a transaction, only inputs/outputs.
I think a good solution would be to use the change address, but how do you determine what the change address is?
Jojo
CC BY-SA 3.0
2013-12-11T11:25:44.287Z
The "sender" address is the one, that you had previously received the inputs to. I.e. the receiving address of the transaction that gave you the bitcoins that you are now spending. The change address is not useful in this case, because nobody has a way of knowing whether you sent the change of the transaction to yourself or to a third party. If you don't know which address the inputs belonged to, you can easily find out by checking the transaction id on a block explorer such as blockchain.info.
Murch
CC BY-SA 3.0
2013-12-11T11:49:34.610Z
So I can be sure that all the addresses from all inputs belong to the same private key/person?
Jojo
CC BY-SA 3.0
2013-12-11T14:29:22.900Z
Maybe not belong but they have access to the private key (think of a service sending coins on behalf of someone else, they have control of them but they do not belong to them in reality)
MaxSan
CC BY-SA 3.0
2013-12-11T10:50:05.350Z
2013-12-11T10:50:05.350Z
Murch
<p>Yes, you can prove you are the transaction's sender, by signing an arbitrary message with the transaction sender's private key.
Here is an example using Electrum 3.3.6. </p>

<ul>
<li>Navigate the menu bar: <code>Tools -&gt; Sign/Verify message</code>.</li>
<li>Fill an arbitrary message (ex: <code>This is a test message.</code>)</li>
<li>Enter the sender's address for that transaction (ex: <code>1Hs7hQQs8cQVGLoTrNjDuXqRRpfGCwLEeh</code>)</li>
<li>Click the <code>Sign</code> button. This will generate a signature for this message, using the sender's private key, if you own it.</li>
<li>Send the transaction ID, message, sender address and signature to whoever needs proof you are the sender. They will be able to check your signature, with the <code>Verify</code> feature, or any equivalent tool they may use.</li>
</ul>

<p><a href="https://i.sstatic.net/xxbgl.png" rel="nofollow noreferrer"><img src="https://i.sstatic.net/xxbgl.png" alt="Electrum 3.3.6 Sign/Verify tool"></a></p>

CC BY-SA 4.0
2019-07-10T16:24:51.487Z
2019-07-10T16:24:51.487Z
rclyde
<p>Is it possible to prove that you are the sender in a transaction?
Prove this to 3rd-parties, not only the receiver.</p>

CC BY-SA 3.0
2013-12-11T10:37:53.437Z
possible duplicate of [How can I use message signing to prove that I have private keys for many different accounts?](http://bitcoin.stackexchange.com/questions/7413/how-can-i-use-message-signing-to-prove-that-i-have-private-keys-for-many-differe)
Murch
CC BY-SA 3.0
2013-12-11T10:40:28.577Z
possible duplicate of [How does sign message work?](http://bitcoin.stackexchange.com/questions/3898/how-does-sign-message-work?rq=1)
Murch
<transactions><verification>
Is there a way to prove ownership of a transaction?
Jojo
# Is there a way to prove ownership of a transaction?

(Asked by: username_0 on 2013-12-11)

Is it possible to prove that you are the sender in a transaction?
Prove this to 3rd-parties, not only the receiver.

**Tags:** transactions, verification

> **Comments:**
> **username_1**: possible duplicate of [How can I use message signing to prove that I have private keys for many different accounts?](http://bitcoin.stackexchange.com/questions/7413/how-can-i-use-message-signing-to-prove-that-i-have-private-keys-for-many-differe)  
> **username_1**: possible duplicate of [How does sign message work?](http://bitcoin.stackexchange.com/questions/3898/how-does-sign-message-work?rq=1)  

---

## 3 answers

### Answer by username_2 on 2013-12-11. Score: 4

You cannot "own" a transaction. But you can own the private keys for one or more of the addresses from the inputs of the transaction.

A (regular) transaction must be signed with the private keys of the addresses of all the inputs. So if you own one of the addresses, the transaction could not have been verified without you, which may count as "ownership" if you want to call it that way.

Proving that you own an address can be done by signing a message using the private key of that address. Most wallets provide signing functionality. Just agree on a message, something like "I, [name with which the other party knows you], am the owner of address [address from the input]." After signing, you can send the message and the signature to the other party and he will be able to verify your ownership of the private key.


---

### Answer by username_1 on 2013-12-11. Score: 3

Yes, it is possible. You would do that by signing a message using the private key of the address which you sent the transaction from. Bitcoin-QT offers this functionality by clicking the button called "Sign Message". Anybody can then verify that the message could only have come from the owner of said address.

To ensure privacy, you would perhaps not want to put private information into that message, but rather announce to the third party that you will send them a message with some sort of passphrase (or ask them what passphrase they would like you to use), e.g. "This verifies my ownership - 54123" and then later on, send them exactly that message signed by using your private key.

> **Comments:**
> **username_0**: What address would you use to sign the message? There's no "sender" address in a transaction, only inputs/outputs. I think a good solution would be to use the change address, but how do you determine what the change address is?  
> **username_1**: The "sender" address is the one, that you had previously received the inputs to. I.e. the receiving address of the transaction that gave you the bitcoins that you are now spending. The change address is not useful in this case, because nobody has a way of knowing whether you sent the change of the transaction to yourself or to a third party. If you don't know which address the inputs belonged to, you can easily find out by checking the transaction id on a block explorer such as blockchain.info.  
> **username_0**: So I can be sure that all the addresses from all inputs belong to the same private key/person?  
> **username_3**: Maybe not belong but they have access to the private key (think of a service sending coins on behalf of someone else, they have control of them but they do not belong to them in reality)  

---

### Answer by username_4 on 2019-07-10. Score: 1

Yes, you can prove you are the transaction's sender, by signing an arbitrary message with the transaction sender's private key.
Here is an example using Electrum 3.3.6.

* Navigate the menu bar: `Tools -> Sign/Verify message`.
* Fill an arbitrary message (ex: `This is a test message.`)
* Enter the sender's address for that transaction (ex: `1Hs7hQQs8cQVGLoTrNjDuXqRRpfGCwLEeh`)
* Click the `Sign` button. This will generate a signature for this message, using the sender's private key, if you own it.
* Send the transaction ID, message, sender address and signature to whoever needs proof you are the sender. They will be able to check your signature, with the `Verify` feature, or any equivalent tool they may use.

[![Electrum 3.3.6 Sign/Verify tool](https://i.sstatic.net/xxbgl.png)](https://i.sstatic.net/xxbgl.png)


---

