<oembed><type>rich</type><version>1.0</version><author_name>npub17fjkngg0s0mfx4uhhz6n4puhflwvrhn2h5c78vdr5xda4mvqx89swntr0s</author_name><author_url>https://nostr.ae/npub17fjkngg0s0mfx4uhhz6n4puhflwvrhn2h5c78vdr5xda4mvqx89swntr0s</author_url><provider_name>njump</provider_name><provider_url>https://nostr.ae</provider_url><html>📅 Original date posted:2020-06-20&#xA;📝 Original message:&#xA;Hello Dave and list,&#xA;&#xA;Thanks for your quick answers!&#xA;&#xA;The attacker would be broadcasting the latest&#xA;&gt; state, so the honest counterparty would only need to send one blind&#xA;&gt; child.&#xA;&gt;&#xA;&#xA;Exactly, if the attacker submits an outdated transaction he would be&#xA;shooting himself in the foot,&#xA;as we could claim the revocation paths when seeing the transaction in a&#xA;block and get all the&#xA;channel funds (since the attacker&#39;s outputs will be CSV-locked).&#xA;&#xA;The only way your Bitcoin peer will relay your blind child&#xA;&gt; is if it already has the parent transaction.&#xA;&gt;&#xA;&#xA;That&#39;s an excellent point that I missed in the blind CPFP carve-out trick!&#xA;I think this makes the&#xA;blind CPFP carve-out quite hard in practice (even using getdata - thanks&#xA;for detailing that option)...&#xA;&#xA;In the worst case scenario where most miners&#39; mempools contain the&#xA;attacker&#39;s tx and the rest of&#xA;the network&#39;s mempools contains the honest participant&#39;s tx, I think there&#xA;isn&#39;t much we can do.&#xA;We&#39;re simply missing information, so it looks like the only good solution&#xA;is to avoid being in that&#xA;situation by having a foot in miners&#39; mempools. Do you think it&#39;s&#xA;unreasonable to expect at least&#xA;some LN nodes to also invest in running nodes in mining pools, ensuring&#xA;that they learn about&#xA;attackers&#39; txs and can potentially share discovered preimages with the&#xA;network off-chain (by&#xA;gossiping preimages found in the mempool over LN)? I think that these&#xA;recent attacks show that&#xA;we need (at least some) off-chain nodes to be somewhat heavily invested in&#xA;on-chain operations&#xA;(layers can&#39;t be fully decoupled with the current security assumptions -&#xA;maybe Eltoo will help&#xA;change that in the future?).&#xA;&#xA;Thank you for your time!&#xA;Bastien&#xA;&#xA;&#xA;&#xA;Le ven. 19 juin 2020 à 22:53, David A. Harding &lt;dave at dtrt.org&gt; a écrit :&#xA;&#xA;&gt; On Fri, Jun 19, 2020 at 03:58:46PM -0400, David A. Harding via bitcoin-dev&#xA;&gt; wrote:&#xA;&gt; &gt; I think you&#39;re assuming here that the attacker broadcast a particular&#xA;&gt; &gt; state.&#xA;&gt;&#xA;&gt; Whoops, I managed to confuse myself despite looking at Bastien&#39;s&#xA;&gt; excellent explainer.  The attacker would be broadcasting the latest&#xA;&gt; state, so the honest counterparty would only need to send one blind&#xA;&gt; child.  However, the blind child will only be relayed by a Bitcoin peer&#xA;&gt; if the peer also has the parent transaction (the latest state) and, if&#xA;&gt; it has the parent transaction, you should be able to just getdata(&#39;tx&#39;,&#xA;&gt; $txid) that transaction from the peer without CPFPing anything.  That&#xA;&gt; will give you the preimage and so you can immediately resolve the HTLC&#xA;&gt; with the upstream channel.&#xA;&gt;&#xA;&gt; Revising my conclusion from the previous post:&#xA;&gt;&#xA;&gt; I think the strongman argument for the attack would be that the attacker&#xA;&gt; will be able to perform a targeted relay of the low-feerate&#xA;&gt; preimage-containing transaction to just miners---everyone else on the&#xA;&gt; network will receive the honest user&#39;s higher-feerate expired-timelock&#xA;&gt; transaction.  Unless the honest user happens to have a connection to a&#xA;&gt; miner&#39;s node, the user will neither be able to CPFP fee bump nor use&#xA;&gt; getdata to retrieve the preimage.&#xA;&gt;&#xA;&gt; Sorry for the confusion.&#xA;&gt;&#xA;&gt; -Dave&#xA;&gt;&#xA;-------------- next part --------------&#xA;An HTML attachment was scrubbed...&#xA;URL: &lt;http://lists.linuxfoundation.org/pipermail/lightning-dev/attachments/20200620/6caf18ec/attachment.html&gt;</html></oembed>