<oembed><type>rich</type><version>1.0</version><author_name>npub1jdl3plz00rvxwc6g2ckemzrgg0amx5wen4kfvs3laxtssxvk9cvsf3gh0m</author_name><author_url>https://nostr.ae/npub1jdl3plz00rvxwc6g2ckemzrgg0amx5wen4kfvs3laxtssxvk9cvsf3gh0m</author_url><provider_name>njump</provider_name><provider_url>https://nostr.ae</provider_url><html>📅 Original date posted:2022-12-05&#xA;📝 Original message:This will greatly centralize the network as well as not actually achieve&#xA;the intended goal which is literally impossible.&#xA;&#xA;On Mon, Dec 5, 2022, 8:27 AM El_Hoy via bitcoin-dev &lt;&#xA;bitcoin-dev at lists.linuxfoundation.org&gt; wrote:&#xA;&#xA;&gt; The only option I see against the attack Peter Todd is doing to opt-in RBF&#xA;&gt; and 0Conf bitcoin usage is working on a bitcoin core implementation that&#xA;&gt; stops propagation of full-rbf replaced blocks. Running multiple of such&#xA;&gt; nodes on the network will add a risk to miners that enable full-rbf that&#xA;&gt; would work as an incentive against that.&#xA;&gt;&#xA;&gt; Obviously that would require adding an option on bitcoin core (that is not&#xA;&gt; technically but politically difficult to implement as Petter Todd already&#xA;&gt; have commit access to the main repository).&#xA;&gt;&#xA;&gt; That said, a sufficiently incentivized actor (like Daniel Lipshitz or Muun&#xA;&gt; wallet developers) could work on a fork and run several nodes with such&#xA;&gt; functionality. As far as I understand the percolation model, with 10 to 20&#xA;&gt; nodes running such a rule would create a significant risk for full-rbf&#xA;&gt; miners.&#xA;&gt;&#xA;&gt; Regards.&#xA;&gt;&#xA;&gt; ---  Eloy&#xA;&gt;&#xA;&gt;&#xA;&gt; On Tue, Nov 15, 2022 at 11:43 AM Peter Todd via bitcoin-dev &lt;&#xA;&gt; bitcoin-dev at lists.linuxfoundation.org&gt; wrote:&#xA;&gt;&#xA;&gt;&gt; On Tue, Nov 15, 2022 at 03:36:08PM +1000, Anthony Towns via bitcoin-dev&#xA;&gt;&gt; wrote:&#xA;&gt;&gt; &gt; On Tue, Nov 08, 2022 at 01:16:13PM -0500, Peter Todd via bitcoin-dev&#xA;&gt;&gt; wrote:&#xA;&gt;&gt; &gt; &gt; FYI I&#39;ve gotten a few hundred dollars worth of donations to this&#xA;&gt;&gt; effort, and&#xA;&gt;&gt; &gt; &gt; have raised the reward to about 0.02 BTC, or $400 USD at current&#xA;&gt;&gt; prices.&#xA;&gt;&gt; &gt;&#xA;&gt;&gt; &gt; Seems like this has been mostly claimed (0.014btc / $235, 9238sat/vb):&#xA;&gt;&gt;&#xA;&gt;&gt; I&#39;m turning it back on when (if) the mempool settles down. I&#39;ve got more&#xA;&gt;&gt; than&#xA;&gt;&gt; enough donations to give another run at it (the majority was donated&#xA;&gt;&gt; privately&#xA;&gt;&gt; FWIW). There&#39;s a risk of the mempool filling up again of course; hard to&#xA;&gt;&gt; avoid&#xA;&gt;&gt; that.&#xA;&gt;&gt;&#xA;&gt;&gt; Right now of course it&#39;s really easy to double spend with the obvious&#xA;&gt;&gt; low-fee/high-fee method as the min relay fee keeps shifting.&#xA;&gt;&gt;&#xA;&gt;&gt; &gt;&#xA;&gt;&gt; https://mempool.space/tx/397dcbe4e95ec40616e3dfc4ff8ffa158d2e72020b7d11fc2be29d934d69138c&#xA;&gt;&gt; &gt;&#xA;&gt;&gt; &gt; The block it was claimed in seems to have been about an hour after the&#xA;&gt;&gt; &gt; default mempool filled up:&#xA;&gt;&gt; &gt;&#xA;&gt;&gt; &gt; https://twitter.com/murchandamus/status/1592274621977477120&#xA;&gt;&gt; &gt;&#xA;&gt;&gt; &gt; That block actually seems to have included two&#xA;&gt;&gt; &gt; alice.btc.calendar.opentimestamps.org txs, the other paying $7.88&#xA;&gt;&gt; &gt; (309sat/vb):&#xA;&gt;&gt; &gt;&#xA;&gt;&gt; &gt;&#xA;&gt;&gt; https://mempool.space/tx/ba9670109a6551458d5e1e23600c7bf2dc094894abdf59fe7aa020ccfead07cf&#xA;&gt;&gt;&#xA;&gt;&gt; The second is because I turned down the full-rbf reward to more normal fee&#xA;&gt;&gt; levels. There&#39;s also another full-rbf double-spend from the Bob calendar,&#xA;&gt;&gt; along&#xA;&gt;&gt; the same lines:&#xA;&gt;&gt; 7e76b351009326a574f3120164dbbe6d85e07e04a7bbdc40f0277fcb008d2cd2&#xA;&gt;&gt;&#xA;&gt;&gt; I double-spent the txin of the high fee tx that got mined. But I&#xA;&gt;&gt; mistakenly had&#xA;&gt;&gt; RBF enabled in that double-spend, so while it propagated initially, I&#xA;&gt;&gt; believe&#xA;&gt;&gt; it was replaced when something (someone?) rebroadcast the high-fee 397dcb&#xA;&gt;&gt; tx.&#xA;&gt;&gt;&#xA;&gt;&gt; &gt; Timeline (utc) to me looks like:&#xA;&gt;&gt; &gt;&#xA;&gt;&gt; &gt;  - 13:12 - block 763148 is mined: last one that had a min fee &lt;&#xA;&gt;&gt; 1.5sat/vb&#xA;&gt;&gt; &gt;  - 13:33 -&#xA;&gt;&gt; f503868c64d454c472859b793f3ee7cdc8f519c64f8b1748d8040cd8ce6dc6e1&#xA;&gt;&gt; &gt;            is announced and propogates widely (1.2sat/vb)&#xA;&gt;&gt; &gt;  - 18:42 -&#xA;&gt;&gt; 746daab9bcc331be313818658b4a502bb4f3370a691fd90015fabcd7759e0944&#xA;&gt;&gt; &gt;            is announced and propogates widely (1.2sat/vb)&#xA;&gt;&gt; &gt;  - 21:52 - ba967010 tx is announced and propogates widely, since&#xA;&gt;&gt; &gt;            conflicting tx 746daab9 has been removed from default&#xA;&gt;&gt; &gt;          mempools&#xA;&gt;&gt; &gt;  - 21:53 - murch tweets about default mempool filling up&#xA;&gt;&gt; &gt;  - 22:03 - 397dcbe4 tx is announced and propogates widely, since&#xA;&gt;&gt; &gt;            conflicting tx f503868 has already been removed from default&#xA;&gt;&gt; &gt;          mempools&#xA;&gt;&gt;&#xA;&gt;&gt; Is that 22:03 time for 397 from your node&#39;s logs? It was originally&#xA;&gt;&gt; announced&#xA;&gt;&gt; hours earlier. From one of my full-rbf nodes:&#xA;&gt;&gt;&#xA;&gt;&gt;     2022-11-14T14:08:37Z [mempool] replacing tx&#xA;&gt;&gt; 764867062b67fea61810c3858d587da83a28290545e882935a32285028084317 with&#xA;&gt;&gt; 397dcbe4e95ec40616e3dfc4ff8ffa158d2e72020b7d11fc2be29d934d69138c for&#xA;&gt;&gt; 0.00468 additional fees, -1 delta bytes&#xA;&gt;&gt;&#xA;&gt;&gt; &gt;  - 22:35 - block 763189 is mined&#xA;&gt;&gt; &gt;  - 22:39 - block 763190 is mined&#xA;&gt;&gt; &gt;  - 23:11 - block 763191 is mined&#xA;&gt;&gt; &gt;  - 23:17 - block 763192 is mined including 397dcbe4&#xA;&gt;&gt; &gt;&#xA;&gt;&gt; &gt; miningpool.observer reports both 397dcbe4 and ba967010 as missing in the&#xA;&gt;&gt; &gt; first three blocks, and gives similar mempool ages for those txs to what&#xA;&gt;&gt; &gt; my logs report:&#xA;&gt;&gt; &gt;&#xA;&gt;&gt; &gt;&#xA;&gt;&gt; https://miningpool.observer/template-and-block/0000000000000000000436aba59d8430061e0e50592215f7f263bfb1073ccac7&#xA;&gt;&gt; &gt;&#xA;&gt;&gt; https://miningpool.observer/template-and-block/00000000000000000005600404792bacfd8a164d2fe9843766afb2bfbd937309&#xA;&gt;&gt; &gt;&#xA;&gt;&gt; https://miningpool.observer/template-and-block/00000000000000000004a3073f58c9eae40f251ea7aeaeac870daeac4b238fd1&#xA;&gt;&gt; &gt;&#xA;&gt;&gt; &gt; That presumably means those pools (AntPool twice and &#34;unknown&#34;) are&#xA;&gt;&gt; &gt; running with large mempools that didn&#39;t kept the earlier 1.2sat/vb txs.&#xA;&gt;&gt;&#xA;&gt;&gt; To be clear, you think that AntPool and that other exchange is running&#xA;&gt;&gt; with a&#xA;&gt;&gt; larger than normal max mempool size limit? You mean those miners *did*&#xA;&gt;&gt; keep the&#xA;&gt;&gt; earlier 1.2sat/vb tx?&#xA;&gt;&gt;&#xA;&gt;&gt; &gt; The txs were mined by Foundry:&#xA;&gt;&gt; &gt;&#xA;&gt;&gt; &gt;&#xA;&gt;&gt; https://miningpool.observer/template-and-block/00000000000000000001382a226aedac822de80309cca2bf1253b35d4f8144f5&#xA;&gt;&gt; &gt;&#xA;&gt;&gt; &gt; This seems to be pretty good evidence that we currently don&#39;t have any&#xA;&gt;&gt; &gt; significant hashrate mining with fullrbf policies (&lt;0.5% if there was a&#xA;&gt;&gt; &gt; high fee replacement available prior to every block having been mined),&#xA;&gt;&gt; &gt; despite the bounty having been collected.&#xA;&gt;&gt;&#xA;&gt;&gt; Oh, we can put much lower bounds on that. I&#39;ve been running OTS calendars&#xA;&gt;&gt; with&#xA;&gt;&gt; full-rbf replacements for a few months without clear evidence of a&#xA;&gt;&gt; full-rbf&#xA;&gt;&gt; replacement.  While there was good reason to think some miners were mining&#xA;&gt;&gt; full-rbf before a few years back, they probably didn&#39;t bother to reapply&#xA;&gt;&gt; their&#xA;&gt;&gt; patches each upgrade. `mempoolfullrbf=1` is much simpler to use.&#xA;&gt;&gt;&#xA;&gt;&gt; --&#xA;&gt;&gt; https://petertodd.org &#39;peter&#39;[:-1]@petertodd.org&#xA;&gt;&gt; _______________________________________________&#xA;&gt;&gt; bitcoin-dev mailing list&#xA;&gt;&gt; bitcoin-dev at lists.linuxfoundation.org&#xA;&gt;&gt; https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev&#xA;&gt;&gt;&#xA;&gt; _______________________________________________&#xA;&gt; bitcoin-dev mailing list&#xA;&gt; bitcoin-dev at lists.linuxfoundation.org&#xA;&gt; https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev&#xA;&gt;&#xA;-------------- next part --------------&#xA;An HTML attachment was scrubbed...&#xA;URL: &lt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20221205/ce59b2c5/attachment.html&gt;</html></oembed>