| Wow that's super-confused! The original Bitcoin software supported transaction replacement. You could mark a transaction as non-final and then it could be replaced until it got confirmed (potentially gated by its locktime) or until a replacement was made that was marked final. As is necessary in a distributed system, the replacement and non-replacement was best-effort and an older version could be confirmed (or a version made later than a final version). Replacement was intended for use with payment channels, like incrementally updating an open account paying someone. Unfortunately, the functionality had a flaw: It enabled a DOS attack. You could make a transaction then replace it 2^32 times and only pay one fee. So we disabled it. Without the explicit functionality you could still replace transactions by spamming nodes (and esp miners) with the new transaction and hoping they accepted it, but it wasn't very reliable but also no longer DOS-attackable. Later, people pointed out that the DOS attack could be avoided if it was also required that each replacement increase the tx fee by at least the minimum transaction fee that would have been accepted. And the functionality was re-enabled: you could again mark transactions as non-final. When BCH was created they ripped out the functionality and falsely claimed that this made 'instant payments with 0 confirmations for small values' possible. This makes literally zero sense: First, in BCH you can still replace unconfirmed transactions, it's just less reliable. Secondly, replacement is functionality intended to enable faster transactions! Thirdly, you can disable it in Bitcoin (or replace a non-final one with a final version) and get the same behaviour as BCH if that's what your use case requires. Finally, its alleged that this was some dastardly move by Bitcoin devs to "break" "0-conf" transactions, fuled by people who can't understand that Bitcoin devs saying 0-conf transactions are not very secure doesn't mean that they don't like your ability to make them if you want to, and it ignores the fact that the basic replacement functionality was there in the very first version ( https://github.com/trottier/original-bitcoin/blob/92ee8d9a99... ) and had been disabled by the self-same people being attacked for adding it. It's basically 5G CAUSES COVID level of inanity, and it breaks my heart to see people duped by telephone-game polished versions of it. |