<blockquote>
  <p>If I spend my bitcoin, I still know the private key of it, using which I can spend it later despite not owning it.</p>
</blockquote>

<p>Your are not really "the owner of the bitcoin". It's decentralized. You are the owner of <strong>a private key and of an adress</strong>.</p>

<p>And you can use the private key to send money away from your adress. Let's assume, you have only 1 BTC on your adress and send it all to your friend. After that, you can't send BTC from your adress anymore because there is nothing on the adress anymore. Only if someone sends BTC to your adress again, you can spend them again. You can't spend the 1 BTC again because it's on your friend's adress. You don't have the private key for his adress, but he has. So he can spend the BTC.</p>

CC BY-SA 3.0
2018-01-04T11:35:26.453Z
thanks Alpha!..so can I put it like this - that u always a key pair for an address which has the bitcoin. Its the private key of the address using which u can spend the BTC inside that address. Thats why a new address key pair is generated for every transaction.. makes sense?


if the above is right.. then the BTC is just a token..then why is it reqd to be a digital signature?
Lakshay Dulani
CC BY-SA 3.0
2018-01-04T12:25:11.087Z
"That's why a new address key pair is generated for every transaction". Yes, wallets do it like this. But you could theoretically use an adress multiple times (receive 1 BTC, send 0.5 BTC, send 0.25 BTC, receive 2 BTC, receive 0.1 BTC, send 1 BTC -> you can do all that with just 1 adress and 1 private key).
hardfork
CC BY-SA 3.0
2018-01-04T10:37:18.587Z
2018-01-04T10:37:18.587Z
hardfork
<p>Once you broadcast the transaction and it is written on the block chain, even if you send the transaction again it won't be added to the block because you have already spent your previous input.</p>

<p>It is the double spending problem .</p>

<p>If your transaction is still in the mempool and not added to the blockchain , you can send the transaction again with a higher fee. It will get accepted to the chain and your intial transaction will be invalid.</p>

<p>The transaction can be marked as completed only if it is added to the chain.</p>

CC BY-SA 3.0
2018-01-04T12:49:08.913Z
2018-01-04T12:55:03.010Z
2018-01-04T12:55:03.010Z
hvaminion
<p>I am a Bitcoin noob.</p>

<p>As per my knowledge, a Bitcoin is a digital signature. 
Owner of a bitcoin knows the private key of it.</p>

<p>If I spend my bitcoin, I still know the private key of it, using which I can spend it later despite not owning it.</p>

<p>Surely there must be something in the system which prevents this. One idea which comes to my mind is modifying the Bitcoin's Digital signature in a way so that the only new owner has the new private key.</p>

<p>I might be stupid and my above query may be just BS. Please guide me in the right direction.</p>

<signature>
How Bitcoin system prevents the previous owner of a Bitcoin to spend it?
Lakshay Dulani
# How Bitcoin system prevents the previous owner of a Bitcoin to spend it?

(Asked by: username_0 on 2018-01-04)

I am a Bitcoin noob.

As per my knowledge, a Bitcoin is a digital signature.
Owner of a bitcoin knows the private key of it.

If I spend my bitcoin, I still know the private key of it, using which I can spend it later despite not owning it.

Surely there must be something in the system which prevents this. One idea which comes to my mind is modifying the Bitcoin's Digital signature in a way so that the only new owner has the new private key.

I might be stupid and my above query may be just BS. Please guide me in the right direction.

**Tags:** signature


---

## 2 answers

### Answer by username_1 on 2018-01-04. Score: 2 | Accepted answer

> If I spend my bitcoin, I still know the private key of it, using which I can spend it later despite not owning it.

Your are not really "the owner of the bitcoin". It's decentralized. You are the owner of **a private key and of an adress**.

And you can use the private key to send money away from your adress. Let's assume, you have only 1 BTC on your adress and send it all to your friend. After that, you can't send BTC from your adress anymore because there is nothing on the adress anymore. Only if someone sends BTC to your adress again, you can spend them again. You can't spend the 1 BTC again because it's on your friend's adress. You don't have the private key for his adress, but he has. So he can spend the BTC.

> **Comments:**
> **username_0**: thanks Alpha!..so can I put it like this - that u always a key pair for an address which has the bitcoin. Its the private key of the address using which u can spend the BTC inside that address. Thats why a new address key pair is generated for every transaction.. makes sense?   if the above is right.. then the BTC is just a token..then why is it reqd to be a digital signature?  
> **username_1**: "That's why a new address key pair is generated for every transaction". Yes, wallets do it like this. But you could theoretically use an adress multiple times (receive 1 BTC, send 0.5 BTC, send 0.25 BTC, receive 2 BTC, receive 0.1 BTC, send 1 BTC -> you can do all that with just 1 adress and 1 private key).  

---

### Answer by username_2 on 2018-01-04. Score: 0

Once you broadcast the transaction and it is written on the block chain, even if you send the transaction again it won't be added to the block because you have already spent your previous input.

It is the double spending problem .

If your transaction is still in the mempool and not added to the blockchain , you can send the transaction again with a higher fee. It will get accepted to the chain and your intial transaction will be invalid.

The transaction can be marked as completed only if it is added to the chain.


---

