I've been reading some articles about 0-conf scams happening, where someone accepts bitcoin on-chain without waiting for even a single on-chain confirmation. In this blog post, it is described that before RBF (Replace-By-Fee, BIP125) became an “opt-out”-feature, miners would generally adhere to a “First-Seen-Safe” principle. That means, when adding transactions to their mempool: If two conflicting transactions (for example when double-spending), are seen, the node would generally simply accept the one it sees first and throws out the latter.

The blog entry states that since RBF became an “opt-out”-feature, most miners switched to a policy, where even if a transaction does not have RBF enabled, they would simply throw out old ones if a newer one has a higher fee, completely ignoring the RBF-Flag. This might of course be more profitable for miners and also useful for other use cases, like “unstucking” transactions that have fees that are too low to be accepted into blocks in the near future.

My question is now, how do miners handle duplicate on-chain transactions nowadays? Do they adhere to RBF and is there a way to find out?

As far as I’ve seen, in bitcoin-core, FSS is still the default behavior. But all nodes can basically do what they want with that. Nothing stops anyone from accepting/including any transaction they like in blocks they mine.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy