<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <updated></updated>
  <generator>https://nostr.ae</generator>

  <title>Nostr notes by </title>
  <author>
    <name></name>
  </author>
  <link rel="self" type="application/atom+xml" href="https://nostr.ae/npub1ej6vep7y2km5l6awukffelg8yeppkth2vjkjk9jypd5w336rxggs3p9cq8.rss" />
  <link href="https://nostr.ae/npub1ej6vep7y2km5l6awukffelg8yeppkth2vjkjk9jypd5w336rxggs3p9cq8" />
  <id>https://nostr.ae/npub1ej6vep7y2km5l6awukffelg8yeppkth2vjkjk9jypd5w336rxggs3p9cq8</id>
  <icon></icon>
  <logo></logo>




  <entry>
    <id>https://nostr.ae/nevent1qqs90wwcy50w3qtmztt23j578wtq6rqujgh55t0rm7jm852z99edj2qzyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepzuw06je</id>
    
      <title type="html">📅 Original date posted:2016-08-09 📝 Original message: On ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs90wwcy50w3qtmztt23j578wtq6rqujgh55t0rm7jm852z99edj2qzyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepzuw06je" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqstvn8w0hlezf3c5nqcdwajeev7xl46yq8pgcrc9d9hsjgtss7995gu33mkk&#39;&gt;nevent1q…3mkk&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2016-08-09&lt;br/&gt;📝 Original message:&lt;br/&gt;On Wed, Aug 10, 2016 at 06:36:11AM &#43;0930, Rusty Russell wrote:&lt;br/&gt;&amp;gt; Yes, I think we agree some &amp;#34;filter hint&amp;#34; is needed to avoid a crazy&lt;br/&gt;&amp;gt; amount of outsourcing work (eg. first 8/16 bytes of txid).  I don&amp;#39;t&lt;br/&gt;&amp;gt; think an HMAC check per registered commitment is quite fast enough.&lt;br/&gt;&lt;br/&gt;For #1, the HMAC would be pre-computed by the outsourcer. So the flow&lt;br/&gt;looks like:&lt;br/&gt;&lt;br/&gt;1. The outsourcer takes the txid, HMAC(txid&#43;salt1) and encrypts the blob&lt;br/&gt;2. The outsourcer gives the 32-byte hmac and blob to the watcher&lt;br/&gt;3. The watcher adds the 32-byte hmac and the blob to a key-value store&lt;br/&gt;	(the watcher can optionally truncate or whatever)&lt;br/&gt;4. When the watcher receives a new block, they HMAC(txid&#43;salt1) all&lt;br/&gt;transactions and compare against the key-value store&lt;br/&gt;&lt;br/&gt;This method does not require significant computation upon receiving a&lt;br/&gt;new block and checking against the datastore. I forgot to note, that the&lt;br/&gt;salt2 is sort of unnecessary, it can just be the pure txid as the key&lt;br/&gt;but was there for superstition and aid in understanding what&amp;#39;s going on.&lt;br/&gt;I was just making a point that there needs to be some kind of &amp;#34;hint&amp;#34;/key&lt;br/&gt;to look for.&lt;br/&gt;&lt;br/&gt;&amp;gt; &amp;gt; 2. HMAC the transaction itself (not txid) as the secret key (or anything&lt;br/&gt;&amp;gt; &amp;gt; part of the transaction, as long as it isn&amp;#39;t SHA256(tx) for obvious&lt;br/&gt;&amp;gt; &amp;gt; reasons). I like something along these lines better than option #1.&lt;br/&gt;&amp;gt; &amp;gt; Whatever computational cost there is will be extremely low, as the&lt;br/&gt;&amp;gt; &amp;gt; operations are constrained by block size.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; If we include the witness in that HMAC we risk reintroducing&lt;br/&gt;&amp;gt; malleability.  If we don&amp;#39;t, we risk txs being predictable.&lt;br/&gt;&lt;br/&gt;I was referring to the non-witness txid when making that comment, but&lt;br/&gt;there should be sufficient entropy from the revocation hash (whose P2WSH&lt;br/&gt;is part of the Commitment outputs).&lt;br/&gt;&lt;br/&gt;&amp;gt; I can think of a few fixes: insert some randomness in the tx (OP_RETURN?&lt;br/&gt;&amp;gt; Different addresses each time?), or try to extract the input signature&lt;br/&gt;&amp;gt; from the witness, which is unguessable, as our filter?&lt;br/&gt;&lt;br/&gt;Yeah! I like this idea to use one&amp;#39;s own input sig as the key for the&lt;br/&gt;encrypted blob too. If Alice is the one outsourcing the Commitment which&lt;br/&gt;Bob can broadcast, Bob can only broadcast it using the sig Alice gave&lt;br/&gt;Bob as it&amp;#39;s spending from a 2-of-2. If Alice is outsourcing Bob&amp;#39;s&lt;br/&gt;Commitment broadcasts, a hash of her input signature is a solid way to&lt;br/&gt;derive a key as well without malleability concerns.&lt;br/&gt;&lt;br/&gt;I also like that it &amp;#34;encourages&amp;#34; more nodes to download witness data;&lt;br/&gt;ignoring witnesses is a concern of mine which this helps with :^)&lt;br/&gt;&lt;br/&gt;-- &lt;br/&gt;Joseph Poon
    </content>
    <updated>2023-06-09T12:46:34Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsq0k4kdr0t05ph3epy3nnn96mwz7909qg89649wdcunwycqq5amwszyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepz7tq7sx</id>
    
      <title type="html">📅 Original date posted:2016-08-09 📝 Original message: Hi ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsq0k4kdr0t05ph3epy3nnn96mwz7909qg89649wdcunwycqq5amwszyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepz7tq7sx" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsrx34se59szwpg02mx3d9ygdp3l7kf9r4g7xddj649y9262u7v3lcjc3jlg&#39;&gt;nevent1q…3jlg&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2016-08-09&lt;br/&gt;📝 Original message:&lt;br/&gt;Hi Rusty,&lt;br/&gt;&lt;br/&gt;On Tue, Aug 09, 2016 at 03:13:57PM &#43;0930, Rusty Russell wrote:&lt;br/&gt;&amp;gt; We send the observer the &amp;#34;steal&amp;#34; tx every update (not really: we only&lt;br/&gt;&amp;gt; need to send the to-us/to-them amounts, pubkeys, HTLCs info and sig).&lt;br/&gt;&amp;gt; This gets encrypted&#43;HMAC with the txid of the commit tx (or, if that&amp;#39;s&lt;br/&gt;&amp;gt; too guessable, the SHA256() of our signature on the commit tx).&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; [snip]&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; If we want to obscure our funding tx, we can simply use a txid qualifier&lt;br/&gt;&amp;gt; the same way you did (and maybe use the sha256(txid) as the encryption&lt;br/&gt;&amp;gt; key to avoid weakening that).&lt;br/&gt;&lt;br/&gt;I think it may be necessary to identify when the transaction occurs as&lt;br/&gt;an index for outsourcing services, so the key can&amp;#39;t be dervied directly&lt;br/&gt;from the txid with a single HMAC/sha256. It&amp;#39;s possible there are&lt;br/&gt;millions of transactions to compare, and an index based on txid is&lt;br/&gt;necessary. The two options I can see are:&lt;br/&gt;&lt;br/&gt;1. Take the txid and use two salts (globally for all users).&lt;br/&gt;HMAC(txid&#43;salt1) and HMAC(txid&#43;salt2). Give the result of&lt;br/&gt;HMAC(txid&#43;salt1) and the encrypted blob to the outsourcer. The first is&lt;br/&gt;used for identifying the txid, the second salt is for the secret key and&lt;br/&gt;can only be derived when the actual txid is seen. When a transaction is&lt;br/&gt;received, do HMAC(txid&#43;salt1) and see if there&amp;#39;s any matches to decrypt&lt;br/&gt;&amp;amp; broadcast.&lt;br/&gt;&lt;br/&gt;2. HMAC the transaction itself (not txid) as the secret key (or anything&lt;br/&gt;part of the transaction, as long as it isn&amp;#39;t SHA256(tx) for obvious&lt;br/&gt;reasons). I like something along these lines better than option #1.&lt;br/&gt;Whatever computational cost there is will be extremely low, as the&lt;br/&gt;operations are constrained by block size.&lt;br/&gt;&lt;br/&gt;I do like encrypting the outsourcing blobs best as an approach so far,&lt;br/&gt;as it gives maximum flexibility in terms of implementation (individual&lt;br/&gt;client behavior can be upgraded in the future without modifying the&lt;br/&gt;outsourcing code/nodes in most instances).&lt;br/&gt;&lt;br/&gt;-- &lt;br/&gt;Joseph Poon
    </content>
    <updated>2023-06-09T12:46:34Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsgapqk0ssy8648xkfsrxuvjqsmqk0n0e0luv2f02q8t3kkfdg4t5szyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepza2rvjh</id>
    
      <title type="html">📅 Original date posted:2015-08-11 📝 Original message: Hi ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsgapqk0ssy8648xkfsrxuvjqsmqk0n0e0luv2f02q8t3kkfdg4t5szyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepza2rvjh" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsfdq7n2fz4r36a068tnd7z8lhyerq3xv7ph9ydt6swqvvt6xmh6zshu4vvl&#39;&gt;nevent1q…4vvl&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-08-11&lt;br/&gt;📝 Original message:&lt;br/&gt;Hi Anthony,&lt;br/&gt;&lt;br/&gt;Yes, reorg attacks are definitely a known with Bitcoin. You can send&lt;br/&gt;money to an exchange and then double-spend withdraw several&lt;br/&gt;confirmations later if you have infinite hashrate.&lt;br/&gt;&lt;br/&gt;With lightning, I think to fund the channel, the minimum confirmation&lt;br/&gt;times should be fairly high (even above 6 confirms). If a 120-block&lt;br/&gt;reorg occurs, bitcoin is pretty busted anyway, might be of out-of-scope&lt;br/&gt;with Lightning. IMO, lightning reduces this attack.&lt;br/&gt;&lt;br/&gt;The nice thing about payment channels is that after it&amp;#39;s set up, you&lt;br/&gt;don&amp;#39;t worry about confirmation times if it&amp;#39;s off-chain. For that reason,&lt;br/&gt;confirmation times (and block mining rate, ~10 minutes) matters a lot&lt;br/&gt;less.&lt;br/&gt;&lt;br/&gt;On Wed, Aug 12, 2015 at 03:38:16AM &#43;0800, Anthony Towns wrote:&lt;br/&gt;&amp;gt; Hi,&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; This is probably just stating the obvious. Sometimes that&amp;#39;s useful though,&lt;br/&gt;&amp;gt; and maybe this is one of those times!&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; When setting up a new channel with an untrusted counterparty, you will wait&lt;br/&gt;&amp;gt; for N confirmations of their anchor transactions. Further, N might be well&lt;br/&gt;&amp;gt; known and common amongst a lot of lightning hubs (if it&amp;#39;s not, then it will&lt;br/&gt;&amp;gt; be hard to know how long setting up a channel will take). What if N is too&lt;br/&gt;&amp;gt; small, and I can afford to do a double-spend despite M (M &amp;gt; N)&lt;br/&gt;&amp;gt; confirmations as long as it gains me $X?&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Then I do the following:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;  - I open one or more anonymous channels, capable of receiving at least $X&lt;br/&gt;&amp;gt;  - I start the doublespend fork&lt;br/&gt;&amp;gt;  - I then simultaneously construct multiple lightning channels, funding&lt;br/&gt;&amp;gt; them at $d each.&lt;br/&gt;&amp;gt;  - I wait for N confirmations so my new channels are active.&lt;br/&gt;&amp;gt;  - I quickly route multiple payments from my new channels to my anonymous&lt;br/&gt;&amp;gt; channels until I can&amp;#39;t send anymore&lt;br/&gt;&amp;gt;  - I publish the doublespending fork, so that my $d*n never got spent&lt;br/&gt;&amp;gt;  - I close my original anonymous channels gaining $X &amp;lt;= $d*n&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The only people worse off are the ones who opened the $d channels after N&lt;br/&gt;&amp;gt; confirmations -- any intermediary hubs are fine. Those hubs didn&amp;#39;t have to&lt;br/&gt;&amp;gt; commit any funds to the new channels for the attack to work; the money they&lt;br/&gt;&amp;gt; lose was that in other channels they used to route my payments forwards.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; With onion routing, none of the ripped off hubs need know where the money&lt;br/&gt;&amp;gt; ended up, so there&amp;#39;s not a lot of potential to do iron pipe cryptography to&lt;br/&gt;&amp;gt; get your money back.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The only constraints here (I think) are:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;  - how many channels you can open in M-N blocks&lt;br/&gt;&amp;gt;  - you have to have &amp;gt;$X funds available in the first place to commit to the&lt;br/&gt;&amp;gt; double spend&lt;br/&gt;&amp;gt;  - how much capacity the lightning network actually has in routable bitcoin&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; If it costs 1.4*25*M bitcoin to mount a doublespend attack over M blocks&lt;br/&gt;&amp;gt; (ie bribing 67% of hashpower for the time it normally takes to do 2*M&lt;br/&gt;&amp;gt; blocks), and you can open 2000 channels per block, then that gives&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;  X &amp;gt; 1.4*25*M&lt;br/&gt;&amp;gt;  n &amp;lt; 2000*(M-N)&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;  X &amp;lt; d*n = d*2000*(M-N)&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;  1.4*25*M &amp;lt; X &amp;lt; d*2000*(M-N)&lt;br/&gt;&amp;gt;  35/2000 * M &amp;lt; d * (M-N)&lt;br/&gt;&amp;gt;  35/2000 * (1 &#43; N/(M-N)) &amp;lt; d???&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Setting N = 12, M = 15 gives:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt;  d = 35/2000 * (1&#43;4) = 7/80&lt;br/&gt;&amp;gt;  n = 6000&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; so you&amp;#39;re putting up 525 bitcoin by flooding the blockchain with anchor&lt;br/&gt;&amp;gt; transactions, sending it to yourself over lightning, then doublespending&lt;br/&gt;&amp;gt; the original 525 btc at a cost of spending ~505 btc on hashpower. Expensive&lt;br/&gt;&amp;gt; ($157k capital to make $6k profit), but still worthwhile (3.8% ROI in ~6&lt;br/&gt;&amp;gt; hours is 16% a day, or about 5e25 % annualised...)&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Maybe if you make N depend on d you could mitigate this though -- something&lt;br/&gt;&amp;gt; like, if you to put &amp;#34;$d&amp;#34; on your side of the channel, you&amp;#39;ll have to wait&lt;br/&gt;&amp;gt; for 5&#43;(d*2000/25)*2 confirmations. So a $50 channel is d=.2 BTC, which is&lt;br/&gt;&amp;gt; ~37 confirmations, or about 6 hours. Increasing the blocksize (number of&lt;br/&gt;&amp;gt; channels openable per block) or lowering the block reward (decreasing the&lt;br/&gt;&amp;gt; cost of a doublespend fork) increases the confirmations required though...&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Cheers,&lt;br/&gt;&amp;gt; aj&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; -- &lt;br/&gt;&amp;gt; Anthony Towns &amp;lt;aj at erisian.com.au&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt; Lightning-dev mailing list&lt;br/&gt;&amp;gt; Lightning-dev at lists.linuxfoundation.org&lt;br/&gt;&amp;gt; &lt;a href=&#34;https://lists.linuxfoundation.org/mailman/listinfo/lightning-dev&#34;&gt;https://lists.linuxfoundation.org/mailman/listinfo/lightning-dev&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;-- &lt;br/&gt;Joseph Poon
    </content>
    <updated>2023-06-09T12:44:01Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqstjx30jz0t6f70sn7e60h23e2l3j6h5qsr7x7vellvne8d2sx3mdszyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepzz7zn23</id>
    
      <title type="html">📅 Original date posted:2015-08-11 📝 Original message: Hi ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqstjx30jz0t6f70sn7e60h23e2l3j6h5qsr7x7vellvne8d2sx3mdszyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepzz7zn23" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsvxl0wd0377a8mj4zy63s0mafsgjzxhjqux7zfj4a0nes89uysvcs2zmnhd&#39;&gt;nevent1q…mnhd&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-08-11&lt;br/&gt;📝 Original message:&lt;br/&gt;Hi Mats,&lt;br/&gt;&lt;br/&gt;On Tue, Aug 11, 2015 at 10:44:27PM &#43;0200, Mats Jerratsch wrote:&lt;br/&gt;&amp;gt; Do you mind if I start calling it a Lightning Network Implementation&lt;br/&gt;&amp;gt; then? ;)&lt;br/&gt;&lt;br/&gt;I can&amp;#39;t stop you from calling it whatever you want, however, I&amp;#39;m just&lt;br/&gt;concerned with any system which has some implicit level of trust,&lt;br/&gt;especially with long-term systemic risks (e.g. implications for&lt;br/&gt;fungibility, and other social accessibility costs). The goal of LN is to&lt;br/&gt;allow you to connect to anyone without the risk of the counterparty&lt;br/&gt;outright stealing or encumbering funds. &lt;br/&gt;&lt;br/&gt;So if the purpose is to get it working today with some trust&lt;br/&gt;compromises, then any potential design trust issues may be associated&lt;br/&gt;with LN. I don&amp;#39;t want to encourage the use of systems which lets you&lt;br/&gt;maliciously encumber HTLC funds in transit and funding on main-net. As&lt;br/&gt;much as I would absolutely appreciate how a semi-trusted implementation&lt;br/&gt;would help counter the &amp;#34;Lightning doesn&amp;#39;t exist&amp;#34; meme, it seems simpler&lt;br/&gt;to test with the new opcodes using dummy opcodes on testnet. I think we&lt;br/&gt;need not only the opcodes, but also long-term I see some kind of&lt;br/&gt;malleability fix and timestop as ideal if not necessary.&lt;br/&gt;&lt;br/&gt;&amp;gt; Also note that both these problems can be eliminated with OP_CLTV,&lt;br/&gt;&amp;gt; which will be implemented at least somewhat soon.&lt;br/&gt;&lt;br/&gt;Yes, if it uses the new opcodes similar to Rusty&amp;#39;s construction, then&lt;br/&gt;it&amp;#39;s a LN implementation for sure (it will especially help with HTLCs in&lt;br/&gt;transit). Do you expect any significant differences (beyond a balance&lt;br/&gt;reserve for just OP_CLTV)? I think a bitcoinj implementation of&lt;br/&gt;Lightning is sorely needed, for sure, and greatly appreciate any&lt;br/&gt;implementation, as it&amp;#39;s a huge positive step for the bitcoin ecosystem!&lt;br/&gt;I feel like we might have gotten off on the wrong foot here (partially&lt;br/&gt;due to me misunderstanding the design), I think we both agree that&lt;br/&gt;scalability of bitcoin micropayments is something that is very important&lt;br/&gt;to the wider ecosystem and I&amp;#39;m looking forward to continuing developing&lt;br/&gt;these techonlogies with you!&lt;br/&gt;&lt;br/&gt;-- &lt;br/&gt;Joseph Poon
    </content>
    <updated>2023-06-09T12:43:59Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsx90hxttckatjuzuspjp8wmdtm7jseazgjhart49lmcky2z3xxceczyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepzryjtw6</id>
    
      <title type="html">📅 Original date posted:2015-08-11 📝 Original message: On ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsx90hxttckatjuzuspjp8wmdtm7jseazgjhart49lmcky2z3xxceczyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepzryjtw6" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsvv64e53eq9vkpecwlrvardhkxvkl02kajc5pxqzhhz8yfpu6dwzqw3zz0k&#39;&gt;nevent1q…zz0k&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-08-11&lt;br/&gt;📝 Original message:&lt;br/&gt;On Tue, Aug 11, 2015 at 09:26:43PM &#43;0200, Mats Jerratsch wrote:&lt;br/&gt;&amp;gt; &amp;gt; At Commitment 20, the channel state is 0 BTC to Alice and 1 to Bob.&lt;br/&gt;&amp;gt; &amp;gt; At commitment 31, the channel state is 1 BTC to Alice and 0 to Bob.&lt;br/&gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; Alice is the client and Bob is the server.&lt;br/&gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; Presume Alice deicdes to be a jerk! She broadcasts a mutated (re-signed)&lt;br/&gt;&amp;gt; &amp;gt; version of Commitment 20. The server is out 1 BTC! This is now a hostage&lt;br/&gt;&amp;gt; &amp;gt; negotiation.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; But the 1 BTC of Commitment 20 goes straight to Bob (and not to a&lt;br/&gt;&amp;gt; multi-sig address). Mutating a channel transaction only hurts the&lt;br/&gt;&amp;gt; party that is doing the mutation. This is why RBF is a major problem,&lt;br/&gt;&amp;gt; if it ever gets deployed.&lt;br/&gt;&lt;br/&gt;Sorry, I usually use Bob as the attacker in my examples and Alice as the&lt;br/&gt;client, so I got mixed up there. I meant:&lt;br/&gt;At Commitment 20, the channel state is 1 BTC to Alice and 0 to Bob.&lt;br/&gt;At commitment 31, the channel state is 0 BTC to Alice and 1 to Bob.&lt;br/&gt;&lt;br/&gt;In this case, if Alice attacks Bob she&amp;#39;s not out any money, but Bob has&lt;br/&gt;funds locked up in a 2-of-2. Bob must now negotiate with Alice to get&lt;br/&gt;his money back. Alice will probably want some &amp;#39;convenience fee&amp;#39;.&lt;br/&gt;&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &amp;gt; Let&amp;#39;s presume that you set up some kind of reserve requirement instead:&lt;br/&gt;&amp;gt; &amp;gt; At Commitment 20, the channel state is 0.05 BTC to Alice and 0.95 to Bob.&lt;br/&gt;&amp;gt; &amp;gt; At commitment 31, the channel state is 0.95 BTC to Alice and 0.05 to Bob.&lt;br/&gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; Again, Alice deicdes to be a jerk! She broadcasts a mutated (re-signed)&lt;br/&gt;&amp;gt; &amp;gt; version of Commitment 20. The server is out 0.95 BTC! But wait, you say,&lt;br/&gt;&amp;gt; &amp;gt; Alice might be out 0.05 of her own BTC. This model breaks down because&lt;br/&gt;&amp;gt; &amp;gt; it&amp;#39;s still a hostage scenario! Alice tells Bob, &amp;#34;hey, I know I have 0.05&lt;br/&gt;&amp;gt; &amp;gt; BTC stuck here (and you have 0.9 stuck), but I&amp;#39;m rich. I don&amp;#39;t care how&lt;br/&gt;&amp;gt; &amp;gt; long it takes, how about you give me a &amp;#39;tax&amp;#39; of 0.1 BTC. You&amp;#39;ll get your&lt;br/&gt;&amp;gt; &amp;gt; money back... well most of it, just sign this transaction where I get&lt;br/&gt;&amp;gt; &amp;gt; 0.15&amp;#34;.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; The same as above, if she resignes commitment 20, she is losing 0.05&lt;br/&gt;&amp;gt; BTC, while Bob does still get the 0.95 BTC.&lt;br/&gt;&lt;br/&gt;At Commitment 20, the channel state is 0.95 BTC to Alice and 0.05 to Bob.&lt;br/&gt;At commitment 31, the channel state is 0.05 BTC to Alice and 0.95 to Bob.&lt;br/&gt;&lt;br/&gt;&amp;gt; There is a problem with channel histories, where Alice holds all the&lt;br/&gt;&amp;gt; funds at one point, and Bob holds all the funds at some later point,&lt;br/&gt;&amp;gt; as open payments are not as secure as those settled balances. I&lt;br/&gt;&amp;gt; mitigate this by setting a hard requirement on the spendable amount. I&lt;br/&gt;&amp;gt; will describe this in more detail soon.&lt;br/&gt;&lt;br/&gt;You can&amp;#39;t mitigate this by setting some reserve requirement, though. So&lt;br/&gt;long as Alice has more money than Bob, she can do it. If Alice is 10x&lt;br/&gt;richer than Bob, she doesn&amp;#39;t *care* and she knows Bob will eventually&lt;br/&gt;give up. &amp;#34;Two-party escrow&amp;#34; doesn&amp;#39;t work because one party can have more&lt;br/&gt;money and less time-value than another. Time-value is not a universal&lt;br/&gt;value.&lt;br/&gt;&lt;br/&gt;-- &lt;br/&gt;Joseph Poon
    </content>
    <updated>2023-06-09T12:43:58Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsr0plxlqdn0xe7hjcjk7auckua4pm9et8yvljvh8d24l8m4qcya8qzyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepzujeksv</id>
    
      <title type="html">📅 Original date posted:2015-08-11 📝 Original message: Ah I ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsr0plxlqdn0xe7hjcjk7auckua4pm9et8yvljvh8d24l8m4qcya8qzyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepzujeksv" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsq5t0crqg2enmwzdy94vv0upzcgty76f62zl4hf84fsxmqxljfeqgkhd2d8&#39;&gt;nevent1q…d2d8&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-08-11&lt;br/&gt;📝 Original message:&lt;br/&gt;Ah I see, if you use a hash-based revocation, then the only primary&lt;br/&gt;attack vector left is with the Funding and HTLCs (which can be&lt;br/&gt;partially mitigated with a reserve)&lt;br/&gt;&lt;br/&gt;On 8/11/15, Mats Jerratsch &amp;lt;matsjj at gmail.com&amp;gt; wrote:&lt;br/&gt;&amp;gt; 2015-08-11 22:06 GMT&#43;02:00 Joseph Poon &amp;lt;joseph at lightning.network&amp;gt;:&lt;br/&gt;&amp;gt;&amp;gt; On Tue, Aug 11, 2015 at 09:26:43PM &#43;0200, Mats Jerratsch wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; At Commitment 20, the channel state is 0 BTC to Alice and 1 to Bob.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; At commitment 31, the channel state is 1 BTC to Alice and 0 to Bob.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; Alice is the client and Bob is the server.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; Presume Alice deicdes to be a jerk! She broadcasts a mutated&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; (re-signed)&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; version of Commitment 20. The server is out 1 BTC! This is now a&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; hostage&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &amp;gt; negotiation.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; But the 1 BTC of Commitment 20 goes straight to Bob (and not to a&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; multi-sig address). Mutating a channel transaction only hurts the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; party that is doing the mutation. This is why RBF is a major problem,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; if it ever gets deployed.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Sorry, I usually use Bob as the attacker in my examples and Alice as the&lt;br/&gt;&amp;gt;&amp;gt; client, so I got mixed up there. I meant:&lt;br/&gt;&amp;gt;&amp;gt; At Commitment 20, the channel state is 1 BTC to Alice and 0 to Bob.&lt;br/&gt;&amp;gt;&amp;gt; At commitment 31, the channel state is 0 BTC to Alice and 1 to Bob.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; In this case, if Alice attacks Bob she&amp;#39;s not out any money, but Bob has&lt;br/&gt;&amp;gt;&amp;gt; funds locked up in a 2-of-2. Bob must now negotiate with Alice to get&lt;br/&gt;&amp;gt;&amp;gt; his money back. Alice will probably want some &amp;#39;convenience fee&amp;#39;.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; But Bob has both keys of the 2-of-2 multisig. One is his (main) key,&lt;br/&gt;&amp;gt; and the other one was supplied by Alice as a requirement to update the&lt;br/&gt;&amp;gt; channel and move funds.&lt;br/&gt;&amp;gt; But that is what I meant with mitigate it. Even if Bob claims all&lt;br/&gt;&amp;gt; payments, he will lose funds due to blockchain fees. (see below)&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; You can&amp;#39;t mitigate this by setting some reserve requirement, though. So&lt;br/&gt;&amp;gt;&amp;gt; long as Alice has more money than Bob, she can do it. If Alice is 10x&lt;br/&gt;&amp;gt;&amp;gt; richer than Bob, she doesn&amp;#39;t *care* and she knows Bob will eventually&lt;br/&gt;&amp;gt;&amp;gt; give up. &amp;#34;Two-party escrow&amp;#34; doesn&amp;#39;t work because one party can have more&lt;br/&gt;&amp;gt;&amp;gt; money and less time-value than another. Time-value is not a universal&lt;br/&gt;&amp;gt;&amp;gt; value.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; It is possible to say that the minimum (stealable) amount of Alice&lt;br/&gt;&amp;gt; must be higher than any sum of concurrent payments minus the&lt;br/&gt;&amp;gt; blockchain fees. This way Bob can always claim all the payments of all&lt;br/&gt;&amp;gt; Commitments of the Channel and still stay in positive net balance. It&lt;br/&gt;&amp;gt; really comes down to having an incentive to clear out payments of the&lt;br/&gt;&amp;gt; channel. Only open payments are problematic, settled balance can&lt;br/&gt;&amp;gt; always be stealed with just one transaction.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Mats Jerratsch&lt;br/&gt;&amp;gt;
    </content>
    <updated>2023-06-09T12:43:58Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsxsfxg6s6f20zc83q7jy8mz984r5t3flyemnrhr759ztn9g3j56yczyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepz7zzgfg</id>
    
      <title type="html">📅 Original date posted:2015-08-11 📝 Original message: On ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsxsfxg6s6f20zc83q7jy8mz984r5t3flyemnrhr759ztn9g3j56yczyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepz7zzgfg" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsy64u5jpyg8ygc9lrrfckvj9mq4zz8vthuzjly3pwzzxqdngjxs9sg8r2ga&#39;&gt;nevent1q…r2ga&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-08-11&lt;br/&gt;📝 Original message:&lt;br/&gt;On Tue, Aug 11, 2015 at 08:42:50PM &#43;0200, Mats Jerratsch wrote:&lt;br/&gt;&amp;gt; Can you elaborate, why you think that the client is not able to close&lt;br/&gt;&amp;gt; the channel? I think this is a misunderstanding on your side, which&lt;br/&gt;&amp;gt; most of the rest of your post argues from. While there is a slight&lt;br/&gt;&amp;gt; favor for the server in the channel design, there is nothing what&lt;br/&gt;&amp;gt; prevents the client from broadcasting (and enforcing) the channel.&lt;br/&gt;&lt;br/&gt;Ah, sorry, i&amp;#39;m reading it more closely now. I assumed only the server&lt;br/&gt;had a copy since that what made the most sense to me under this kind of&lt;br/&gt;asymmetric model, since it makes sense to not trust the client.&lt;br/&gt;&lt;br/&gt;In this case, the client can hold up funds from the server completely&lt;br/&gt;and attack the server by mutating their transaction.&lt;br/&gt;&lt;br/&gt;Presume Alice and Bob have a channel open together. They both&lt;br/&gt;contributed 0.5 bitcoin for a total balance of 1 BTC.&lt;br/&gt;&lt;br/&gt;At Commitment 20, the channel state is 0 BTC to Alice and 1 to Bob.&lt;br/&gt;At commitment 31, the channel state is 1 BTC to Alice and 0 to Bob.&lt;br/&gt;&lt;br/&gt;Alice is the client and Bob is the server.&lt;br/&gt;&lt;br/&gt;Presume Alice deicdes to be a jerk! She broadcasts a mutated (re-signed)&lt;br/&gt;version of Commitment 20. The server is out 1 BTC! This is now a hostage&lt;br/&gt;negotiation.&lt;br/&gt;&lt;br/&gt;Let&amp;#39;s presume that you set up some kind of reserve requirement instead:&lt;br/&gt;At Commitment 20, the channel state is 0.05 BTC to Alice and 0.95 to Bob.&lt;br/&gt;At commitment 31, the channel state is 0.95 BTC to Alice and 0.05 to Bob.&lt;br/&gt;&lt;br/&gt;Again, Alice deicdes to be a jerk! She broadcasts a mutated (re-signed)&lt;br/&gt;version of Commitment 20. The server is out 0.95 BTC! But wait, you say,&lt;br/&gt;Alice might be out 0.05 of her own BTC. This model breaks down because&lt;br/&gt;it&amp;#39;s still a hostage scenario! Alice tells Bob, &amp;#34;hey, I know I have 0.05&lt;br/&gt;BTC stuck here (and you have 0.9 stuck), but I&amp;#39;m rich. I don&amp;#39;t care how&lt;br/&gt;long it takes, how about you give me a &amp;#39;tax&amp;#39; of 0.1 BTC. You&amp;#39;ll get your&lt;br/&gt;money back... well most of it, just sign this transaction where I get&lt;br/&gt;0.15&amp;#34;.&lt;br/&gt;&lt;br/&gt;-- &lt;br/&gt;Joseph Poon
    </content>
    <updated>2023-06-09T12:43:57Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqszzhz7ds99w6acv9ej3t723yh4wwfpv2dkh8tj3eau5xlm5aruq6qzyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepzadxmcu</id>
    
      <title type="html">📅 Original date posted:2015-08-11 📝 Original message: Hi ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqszzhz7ds99w6acv9ej3t723yh4wwfpv2dkh8tj3eau5xlm5aruq6qzyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepzadxmcu" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqspa8yentqpamsw659rvq4swltq5fzmswu6uep2kp89ryhzqll9jfc722syl&#39;&gt;nevent1q…2syl&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-08-11&lt;br/&gt;📝 Original message:&lt;br/&gt;Hi Mats,&lt;br/&gt;&lt;br/&gt;Interesting work on payment channels, I think a lot of the bitcoinj code&lt;br/&gt;can be used for further development as the necessary bitcoin softforks&lt;br/&gt;for LN are incorporated. A bitcoinj implementation for lightning would&lt;br/&gt;be great!&lt;br/&gt;&lt;br/&gt;On Tue, Aug 11, 2015 at 06:12:04PM &#43;0200, Mats Jerratsch wrote:&lt;br/&gt;&amp;gt; I present you a implementation for a Lightning Network Payment-Hub &#43;&lt;br/&gt;&amp;gt; Client. Everything is written in Java and can be accessed on&lt;br/&gt;&lt;br/&gt;Can you do me a big favor and not call this an implementation for&lt;br/&gt;Lightning Network, though? I would prefer some name like &amp;#34;payment&lt;br/&gt;channel networks&amp;#34; or something similar, as it&amp;#39;s materially different in&lt;br/&gt;design and trust models. In particular, if exit scams occur, I don&amp;#39;t&lt;br/&gt;want it to be associated with Lightning Network.&lt;br/&gt;&lt;br/&gt;&amp;gt; I made some changes to the channel design to have everything working&lt;br/&gt;&amp;gt; on the current Blockchain, without the need for softforks. Due to&lt;br/&gt;&amp;gt; that, the network is no longer no-trust, but low-trust. This will&lt;br/&gt;&amp;gt; change with the upcoming new OP_CODES.&lt;br/&gt;&lt;br/&gt;Yeah, a lot of the code can definitely be used for a full LN&lt;br/&gt;implementation when the opcodes come in for sure!&lt;br/&gt;&lt;br/&gt;&amp;gt; The provided wallet is just a prototype, I will focus on building a&lt;br/&gt;&amp;gt; potent backend in the future. There are many wallets out there&lt;br/&gt;&amp;gt; already, it will be much more useful if those add these&lt;br/&gt;&amp;gt; functionalities.&lt;br/&gt;&lt;br/&gt;Some quick feedback (might have more later):&lt;br/&gt;* I don&amp;#39;t think a dual-Commitment structure is necessary if only one&lt;br/&gt;  party can close out the channel. The purpose of having two Commitments&lt;br/&gt;  is so that the payout structure is different. In this case, since only&lt;br/&gt;  the server can broadcast the final balance (and the client has no way&lt;br/&gt;  to close out the channel), only the B Commitment is necessary).&lt;br/&gt;* HTLCs have significant malleability risks with malicious servers&lt;br/&gt;  (hostage scenarios).&lt;br/&gt;* If you presume full-RBF (which I think is a game-theoretic&lt;br/&gt;  eventuality), clients can pay a higher fee to mutate the server&amp;#39;s&lt;br/&gt;  broadcast of the Commitment, which will result in the server&amp;#39;s funds&lt;br/&gt;  being held up permanently until the server is willing to negotiate&lt;br/&gt;  (malleability hostage scenario).&lt;br/&gt;* Exit Scamming is a distinct and likely possibility. The server can&lt;br/&gt;  develop a good reputation for a while, then decide to screw over&lt;br/&gt;  everyone. The server refuses to do any further transactions in any&lt;br/&gt;  channel which has funds in the clients favor (current channel balance&lt;br/&gt;  for the client is above what was funded). With the timeout, the server&lt;br/&gt;  gets the original deposit back, which is above what they should get&lt;br/&gt;  back, in other words, the server steals your money.&lt;br/&gt;* This creates an asymmetric playing field. If one cannot be confident&lt;br/&gt;  they will receive their funds back, this is similar to depositing your&lt;br/&gt;  money on a hosted wallet such as Coinbase or whatever. The primary&lt;br/&gt;  value of transacting on bitcoin is that the social costs of&lt;br/&gt;  counterparty risks are minimized -- and counterparty risk is one of&lt;br/&gt;  the primary inputs on interest rates (remove trust -&amp;gt; remove&lt;br/&gt;  counterparty risk -&amp;gt; remove fees/interest). This can only exist if&lt;br/&gt;  you&amp;#39;re sufficiently willing to transact with nearly anyone (minimal&lt;br/&gt;  underwriting).&lt;br/&gt;&lt;br/&gt;&amp;gt; Furthermore, as there are less everyday payments on the blockchain,&lt;br/&gt;&amp;gt; there is more space for important transactions of higher value.&lt;br/&gt;&lt;br/&gt;I agree that this is one of the primary values of payment channel based&lt;br/&gt;systems. To extend and take your point in a different direction, there&lt;br/&gt;is a risk if everyone uses blockchain transactions for every day&lt;br/&gt;purchases, that high-value transactions will crowd out low-value&lt;br/&gt;transactions. There is a tension that exists between the need for&lt;br/&gt;sufficiently high fees to pay miners (when the block rewards decline)&lt;br/&gt;and allowing low-fee transactions to be on-chain in a timely manner.&lt;br/&gt;&lt;br/&gt;-- &lt;br/&gt;Joseph Poon
    </content>
    <updated>2023-06-09T12:43:56Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs93mt5lakw4zxjn83kzpj427jnjaa5l3png4twzx9q4yuc2yn4emgzyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepz7xpqvf</id>
    
      <title type="html">📅 Original date posted:2015-07-26 📝 Original message: On ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs93mt5lakw4zxjn83kzpj427jnjaa5l3png4twzx9q4yuc2yn4emgzyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepz7xpqvf" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsz03s7ws0racwwgcwetll65h7gd0re544fz3veys2x6zrxkcfyc8s642vxg&#39;&gt;nevent1q…2vxg&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-07-26&lt;br/&gt;📝 Original message:&lt;br/&gt;On Sat, Jul 25, 2015 at 10:59:16PM &#43;0200, Christopher Jamthagen wrote:&lt;br/&gt;&amp;gt; &amp;lt;div&amp;gt;According to the whitepaper: &amp;amp;quot; If three days have elapsed,&lt;br/&gt;&amp;gt; then the above clause is null and void and the clearing process is&lt;br/&gt;&amp;gt; invalidated, both parties must not attempt to settle and claim payment&lt;br/&gt;&amp;gt; after three days.&amp;amp;quot; But clearly there is nothing stopping Bob from&lt;br/&gt;&amp;gt; taking the HTLC output when Alice is forced to broadcast the&lt;br/&gt;&amp;gt; commitment transaction, even if it is supposed to be null and&lt;br/&gt;&amp;gt; void.&amp;lt;/div&amp;gt;&lt;br/&gt;&lt;br/&gt;Hi Christopher,&lt;br/&gt;&lt;br/&gt;The design of the HTLCs have a contestation period built-in where the&lt;br/&gt;party which broadcasts the Commitment Transaction must wait a period of&lt;br/&gt;time before the payment goes back to themselves.&lt;br/&gt;&lt;br/&gt;I think your concern may have some implications for Rusty&amp;#39;s dual&lt;br/&gt;anchor/funding version. I had incorrectly stated that it might be&lt;br/&gt;possible to do it only with OP_CLTV, but it clearly requires both&lt;br/&gt;OP_CLTV and OP_CSV.&lt;br/&gt;&lt;br/&gt;There&amp;#39;s more information being attested when relying on OP_CSV for the&lt;br/&gt;HTLC without a transaction chained 2 levels deep. It will require&lt;br/&gt;greater time delay between each hop in the payment to account for the&lt;br/&gt;relative time to prove whether the Commitment has been revoked. This&lt;br/&gt;greater time creates a tradeoff which requires each channel participant&lt;br/&gt;(for every hop) to watch the blockchain at a more frequent interval,&lt;br/&gt;since that OP_CSV value is intrinsically linked to the payment.&lt;br/&gt;&lt;br/&gt;With a SIGHASH_NOINPUT (or similar) model having transactions two-deep,&lt;br/&gt;this contestation period can be independent of the actual HTLC payments.&lt;br/&gt;In effect, the first transaction spending from the HTLC validates&lt;br/&gt;whether the preimages are known, the second is whether the Commitment&lt;br/&gt;itself is invalidated. With separated anchor/funding, those two steps&lt;br/&gt;are combined inside the Commitment Transaction -- AFAIK, (minus the&lt;br/&gt;above tradeoffs) it still works though, but I&amp;#39;ll double-check.&lt;br/&gt;&lt;br/&gt;-- &lt;br/&gt;Joseph Poon
    </content>
    <updated>2023-06-09T12:43:46Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsqqwm48g0rcuy5rmr6h6a8wnw2vnlrlf3lxnpt96n6c96268j2ragzyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepzhxuxd8</id>
    
      <title type="html">📅 Original date posted:2015-07-27 📝 Original message: On ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsqqwm48g0rcuy5rmr6h6a8wnw2vnlrlf3lxnpt96n6c96268j2ragzyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepzhxuxd8" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqswu9jr9getar80dxceq2yz0npljgf68v337uzd3x4qe0pva08kukgw7s2xv&#39;&gt;nevent1q…s2xv&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-07-27&lt;br/&gt;📝 Original message:&lt;br/&gt;On Mon, Jul 27, 2015 at 11:20:54AM &#43;0930, Rusty Russell wrote:&lt;br/&gt;&amp;gt; Yes, I assume that the HTLC gets eliminated by a commitment transaction&lt;br/&gt;&amp;gt; update at (or before) that time.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; We could add an additional delay for this case, but it seems like&lt;br/&gt;&amp;gt; overengineering?&lt;br/&gt;&lt;br/&gt;To ensure that the older version of the transaction does not get&lt;br/&gt;broadcast through a credible threat, there needs to be some contestation&lt;br/&gt;period for one&amp;#39;s own HTLC when one is redeeming funds.&lt;br/&gt;&lt;br/&gt;However, there are less elegant solutions that are possible as a&lt;br/&gt;stop-gap before a full malleability fix which permits you to generate&lt;br/&gt;child transactions before signing the parent.&lt;br/&gt;&lt;br/&gt;Current/unexpired HTLCs will have the same payout and enforcement, but&lt;br/&gt;there is a risk of broadcasting older Commitments and stealing the HTLC&lt;br/&gt;payout, e.g. transactions that are believed to be timed out but whose&lt;br/&gt;preimages are known after-the-fact. Theft of the HTLC via broadcast of&lt;br/&gt;expired Commitments can be mitigated by having some funds in reserve&lt;br/&gt;available on one&amp;#39;s own channel balance to ensure honesty. In effect, the&lt;br/&gt;total value of the HTLCs must be below one&amp;#39;s own reserve balance (for&lt;br/&gt;both parties). The reserve balance must not be used ever.&lt;br/&gt;&lt;br/&gt;Note that this presumes dual-funder. I&amp;#39;ll go into single-funder model&lt;br/&gt;later.&lt;br/&gt;&lt;br/&gt;For example, if Alice and Bob have a channel with the latest Commitment:&lt;br/&gt;0.49 to Alice (0.02 in permanent reserve)&lt;br/&gt;0.50 to Bob (0.02 in permanent reserve)&lt;br/&gt;0.01 HTLC Alice to Bob&lt;br/&gt;&lt;br/&gt;This is a valid HTLC, since Alice&amp;#39;s current channel balance not&lt;br/&gt;allocated to HTLCs is 0.49. This balance must be at or above 0.02 at&lt;br/&gt;all times throughout the life of the channel, until Alice closes it out&lt;br/&gt;or does a final payment to zero it out and close. Similarly, Bob also&lt;br/&gt;must maintain a balance of 0.02 throughout the life of the channel.&lt;br/&gt;&lt;br/&gt;The sum of all HTLCs going from Alice to Bob must be at or (preferably)&lt;br/&gt;below this 0.02 limit at all times before closing out the channel.&lt;br/&gt;&lt;br/&gt;The result is if Alice broadcasts an old Commitment, Bob is assured that&lt;br/&gt;the balance of the HTLC will be at or below 0.02. The maximum Alice can&lt;br/&gt;send will be 0.98 in the channel, so even if she attempts to steal the&lt;br/&gt;HTLC, Bob can be made whole by taking back all his funds, as well as all&lt;br/&gt;of Alice&amp;#39;s funds as penalty. Even if he is unable to take back the HTLC,&lt;br/&gt;he will take all of Alice&amp;#39;s funds in reserve, which is less than the&lt;br/&gt;balance of all HTLCs in transit from Alice to Bob at all times&lt;br/&gt;throughout the historical life of the channel.&lt;br/&gt;&lt;br/&gt;Depending on how willing you are to enforce the HTLC past this point,&lt;br/&gt;you can make the script substantially simpler, as well.&lt;br/&gt;&lt;br/&gt;To fund this using single-funder, one should be very cognizant of risks&lt;br/&gt;related to systemic risks related to trust asymmetry of the channel&lt;br/&gt;counterparties. If we construct a model using single-funder, it requires&lt;br/&gt;very shallow rebalancing of funding for symmetric trust, i.e. Alice&lt;br/&gt;opens a channel to Bob first, then Bob opens a channel to Alice. This&lt;br/&gt;initial channel funding would probably have a very high OP_CSV value.&lt;br/&gt;For the OP_CSV value to be this high and functional without DoS risks,&lt;br/&gt;it requires the number of LN hops to be fairly low during this channel&lt;br/&gt;setup phase (but won&amp;#39;t matter after), as they may be potentially locking&lt;br/&gt;up money for a longer period of time if the HTLC payment is not&lt;br/&gt;fulfilled). For OP_CLTV only (without OP_CSV) I think it&amp;#39;ll be to the&lt;br/&gt;point where it *requires* setting up two channels with the same person.&lt;br/&gt;&lt;br/&gt;Personally, I have some reservations for models which have funds in&lt;br/&gt;permanent reserve, but this model is a fairly good stop-gap before a&lt;br/&gt;real malleability fix (SIGHASH_NOINPUT or segregated witness). This&lt;br/&gt;model should be able to work with just OP_CLTV (and with OP_CSV too),&lt;br/&gt;but may not be quite as fun. Also, to maximize fun under this model to&lt;br/&gt;mitigate when a counteparty is a jerk, you should always make sure the&lt;br/&gt;amount in permanent reserve is *always above* (not equal to) the value&lt;br/&gt;encumbered in HTLCs.&lt;br/&gt;&lt;br/&gt;-- &lt;br/&gt;Joseph Poon
    </content>
    <updated>2023-06-09T12:43:46Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsy4swy3d9g4tcpce3ykk4s7fl9aftz75n3hw3vwvndfcmmn5suvjszyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepzpc24ap</id>
    
      <title type="html">📅 Original date posted:2015-07-13 📝 Original message: On ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsy4swy3d9g4tcpce3ykk4s7fl9aftz75n3hw3vwvndfcmmn5suvjszyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepzpc24ap" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs22xecqefkghtq5hs6j45nacdp87xfse4p488pae98j0rjdw5n5lgv875rg&#39;&gt;nevent1q…75rg&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-07-13&lt;br/&gt;📝 Original message:&lt;br/&gt;On Tue, Jul 07, 2015 at 03:39:39PM &#43;0930, Rusty Russell wrote:&lt;br/&gt;&amp;gt; Feedback, optimizations, horrible holes?&lt;br/&gt;&lt;br/&gt;I think this model works! As soon as OP_CHECKLOCKTIMEVERIFY soft-forks&lt;br/&gt;into bitcoin, a basic lightning implementation may be theoretically&lt;br/&gt;possible in real bitcoin (with some significant caveats)!&lt;br/&gt;&lt;br/&gt;I think Thaddeus Dryja came up with a similar implementation to resolve&lt;br/&gt;malleability in multisig (involving a clock and 2-input/2-output).&lt;br/&gt;However, I think a true malleability fix is still ideal.&lt;br/&gt;&lt;br/&gt;To complete the thought, I think it&amp;#39;s possible to make the Commitment&lt;br/&gt;Transactions malleability-safe under this construction.&lt;br/&gt;&lt;br/&gt;&amp;gt;         The order is as follows:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; 1) We both trade anchor txids and amounts.&lt;br/&gt;&amp;gt; 2) We both trade signatures for the escape transactions, so either one&lt;br/&gt;&amp;gt;    can broadcast them.&lt;br/&gt;&amp;gt; 3) Now we are sure to be able to recover our funds, we each broadcast&lt;br/&gt;&amp;gt;    our anchor txs.&lt;br/&gt;&amp;gt; 4) If the other side broadcasts their escape transaction, abort and&lt;br/&gt;&amp;gt;    broadcast our escape transaction.  After the timeout, we can spend&lt;br/&gt;&amp;gt;    it.&lt;br/&gt;&amp;gt; 5) If the other side doesn&amp;#39;t broadcast their anchor tx, abort and&lt;br/&gt;&amp;gt;    broadcast our escape transaction.&lt;br/&gt;&amp;gt; 6) Otherwise, when the anchor txs reach the required depth, we exchange&lt;br/&gt;&amp;gt;    signatures for the commitment transaction.&lt;br/&gt;&amp;gt; 7) If the other side broadcasts either escape transaction, broadcast&lt;br/&gt;&amp;gt;    the other escape transaction and the commitment tx as normal (this is&lt;br/&gt;&amp;gt;    a unilateral close) before they can reclaim their anchor funds.&lt;br/&gt;&lt;br/&gt;To create the Commitment Transaction (in step 6 and all future&lt;br/&gt;Commitment Transactions), it requires spending from the two inputs&lt;br/&gt;separately and the output would require having OP_CLTV or OP_CSV in the&lt;br/&gt;script output to determine whether a Commitment has been revoked. This&lt;br/&gt;is necessary since one cannot be fully confident about the Transaction&lt;br/&gt;ID beforehand.&lt;br/&gt;&lt;br/&gt;If the inputs are 0.5 Alice and 0.5 Bob, the first Commitment&lt;br/&gt;Transaction would refund 0.5 to Alice and 0.5 to Bob. As always, there&lt;br/&gt;are a pair of Commitment Transactions per commitment state. Presume the&lt;br/&gt;current block height is 350,000 and the channel closes at 355,760.&lt;br/&gt;&lt;br/&gt;The Commitment Transaction which only Alice can broadcast, Commitment&lt;br/&gt;1a, would have the following outputs:&lt;br/&gt;&lt;br/&gt;0. 0.5 BTC&lt;br/&gt;	BobKey&lt;br/&gt;1. 0.5 BTC&lt;br/&gt;OP_IF &lt;br/&gt;	&amp;lt;AlicePubKey&amp;gt; OP_CHECKSIGVERIFY &lt;br/&gt;	&amp;lt;355,760&amp;gt; OP_CLTV OP_DROP&lt;br/&gt;OP_ELSE&lt;br/&gt;	OP_HASH160 &amp;lt;RevocationHash&amp;gt; OP_EQUALVERIFY&lt;br/&gt;	&amp;lt;BobPubKey&amp;gt; OP_CHECKSIGVERIFY&lt;br/&gt;OP_END&lt;br/&gt;&lt;br/&gt;This is the general idea at least (haven&amp;#39;t checked the script). Bob gets&lt;br/&gt;all his money if Alice broadcasts it immediately because Alice is&lt;br/&gt;attesting Bob should get *at least* 0.5 BTC. For the second output&lt;br/&gt;(output 1), the first path gives Alice the funds at channel expiration.&lt;br/&gt;The second path is so if the current Commitment transaction is not&lt;br/&gt;Commitment 1 and Alice should lose all her money for incorrectly&lt;br/&gt;broadcasting Commitment 1. Alice does this by attesting to Bob she&lt;br/&gt;wouldn&amp;#39;t broadcast Commitment 1 by giving the RevocationPreimage which&lt;br/&gt;is hashed into RevocationHash.&lt;br/&gt;&lt;br/&gt;Bob also has a Commitment Transaction which is the opposite (Alice&amp;#39;s&lt;br/&gt;funds get paid immediately, Bob&amp;#39;s funds is encumbered by time).&lt;br/&gt;&lt;br/&gt;The purpose of doing this type of construction instead of using&lt;br/&gt;nLockTime on the transactions spending from the Commitment Transaction&lt;br/&gt;is so that each output only requires one signature. By having only one&lt;br/&gt;signature, malleability concerns can be mitigated, since that single&lt;br/&gt;party can simply resign and is not dependent upon the cooperation of the&lt;br/&gt;counterparty if the Commitment Transaction itself gets mutated. Since&lt;br/&gt;the Commitment Transaction is only build after the Anchor and Escape&lt;br/&gt;transactions exist, then this construction will allow for Lightning&lt;br/&gt;Network channels to exist with OP_CLTV, with the caveat that with&lt;br/&gt;uncooperative counterparties, you will have to wait until channel&lt;br/&gt;expiration to get your money back. However, it does mean that playing&lt;br/&gt;with LN is a possibility on the real bitcoin chain in the near future.&lt;br/&gt;&lt;br/&gt;Very cool, Rusty!&lt;br/&gt;&lt;br/&gt;-- &lt;br/&gt;Joseph Poon
    </content>
    <updated>2023-06-09T12:43:38Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs9ewwchz8pmsv2fv9g59xk3dphwzehfw2ffq70hyl6w69t7c25gpgzyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepzs2xevu</id>
    
      <title type="html">📅 Original date posted:2017-04-05 📝 Original message:Hi ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs9ewwchz8pmsv2fv9g59xk3dphwzehfw2ffq70hyl6w69t7c25gpgzyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepzs2xevu" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsxw6h4qynlls4ug26n96ewd2qma9w4ymnr4a33dugt84flda8zx8ctyaanp&#39;&gt;nevent1q…aanp&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-04-05&lt;br/&gt;📝 Original message:Hi Greg,&lt;br/&gt;&lt;br/&gt;On Wed, Apr 05, 2017 at 09:37:45PM &#43;0000, Gregory Maxwell via bitcoin-dev wrote:&lt;br/&gt;&amp;gt; Reverse engineering of a particular mining chip has demonstrated&lt;br/&gt;&amp;gt; conclusively that ASICBOOST has been implemented&lt;br/&gt;&amp;gt; in hardware.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; On that basis, I offer the following BIP draft for discussion.&lt;br/&gt;&amp;gt; This proposal does not prevent the attack in general, but only&lt;br/&gt;&amp;gt; inhibits covert forms of it which are incompatible with&lt;br/&gt;&amp;gt; improvements to the Bitcoin protocol.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I hope that even those of us who would strongly prefer that&lt;br/&gt;&amp;gt; ASICBOOST be blocked completely can come together to support&lt;br/&gt;&amp;gt; a protective measure that separates concerns by inhibiting&lt;br/&gt;&amp;gt; the covert use of it that potentially blocks protocol improvements.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; [...]&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; ==New consensus rule==&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Beginning block X and until block Y the coinbase transaction of&lt;br/&gt;&amp;gt; each block MUST either contain a BIP-141 segwit commitment or a&lt;br/&gt;&amp;gt; correct WTXID commitment with ID 0xaa21a9ef.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; (See BIP-141 &amp;#34;Commitment structure&amp;#34; for details)&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Existing segwit using miners are automatically compatible with&lt;br/&gt;&amp;gt; this proposal. Non-segwit miners can become compatible by simply&lt;br/&gt;&amp;gt; including an additional output matching a default commitment&lt;br/&gt;&amp;gt; value returned as part of getblocktemplate.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Miners SHOULD NOT automatically discontinue the commitment&lt;br/&gt;&amp;gt; at the expiration height.&lt;br/&gt;&lt;br/&gt;Decentralized systems without patent encumbrance is an important topic&lt;br/&gt;for me. We&amp;#39;d be very interested in adding this into extension blocks.&lt;br/&gt;&lt;br/&gt;Claims like these merit serious attention. If you can provide any kind&lt;br/&gt;of proof or documentation of this (doesn&amp;#39;t need to be conclusive, just&lt;br/&gt;something), I will provide my word and promise publicly here and now&lt;br/&gt;that I will personally see to it that a commitment which solves this&lt;br/&gt;(albeit possibly using a slightly different format to make it&lt;br/&gt;compatible) is added into the Extension Blocks spec. If there is&lt;br/&gt;evidence, my support and authorship of the Extension Block specification&lt;br/&gt;is contingent upon resolving this issue.&lt;br/&gt;&lt;br/&gt;We have added an issue here:&lt;br/&gt;&lt;a href=&#34;https://github.com/tothemoon-org/extension-blocks/issues/6&#34;&gt;https://github.com/tothemoon-org/extension-blocks/issues/6&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;I&amp;#39;m interested in a more detailed explanation on how the Merle tree&lt;br/&gt;structure works so we can add it to the spec, I didn&amp;#39;t follow exactly&lt;br/&gt;the new consensus rule and its mechanism in those several lines.&lt;br/&gt;&lt;br/&gt;We will begin making a pull request adding it into our specification,&lt;br/&gt;but more clarity on how to do it on its own would be helpful. We will&lt;br/&gt;also consider the code exposure change to adding in SegWit on the&lt;br/&gt;Canonical/1MB chain if it is more elegant to implement.&lt;br/&gt;&lt;br/&gt;Packaging this into our proposal would not only be important, but&lt;br/&gt;helpful to the end goals of this proposal as it becomes a standard&lt;br/&gt;soft-fork consensus rule which has greater guarantees around&lt;br/&gt;enforcibility than user-actication.&lt;br/&gt;&lt;br/&gt;Further, can you provide clarity and confirmation into why this&lt;br/&gt;commitment wasn&amp;#39;t required as part of SegWit? &lt;br/&gt;&lt;br/&gt;-- &lt;br/&gt;Joseph Poon
    </content>
    <updated>2023-06-07T17:59:16Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqstpv2kj0qcge8gc07d8se296t7fff29hk97ul2hgksf5cleaumplszyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepz4zrtxf</id>
    
      <title type="html">📅 Original date posted:2017-04-05 📝 Original message:Ahh, ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqstpv2kj0qcge8gc07d8se296t7fff29hk97ul2hgksf5cleaumplszyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepz4zrtxf" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqspjwz3q4u333j7xzqff34ppm9rc9t0hc7m462jgkddan7fzeys32g8798y4&#39;&gt;nevent1q…98y4&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-04-05&lt;br/&gt;📝 Original message:Ahh, sorry all for this public message. :(&lt;br/&gt;&lt;br/&gt;On Wed, Apr 05, 2017 at 05:39:00PM -0700, Joseph Poon wrote:&lt;br/&gt;&amp;gt; #bitcoin at freenode:&lt;br/&gt;&amp;gt;  00:04    gmaxwell| lol poon pretending that he isn&amp;#39;t complicit in all this stuff.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Are you *fucking* serious? Is this how you resolve all problems? I&amp;#39;m&lt;br/&gt;&amp;gt; taking you seriously and having second thoughts and want to make public&lt;br/&gt;&amp;gt; commitments to do the right thing without any evidence and you come out&lt;br/&gt;&amp;gt; and say *this*?&lt;br/&gt;&lt;br/&gt;-- &lt;br/&gt;Joseph Poon
    </content>
    <updated>2023-06-07T17:59:15Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsz4cc08mrfq9kaz6e9exjmdc5nu7htnfkmzjrz5hkx92dz4w4uyzgzyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepzm998z8</id>
    
      <title type="html">📅 Original date posted:2017-04-05 📝 Original message:On ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsz4cc08mrfq9kaz6e9exjmdc5nu7htnfkmzjrz5hkx92dz4w4uyzgzyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepzm998z8" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsvnxjzsgsyy8pddzvweawk7q0xn634w29gqx48t2gu3etlflzmlaswt9jty&#39;&gt;nevent1q…9jty&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-04-05&lt;br/&gt;📝 Original message:On Thu, Apr 06, 2017 at 01:32:03AM &#43;0000, Gregory Maxwell wrote:&lt;br/&gt;&amp;gt; On Thu, Apr 6, 2017 at 12:39 AM, Joseph Poon &amp;lt;joseph at lightning.network&amp;gt; wrote:&lt;br/&gt;&amp;gt; &amp;gt; #bitcoin at freenode:&lt;br/&gt;&amp;gt; &amp;gt;  00:04    gmaxwell| lol poon pretending that he isn&amp;#39;t complicit in all this stuff.&lt;br/&gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; Are you *fucking* serious? Is this how you resolve all problems? I&amp;#39;m&lt;br/&gt;&amp;gt; &amp;gt; taking you seriously and having second thoughts and want to make public&lt;br/&gt;&amp;gt; &amp;gt; commitments to do the right thing without any evidence and you come out&lt;br/&gt;&amp;gt; &amp;gt; and say *this*?&lt;br/&gt;&lt;br/&gt;Apologies to the list.&lt;br/&gt;&lt;br/&gt;&amp;gt; I apologize for the glib talk on chat and I hope you understand that&lt;br/&gt;&amp;gt; the tone in such venues is significantly informal; and that my remark&lt;br/&gt;&amp;gt; was a causal one among friends which was not intended in a spirit as&lt;br/&gt;&amp;gt; seriously as you&amp;#39;ve taken it.&lt;br/&gt;&lt;br/&gt;You&amp;#39;re still presuming ill-will. I&amp;#39;m seriously offended. I&amp;#39;m not upset&lt;br/&gt;with the glib talk, I&amp;#39;m upset that you think I have ill will.&lt;br/&gt;&lt;br/&gt;&amp;gt; That said, two days ago you participated in a highly unusual&lt;br/&gt;&amp;gt; announcement of a protocol change that-- rather than being sent for&lt;br/&gt;&amp;gt; community review in any plausible venue for that purpose-- was&lt;br/&gt;&amp;gt; announced as a done deal in embargoed media announcements.  This&lt;br/&gt;&amp;gt; proposed protocol change seemed custom tailored to preserve covert&lt;br/&gt;&amp;gt; boosting, and incorporated direct support for lightning -- and the&lt;br/&gt;&amp;gt; leading competing theory was that a large miner opposed segwit&lt;br/&gt;&amp;gt; specifically because they wanted to block lightning. Moreover, I have&lt;br/&gt;&amp;gt; heard reports I consider reliable that this work was funded by the&lt;br/&gt;&amp;gt; miner in question.&lt;br/&gt;&lt;br/&gt;We specifically told you guys privately and publicly when asked that it&lt;br/&gt;was simply to be able to do it in 2 weeks. Check out the code, it was&lt;br/&gt;much faster to do it that way. The spec wasn&amp;#39;t complete and I have&lt;br/&gt;personal biases against doing it on the main-chain since it would&lt;br/&gt;benefit things if there was smart contract proections on the main chain&lt;br/&gt;as well, which I figured would be more controversial. I never said&lt;br/&gt;anything about public commitments to transactions. In fact, I&amp;#39;m pretty&lt;br/&gt;good at figuring things out and tend to cargo-cult things (since culture&lt;br/&gt;is the genetic memory is civlizations), if I saw BIP141/SegWit required&lt;br/&gt;a commitment instead of it being optional, I would&amp;#39;ve probably thought&lt;br/&gt;about it. Why wasn&amp;#39;t this required as part of SegWit? BIP141 is still&lt;br/&gt;vulnerable. Why did you pull this out just now? I&amp;#39;m totally blindsided&lt;br/&gt;here, hence my earlier reply of wanting to resolve it in the Extension&lt;br/&gt;Block proposal.&lt;br/&gt;&lt;br/&gt;&amp;gt; In the time since, when people asked for revisions to the proposal to&lt;br/&gt;&amp;gt; not block segwit they received responses from the Bcoin account on&lt;br/&gt;&amp;gt; twitter that &amp;#34;there would be no amendments&amp;#34;, and I was sent leaked&lt;br/&gt;&amp;gt; chatlogs of you making considerably hostile statements, claiming that&lt;br/&gt;&amp;gt; if your extension block proposal is &amp;#34;a litmus test for corruption&amp;#34;,&lt;br/&gt;&amp;gt; and claimed (before AFAIK anyone had had a chance to comment on it)&lt;br/&gt;&amp;gt; that the Bitcoin project contributors opposed it for &amp;#34;nonsense&lt;br/&gt;&amp;gt; reasons&amp;#34;.&lt;br/&gt;&lt;br/&gt;I never participated in that, and the specific announcement here&lt;br/&gt;indicates that changes will be happening. The intention was to get it&lt;br/&gt;out as a draft and *working* demo code.&lt;br/&gt;&lt;br/&gt;&lt;a href=&#34;https://medium.com/purse-essays/ready-for-liftoff-a5533f4de0b6&#34;&gt;https://medium.com/purse-essays/ready-for-liftoff-a5533f4de0b6&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;That was specifically after Core developers accused me of publicly&lt;br/&gt;acting in poor form without any understanding of the situation. I was&lt;br/&gt;especially annoyed because all of you are acting with similar secrecy,&lt;br/&gt;even worse, there is specific organization by Core which the public is&lt;br/&gt;not aware of. Think about it from my perspective, you all blocked me out&lt;br/&gt;intentionally for months and then accuse me of going to journalists for&lt;br/&gt;a couple hours before? I&amp;#39;m seriously hurt.&lt;br/&gt;&lt;br/&gt;&amp;gt; It is with this in mind that when you tried to pull me into an off the&lt;br/&gt;&amp;gt; record conversation that I responded stating:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &amp;#34;[...] I am disinclined to communicate with you except in email where I can&lt;br/&gt;&amp;gt; get third party transferable proof of our communication.  I&amp;#39;m&lt;br/&gt;&amp;gt; concerned that you may now be involved in a conspiracy which I do not&lt;br/&gt;&amp;gt; want to be implicated in myself.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; It is my estimation that, for that above reason, it would be in my&lt;br/&gt;&amp;gt; best interest to not communicate with you at all.  But in all your&lt;br/&gt;&amp;gt; prior interactions you appeared to have integrity and sense, so out of&lt;br/&gt;&amp;gt; respect for that history I&amp;#39;m willing to communicate with you, but only&lt;br/&gt;&amp;gt; in public or in email where my end is on gmail.&amp;#34;&lt;br/&gt;&lt;br/&gt;Nice you cut out the beginning which explains on *why* I didn&amp;#39;t reply:&lt;br/&gt;&lt;br/&gt;&amp;#34;with an embargoed press release in Forbes.&lt;br/&gt;&lt;br/&gt;That&amp;#39;s how you roll now, right? :-/&amp;#34;&lt;br/&gt;&lt;br/&gt;Why didn&amp;#39;t you include your entire message?&lt;br/&gt;&lt;br/&gt;That was in reply to my initial message reaching out to you and Adam&lt;br/&gt;Back:&lt;br/&gt;&amp;#34;Hi, would you like a phone call tomorrow?&lt;br/&gt;&lt;br/&gt;I am in Thailand right now, I understand if what I did is upsetting, my&lt;br/&gt;goal was not to upset you.&lt;br/&gt;&lt;br/&gt;I deeply respect you both technically, but I do believe what I am doing&lt;br/&gt;is right. If you could find a way, I would be extremely grateful if we&lt;br/&gt;could chat sometime.&amp;#34;&lt;br/&gt;&lt;br/&gt;Replying with a beginning like that with that kind of hostility means I&lt;br/&gt;sort of don&amp;#39;t know how to reply! Further, you didn&amp;#39;t express any real&lt;br/&gt;concerns to me. I just figured you were mad and wanted to give you time&lt;br/&gt;to cool off. Calling someone up is a way to explain over a higher&lt;br/&gt;bandwidth medium gives material reiteration of a real honest heartfelt&lt;br/&gt;apology in misunderstanding.&lt;br/&gt;&lt;br/&gt;&amp;gt; This was two days ago and you did not respond further.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; With that in mind I hope you do not find some casual crap-talking on&lt;br/&gt;&amp;gt; chat to be especially surprising.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I understand that you didn&amp;#39;t intend for the initial message to be&lt;br/&gt;&amp;gt; posted in public, so I&amp;#39;m sorry for continuing the thread here-- but I&lt;br/&gt;&amp;gt; thought it was useful for people to understand the context behind that&lt;br/&gt;&amp;gt; glib remark: Including the point that I do not know for a fact that&lt;br/&gt;&amp;gt; you are complicit in anything, but I consider your recent actions to&lt;br/&gt;&amp;gt; be highly concerning.&lt;br/&gt;&lt;br/&gt;I&amp;#39;m only including more details in the email because you had deceptive&lt;br/&gt;framing. I normally would *never* include contents in a private email&lt;br/&gt;message and believe this is already the gray area. I already feel&lt;br/&gt;uncomfortable publishing my message to you without permission, but I&lt;br/&gt;feel it&amp;#39;s necessary context, but I will not continue. Would you like to&lt;br/&gt;have a public call instead? I really want to talk to you to express that&lt;br/&gt;I really mean what&amp;#39;s best for bitcoin. I&amp;#39;ve had a sleepless night&lt;br/&gt;thinking about these things, this type of drama is *NOT* good for&lt;br/&gt;bitcoin.&lt;br/&gt;&lt;br/&gt;I came here with good intent, even with Core and Blockstream being&lt;br/&gt;outright hostile and controlling with many personal problems over the&lt;br/&gt;years which I have never aired previously. I can tell when I&amp;#39;m not&lt;br/&gt;welcome. I&amp;#39;m going to take a break from all of this.&lt;br/&gt;&lt;br/&gt;-- &lt;br/&gt;Joseph Poon
    </content>
    <updated>2023-06-07T17:59:15Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqspjwz3q4u333j7xzqff34ppm9rc9t0hc7m462jgkddan7fzeys32gzyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepz7quy69</id>
    
      <title type="html">📅 Original date posted:2017-04-05 📝 Original ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqspjwz3q4u333j7xzqff34ppm9rc9t0hc7m462jgkddan7fzeys32gzyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepz7quy69" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqswefdawj67vs4wtx8y95q0kkehrwuam5kvpwp9l5nj230mrsazr3smgfy72&#39;&gt;nevent1q…fy72&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2017-04-05&lt;br/&gt;📝 Original message:#bitcoin at freenode:&lt;br/&gt; 00:04    gmaxwell| lol poon pretending that he isn&amp;#39;t complicit in all this stuff.&lt;br/&gt;&lt;br/&gt;Are you *fucking* serious? Is this how you resolve all problems? I&amp;#39;m&lt;br/&gt;taking you seriously and having second thoughts and want to make public&lt;br/&gt;commitments to do the right thing without any evidence and you come out&lt;br/&gt;and say *this*?&lt;br/&gt;&lt;br/&gt;On Thu, Apr 06, 2017 at 12:17:17AM &#43;0000, Gregory Maxwell via bitcoin-dev wrote:&lt;br/&gt;&amp;gt; On Wed, Apr 5, 2017 at 11:05 PM, theymos via bitcoin-dev&lt;br/&gt;&amp;gt; &amp;lt;bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &amp;gt; This seems to be a serious security problem.  Would it be possible to have&lt;br/&gt;&amp;gt; &amp;gt; a flag-day softfork included in Bitcoin Core as soon as 0.14.1? I think that a trigger&lt;br/&gt;&amp;gt; &amp;gt; 3-6 months from release should be sufficient for enough of the economy to upgrade,&lt;br/&gt;&amp;gt; &amp;gt; given the severity of the issue.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Not 0.14.1 because that is in RC already and will hopefully be out in a week.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; I think the speed of adoption depends a lot of the level of support&lt;br/&gt;&amp;gt; from the community. I don&amp;#39;t believe there are any technical hurdles to&lt;br/&gt;&amp;gt; implementing this relatively quickly (and I specifically propose using&lt;br/&gt;&amp;gt; the users choice of the segwit commitment or a modified form in order&lt;br/&gt;&amp;gt; to lower the technical complexity and risk).&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &amp;gt; BIP 141 says that the the commitment is optional if there are no SegWit transactions in&lt;br/&gt;&amp;gt; &amp;gt; the block,  so will today&amp;#39;s SegWit-ready miners always produce it even when optional&lt;br/&gt;&amp;gt; &amp;gt; according to BIP 141, as required by this softfork?&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; This is the default behavior as of 0.13.2, but I haven&amp;#39;t gone out to&lt;br/&gt;&amp;gt; measure this which is why the backwards compatibility section of the&lt;br/&gt;&amp;gt; BIP isn&amp;#39;t written yet.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; While I&amp;#39;m posting, I&amp;#39;ve had a dozen off-list emails that presented me&lt;br/&gt;&amp;gt; with some FAQ:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Many people asked what other protocol upgrades beyond segwit could run&lt;br/&gt;&amp;gt; into the same incompatibility.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Many proposed improvements to Bitcoin require additional&lt;br/&gt;&amp;gt; transaction-dependent commitment data.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Examples include:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; (1) Segwit.&lt;br/&gt;&amp;gt; (2) UTXO commitments. (non-delayed, at least)&lt;br/&gt;&amp;gt; (3) Committed Bloom filters&lt;br/&gt;&amp;gt; (4) Committed address indexes&lt;br/&gt;&amp;gt; (5) STXO commitments (non-delayed).&lt;br/&gt;&amp;gt; (6) Weak blocks&lt;br/&gt;&amp;gt; (7) Most kinds of fraud proofs&lt;br/&gt;&amp;gt; -- to state a few.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Unfortunately, putting *any* commitment to data dependent on the right&lt;br/&gt;&amp;gt; hand side of the hash tree in the left hand side (e.g. coinbase) means&lt;br/&gt;&amp;gt; a massive increase in the computation required for covert boosting,&lt;br/&gt;&amp;gt; because it means you can&amp;#39;t use the left&#43;right side combinations to&lt;br/&gt;&amp;gt; eliminate most of the hashing.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; It&amp;#39;s plausible, in fact, that this extra computation could completely&lt;br/&gt;&amp;gt; nullify the ASICBOOST advantage-- though this depends a lot on the&lt;br/&gt;&amp;gt; fine details of the implementation.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; This proposal does not itself propose nullifying ASICBOOST entirely,&lt;br/&gt;&amp;gt; it proposes severely handicapping the covert form of it, and&lt;br/&gt;&amp;gt; eliminating the differential advantage for boosting miners related to&lt;br/&gt;&amp;gt; the use of transaction-dependent commitments.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Basically there are two completely separate concerns: that boosting&lt;br/&gt;&amp;gt; can produce a monopoly advantage which could be severely harmful to&lt;br/&gt;&amp;gt; the ecosystem, and that the efficient implementation of _covert_&lt;br/&gt;&amp;gt; boosting can severely harm many useful protocol improvements.   My&lt;br/&gt;&amp;gt; proposal only addresses the second concern, by (I believe) completely&lt;br/&gt;&amp;gt; leveling the playing field so that opposing commitments will not break&lt;br/&gt;&amp;gt; boosting any worse, and by making covert boosting less appealing in&lt;br/&gt;&amp;gt; general.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Use of the segwit-style commitment even in non-segwit blocks is sufficient&lt;br/&gt;&amp;gt; because the segwit commitment commits to all  transactions  (except&lt;br/&gt;&amp;gt; the coinbase) and not just segwit ones.&lt;br/&gt;&amp;gt; (It was designed this way so that lite clients that needed witness&lt;br/&gt;&amp;gt; data could work with just one tree).&lt;br/&gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt; bitcoin-dev mailing list&lt;br/&gt;&amp;gt; bitcoin-dev at lists.linuxfoundation.org&lt;br/&gt;&amp;gt; &lt;a href=&#34;https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev&#34;&gt;https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;-- &lt;br/&gt;Joseph Poon
    </content>
    <updated>2023-06-07T17:59:14Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsx2ln985tpmgj7zf204k0yc0rz6c82xnrf8qp0j6x0neh0nkxwgsqzyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepzf8vm0f</id>
    
      <title type="html">📅 Original date posted:2016-08-16 📝 Original message:I ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsx2ln985tpmgj7zf204k0yc0rz6c82xnrf8qp0j6x0neh0nkxwgsqzyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepzf8vm0f" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs990htrhxa6hc4n9lwwlx2cuygjf72drpd6jsx8esc6azev8wr58c477agh&#39;&gt;nevent1q…7agh&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2016-08-16&lt;br/&gt;📝 Original message:I agree this is an interesting area of transaction malleability to still&lt;br/&gt;consider in the future, and minimization of these areas of malleability&lt;br/&gt;with regards to its impact on the p2p network should be easy to resolve&lt;br/&gt;and (hopefully) well-understood by script writers in the future.&lt;br/&gt;&lt;br/&gt;On Tue, Aug 16, 2016 at 12:43:32PM -0700, Peter Todd via bitcoin-dev wrote:&lt;br/&gt;&amp;gt; Having said that, a better approach may be a separate CHECKBOOLVERIFY opcode&lt;br/&gt;&amp;gt; that fails unless the top item on the stack is a minimally encoded true or&lt;br/&gt;&amp;gt; false value, to allow script writers to opt into this behavior; it&amp;#39;s not always&lt;br/&gt;&amp;gt; ideal.&lt;br/&gt;&lt;br/&gt;I think the biggest value of the proposed BIP behavior is that the cost&lt;br/&gt;is lower for &amp;#34;doing it right&amp;#34; to create script enforcement of OP_TRUE or&lt;br/&gt;OP_FALSE. It is already possible to enforce with 2 bytes pushing OP_TRUE&lt;br/&gt;and then OP_EQUAL. Creating an &amp;#34;OP_CHECKBOOLVERIFY&amp;#34; definitely achieves&lt;br/&gt;the same result, but at a 1-byte (insetad of 2-byte) cost to &amp;#34;do it&lt;br/&gt;right&amp;#34;, so there is the same incentive to save on the byte and push&lt;br/&gt;potential DoS costs onto the network -- whereas enforcing OP_TRUE byte&lt;br/&gt;in OP_IF would create costs for those who want to evaluate pushdata, so&lt;br/&gt;that has to be explicitly opt-in from an optimization/convenience&lt;br/&gt;standpoint.&lt;br/&gt;&lt;br/&gt;-- &lt;br/&gt;Joseph Poon
    </content>
    <updated>2023-06-07T17:52:56Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsp7kq62n2rcvecg0awapj6dfx8p3lzrq46f4u965m04umrz7vuhzszyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepzva5fpu</id>
    
      <title type="html">📅 Original date posted:2016-02-25 📝 Original message:As ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsp7kq62n2rcvecg0awapj6dfx8p3lzrq46f4u965m04umrz7vuhzszyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepzva5fpu" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsqy4euw2juzqtskpcx9dxxttwuwyavf7qfj09ndmgvtzqtd4c45sgnya9gv&#39;&gt;nevent1q…a9gv&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2016-02-25&lt;br/&gt;📝 Original message:As Segregated Witness will be merged soon as a solution for transaction&lt;br/&gt;malleability, especially with multi-party adversarial signatures, there&lt;br/&gt;may be an additional use case/functionality which is helpful for&lt;br/&gt;Lightning Network and possibly other Bitcoin use cases. This requires a&lt;br/&gt;new SIGHASH flag inside Segregated Witness which does not sign the input&lt;br/&gt;txid/index.&lt;br/&gt;&lt;br/&gt;Segwit is very helpful in resolving malleability in pretty much every&lt;br/&gt;case which matters. It is especially helpful in having solid and safe&lt;br/&gt;defaults for standard Bitcoin payments; it&amp;#39;s very difficult to mess up&lt;br/&gt;if you are writing code in conjunction with the Bitcoin RPC API.&lt;br/&gt;&lt;br/&gt;However, it is very useful for LN if there is a certain level of&lt;br/&gt;outsourcibility for transactions without this 3rd party taking on&lt;br/&gt;onerous costs. In LN, there is a dispute resolution period established&lt;br/&gt;to prevent the counterparty from attesting an incorrect channel state&lt;br/&gt;(represented by broadcasting a timelocked transaction). In other words,&lt;br/&gt;if someone in a channel broadcasts an incorrect state, the output can be&lt;br/&gt;redeemed by a 3rd party (but this 3rd party is not a custodian, since&lt;br/&gt;the output goes to the other party in the channel).&lt;br/&gt;&lt;br/&gt;Ideally, a 3rd-party can be handed a transaction which can encompass all&lt;br/&gt;prior states in a compact way. For currently-designed Segregated Witness&lt;br/&gt;transactions, this requires storing all previous signatures, which can&lt;br/&gt;become very costly if individuals to thousands of channel state updates&lt;br/&gt;per day. This is very possible, as fees are near-zero, the value in&lt;br/&gt;atomizing all payments to many transactions becomes viable (reducing&lt;br/&gt;transaction/information costs). If individuals are doing tens of&lt;br/&gt;thousands of transactions per day, and one presumes something like&lt;br/&gt;70-bytes of data per Commitment state in the channel, it quickly becomes&lt;br/&gt;infeasible to watch on behalf of many channels without material costs.&lt;br/&gt;&lt;br/&gt;This is especially necessary because it is highly desirable to make&lt;br/&gt;keeping track of these channels be very cheap, as it allows for more&lt;br/&gt;participants to be watching on one&amp;#39;s behalf (reducing the chance of a&lt;br/&gt;3rd party fail to watch). Further, it may reduce the need to notify the&lt;br/&gt;3rd party for every single channel Commitment state, instead only&lt;br/&gt;providing the most recent one should provide sufficient information for&lt;br/&gt;all prior states (since the signature will apply for any type of&lt;br/&gt;transaction), making the only updated information the revocation&lt;br/&gt;secret/preimage. Without this SIGHASH flag, every single state would&lt;br/&gt;need to be contacted and updated with 3rd parties. With this SIGHASH&lt;br/&gt;flag, one could instead delegate outsourcing when one&amp;#39;s client goes&lt;br/&gt;offline with a single message several hundred bytes in size,&lt;br/&gt;encompassing all prior states.&lt;br/&gt;&lt;br/&gt;Of course, while running a 24/7 full-node is encouraged, I suspect many&lt;br/&gt;people will not want to do so at the current time, and it needs to be&lt;br/&gt;functional for those who elect to be connected intermittently. This&lt;br/&gt;requires outsourcing or watching on one&amp;#39;s behalf.&lt;br/&gt;&lt;br/&gt;This would be achieved using a SIGHASH flag, termed SIGHASH_NOINPUT. It&lt;br/&gt;does not include as part of the signature, the outpoint being spent&lt;br/&gt;(txid and index), nor the amount. It however, would include the spent&lt;br/&gt;outpoint&amp;#39;s script as part of the signature. Note that this is just a&lt;br/&gt;SIGHASH flag, and the outpoints are still being included as part of the&lt;br/&gt;txins (if they are mutated, the new txids can be updated by the wallet&lt;br/&gt;without resigning). This allows for a signature to apply to anything&lt;br/&gt;with that pubkey (therefore pubkeys with this flag should not be&lt;br/&gt;reused). For safety, this only applies in SegWit transactions, as segwit&lt;br/&gt;provides a sufficient malleability solution, there is no incentive to&lt;br/&gt;improperly use this sighash flag as a roundabout way to resolve&lt;br/&gt;malleability.&lt;br/&gt;&lt;br/&gt;This helps with 3rd-party outsourcing for watching the blockchain, as&lt;br/&gt;one can provide a signature (and the most recent hash-chain of&lt;br/&gt;revocation preimages), which encompasses penalty transactions for all&lt;br/&gt;prior states. Functionally, this allows for opt-in wildcard inputs, but&lt;br/&gt;wallets which do not require these transactions do not need to be&lt;br/&gt;concerned with this flag; since they will never be signing with this&lt;br/&gt;flag, they do not need to be concerned with address re-use.&lt;br/&gt;&lt;br/&gt;I&amp;#39;m interested in input and in the level of receptiveness to this. If&lt;br/&gt;there is interest, I&amp;#39;ll write up a draft BIP in the next couple days.&lt;br/&gt;&lt;br/&gt;-- &lt;br/&gt;Joseph Poon
    </content>
    <updated>2023-06-07T17:49:16Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs0p7prhzen7q2tu7dq2cklkwfuzxvl9zm0lvnzsslw9m0vxjc47pszyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepzvpe506</id>
    
      <title type="html">📅 Original date posted:2015-08-19 📝 Original message:On ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs0p7prhzen7q2tu7dq2cklkwfuzxvl9zm0lvnzsslw9m0vxjc47pszyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepzvpe506" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqszlrm25k0yp8vvfh5eq2h4ep7f6cq2waf7mhupepfy6xzjn2qvhjgdppcgv&#39;&gt;nevent1q…pcgv&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-08-19&lt;br/&gt;📝 Original message:On Wed, Aug 19, 2015 at 09:21:36AM -0700, Mark Friedenbach via bitcoin-dev wrote:&lt;br/&gt;&amp;gt; If anyone feels strongly about this, please speak up.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; On Wed, Aug 19, 2015 at 3:37 AM, Jorge Tim??n &amp;lt;&lt;br/&gt;&amp;gt; bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; &amp;gt; I repeated my nit on &lt;a href=&#34;https://github.com/bitcoin/bips/pull/179&#34;&gt;https://github.com/bitcoin/bips/pull/179&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;I am also indifferent, but also dislike technical debt.&lt;br/&gt;&lt;br/&gt;It should maybe be noted for those who wish to do/write-code-for mempool&lt;br/&gt;transaction selection (irrespective of one&amp;#39;s opinion on it) that lower&lt;br/&gt;is better, since transactions with shorter relative locks are&lt;br/&gt;transactions with &amp;#34;higher priority&amp;#34;.&lt;br/&gt;&lt;br/&gt;-- &lt;br/&gt;Joseph Poon
    </content>
    <updated>2023-06-07T17:34:57Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsdwf5l2zpmjc3pu7632j6asqgmrse6m75z23ek2g09vfvwepgl75qzyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepzmljk86</id>
    
      <title type="html">📅 Original date posted:2015-08-13 📝 Original message:Very ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsdwf5l2zpmjc3pu7632j6asqgmrse6m75z23ek2g09vfvwepgl75qzyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepzmljk86" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsw5cv2lxgny4uw0k6kytgewxlzjsg0zg8a8mduqp85uz5aqkt5dtcftuwxg&#39;&gt;nevent1q…uwxg&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-08-13&lt;br/&gt;📝 Original message:Very cool! This will certainly help make Lightning Network testable on&lt;br/&gt;the main-chain and permit channels to remain open indefinitely. I&amp;#39;m&lt;br/&gt;looking forward to it.&lt;br/&gt;&lt;br/&gt;On Thu, Aug 13, 2015 at 12:06:44PM &#43;0100, Btc Drak via bitcoin-dev wrote:&lt;br/&gt;&amp;gt;         // Note that unlike CHECKLOCKTIMEVERIFY we do not need to&lt;br/&gt;&amp;gt;         // accept 5-byte bignums since any value greater than or&lt;br/&gt;&amp;gt;         // equal to SEQUENCE_THRESHOLD (= 1 &amp;lt;&amp;lt; 31) will be rejected&lt;br/&gt;&amp;gt;         // anyway. This limitation just happens to coincide with&lt;br/&gt;&amp;gt;         // CScriptNum&amp;#39;s default 4-byte limit with an explicit sign&lt;br/&gt;&amp;gt;         // bit.&lt;br/&gt;&lt;br/&gt;I haven&amp;#39;t tested the details of this, but is there another bit available&lt;br/&gt;for use in the future for the relative blockheight?&lt;br/&gt;&lt;br/&gt;I strongly believe that Lightning needs mitigations for a systemic&lt;br/&gt;supervillan attack which attemps to flood the network with transactions,&lt;br/&gt;which can hypothetically be mitigated with something like a timestop&lt;br/&gt;bit (as originally suggested by gmaxwell).&lt;br/&gt;&lt;br/&gt;Summary: If a block is flagged as timestopped (whether automatically or&lt;br/&gt;by vote or other mechanism), then an auxillary blockheigh is frozen and&lt;br/&gt;does not increment. This auxillary blockheight is only used for&lt;br/&gt;accounting in timestopped height computation (and isn&amp;#39;t used for&lt;br/&gt;anything else). So as the real blockheight increments, the auxillary&lt;br/&gt;blockheight can sometimes stop and stay the same. If a transaction has a&lt;br/&gt;timestop bit enabled, then the transaction&amp;#39;s OP_CSV relative height is&lt;br/&gt;dependent upon the auxillary height, not the real block height. This&lt;br/&gt;allows for a large backlog of transactions which must occur before a&lt;br/&gt;particular (relative) block height to enter into the blockchain.&lt;br/&gt;&lt;br/&gt;I&amp;#39;m not sure if it&amp;#39;s out of scope, but it could make sense to consider&lt;br/&gt;the possibility for additional state(s) with relative height computation&lt;br/&gt;today. Ideally, there&amp;#39;d be some kind of &amp;#34;version&amp;#34; byte which can be&lt;br/&gt;recontextualized into something later, but I don&amp;#39;t know how that could&lt;br/&gt;cleanly fit into the data structure/code.&lt;br/&gt;&lt;br/&gt;-- &lt;br/&gt;Joseph Poon
    </content>
    <updated>2023-06-07T17:34:55Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqswpvr6jcc0nfpwy5zg5xeelwl5zz4y9j5uuey3yxwtfmt68yc559szyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepzglwx37</id>
    
      <title type="html">📅 Original date posted:2015-08-10 📝 Original message:Hi, On ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqswpvr6jcc0nfpwy5zg5xeelwl5zz4y9j5uuey3yxwtfmt68yc559szyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepzglwx37" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsd7gc3z5lr0g37v88pj8kxnyq0d0mzg44d7w37kajtmh4dmmqdq4swlp79z&#39;&gt;nevent1q…p79z&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-08-10&lt;br/&gt;📝 Original message:Hi,&lt;br/&gt;&lt;br/&gt;On Mon, Aug 10, 2015 at 12:20:36AM &#43;0200, info--- via bitcoin-dev wrote:&lt;br/&gt;&amp;gt; Off-chain transactions, whether it&amp;#39;s Lightning or something else,&lt;br/&gt;&amp;gt; potentially extract fees, which may otherwise be paid to miners, if the&lt;br/&gt;&amp;gt; transactions were actually on-chain.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; In this context, wouldn&amp;#39;t it be contradictory, maybe even harmful, to&lt;br/&gt;&amp;gt; aim for an environment, where some/many/most transactions are off-chain?&lt;br/&gt;&lt;br/&gt;I think the fee market&amp;#39;s long-term implications for mining rewards is&lt;br/&gt;very important as well! However, opening and closing channels will not&lt;br/&gt;be infrequent to the point that it will never happen with Lightning.&lt;br/&gt;Individuals that fill up their channel will need to accommodate&lt;br/&gt;accumulation (as well as those that do a lot of disbursement). These&lt;br/&gt;fund flows are not too rare, and huge payments (think the equivalent to&lt;br/&gt;wire transfers today) will probably be still on-chain. I think the&lt;br/&gt;payment size of micropayments to credit cards are Lightning-scale, what&lt;br/&gt;people use today for wire transfers (e.g. buying a house) will be&lt;br/&gt;on-chain.&lt;br/&gt;&lt;br/&gt;What Lightning does is it mitigates the advantages that doing an end-run&lt;br/&gt;around bitcoin entirely via centralized systems provides to a sufficient&lt;br/&gt;level, e.g. everyone transacting on Coinbase. Having everything on&lt;br/&gt;centralized services will have significantly lower on-chain transactions&lt;br/&gt;than Lightning and is one of the more viable alternative off-chain&lt;br/&gt;payments.&lt;br/&gt;&lt;br/&gt;Fundamentally, without off-chain transactions, there&amp;#39;s a paradox within&lt;br/&gt;a viable fee market. If you presume that fees should be relatively&lt;br/&gt;competitive (i.e. not asymptotically close to zero), that implies that&lt;br/&gt;higher-value transactions *will* be prioritized over low-value&lt;br/&gt;transactions, as high-value transactions are willing to pay higher fees.&lt;br/&gt;Wire transfers are cheap when it&amp;#39;s a million-dollar wire.&lt;br/&gt;&lt;br/&gt;In my view, different transaction values is the much larger risk for&lt;br/&gt;on-chain transaction fee markets, with high-value transactions crowding&lt;br/&gt;out low-value transactions on-chain. With lightning, it significantly&lt;br/&gt;mitigates this problem by aggregating the low-value transactions&lt;br/&gt;off-chain.&lt;br/&gt;&lt;br/&gt;-- &lt;br/&gt;Joseph Poon
    </content>
    <updated>2023-06-07T17:34:33Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsyhjter4zk0t2s78y5023e67k8ccuptgaj69u5jaeharyxu6q89cgzyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepzqt63vz</id>
    
      <title type="html">📅 Original date posted:2015-08-13 📝 Original message:Very ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsyhjter4zk0t2s78y5023e67k8ccuptgaj69u5jaeharyxu6q89cgzyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepzqt63vz" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqspzpql3d0qxd5lfg7s7xzh45tz8cupta3nxtrqgj9te9wnxclc89g4kzuj6&#39;&gt;nevent1q…zuj6&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-08-13&lt;br/&gt;📝 Original message:Very cool! This will certainly help make Lightning Network testable on&lt;br/&gt;the main-chain and permit channels to remain open indefinitely. I&amp;#39;m&lt;br/&gt;looking forward to it.&lt;br/&gt;&lt;br/&gt;On Thu, Aug 13, 2015 at 12:06:44PM &#43;0100, Btc Drak via bitcoin-dev wrote:&lt;br/&gt;&amp;gt;         // Note that unlike CHECKLOCKTIMEVERIFY we do not need to&lt;br/&gt;&amp;gt;         // accept 5-byte bignums since any value greater than or&lt;br/&gt;&amp;gt;         // equal to SEQUENCE_THRESHOLD (= 1 &amp;lt;&amp;lt; 31) will be rejected&lt;br/&gt;&amp;gt;         // anyway. This limitation just happens to coincide with&lt;br/&gt;&amp;gt;         // CScriptNum&amp;#39;s default 4-byte limit with an explicit sign&lt;br/&gt;&amp;gt;         // bit.&lt;br/&gt;&lt;br/&gt;I haven&amp;#39;t tested the details of this, but is there another bit available&lt;br/&gt;for use in the future for the relative blockheight?&lt;br/&gt;&lt;br/&gt;I strongly believe that Lightning needs mitigations for a systemic&lt;br/&gt;supervillan attack which attemps to flood the network with transactions,&lt;br/&gt;which can hypothetically be mitigated with something like a timestop&lt;br/&gt;bit (as originally suggested by gmaxwell).&lt;br/&gt;&lt;br/&gt;Summary: If a block is flagged as timestopped (whether automatically or&lt;br/&gt;by vote or other mechanism), then an auxillary blockheigh is frozen and&lt;br/&gt;does not increment. This auxillary blockheight is only used for&lt;br/&gt;accounting in timestopped height computation (and isn&amp;#39;t used for&lt;br/&gt;anything else). So as the real blockheight increments, the auxillary&lt;br/&gt;blockheight can sometimes stop and stay the same. If a transaction has a&lt;br/&gt;timestop bit enabled, then the transaction&amp;#39;s OP_CSV relative height is&lt;br/&gt;dependent upon the auxillary height, not the real block height. This&lt;br/&gt;allows for a large backlog of transactions which must occur before a&lt;br/&gt;particular (relative) block height to enter into the blockchain.&lt;br/&gt;&lt;br/&gt;I&amp;#39;m not sure if it&amp;#39;s out of scope, but it could make sense to consider&lt;br/&gt;the possibility for additional state(s) with relative height computation&lt;br/&gt;today. Ideally, there&amp;#39;d be some kind of &amp;#34;version&amp;#34; byte which can be&lt;br/&gt;recontextualized into something later, but I don&amp;#39;t know how that could&lt;br/&gt;cleanly fit into the data structure/code.&lt;br/&gt;&lt;br/&gt;-- &lt;br/&gt;Joseph Poon
    </content>
    <updated>2023-06-07T15:46:48Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsppztvjq2a4vge6crk55l7g86n2dahzlsfx0cfn87me9ye6v60f6szyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepz0kas4c</id>
    
      <title type="html">📅 Original date posted:2015-08-10 📝 Original message:Hi ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsppztvjq2a4vge6crk55l7g86n2dahzlsfx0cfn87me9ye6v60f6szyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepz0kas4c" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsze6y2zng7pccuxjj9c560kq9m9mdat0ccehftrvj7gnjstfrvr7cx7a47h&#39;&gt;nevent1q…a47h&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-08-10&lt;br/&gt;📝 Original message:Hi Gavin,&lt;br/&gt;&lt;br/&gt;On Sun, Aug 09, 2015 at 06:44:08PM -0400, Gavin Andresen via bitcoin-dev wrote:&lt;br/&gt;&amp;gt; I&amp;#39;d love to see somebody write up a higher-level description of what the&lt;br/&gt;&amp;gt; user experience is like, what communication happens underneath, and what&lt;br/&gt;&amp;gt; new pieces of infrastructure need to get built to make it all work.&lt;br/&gt;&lt;br/&gt;I&amp;#39;m writing a (hopefully more accessible) summary on Lightning&lt;br/&gt;currently. It might not go into too much detail with infrastructure, but&lt;br/&gt;is a bit more UX focused.&lt;br/&gt;&lt;br/&gt;&amp;gt; A customer starts with eleven on-chain bitcoin. They want to pay for a nice&lt;br/&gt;&amp;gt; cup of tea. Walk me through what happens before/during/after the&lt;br/&gt;&amp;gt; transaction, assuming I have a  lightning-enabled wallet on my iPhone and&lt;br/&gt;&amp;gt; the tea shop has a lightning-enabled cash register.&lt;br/&gt;&amp;gt; &lt;br/&gt;&amp;gt; Assume neither the customer nor the tea shop are technically sophisticated&lt;br/&gt;&amp;gt; -- assume the customer is using an SPV wallet and the tea shop is using a&lt;br/&gt;&amp;gt; service similar to Bitpay.&lt;br/&gt;&lt;br/&gt;It&amp;#39;s a bit of a tangent, but I see it as necessary that all Lightning&lt;br/&gt;services/wallets support on-chain payments for a multitude of reasons,&lt;br/&gt;including usability and long-term security/fungibility. For that reason,&lt;br/&gt;the UX flow for payment after channels are established should not be&lt;br/&gt;significantly different than Payment Protocol based payment flows (with&lt;br/&gt;the only exception being a possible additional fee dialog box/alert when&lt;br/&gt;the fees will be higher than expected/on-chain).&lt;br/&gt;&lt;br/&gt;-- &lt;br/&gt;Joseph Poon
    </content>
    <updated>2023-06-07T15:45:21Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsfzdagxxsjyxgywc6xv9kp3znefk7e5uxkxpfeq9mrxshqhtxu6zczyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepz5u7rcp</id>
    
      <title type="html">📅 Original date posted:2015-05-07 📝 Original message:Hi ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsfzdagxxsjyxgywc6xv9kp3znefk7e5uxkxpfeq9mrxshqhtxu6zczyrxtfny8c32mwnlt4mje988aqunyyxewafj262ckgs9k36x8gvepz5u7rcp" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsfn6mvftshjwgy4l8p52v9a8hefuhf8xh0yn03xncx8j5e37fr8ucfnh674&#39;&gt;nevent1q…h674&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-05-07&lt;br/&gt;📝 Original message:Hi Matt,&lt;br/&gt;&lt;br/&gt;I agree that starting discussion on how to approach this problem is&lt;br/&gt;necessary and it&amp;#39;s difficult taking positions without details on what is&lt;br/&gt;being discussed.&lt;br/&gt;&lt;br/&gt;A simple hard 20-megabyte increase will likely create perverse&lt;br/&gt;incentives, perhaps a method can exist with some safe transition. I&lt;br/&gt;think ultimately, the underlying tension with this discussion is about&lt;br/&gt;the relative power of miners. Any transition of blocksize increase will&lt;br/&gt;increase the influence of miners, and it is about understanding the&lt;br/&gt;tradeoffs for each possible approach.&lt;br/&gt;&lt;br/&gt;On Thu, May 07, 2015 at 10:02:09PM &#43;0000, Matt Corallo wrote:&lt;br/&gt;&amp;gt;  * I&amp;#39;d like to see some better conclusions to the discussion around&lt;br/&gt;&amp;gt; long-term incentives within the system. If we&amp;#39;re just building Bitcoin&lt;br/&gt;&amp;gt; to work in five years, great, but if we want it all to keep working as&lt;br/&gt;&amp;gt; subsidy drops significantly, I&amp;#39;d like a better answer than &amp;#34;we&amp;#39;ll deal&lt;br/&gt;&amp;gt; with it when we get there&amp;#34; or &amp;#34;it will happen, all the predictions based&lt;br/&gt;&amp;gt; on people&amp;#39;s behavior today say so&amp;#34; (which are hopefully invalid thanks&lt;br/&gt;&amp;gt; to the previous point). Ideally, I&amp;#39;d love to see some real free pressure&lt;br/&gt;&amp;gt; already on the network starting to develop when we commit to hardforking&lt;br/&gt;&amp;gt; in a year. Not just full blocks with some fees because wallets are&lt;br/&gt;&amp;gt; including far greater fees than they really need to, but software which&lt;br/&gt;&amp;gt; properly handles fees across the ecosystem, smart fee increases when&lt;br/&gt;&amp;gt; transactions arent confirming (eg replace-by-fee, which could be limited&lt;br/&gt;&amp;gt; to increase-in-fees-only for those worried about double-spends).&lt;br/&gt;&lt;br/&gt;I think the long-term fee incentive structure needs to be significantly&lt;br/&gt;more granular. We&amp;#39;ve all seen miners and pools take the path of least&lt;br/&gt;resistance; often they just do whatever the community tells them to&lt;br/&gt;blindly. While this status quo can change in the future, I think&lt;br/&gt;designing sane defaults is a good path for any possible transition.&lt;br/&gt;&lt;br/&gt;It seems especially reasonable to maintain fee pressure for normal&lt;br/&gt;transactions during a hard-fork transition. It&amp;#39;s possible to do so using&lt;br/&gt;some kind of soft-cap structure. Building in a default soft-cap of 1&lt;br/&gt;megabyte for some far future scheduled fork would seem like a sane thing&lt;br/&gt;to do for bitcoin-core.&lt;br/&gt;&lt;br/&gt;It seems also viable to be far more aggressive. What&amp;#39;s your (and the&lt;br/&gt;community&amp;#39;s) opinion on some kind of coinbase voting protocol for&lt;br/&gt;soft-cap enforcement? It&amp;#39;s possible to write in messages to the coinbase&lt;br/&gt;for a enforcible soft-cap that orphans out any transaction which&lt;br/&gt;violates these rules. It seems safest to have the transition has the&lt;br/&gt;first hardforked block be above 1MB, however, the next block default to&lt;br/&gt;an enforced 1MB block. If miners agree to go above this, they must vote&lt;br/&gt;in their coinbase to do so.&lt;br/&gt;&lt;br/&gt;There&amp;#39;s a separate discussion about this starting on:&lt;br/&gt;CAE-z3OXnjayLUeHBU0hdwU5pKrJ6fpj7YPtGBMQ7hKXG3Sj6hw at mail.gmail.com&lt;br/&gt;&lt;br/&gt;I think defaulting some kind of mechanism on reading the coinbase seems&lt;br/&gt;to be a good idea, I think left alone, miners may not do so. That way,&lt;br/&gt;it&amp;#39;s possible to have your cake and eat it too, fee pressure will still&lt;br/&gt;exist, while block sizes can increase (provided it&amp;#39;s in the miners&amp;#39;&lt;br/&gt;greater interests to do so).&lt;br/&gt;&lt;br/&gt;The Lightning Network&amp;#39;s security model in the long-term may rely on a&lt;br/&gt;multi-tier soft-cap, but I&amp;#39;m not sure. If 2nd order systemic miner&lt;br/&gt;incentives were not a concern, a system which has an enforced soft-cap&lt;br/&gt;and permits breaching that soft-cap with some agreed upon much higher&lt;br/&gt;fee would work best. LN works without this, but it seems to be more&lt;br/&gt;secure if some kind of miner consensus rule is reached regarding&lt;br/&gt;prioritizing behavior of 2nd-layer consensus states.&lt;br/&gt;&lt;br/&gt;No matter how it&amp;#39;s done, certain aspects of the security model of&lt;br/&gt;something like Lightning is reliant upon having block-space&lt;br/&gt;availability for transactions to enter into the blockchain in a timely&lt;br/&gt;manner (since &amp;#34;deprecated&amp;#34; channel states become valid again after some&lt;br/&gt;agreed upon block-time).&lt;br/&gt;&lt;br/&gt;I think pretty much everyone agrees that the 1MB block cap will&lt;br/&gt;eventually be a problem. While people may disagree with when that will&lt;br/&gt;be and how it&amp;#39;ll play out, I think we&amp;#39;re all in agreement that&lt;br/&gt;discussion about it is a good idea, especially when it comes to&lt;br/&gt;resolving blocking concerns.&lt;br/&gt;&lt;br/&gt;Starting a discussion on how a hypothetical blocksize increase will&lt;br/&gt;occur and the necessary blocking/want-to-have features/tradeoffs seems&lt;br/&gt;to be a great way to approach this problem. The needs for Lightning&lt;br/&gt;Network may be best optimized by being able to prioritizing a large mass&lt;br/&gt;of timeout transactions at once (when a well-connected node stops&lt;br/&gt;communicating).&lt;br/&gt;&lt;br/&gt;-- &lt;br/&gt;Joseph Poon
    </content>
    <updated>2023-06-07T15:33:39Z</updated>
  </entry>

</feed>