Bitcoin Forum
October 24, 2021, 08:59:10 PM *
News: Latest Bitcoin Core release: 22.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: How does someone send fake bitcoins?  (Read 7819 times)
mute20
Sr. Member
****
Offline Offline

Activity: 265
Merit: 250


21


View Profile
August 26, 2011, 05:50:25 PM
 #1

I am curious how does someone send fake bitcoins? Also how many confirmations does it take to be sure it is real?
1635109150
Hero Member
*
Offline Offline

Posts: 1635109150

View Profile Personal Message (Offline)

Ignore
1635109150
Reply with quote  #2

1635109150
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
1635109150
Hero Member
*
Offline Offline

Posts: 1635109150

View Profile Personal Message (Offline)

Ignore
1635109150
Reply with quote  #2

1635109150
Report to moderator
Gabi
Legendary
*
Offline Offline

Activity: 1148
Merit: 1008


If you want to walk on water, get out of the boat


View Profile
August 26, 2011, 06:00:44 PM
 #2

Mh.... you can't send fake bitcoins.

You can try to make 2 transactions one after the other and so try a double-spend but only one of them will be confirmed.

1 block usually is enough, but there is the chance (low chance) another one find a block and put into it the OTHER transaction and then the one who find the second block has the blockchain with the OTHER block and thus the first transaction is not valid.

But usually 1 block is enough

Stephen Gornick
Legendary
*
Offline Offline

Activity: 2506
Merit: 1003


View Profile
August 26, 2011, 06:17:32 PM
Last edit: August 26, 2011, 06:30:25 PM by Stephen Gornick
 #3

Also how many confirmations does it take to be sure it is real?

- http://en.bitcoin.it/wiki/FAQ#Why_do_I_have_to_wait_10_minutes_before_I_can_spend_money_I_received.3F

I am curious how does someone send fake bitcoins?

Without mining, you can try a race attack where you spend from two nodes (say, node A and node B) with the same coin at the same time to two different merchants.  It is possible that one merchant will see the spend from node A and another merchant will see the spend from node B.  Of course, as soon as there is a block, whichever spend reached the miner first will be the one included in the block.  If the merchant accepts as payment a transaction on 0/unconfirmed then that merchant has exposure to this race attack.  

There is not yet a system developed to counter this but a solution to this is for the merchant's node to listen to many nodes especially those of pools to see if there was another attempt to spend.  Within seconds the merchant can know that no other spend attempts were attempted and if a race attack were being attempted the chance of it succeeding drop to almost nothing.

While there are possible but not likely explanations that a double spend would be attempted, the risks to a brick and mortar merchant when accepting bitcoin on 0/unconfirmed are likely less than other risks faced (e.g., shoplifting, credit card chargebacks, etc.) 

There is another attack if the attacker is mining.  If a block is mined, the bad actor miner then makes a purchase with a merchant but then after securing the goods, announces the block which has that same coin spent to a different address -- likely one owned by the miner.  This is called the Finney attack:
 - http://en.bitcoin.it/wiki/Weaknesses#The_.22Finney.22_attack

The bitcoin client doesn't "confirm" until 6 blocks.  Waiting until 1/unconfirmed will lessen the risk to a Finney attack.  Waiting for 6/unconfirmed will lessen to nearly zero the risk that a payment received will be lost to a double spend.

Unichange.me

            █
            █
            █
            █
            █
            █
            █
            █
            █
            █
            █
            █
            █
            █
            █
            █


ttk2
Member
**
Offline Offline

Activity: 76
Merit: 10


View Profile
August 26, 2011, 06:44:57 PM
 #4

Also how many confirmations does it take to be sure it is real?

- http://en.bitcoin.it/wiki/FAQ#Why_do_I_have_to_wait_10_minutes_before_I_can_spend_money_I_received.3F

I am curious how does someone send fake bitcoins?

Without mining, you can try a race attack where you spend from two nodes (say, node A and node B) with the same coin at the same time to two different merchants.  It is possible that one merchant will see the spend from node A and another merchant will see the spend from node B.  Of course, as soon as there is a block, whichever spend reached the miner first will be the one included in the block.  If the merchant accepts as payment a transaction on 0/unconfirmed then that merchant has exposure to this race attack.  

There is not yet a system developed to counter this but a solution to this is for the merchant's node to listen to many nodes especially those of pools to see if there was another attempt to spend.  Within seconds the merchant can know that no other spend attempts were attempted and if a race attack were being attempted the chance of it succeeding drop to almost nothing.

While there are possible but not likely explanations that a double spend would be attempted, the risks to a brick and mortar merchant when accepting bitcoin on 0/unconfirmed are likely less than other risks faced (e.g., shoplifting, credit card chargebacks, etc.) 

There is another attack if the attacker is mining.  If a block is mined, the bad actor miner then makes a purchase with a merchant but then after securing the goods, announces the block which has that same coin spent to a different address -- likely one owned by the miner.  This is called the Finney attack:
 - http://en.bitcoin.it/wiki/Weaknesses#The_.22Finney.22_attack

The bitcoin client doesn't "confirm" until 6 blocks.  Waiting until 1/unconfirmed will lessen the risk to a Finney attack.  Waiting for 6/unconfirmed will lessen to nearly zero the risk that a payment received will be lost to a double spend.




Transactions only take a couple seconds to spread to the whole network. So any node should reieve booth transactions, once you see two transactions the client could simply warn the person taking payment that a race attack was underway. You would only have to wait a few seconds to see if there where any other transactions moving through the network that would conflict.

Just in case i do something worthwhile: 12YXLzbi4hfLaUxyPswRbKW92C6h5KsVnX
Dark Shikari
Newbie
*
Offline Offline

Activity: 8
Merit: 0


View Profile
August 26, 2011, 06:57:41 PM
 #5

1 confirmation isn't sufficient, because of this attack.  You need at least 2 confirmations to be reasonably safe from low-power attacks (i.e. any attack from an attacker who doesn't have much hash power).  Since an attacker with a great deal of hash power might be able to get more than 1 block in a row if lucky, it's probably better to wait for a more typical number of confirmations (e.g. 6).
o
Member
**
Offline Offline

Activity: 76
Merit: 10


View Profile
August 26, 2011, 07:02:53 PM
 #6

I am curious how does someone send fake bitcoins? Also how many confirmations does it take to be sure it is real?

You can confidence to tell other that there is no fake bitcoin. Technically, there is only transaction record in the bitcoin network, so you can at most only double spending. All transaction are checked by all client, so all fake "coin", or transaction with more in balance than out balance, will be noted by all people and would be dropped.
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!