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