Bitcoin Forum
November 18, 2024, 01:54:58 PM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: What is Double spent ?  (Read 167 times)
ThisManIsTesting (OP)
Newbie
*
Offline Offline

Activity: 51
Merit: 0


View Profile
January 10, 2018, 03:45:36 PM
 #1

Hello Everyone,
I want to know what is Double spent in bitcoin, and if you can sign a transaction while you don't have sufficient balance (in this case the transaction won't be confirmed ?)
DannyHamilton
Legendary
*
Offline Offline

Activity: 3486
Merit: 4851



View Profile
January 10, 2018, 04:11:22 PM
 #2

Hello Everyone,
I want to know what is Double spent in bitcoin, and if you can sign a transaction while you don't have sufficient balance (in this case the transaction won't be confirmed ?)

REAL "double spend" is a situation where two (or more people) are paid with the exact same cryptocurrency funds, and it is not possible to determine with certainty which person was paid first (or which person gets to keep their payment.  Each participant has now way of knowing if their payment is any good or not, and the entire system has no way of resolving the situation.

REAL "double spend" is not possible in Bitcoin.  The reason that Bitcoin became popular and useful is because it is the first decentralized solution to the double spend problem.

Bitcoin uses the "confirmation" process to allow the entire system and all participants to come to a consensus about the ordering of transactions so that everyone can know with certainty whether any transaction is valid or not.

However, Bitcoin (and many other cryptocurrencies) have a time delay between after the transaction is created and shared before it is confirmed.  During this time, it is possible for there to be multiple transactions that are all trying to spend the exact same cryptocurrency funds. The COMMON USE of the terms "double spend" within decentralized cryptocurrency communities is to refer to these competing unconfirmed transactions.  Only one of them will ever confirm, and then the others will become invalid and will be rejected by the system, but during the time that the transaction is waiting to be confirmed it is possible to have multiple "double spend" unconfirmed transactions.

You can sign any transaction you want.  But, if the transaction is not valid, then it will be rejected by ALL participants in the Bitcoin system.

Xynerise
Sr. Member
****
Offline Offline

Activity: 322
Merit: 363

39twH4PSYgDSzU7sLnRoDfthR6gWYrrPoD


View Profile
January 10, 2018, 04:17:21 PM
 #3

Double spending = spending the same inputs more than once.
In cash, this would be the equivalent of giving someone  a $100 bill, then giving another person the same $100 bill.
You can see it's not possible because once the money has left your hands you can't spend it again.

Bitcoin tries to replicate that function with the blockchain and proof-of-work (aka mining) is what makes it possible.
In bitcoin once you send a bitcoin input to someone and it's confirmed (written in the blockchain ledger), you can't spend that same input again because it's no longer yours to control.
You should read the bitcoin white paper to understand how it works.



Signing a message or transaction* has nothing to do with the blockchain (read: mining) (you don't need to pay fees for it),
Once you have a private key you can sign anything without paying miner fees.
Signing a message or transaction is just maths.


*Transactions are free to create, sign and broadcast, but if you do not include enough fees in the transaction then you run the risk of your transaction not being confirmed.
ThisManIsTesting (OP)
Newbie
*
Offline Offline

Activity: 51
Merit: 0


View Profile
January 10, 2018, 05:24:21 PM
 #4

Very helpful replies thank you @DannyHamilton.
ThisManIsTesting (OP)
Newbie
*
Offline Offline

Activity: 51
Merit: 0


View Profile
January 10, 2018, 07:50:55 PM
 #5

I signed a transaction with a wallet that doesn't have sufficient balance, this is what I got: min relay fee not met.
I'm trying to understand bitcoin why its not possible to create a transaction in the network with an empty balance, and what are
the network rules, how miners validate transaction then ?
bob123
Legendary
*
Offline Offline

Activity: 1624
Merit: 2481



View Profile WWW
January 10, 2018, 08:42:09 PM
 #6

I signed a transaction with a wallet that doesn't have sufficient balance, this is what I got: min relay fee not met.

That means your transaction did not reach the minimum fee for other nodes to relay your transaction (0 fee because of 0 funds).
It was possible to get zero-fee transaction relayed (and confirmed) in the early times of BTC. But this probably won't ever be the case again.


I'm trying to understand bitcoin why its not possible to create a transaction in the network with an empty balance..

Its not possible because you don't have any UTXO's (unspent transaction outputs). Read more here: https://en.bitcoin.it/wiki/Transaction#Input


.. and what are the network rules, how miners validate transaction then ?

You find the awnser in the first 2 chapter here: https://en.bitcoin.it/wiki/Mining

Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!