<oembed><type>rich</type><version>1.0</version><author_name>npub1zw7cc8z78v6s3grujfvcv3ckpvg6kr0w7nz9yzvwyglyg0qu5sjsqhkhpx</author_name><author_url>https://nostr.ae/npub1zw7cc8z78v6s3grujfvcv3ckpvg6kr0w7nz9yzvwyglyg0qu5sjsqhkhpx</author_url><provider_name>njump</provider_name><provider_url>https://nostr.ae</provider_url><html>📅 Original date posted:2016-01-08&#xA;📝 Original message:Pieter Wuille via bitcoin-dev &lt;bitcoin-dev at lists.linuxfoundation.org&gt;&#xA;writes:&#xA;&gt; Yes, this is what I worry about. We&#39;re constructing a 2-of-2 multisig&#xA;&gt; escrow in a contract. I reveal my public key A, you do a 80-bit search for&#xA;&gt; B and C such that H(A and B) = H(B and C). You tell me your keys B, and I&#xA;&gt; happily send to H(A and B), which you steal with H(B and C).&#xA;&#xA;FWIW, this attack would effect the current lightning-network &#34;deployable&#xA;lightning&#34; design at channel establishment; we reveal our pubkey in the&#xA;opening packet (which is used to redeem a P2SH using normal 2of2).&#xA;&#xA;At least you need to grind before replying (which will presumably time&#xA;out), rather than being able to do it once the channel is open.&#xA;&#xA;We could pre-commit by exchanging hashes of pubkeys first, but contracts&#xA;on bitcoin are hard enough to get right that I&#39;m reluctant to add more&#xA;hoops.&#xA;&#xA;Cheers,&#xA;Rusty.</html></oembed>