<?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/npub186h7xm74e8dqvz64kzhx8aq3j47lwf3emlxl7w8j0d0thrth65vs9y2s83.rss" />
  <link href="https://nostr.ae/npub186h7xm74e8dqvz64kzhx8aq3j47lwf3emlxl7w8j0d0thrth65vs9y2s83" />
  <id>https://nostr.ae/npub186h7xm74e8dqvz64kzhx8aq3j47lwf3emlxl7w8j0d0thrth65vs9y2s83</id>
  <icon></icon>
  <logo></logo>




  <entry>
    <id>https://nostr.ae/nevent1qqsfp8ecghg7ty4wdny47g462fkleu89vpr90ftg5stk8lglqqztvqszyql2lcm06hya5pst2kc2ucl5zx2hmaex880umlec7fa4awudwl23jd7q0a9</id>
    
      <title type="html">📅 Original date posted:2022-08-31 📝 Original message: Hi ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsfp8ecghg7ty4wdny47g462fkleu89vpr90ftg5stk8lglqqztvqszyql2lcm06hya5pst2kc2ucl5zx2hmaex880umlec7fa4awudwl23jd7q0a9" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsw97jcdqyydhkwm3y9mma90pqsujk66tkkx0zfvrsjnvxwqr82llgnkeywd&#39;&gt;nevent1q…eywd&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2022-08-31&lt;br/&gt;📝 Original message:&lt;br/&gt;Hi folks,&lt;br/&gt;&lt;br/&gt;I think I&amp;#39;ve seen wallets supporting &amp;#34;send max&amp;#34; when a zero-amount invoice&lt;br/&gt;was used. So isn&amp;#39;t it a problem with the custodial service not supporting&lt;br/&gt;it?&lt;br/&gt;Whatever idea we figure out they can just refuse to implement it so we&lt;br/&gt;can&amp;#39;t force them into improving and being custodial they could steal&lt;br/&gt;already, so that shouldn&amp;#39;t be an issue.&lt;br/&gt;&lt;br/&gt;Have a nice day!&lt;br/&gt;Martin&lt;br/&gt;&lt;br/&gt;On Sat, 27 Aug 2022 at 04:06, ZmnSCPxj via Lightning-dev &amp;lt;&lt;br/&gt;lightning-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&lt;br/&gt;&amp;gt; Good morning Rene,&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; Dear fellow Lightning Developers,&lt;br/&gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; I was recently on an event where the visitors have been gifted 10k sats&lt;br/&gt;&amp;gt; on a custodial wallet. They could spend those sats via some web interface&lt;br/&gt;&amp;gt; and an NFC card. During the event I was contacted by several plebs who were&lt;br/&gt;&amp;gt; confused about one particular thing:&lt;br/&gt;&amp;gt; &amp;gt; It was impossible for them to withdraw the full amount from the service.&lt;br/&gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; Pasting an invoice for 10k sats would not work as the custodial service&lt;br/&gt;&amp;gt; required a fee budget of 1%. However if people submitted an invoice for&lt;br/&gt;&amp;gt; 9900 sats the remaining 100 sats were usually not fully required for the&lt;br/&gt;&amp;gt; fees. Thus the users may have had a leftover of for example 67 sats. Now&lt;br/&gt;&amp;gt; the problem repeated on the residual amount. While some services seem to&lt;br/&gt;&amp;gt; have a drain feature for such a situation I find this frustrating and was&lt;br/&gt;&amp;gt; wondering if we could help directly on a protocol level.&lt;br/&gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; Here is my proposal for a simple solution to this specific problem:&lt;br/&gt;&amp;gt; `option_recipient_pays_routing_fees`&lt;br/&gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; This would be a new flag in invoices signaling that the recipient is&lt;br/&gt;&amp;gt; willing to pay for the routing fees by releasing the preimage even if the&lt;br/&gt;&amp;gt; full amount has not been arrived in htlcs at the recipient.&lt;br/&gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; So the workflow would be the following:&lt;br/&gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; 1. Alice creates an invoice for 10k sats setting the&lt;br/&gt;&amp;gt; `option_recipient_pays_routing_fees` flag in the invoice and passes it&lt;br/&gt;&amp;gt; either to custodial user Bob or to her own custodial account.&lt;br/&gt;&amp;gt; &amp;gt; 2. The payer parses the invoice and searches for a payment path or&lt;br/&gt;&amp;gt; payment flow to Alice.&lt;br/&gt;&amp;gt; &amp;gt; 3. Because `option_recipient_pays_routing_fee` is set, the onion is not&lt;br/&gt;&amp;gt; constructed in a way that the final HTLC will be for the amount of 10k sats&lt;br/&gt;&amp;gt; but rather in a way that the first htlc will be for 10k sats and the&lt;br/&gt;&amp;gt; following HTLCs will be of decreasing value so that routing nodes are&lt;br/&gt;&amp;gt; compensated properly.&lt;br/&gt;&amp;gt; &amp;gt; 4. When the HTLC(s) arrive at Alice she will release the preimage if and&lt;br/&gt;&amp;gt; only if not too many sats (e.g. 1% of the amount) are missing. Of course it&lt;br/&gt;&amp;gt; would be good if the 1% was not hard coded in the protocol / software but&lt;br/&gt;&amp;gt; configurable by Alice at the time of invoice creation.&lt;br/&gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; I think the main issue with this proposal is that instead of confusing&lt;br/&gt;&amp;gt; users who wish to drain an account we may now have to educate users about&lt;br/&gt;&amp;gt; two different invoice types. On the other hand I think this can probably&lt;br/&gt;&amp;gt; easily be achieved via the current wide spread user interfaces. Of course&lt;br/&gt;&amp;gt; it may be nice to have folks from the Bitcoin Design community to join this&lt;br/&gt;&amp;gt; specific part of the discussion.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; In theory, trampoline routes / whatever-the-cool-name-is-now should fix&lt;br/&gt;&amp;gt; this problem as well.&lt;br/&gt;&amp;gt; I am referring to that scheme where the invoice contains an onion and a&lt;br/&gt;&amp;gt; &amp;#34;trampoline&amp;#34; node that is the only node that can decrypt the first layer of&lt;br/&gt;&amp;gt; the onion.&lt;br/&gt;&amp;gt; The sender then has to route to the trampoline node, and the trampoline&lt;br/&gt;&amp;gt; node then receives the rest of the onion.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; In this scheme, the receiver provides an encrypted route from some node to&lt;br/&gt;&amp;gt; itself.&lt;br/&gt;&amp;gt; As the receiver provides the route in order to gain privacy from the&lt;br/&gt;&amp;gt; sender, the onus is on the receiver to deduct the fees from its received&lt;br/&gt;&amp;gt; funds.&lt;br/&gt;&amp;gt; i.e. the sender is only responsible for paying for fees up to the entry&lt;br/&gt;&amp;gt; point of the trampoline.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Thus, such a drain requirement simply means that the custodial service has&lt;br/&gt;&amp;gt; to give its node ID.&lt;br/&gt;&amp;gt; Then the receiver finds a route from the custodial service to itself, and&lt;br/&gt;&amp;gt; encodes that in the trampoline onion, with a direct neighbor of the&lt;br/&gt;&amp;gt; custodial service node as the trampoline.&lt;br/&gt;&amp;gt; The custodial service then does not care about any fees as the receiver&lt;br/&gt;&amp;gt; decided the route; the receiver knows exactly how much to expect (since it&lt;br/&gt;&amp;gt; calculated the route).&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Of course, it is also possible as you propose, but any level-1-selfish&lt;br/&gt;&amp;gt; custodial service will then always keep the remaining fee budget and always&lt;br/&gt;&amp;gt; ensure that the receiver gets 99% of the value (or 100% -&lt;br/&gt;&amp;gt; whatever_setting_they_chose), paying fees, and keeping the remaining 1% for&lt;br/&gt;&amp;gt; itself.&lt;br/&gt;&amp;gt; The receiver in this case cannot audit the route anyway, and thus cannot&lt;br/&gt;&amp;gt; determine how much the true fees are; whereas in the trampoline case the&lt;br/&gt;&amp;gt; route is specifically selected by the receiver.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Regards,&lt;br/&gt;&amp;gt; ZmnSCPxj&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;&amp;gt;&lt;br/&gt;-------------- next part --------------&lt;br/&gt;An HTML attachment was scrubbed...&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/lightning-dev/attachments/20220831/26c6eb67/attachment.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/lightning-dev/attachments/20220831/26c6eb67/attachment.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-09T13:06:43Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs8zyedlpa6vm358awxqg9s2jpenr7nhap0fdv42xczj0ru8wdu97czyql2lcm06hya5pst2kc2ucl5zx2hmaex880umlec7fa4awudwl23j96s0ah</id>
    
      <title type="html">📅 Original date posted:2021-07-15 📝 Original message: What ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs8zyedlpa6vm358awxqg9s2jpenr7nhap0fdv42xczj0ru8wdu97czyql2lcm06hya5pst2kc2ucl5zx2hmaex880umlec7fa4awudwl23j96s0ah" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs9aqzg6vhq0rcz23ld9lfdzp204js4cugdyphmzh2kwtjzazqdm4gpym7hm&#39;&gt;nevent1q…m7hm&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2021-07-15&lt;br/&gt;📝 Original message:&lt;br/&gt;What would happen in 2) if the node has data but the peer returned an&lt;br/&gt;incorrect state?&lt;br/&gt;&lt;br/&gt;On Wed, Jul 14, 2021, 20:13 Christian Decker &amp;lt;decker.christian at gmail.com&amp;gt;&lt;br/&gt;wrote:&lt;br/&gt;&lt;br/&gt;&amp;gt; Not quite sure if this issue is unique to eltoo tbh. While in LN-penalty&lt;br/&gt;&amp;gt; loss-of-state equates to loss-of-funds, in eltoo this is reduced to&lt;br/&gt;&amp;gt; impact only funds that are in a PTLC at the time of the loss-of-state.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; We have a couple of options here, that don&amp;#39;t touch the blockchain, and&lt;br/&gt;&amp;gt; are therefore rather lightweight:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;  1) Do nothing and keep the incentive to keep up to date backups. It&lt;br/&gt;&amp;gt;  still is a reduction in risk w.r.t. LN-penalty, since this is just an&lt;br/&gt;&amp;gt;  append only log of secrets, and old secrets don&amp;#39;t harm you like&lt;br/&gt;&amp;gt;  attempting to close with an old commitment would.&lt;br/&gt;&amp;gt;  2) Use the peer-storage idea, where we deposit an encrypted bundle with&lt;br/&gt;&amp;gt;  our peers, and which we expect the peers to return. by hiding the fact&lt;br/&gt;&amp;gt;  that we forgot some state, until the data has been exchanged we can&lt;br/&gt;&amp;gt;  ensure that peers always return the latest snapshot of whatever we gave&lt;br/&gt;&amp;gt;  them.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; The latter is the encrypted-blob idea that Rusty has been proposing for&lt;br/&gt;&amp;gt; a while now.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Cheers,&lt;br/&gt;&amp;gt; Christian&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Anthony Towns &amp;lt;aj at erisian.com.au&amp;gt; writes:&lt;br/&gt;&amp;gt; &amp;gt; Hello world,&lt;br/&gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; Suppose you have some payments going from Alice to Bob to Carol with&lt;br/&gt;&amp;gt; &amp;gt; eltoo channels. Bob&amp;#39;s lightning node crashes, and he recovers from an&lt;br/&gt;&amp;gt; &amp;gt; old backup, and Alice and Carol end up dropping newer channel states&lt;br/&gt;&amp;gt; &amp;gt; onto the blockchain.&lt;br/&gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; Suppose the timeout for the payments is a few hours away, while the&lt;br/&gt;&amp;gt; &amp;gt; channels have specified a week long CSV delay to rectify any problems&lt;br/&gt;&amp;gt; &amp;gt; on-chain.&lt;br/&gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; Then I think that that means that:&lt;br/&gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt; &amp;gt;  1) Carol will reveal the point preimages on-chain via adaptor&lt;br/&gt;&amp;gt; &amp;gt;     signatures, but Bob won&amp;#39;t be able to decode those adaptor signatures&lt;br/&gt;&amp;gt; &amp;gt;     because those signatures will need to change for each state&lt;br/&gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt; &amp;gt;  2) Even if Bob knows the point preimages, he won&amp;#39;t be able to&lt;br/&gt;&amp;gt; &amp;gt;     claim the PTLC payments on-chain, for the same reason: he needs&lt;br/&gt;&amp;gt; &amp;gt;     newer adaptor signatures that he&amp;#39;ll have lost with the state update&lt;br/&gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt; &amp;gt;  3) For any payments that timeout, Carol doesn&amp;#39;t have any particular&lt;br/&gt;&amp;gt; &amp;gt;     incentive to make it easy for Bob to claim the refund, and Bob won&amp;#39;t&lt;br/&gt;&amp;gt; &amp;gt;     have the adaptor signatures for the latest state to do so&lt;br/&gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt; &amp;gt;  4) But Alice will be able to claim refunds easily. This is working how&lt;br/&gt;&amp;gt; &amp;gt;     it&amp;#39;s meant to, at least!&lt;br/&gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; I think you could fix (3) by giving Carol (who does have all the adaptor&lt;br/&gt;&amp;gt; &amp;gt; signatures for the latest state) the ability to steal funds that are&lt;br/&gt;&amp;gt; &amp;gt; meant to have been refunded, provided she gives Bob the option of&lt;br/&gt;&amp;gt; claiming&lt;br/&gt;&amp;gt; &amp;gt; them first.&lt;br/&gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; However fixing (1) and (2) aren&amp;#39;t really going against Alice or Carol&amp;#39;s&lt;br/&gt;&amp;gt; &amp;gt; interests, so maybe you can just ask: Carol loses nothing by allowing&lt;br/&gt;&amp;gt; &amp;gt; Bob to claim funds from Alice; and Alice has already indicated that&lt;br/&gt;&amp;gt; &amp;gt; knowing P is worth more to her than the PTLC&amp;#39;s funds -- otherwise she&lt;br/&gt;&amp;gt; &amp;gt; wouldn&amp;#39;t have forwarded the PTLC to Bob in the first place.&lt;br/&gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; Likewise, everyone&amp;#39;s probably incentivised to negotiate cooperative&lt;br/&gt;&amp;gt; &amp;gt; closes instead of going on-chain -- better privacy, less fees, and less&lt;br/&gt;&amp;gt; &amp;gt; delay before the funds can be used elsewhere.&lt;br/&gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; FWIW, I think a similar flaw exists even in the original eltoo spec --&lt;br/&gt;&amp;gt; &amp;gt; Alice could simply decline to publish the settlement transaction until&lt;br/&gt;&amp;gt; &amp;gt; the timeout has been reached, preventing Bob from revealing the HTLC&lt;br/&gt;&amp;gt; &amp;gt; preimage before Alice can claim the refund.&lt;br/&gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; So I think that adds up to:&lt;br/&gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt; &amp;gt;  a) Nodes should share state on reconnection; if you find a node that&lt;br/&gt;&amp;gt; &amp;gt;     doesn&amp;#39;t do this, close the channel and put the node on your enemies&lt;br/&gt;&amp;gt; &amp;gt;     list. If you disagree on what the current state is, share your most&lt;br/&gt;&amp;gt; &amp;gt;     recent state, and if the other guy&amp;#39;s state is more recent, and all&lt;br/&gt;&amp;gt; &amp;gt;     the signatures verify, update your state to match theirs.&lt;br/&gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt; &amp;gt;  b) Always negotiate a mutual/cooperative close if possible, to avoid&lt;br/&gt;&amp;gt; &amp;gt;     actually using the eltoo protocol on-chain.&lt;br/&gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt; &amp;gt;  c) If you want to allow continuing the channel after restoring an old&lt;br/&gt;&amp;gt; &amp;gt;     state from backup, set the channel state index based on the real&lt;br/&gt;&amp;gt; time,&lt;br/&gt;&amp;gt; &amp;gt;     eg (real_time-start_time)*(max_updates_per_second). That way your&lt;br/&gt;&amp;gt; &amp;gt;     first update after a restore from backup will ensure that any old&lt;br/&gt;&amp;gt; &amp;gt;     states that your channel partner may not have told you about are&lt;br/&gt;&amp;gt; &amp;gt;     invalidated.&lt;br/&gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt; &amp;gt;  d) Accept that if you lose connectivity to a channel partner, you will&lt;br/&gt;&amp;gt; &amp;gt;     have to pay any PTLCs that were going to them, and won&amp;#39;t be able&lt;br/&gt;&amp;gt; &amp;gt;     to claim the PTLCs that were funding them. Perhaps limit the total&lt;br/&gt;&amp;gt; &amp;gt;     value of inbound PTLCs for forwarding that you&amp;#39;re willing to accept&lt;br/&gt;&amp;gt; &amp;gt;     at any one itme?&lt;br/&gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; Also, layered commitments seem like they make channel factories&lt;br/&gt;&amp;gt; &amp;gt; complicated too. Nobody came up with a way to avoid layered commitments&lt;br/&gt;&amp;gt; &amp;gt; while I wasn&amp;#39;t watching did they?&lt;br/&gt;&amp;gt; &amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; Cheers,&lt;br/&gt;&amp;gt; &amp;gt; aj&lt;br/&gt;&amp;gt; &amp;gt; _______________________________________________&lt;br/&gt;&amp;gt; &amp;gt; Lightning-dev mailing list&lt;br/&gt;&amp;gt; &amp;gt; Lightning-dev at lists.linuxfoundation.org&lt;br/&gt;&amp;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;&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;&amp;gt;&lt;br/&gt;-------------- next part --------------&lt;br/&gt;An HTML attachment was scrubbed...&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/lightning-dev/attachments/20210715/54d800a3/attachment.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/lightning-dev/attachments/20210715/54d800a3/attachment.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-09T13:03:09Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqst44wku3xkg78g7uxy7cqvznzt509c6k0pkwueadz09ulgaz9wu2qzyql2lcm06hya5pst2kc2ucl5zx2hmaex880umlec7fa4awudwl23j72tj0m</id>
    
      <title type="html">📅 Original date posted:2021-12-06 📝 Original message:I ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqst44wku3xkg78g7uxy7cqvznzt509c6k0pkwueadz09ulgaz9wu2qzyql2lcm06hya5pst2kc2ucl5zx2hmaex880umlec7fa4awudwl23j72tj0m" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsf0d0qpcd7x9uddnm65qtcpnmva90a5rde3nvcqahelkmsz345zdsdh3ncw&#39;&gt;nevent1q…3ncw&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2021-12-06&lt;br/&gt;📝 Original message:I recommend you researching RGB: &lt;a href=&#34;https://rgb-org.github.io/&#34;&gt;https://rgb-org.github.io/&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;On Mon, Dec 6, 2021, 11:21 Karl &amp;lt;gmkarl at gmail.com&amp;gt; wrote:&lt;br/&gt;&lt;br/&gt;&amp;gt; Hi,&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; I&amp;#39;m not a bitcoin developer.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; On Mon, Dec 6, 2021, 5:05 AM Héctor José Cárdenas Pacheco via bitcoin-dev &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; Hello all,&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; I’ve been thinking about how OP_RETURN is being used to create and trade&lt;br/&gt;&amp;gt;&amp;gt; NFTs on Bitcoin (think RarePepes, SoG and other new ones) and was wondering&lt;br/&gt;&amp;gt;&amp;gt; if it’s possible to&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Do you have a link to any of these protocols?&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; make transactions with this opcode via Lightning.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; More specific questions could be:&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;    1. Can opcodes like OP_RETURN be inside a channel’s opening or&lt;br/&gt;&amp;gt;&amp;gt;    closing transaction?&lt;br/&gt;&amp;gt;&amp;gt;    2. If so, could that OP_RETURN change hands within that channel or&lt;br/&gt;&amp;gt;&amp;gt;    network of channels?&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; OP_RETURNs do not have ownership according to the bitcoin network.  It is&lt;br/&gt;&amp;gt; not hard to define a protocol that associates an OP_RETURN with ownership,&lt;br/&gt;&amp;gt; and ownership could then be transferred via lightning by sending associated&lt;br/&gt;&amp;gt; currency via lightning.  Robustness improvements seem possible.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;    1. If possible, could the OP_RETURN be divisible? Could one person&lt;br/&gt;&amp;gt;&amp;gt;    send a piece of a OP_RETURN just like one can do right now on the primary&lt;br/&gt;&amp;gt;&amp;gt;    ledger or would it need to maintain the OP_RETURN code intact?&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; OP_RETURNs themselves do not have ownership, but you can define a&lt;br/&gt;&amp;gt; protocol that gives them divisible ownership, including via lightning.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; I’m assuming that, if possible, this would need a protocol layer parallel&lt;br/&gt;&amp;gt;&amp;gt; to Bitcoin/Lightning that stores and reads all Bitcoin transactions and the&lt;br/&gt;&amp;gt;&amp;gt; ones which involve the node&amp;#39;s channels as well as the ones with the&lt;br/&gt;&amp;gt;&amp;gt; OP_RETURN, just like CounterParty does right now with the primary ledger.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Thank in advance.&lt;br/&gt;&amp;gt;&amp;gt; ——&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; *Héctor Cárdenas*@hcarpach&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt;&amp;gt; bitcoin-dev mailing list&lt;br/&gt;&amp;gt;&amp;gt; bitcoin-dev at lists.linuxfoundation.org&lt;br/&gt;&amp;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;&amp;gt;&amp;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;&amp;gt;&lt;br/&gt;-------------- next part --------------&lt;br/&gt;An HTML attachment was scrubbed...&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20211206/d86e56cb/attachment.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20211206/d86e56cb/attachment.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-07T23:00:51Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsg9lumu7hhw5hdqqmrsje6atjpx6mfx0umgahxdalha7pa8prpajqzyql2lcm06hya5pst2kc2ucl5zx2hmaex880umlec7fa4awudwl23jjge742</id>
    
      <title type="html">📅 Original date posted:2015-02-05 📝 Original ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsg9lumu7hhw5hdqqmrsje6atjpx6mfx0umgahxdalha7pa8prpajqzyql2lcm06hya5pst2kc2ucl5zx2hmaex880umlec7fa4awudwl23jjge742" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs0yen7c5yrnftu9ujuu0xuczwxt3hgm4j9j8t8ykrmeayy2eufw3qxq4hez&#39;&gt;nevent1q…4hez&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2015-02-05&lt;br/&gt;📝 Original message:-----BEGIN PGP SIGNED MESSAGE-----&lt;br/&gt;Hash: SHA512&lt;br/&gt;&lt;br/&gt;I believe, we are still talking about transactions of physical people in physical world. So yes, it&amp;#39;s proximity based - people tell the words by mouth. :)&lt;br/&gt;&lt;br/&gt;In case of RedPhone, you read those words verbally over not-yet-verified channel relying on difficulty of spoofing your voice. Also the app remembers the public keys, so you don&amp;#39;t need to verify second time.&lt;br/&gt;&lt;br/&gt;I suggest you to try RedPhone (called Signal on iPhone) yourself. It&amp;#39;s free/open source, Internet-based and end-to-end encrypted. You may find it useful some day. Also I&amp;#39;m willing to help you with trying it after I wake up. (~8 hours: Send me private e-mail if you want to.)&lt;br/&gt;&lt;br/&gt;Dňa 6. februára 2015 1:22:23 CET používateľ Eric Voskuil &amp;lt;eric at voskuil.org&amp;gt; napísal:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;On 02/05/2015 04:04 PM, MⒶrtin HⒶboⓋštiak wrote:&lt;br/&gt;&amp;gt;&amp;gt; That&amp;#39;s exactly what I though when seeing the RedPhone code, but after&lt;br/&gt;&amp;gt;&amp;gt; I studied the commit protocol I realized it&amp;#39;s actually secure and&lt;br/&gt;&amp;gt;&amp;gt; convenient way to do it. You should do that too. :)&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;I was analyzing the model as you described it to me. A formal analysis&lt;br/&gt;&amp;gt;of the security model of a particular implementation, based on&lt;br/&gt;&amp;gt;inference&lt;br/&gt;&amp;gt;from source code, is a bit beyond what I signed up for. But I&amp;#39;m&lt;br/&gt;&amp;gt;perfectly willing to comment on your description of the model if you&lt;br/&gt;&amp;gt;are&lt;br/&gt;&amp;gt;willing to indulge me.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Shortly, how it works:&lt;br/&gt;&amp;gt;&amp;gt; The initiator of the connection sends commit message containing the&lt;br/&gt;&amp;gt;&amp;gt; hash of his temporary public ECDH part, second party sends back their&lt;br/&gt;&amp;gt;&amp;gt; public ECDH part and then initiator sends his public ECDH part in&lt;br/&gt;&amp;gt;&amp;gt; open. All three messages are hashed together and the first two bytes&lt;br/&gt;&amp;gt;&amp;gt; are used to select two words from a shared dictionary which are&lt;br/&gt;&amp;gt;&amp;gt; displayed on the screen of both the initiator and the second party.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; The parties communicate those two words and verify they match.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;How do they compare words if they haven&amp;#39;t yet established a secure&lt;br/&gt;&amp;gt;channel?&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; If an attacker wants to do MITM, he has a chance of choosing right&lt;br/&gt;&amp;gt;&amp;gt; public parts 1:65536. There is no way to brute-force it, since that&lt;br/&gt;&amp;gt;&amp;gt; would be noticed immediately. If instead of two words based on the&lt;br/&gt;&amp;gt;&amp;gt; first two bytes, four words from BIP39 wordlist were chosen, it would&lt;br/&gt;&amp;gt;&amp;gt; provide entropy of 44 bits which I believe should be enough even for&lt;br/&gt;&amp;gt;&amp;gt; paranoid people.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; How this would work in Bitcoin payment scenario: user&amp;#39;s phone&lt;br/&gt;&amp;gt;&amp;gt; broadcasts his name, merchant inputs amount and selects the name from&lt;br/&gt;&amp;gt;&amp;gt; the list, commit message is sent (and then the remaining two&lt;br/&gt;&amp;gt;&amp;gt; messages), merchant spells four words he sees on the screen and buyer&lt;br/&gt;&amp;gt;&amp;gt; confirms transaction after verifying that words match.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;So the assumption is that there exists a secure (as in proximity-based)&lt;br/&gt;&amp;gt;communication channel?&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;e&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; 2015-02-06 0:46 GMT&#43;01:00 Eric Voskuil &amp;lt;eric at voskuil.org&amp;gt;:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; On 02/05/2015 03:36 PM, MⒶrtin HⒶboⓋštiak wrote:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; A BIP-70 signed payment request in the initial broadcast can&lt;br/&gt;&amp;gt;resolve the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; integrity issues, but because of the public nature of the&lt;br/&gt;&amp;gt;broadcast&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; coupled with strong public identity, the privacy compromise is&lt;br/&gt;&amp;gt;much&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; worse. Now transactions are cryptographically tainted.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; This is also the problem with BIP-70 over the web. TLS and other&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; security precautions aside, an interloper on the communication,&lt;br/&gt;&amp;gt;desktop,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; datacenter, etc., can capture payment requests and strongly&lt;br/&gt;&amp;gt;correlate&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; transactions to identities in an automated manner. The payment&lt;br/&gt;&amp;gt;request&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; must be kept private between the parties, and that&amp;#39;s hard to do.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; What about using encryption with forward secrecy? Merchant would&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; generate signed request containing public ECDH part, buyer would&lt;br/&gt;&amp;gt;send&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; back transaction encrypted with ECDH and his public ECDH part. If&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; receiving address/amount is meant to be private, use commit&lt;br/&gt;&amp;gt;protocol&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; (see ZRTP/RedPhone) and short authentication phrase (which is hard&lt;br/&gt;&amp;gt;to&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; spoof thanks to commit protocol - see RedPhone)?&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Hi Martin,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; The problem is that you need to verify the ownership of the public&lt;br/&gt;&amp;gt;key.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; A MITM can substitute the key. If you don&amp;#39;t have verifiable identity&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; associated with the public key (PKI/WoT), you need a shared secret&lt;br/&gt;&amp;gt;(such&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; as a secret phrase). But the problem is then establishing that&lt;br/&gt;&amp;gt;secret&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; over a public channel.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; You can bootstrap a private session over the untrusted network using&lt;br/&gt;&amp;gt;a&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; trusted public key (PKI/WoT). But the presumption is that you are&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; already doing this over the web (using TLS). That process is subject&lt;br/&gt;&amp;gt;to&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; attack at the CA. WoT is not subject to a CA attack, because it&amp;#39;s&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; decentralized. But it&amp;#39;s also not sufficiently deployed for some&lt;br/&gt;&amp;gt;scenarios.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; e&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&lt;br/&gt;- --&lt;br/&gt;Odoslané z môjho Android zariadenia pomocou K-9 Mail.&lt;br/&gt;-----BEGIN PGP SIGNATURE-----&lt;br/&gt;Version: APG v1.1.1&lt;br/&gt;&lt;br/&gt;iI8EAREKADcFAlTUDKEwHE1hcnRpbiBIYWJvdmF0aWFrIDxtYXJ0aW4uaGFib3Zz&lt;br/&gt;dGlha0BnbWFpbC5jb20&#43;AAoJED6C3NvqapyUfUgA/2j6jQELBtSrNsle7ybGq1D8&lt;br/&gt;uWgGwevguCnjPd0pEpWgAP42sS/ekCqs1v9wbART9fLprZTBk4YPllwXifss&#43;9sa&lt;br/&gt;zQ==&lt;br/&gt;=J4w/&lt;br/&gt;-----END PGP SIGNATURE-----
    </content>
    <updated>2023-06-07T15:29:47Z</updated>
  </entry>

</feed>