Thank you for your answer!
If everyone had opt-in-RBF enabled by default, 0-conf services can still see for each transaction whether it will (probably) be able to be replaced or not. We all agree the service has no certainty, but they can do risk management by evaluating how much funds they have sitting in unconfirmed transactions not signalling for replacement, the same amount sitting in unconfirmed transactions actively signalling for replacement, and set global thresolds (ex: no more than 1 BTC in the mempool in transactions not signalling replacement) and per-transaction theresold (ex: wait for N confirmations for amounts bigger than X).
Regarding miners having more power than you, I'm not sure I understand. If a miner is able to run software that considers all transactions in their mempool as replaceable, you certainly can too (for example, by running Bitcoin Knots instead of Bitcoin Core).
but they can do risk management by evaluating how much funds they have sitting in unconfirmed transactions not signalling for replacement
Would anyone even expend the effort if effectively all of the transactions are signalling for replacement (once all wallets have opt-in RBF enabled by default)?
In other words, this could be forced through at the wallet app/edge device level, but that would take longer -- rather than this change to the relay policy that the bitcoin core client implements.
If a miner is able to run software that considers all transactions in their mempool as replaceable
I confirm no blocks, I have no power to include a transaction that other miners will not.
Today miners and pools (or cartel of miners and pools) can include any valid transaction in a block.
and set global thresolds (...) and per-transaction
That doesn't prevent attacks, it just makes the weakest and most obvious attacks to be less likely to be successful. Zeroconf is simply not safe and the sooner it is put to rest (i.e., communicate that it will be financial suicide for anyone that continues to implement it) the better, in my opinion.
reply