How safe is sending out transactions using unconfirmed inputs for a service?

3

I've been running into problems with a high-traffic hot wallet, where a single transaction would lock up any input for a block with the spendzeroconfchange disabled.

Would it be safe for a service like Coinbase to use unconfirmed inputs on average transactions? Would I run into similar issues like MtGox did?

John T

Posted 2014-10-14T05:09:58.340

Reputation: 2 759

2It's not safe at all. Don't do it unless you believe that constantly rolling back your business transactions (to re-adjust your business logic to TXs that never confirm because their unspent/unconfirmed outputs were (double) spent from their previous owner) won't cause huge problems to your service sooner or later.George Kimionis 2014-10-14T08:27:18.077

Answers

1

Safety is relative---large payment processors like Coinbase probably have non-block-chain anti-fraud measures. However, a confirmation (and each additional confirmation after it) reduces the risk of a double spend fraud, so waiting for a certain number of confirmations is an easy and effective anti-fraud measure that doesn't cost you anything.

I don't know for sure what happened to MtGox, but it is true that an unconfirmed transaction can become effectively unspendable if any of its inputs become unavailable---which could happen because a block was created containing a transaction that already spent that input (a double spent) or because the transaction which created that input was added to a block in a mutated form (transaction malleability).

David A. Harding

Posted 2014-10-14T05:09:58.340

Reputation: 10 154