Author

Topic: How does someone send fake bitcoins? (Read 7855 times)

o
member
Activity: 76
Merit: 10
August 26, 2011, 03: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.
newbie
Activity: 8
Merit: 0
August 26, 2011, 02: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).
member
Activity: 76
Merit: 10
August 26, 2011, 02: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.
legendary
Activity: 2506
Merit: 1010
August 26, 2011, 02:17:32 PM
#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.
legendary
Activity: 1148
Merit: 1008
If you want to walk on water, get out of the boat
August 26, 2011, 02: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
sr. member
Activity: 265
Merit: 250
21
August 26, 2011, 01: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?
Jump to: