what's double spend. Does it actually happen?
zero conf double spend works like this:
A buyer sends a payment to the merchant address.
Buyers address: 1aaa = 1
BTCThis transaction contains no fee or a very small fee to ensure it takes a long time to get confirmed. As long as the transaction is not confirmed the buyer still owns the money.
The merchant will see that the transaction has been broadcast to the network and is waiting for confirmation. Since the merchant allows zero-conf transactions the buyer is free to leave with whatever the buyer "bought".
Merchant address 1mmm = 0
BTC (1
BTC waiting to be confirmed)
The buyer then creates another transaction using the same input address (1aaa) sending the money (1
BTC) to a different address than that of the merchant. With this transaction a high fee is added thus increasing it's chances of being confirmed first.
If the new transaction gets confirmed first the old transaction is no longer valid as the address 1aaa no longer has 1
BTC assigned to it and in so the network will never confirm it.
The buyer aka thief has just stolen 1
BTC worth of goods from the merchant with incredible ease.