Post
Topic
Board Development & Technical Discussion
Re: Is the only difference between BTC and BCC the 8 MB block?
by
Quickseller
on 04/01/2018, 05:02:07 UTC
Also you cannot cancel transactions on Bitcoin Cash, so you can do 0 confirmation transactions.

False.  0-confirmation transactions were never safe, and are not safe now in so-called “Bitcoin Cash”.  Also, Bitcoin transactions cannot be “cancelled”.

Bitcoin now has a strictly opt-in feature, Replace-By-Fee (RBF), which permits clearly marked RBF unconfirmed transactions to be replaced.  The majority of transactions do not use this feature;
It was not long ago that businesses were relying upon 0-confirmation transactions, and had very little "credit losses" from doing so. The reason why this was generally safe in the past was because businesses could look at the transaction fee attached to a transaction, and very confidently predict if a transaction would confirm within ~3 blocks, even if the network had very "bad luck" in the subsequent three blocks.

Today, most transaction included in blocks cannot be predicted they will be confirmed three blocks ahead of time because the necessary transaction fee to get a transaction included in a block is so volatile, and has the potential to spike.

Also, the default settings of Bitcoin Core (which in part are in place due to realistic memory limitations) result in many transactions being dropped from many (most?) nodes' mempools that were expected to confirm quickly at the time the transaction was broadcast because of spikes in transaction volume and/or spikes in necessary transaction fees required to get a transaction confirmed. This means it is often trivial to double spend a 0-confirmation transaction that does not include a "RBF" flag that was expected to quickly confirm (within 4 hours/25 blocks) as of when it was broadcast.

For a business using Bitcoin Cash, the business can look at a transaction and reasonably infer if a transaction will quickly confirm, and nodes are not needing to drop large percentages of transactions from their mempools after they relay said transactions.