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




  <entry>
    <id>https://nostr.ae/nevent1qqstwklmfs7zt4zlzfpln8zj5g2zjhz5v658snpr4xea5llwyhvhy0czyp0pc0629uxszkqsxwp6h50r5kp2kxxreehq9dgf2zmcxcpxzdwfkl9cgp6</id>
    
      <title type="html">📅 Original date posted:2023-07-28 🗒️ Summary of this ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqstwklmfs7zt4zlzfpln8zj5g2zjhz5v658snpr4xea5llwyhvhy0czyp0pc0629uxszkqsxwp6h50r5kp2kxxreehq9dgf2zmcxcpxzdwfkl9cgp6" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsp6xdwva8jqt6f6gutt8k9zypt4da2tu9ljzw87ts20a2aa4q6hcgc52s5l&#39;&gt;nevent1q…2s5l&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2023-07-28&lt;br/&gt;🗒️ Summary of this message: The motivation for multipath keysend is to allow for splitting payments into multiple parts, ensuring the receiver can only claim the payment once all parts have arrived. This adds complexity to keysend, but may be useful for certain use cases.&lt;br/&gt;📝 Original message:&lt;br/&gt;What is the motivation for multipath keysend? Why not just make&lt;br/&gt;several independent keysend payments with different payment hashes?&lt;br/&gt;We should make sure that there is a user need before adding complexity&lt;br/&gt;to keysend, especially since we&amp;#39;re already working on BOLT 12 which&lt;br/&gt;supports multipath and even provides a proof of payment.&lt;br/&gt;&lt;br/&gt;Le ven. 28 juil. 2023 à 09:24, ZmnSCPxj via Lightning-dev&lt;br/&gt;&amp;lt;lightning-dev at lists.linuxfoundation.org&amp;gt; a écrit :&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Good morning list,&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; I would like to share a simple scheme for creating a `keysend` protocol that allows for multipath payments.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; In `keysend`, the preimage is embedded as TLV 5482373484 with length 32.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; In the multipath case, we want the receiver to only be able to claim the payment once all parts have arrived at the receiver.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; For example, suppose we want to split the `keysend` into 2 parts.&lt;br/&gt;&amp;gt; Let us select a true preimage `p` at random.&lt;br/&gt;&amp;gt; Then, we generate the payment hash `h = SHA256(p)`.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Then, we generate a new 256-bit scalar, `a`.&lt;br/&gt;&amp;gt; For one part, we send `a` for TLV 5482373484, and for the second part, we send `a ^ p`, where `^` is XOR.&lt;br/&gt;&amp;gt; All parts use the same payment hash `h`.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; The receiver, on receiving either part, will find that the supposed preimage does not match the actual HTLC payment hashes.&lt;br/&gt;&amp;gt; Instead of failing, it holds the payment, using the usual basic multipath payment rules.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; When the receiver receives another part, it will XOR together the supposed preimages.&lt;br/&gt;&amp;gt; In the above case, it would get `a` and `a ^ p`, which when XORed together result in `a ^ a ^ p` or `p`, which is now the correct preimage, and the receiver can now claim the entire complete funds.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; The same technique would work with any number of parts --- if we split into `n` parts, we generate `n - 1` additional random scalars and use it for the first `n - 1` parts, then XOR all of them with the scalar-to-be-split for the `n`th part.&lt;br/&gt;&amp;gt; This scheme also works for dynamic splitting, i.e. if you are splitting a part that was already split off from a part that was already split off from a part etc.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; A sender can detect if the receiver does not support multipath `keysend` if a part reaches the receiver and it errors with `incorrect_or_unknown_payment_details`.&lt;br/&gt;&amp;gt; If the receiver is aware of multipath `keysend`, it would hold onto the incoming HTLCs until MPP timeout, and instead error with `mpp_timeout`.&lt;br/&gt;&amp;gt; Thus, support for this on the receiver side does not need to be specially announced via a new feature bit --- an MPP-capable sender can simply try to split, and if it gets an `incorrect_or_unknown_payment_details`, knows that the receiver does not support multipath `keysend`.&lt;br/&gt;&amp;gt; The same feature bit 55 can be reused.&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;
    </content>
    <updated>2023-07-30T22:54:54Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqswxthcujpg6d3cpf79xk63m5xcyy5ezxfn7q6m8qks2a2vuew6dqqzyp0pc0629uxszkqsxwp6h50r5kp2kxxreehq9dgf2zmcxcpxzdwfkwz9wha</id>
    
      <title type="html">📅 Original date posted:2023-03-03 🗒️ Summary of this ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqswxthcujpg6d3cpf79xk63m5xcyy5ezxfn7q6m8qks2a2vuew6dqqzyp0pc0629uxszkqsxwp6h50r5kp2kxxreehq9dgf2zmcxcpxzdwfkwz9wha" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsrcw545hm5s6tfkdtm2edxenxc62wynd5aq9rjum5vhq90wthmhtsh0ytjw&#39;&gt;nevent1q…ytjw&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2023-03-03&lt;br/&gt;🗒️ Summary of this message: Giving high confidence to HTLCs increases the chance of relaying, while having a high reputation is just a means to that end. Reporting confidence 0 may lead to a reputation of 1, but HTLCs may still be rejected during congestion.&lt;br/&gt;📝 Original message:&lt;br/&gt;By giving a high confidence to HTLCs you increase the chance that they are&lt;br/&gt;relayed which should be your goal. Having a high reputation is not a goal&lt;br/&gt;in itself, it&amp;#39;s just a way to make your HTLCs more likely to be relayed. If&lt;br/&gt;you always report confidence 0, then yes you will have a reputation of 1&lt;br/&gt;but your HTLCs will still be rejected at the first sign of congestion.&lt;br/&gt;&lt;br/&gt;Le ven. 3 mars 2023 à 17:14, Clara Shikhelman &amp;lt;clara.shikhelman at gmail.com&amp;gt;&lt;br/&gt;a écrit :&lt;br/&gt;&lt;br/&gt;&amp;gt; Hi Thomas,&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Thanks for the example.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; - If c &amp;lt; p then yes it gives it a higher reputation but the reputation is&lt;br/&gt;&amp;gt;&amp;gt; capped at 1 anyway, so by underestimating the confidence the node doesn&amp;#39;t&lt;br/&gt;&amp;gt;&amp;gt; gain anything.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt; Is there anything to gain from giving high confidence? By doing this, you&lt;br/&gt;&amp;gt; risk lowering your reputation, and it&amp;#39;s not clear what you gain.&lt;br/&gt;&amp;gt; Could it be that the best selfish strategy is to report confidence 0 (that&lt;br/&gt;&amp;gt; maps to reputation 1) all the time?&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/20230303/bc05d231/attachment.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/lightning-dev/attachments/20230303/bc05d231/attachment.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-09T13:12:50Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsz5tuj0a8cnlu2mxxndeherqp2re5fzxr0vkft4g0qkd9z2vj4w2czyp0pc0629uxszkqsxwp6h50r5kp2kxxreehq9dgf2zmcxcpxzdwfkmhq0vn</id>
    
      <title type="html">📅 Original date posted:2023-03-03 🗒️ Summary of this ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsz5tuj0a8cnlu2mxxndeherqp2re5fzxr0vkft4g0qkd9z2vj4w2czyp0pc0629uxszkqsxwp6h50r5kp2kxxreehq9dgf2zmcxcpxzdwfkmhq0vn" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs9hu8h5v9hdxyvvnun70qgh7nrk7vwgu8dl7wqz6cexzqm78zwhtg60m4j8&#39;&gt;nevent1q…m4j8&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2023-03-03&lt;br/&gt;🗒️ Summary of this message: Continuous solutions allow for more precise blocking of attackers and low-reputation nodes. Reporting c truthfully is important to maintain reputation.&lt;br/&gt;📝 Original message:&lt;br/&gt;The benefit is that you can be more precise when blocking. With a binary&lt;br/&gt;solution a single attacker can easily fill your quota of low-confidence&lt;br/&gt;HTLCs and then all low-reputation nodes are blocked. But not all of them&lt;br/&gt;are attackers, some of them just don&amp;#39;t send you enough traffic to get a&lt;br/&gt;high reputation for instance and you&amp;#39;re going to block them too. With a&lt;br/&gt;continuous solution you can differentiate between an active attacker and&lt;br/&gt;someone who just sends to nodes with poor connectivity and only block the&lt;br/&gt;first.&lt;br/&gt;&lt;br/&gt;For reporting c truthfully, if you report it too high you will be penalized&lt;br/&gt;by having your reputation lowered, if you report it too low you will&lt;br/&gt;penalize your HTLCs and still get the same reputation as if you had&lt;br/&gt;reported it truthfully.&lt;br/&gt;&lt;br/&gt;Le ven. 3 mars 2023 à 19:45, Clara Shikhelman &amp;lt;clara.shikhelman at gmail.com&amp;gt;&lt;br/&gt;a écrit :&lt;br/&gt;&lt;br/&gt;&amp;gt; Could you explain the benefits of continuous solutions over binary? This&lt;br/&gt;&amp;gt; is something we should definitely understand before going in a more&lt;br/&gt;&amp;gt; complicated direction.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Also, I&amp;#39;m still not sure that the rational behaviour is to report *c*&lt;br/&gt;&amp;gt; truthfully.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; On Fri, Mar 3, 2023 at 11:51 AM Thomas HUET &amp;lt;thomas.huet at acinq.fr&amp;gt; wrote:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; By giving a high confidence to HTLCs you increase the chance that they&lt;br/&gt;&amp;gt;&amp;gt; are relayed which should be your goal. Having a high reputation is not a&lt;br/&gt;&amp;gt;&amp;gt; goal in itself, it&amp;#39;s just a way to make your HTLCs more likely to be&lt;br/&gt;&amp;gt;&amp;gt; relayed. If you always report confidence 0, then yes you will have a&lt;br/&gt;&amp;gt;&amp;gt; reputation of 1 but your HTLCs will still be rejected at the first sign of&lt;br/&gt;&amp;gt;&amp;gt; congestion.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Le ven. 3 mars 2023 à 17:14, Clara Shikhelman &amp;lt;clara.shikhelman at gmail.com&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; a écrit :&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Hi Thomas,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Thanks for the example.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; - If c &amp;lt; p then yes it gives it a higher reputation but the reputation&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; is capped at 1 anyway, so by underestimating the confidence the node&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; doesn&amp;#39;t gain anything.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Is there anything to gain from giving high confidence? By doing this,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; you risk lowering your reputation, and it&amp;#39;s not clear what you gain.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Could it be that the best selfish strategy is to report confidence 0&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; (that maps to reputation 1) all the time?&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;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/20230303/d15bb113/attachment-0001.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/lightning-dev/attachments/20230303/d15bb113/attachment-0001.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-09T13:12:50Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsrld86gwzpmqsddh57gnefw8g4u7a9tn3k4fr2h7ftqmxgu4e4zmgzyp0pc0629uxszkqsxwp6h50r5kp2kxxreehq9dgf2zmcxcpxzdwfk4uya79</id>
    
      <title type="html">📅 Original date posted:2023-03-02 🗒️ Summary of this ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsrld86gwzpmqsddh57gnefw8g4u7a9tn3k4fr2h7ftqmxgu4e4zmgzyp0pc0629uxszkqsxwp6h50r5kp2kxxreehq9dgf2zmcxcpxzdwfk4uya79" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsvrs4xsa25dcvk3fnxulydg7h8gc6tzcprd7y9juypwt25krlndfgh9yell&#39;&gt;nevent1q…yell&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2023-03-02&lt;br/&gt;🗒️ Summary of this message: A proposed formula for local reputation in Lightning Network considers the confidence given by the previous node, with honest nodes having a reputation of 1.&lt;br/&gt;📝 Original message:&lt;br/&gt;To give a very simple example, imagine a node that sends the same&lt;br/&gt;confidence c for all HTLCs. We want c to be equal to the probability p that&lt;br/&gt;its HTLCs succeed.&lt;br/&gt;- If c = p then all is well and we give a reputation of 1 to the node.&lt;br/&gt;- If c &amp;gt; p then this node is overconfident or is lying to have its HTLCs&lt;br/&gt;relayed, in both cases we should lower its reputation to account for that.&lt;br/&gt;- If c &amp;lt; p then yes it gives it a higher reputation but the reputation is&lt;br/&gt;capped at 1 anyway, so by underestimating the confidence the node doesn&amp;#39;t&lt;br/&gt;gain anything.&lt;br/&gt;Ideally we want all honest nodes to have a reputation of 1. It doesn&amp;#39;t mean&lt;br/&gt;that all their HTLCs succeed, it just means that they provide reliable&lt;br/&gt;estimates of the success probability of the HTLCs.&lt;br/&gt;&lt;br/&gt;Le jeu. 2 mars 2023 à 19:57, Clara Shikhelman &amp;lt;clara.shikhelman at gmail.com&amp;gt;&lt;br/&gt;a écrit :&lt;br/&gt;&lt;br/&gt;&amp;gt; Hi Thomas,&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; I really like the idea of taking into consideration the failures. In our&lt;br/&gt;&amp;gt; proposal, a failure won&amp;#39;t benefit your reputation, as the neighbour is&lt;br/&gt;&amp;gt; trying to reach a fee threshold, but taking it into account instead of&lt;br/&gt;&amp;gt; ignoring it could be helpful against an adversary trying to manipulate&lt;br/&gt;&amp;gt; parameters.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Could you elaborate a bit about &amp;#34;*c, the confidence given by the previous&lt;br/&gt;&amp;gt; node.*&amp;#34; It looks from the formula (that has *1/c* component) that the&lt;br/&gt;&amp;gt; lower the confidence, the higher the reputation, and I am not sure that&lt;br/&gt;&amp;gt; this is the goal. Some numerical examples could help clarify the dynamics&lt;br/&gt;&amp;gt; you are aiming for.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Do you have some estimation of what kind of protection or compensation&lt;br/&gt;&amp;gt; this method offers?&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Best,&lt;br/&gt;&amp;gt; Clara&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; On Thu, Mar 2, 2023 at 8:14 AM Thomas HUET &amp;lt;thomas.huet at acinq.fr&amp;gt; wrote:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Hello,&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; I think the local reputation is more important than upfront fees and&lt;br/&gt;&amp;gt;&amp;gt; should be worked on first because 1) the most likely attack against the&lt;br/&gt;&amp;gt;&amp;gt; network today is the slow jamming attack against which upfront fees are not&lt;br/&gt;&amp;gt;&amp;gt; very effective (an attacker would only consider fast jamming if the network&lt;br/&gt;&amp;gt;&amp;gt; is already resilient to slow jamming) and 2) I think that local reputation&lt;br/&gt;&amp;gt;&amp;gt; may protect well enough against all types of jamming so that we don&amp;#39;t even&lt;br/&gt;&amp;gt;&amp;gt; need upfront fees to protect against fast jamming.&lt;br/&gt;&amp;gt;&amp;gt; Regarding the formula itself, I would treat all scores as continuous&lt;br/&gt;&amp;gt;&amp;gt; values between 0 and 1 instead of binary classes. My proposed formula is&lt;br/&gt;&amp;gt;&amp;gt; detailed here:&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://docs.google.com/document/d/1hEt1EzyPFJ3gOY7PAvtm_XotTnlQO2r7LSF8Jx34qgc/edit?usp=sharing&#34;&gt;https://docs.google.com/document/d/1hEt1EzyPFJ3gOY7PAvtm_XotTnlQO2r7LSF8Jx34qgc/edit?usp=sharing&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt; However my proposal is compatible with Clara&amp;#39;s one in that the only thing&lt;br/&gt;&amp;gt;&amp;gt; that needs to be communicated to the peers is how confident we are that the&lt;br/&gt;&amp;gt;&amp;gt; payment will succeed and all the rest is done locally and everyone can use&lt;br/&gt;&amp;gt;&amp;gt; their own formula. I would just prefer this confidence value to be more&lt;br/&gt;&amp;gt;&amp;gt; than one bit but my formula would work with anything, even zero bits. The&lt;br/&gt;&amp;gt;&amp;gt; advantage of using more bits is that we can be more precise in which HTLCs&lt;br/&gt;&amp;gt;&amp;gt; we reject and reduce the number of innocent casualties.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Thomas&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Le jeu. 16 févr. 2023 à 22:29, Clara Shikhelman &amp;lt;&lt;br/&gt;&amp;gt;&amp;gt; clara.shikhelman at gmail.com&amp;gt; a écrit :&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Hi List,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; We’re writing to seek early feedback on a draft for a neighbour&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; reputation setting recommendation as a jamming mitigation. The main idea is&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; that allowing full access to liquidity and slots in a channel can result in&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; jamming. To prevent this, we allow full access only to neighbours that&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; forward HTLC that resolve quickly and generate more profit than the damage&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; they can potentially create.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; The full suggested jamming mitigation solution includes upfront fees&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; together with reputation, see [1] for details.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; In the previous episodes:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; As presented here [1], we suggest a two part jamming mitigation&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; strategy. Reputation-based forwarding is aimed to solve “slow jamming”,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; where the jamming transaction takes a long time to resolve.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; The main idea is that each node gives a binary reputation to its&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; neighbour. Each channel has a quota of liquidity and slots (say 50% of the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; channel size and 50% of the slots in the channel) dedicated to transactions&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; coming from neighbours with reputation 0, or for transactions coming from&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; neighbours with reputation 1 that were not endorsed by the neighbour.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; For example, when Alice asks Bob to forward to Charlie then:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; If (Alice has reputation 1 with Bob) and (Alice endorses transaction):&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Forward and endorse&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Else:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; If (amount &amp;lt; available liquidity quota) and (available slots in&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; quota&amp;gt;0):&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Forward HTLC without endorsing&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Reduce available liquidity and slots&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Else:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Reject&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Reputation:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; The question we discuss here is how does Alice gain “good” reputation&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; (i.e., a score of 1). Alice starts at 0, and she gains and keeps her good&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; reputation of 1 by continuously paying more fees to Bob than the damage she&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; can inflict.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; The 3 main parameters for reputation that each node operator picks are S,L&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; and M. Our recommendations are as follows:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    -&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    S should be chosen as the maximum time an HTLC can be unresolved in&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    any of Bob’s channels.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    -&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    M is the revenue generated by Bob’s node in the time S, representing&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    the damage Alice could inflict.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    -&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    L is the time in which Alice should generate M revenue for Bob for&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    her to have a good reputation of 1. We suggest L=10S.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Alice has reputation 1 if, in the last L seconds, she has forwarded&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; payments that generated M satoshi in fees.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; As an example:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    -&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    Bob has a maximum CLTV delta of 2 weeks [2]&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    -&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    Over the last 2 weeks, he has earned 0.5 BTC in routing fees&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    -&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    Alice will be considered to have good reputation if she has&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    forwarded 0.5 BTC of routing revenue to Bob over the last 20 weeks&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Formally:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Let t be the current time, and let S and L be constants.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; M is calculated to be the revenue of Bob in time [t-S,t]. The revenue&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; of Bob is the sum of fees from transactions forwarded by any neighbour&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; besides Alice &#43; any payments received by Bob. Note that Bob can choose to&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; also take into account utility gained from sending payments or anything&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; of value to the node operator.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Alice has reputation 1 if in the time [t-L,t] she has forwarded HTLCs&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; that paid M in normalized fees.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; We normalize fees by resolution time to reward payments that resolve&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; quickly and discount slow resolving payments. Here we assume 10 seconds is&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; the “normal” resolution time, this number can be bikesheded, and we round&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; up to avoid penalizing transactions resolved quicker than the “normal”.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; The fee from a single transaction is normalized by the time it took for&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; the HTLC to resolve, counted in slots of 10 seconds. That is:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Normalized_fee = (fee)/[ceiling(time_to_resolve/10s)]&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Some notes&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    1.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    The reputation management happens locally, that is, the only&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    protocol change needed is the ability to signal endorsement as a TLV&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    in UpdateAddHTLC. The various parameters can be selected for various&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    risk preferences.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    2.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    We currently suggest a binary reputation for simplicity. Having&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    several buckets could be interesting to study, yet we don’t think that the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    complexity and the possible privacy issues are worth the potential benefits.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    3.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    For most use cases, having reputation 0 is more than enough. If we&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    send and receive transactions at a low rate, we usually don’t need the full&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    liquidity and slots available in a channel. Reputation mostly comes into&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    play only when a channel is under attack, and then not all transaction are&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    allowed to go through.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    4.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    Following this thread [3]: it is important to note that we are only&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    giving reputation to our direct neighbours. An advantage of this is that we&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    have repeated interactions with them. In practice, this is also the only&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    clean data we have to use when deciding whether to forward an HTLC or not.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Best,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Carla and Clara&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; [1]&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://lists.linuxfoundation.org/pipermail/lightning-dev/2022-November/003740.html&#34;&gt;https://lists.linuxfoundation.org/pipermail/lightning-dev/2022-November/003740.html&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; [2]&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://github.com/lightningnetwork/lnd/blob/de94a4ea5e81799330a72dfde111817b38565d99/htlcswitch/link.go#L51&#34;&gt;https://github.com/lightningnetwork/lnd/blob/de94a4ea5e81799330a72dfde111817b38565d99/htlcswitch/link.go#L51&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; [3]&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://lists.linuxfoundation.org/pipermail/lightning-dev/2023-February/003842.html&#34;&gt;https://lists.linuxfoundation.org/pipermail/lightning-dev/2023-February/003842.html&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Lightning-dev mailing list&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Lightning-dev at lists.linuxfoundation.org&lt;br/&gt;&amp;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;&amp;gt;&amp;gt;&lt;br/&gt;&amp;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/20230302/f66062bc/attachment-0001.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/lightning-dev/attachments/20230302/f66062bc/attachment-0001.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-09T13:12:49Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqstl7g4jygapez4luydzjfyyg4kzpjewnn6vlh9xft7j7kcclfxatgzyp0pc0629uxszkqsxwp6h50r5kp2kxxreehq9dgf2zmcxcpxzdwfkjrelgx</id>
    
      <title type="html">📅 Original date posted:2023-03-02 🗒️ Summary of this ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqstl7g4jygapez4luydzjfyyg4kzpjewnn6vlh9xft7j7kcclfxatgzyp0pc0629uxszkqsxwp6h50r5kp2kxxreehq9dgf2zmcxcpxzdwfkjrelgx" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsqfjxjyp77aedznavvgx9kk8a69ehj6ewy0aweqqqpzv3jh86zq3czzpy77&#39;&gt;nevent1q…py77&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2023-03-02&lt;br/&gt;🗒️ Summary of this message: A proposed jamming mitigation strategy suggests prioritizing local reputation over upfront fees to protect against slow jamming attacks. A continuous value formula is proposed.&lt;br/&gt;📝 Original message:&lt;br/&gt;Hello,&lt;br/&gt;&lt;br/&gt;I think the local reputation is more important than upfront fees and should&lt;br/&gt;be worked on first because 1) the most likely attack against the network&lt;br/&gt;today is the slow jamming attack against which upfront fees are not very&lt;br/&gt;effective (an attacker would only consider fast jamming if the network is&lt;br/&gt;already resilient to slow jamming) and 2) I think that local reputation may&lt;br/&gt;protect well enough against all types of jamming so that we don&amp;#39;t even need&lt;br/&gt;upfront fees to protect against fast jamming.&lt;br/&gt;Regarding the formula itself, I would treat all scores as continuous values&lt;br/&gt;between 0 and 1 instead of binary classes. My proposed formula is detailed&lt;br/&gt;here:&lt;br/&gt;&lt;a href=&#34;https://docs.google.com/document/d/1hEt1EzyPFJ3gOY7PAvtm_XotTnlQO2r7LSF8Jx34qgc/edit?usp=sharing&#34;&gt;https://docs.google.com/document/d/1hEt1EzyPFJ3gOY7PAvtm_XotTnlQO2r7LSF8Jx34qgc/edit?usp=sharing&lt;/a&gt;&lt;br/&gt;However my proposal is compatible with Clara&amp;#39;s one in that the only thing&lt;br/&gt;that needs to be communicated to the peers is how confident we are that the&lt;br/&gt;payment will succeed and all the rest is done locally and everyone can use&lt;br/&gt;their own formula. I would just prefer this confidence value to be more&lt;br/&gt;than one bit but my formula would work with anything, even zero bits. The&lt;br/&gt;advantage of using more bits is that we can be more precise in which HTLCs&lt;br/&gt;we reject and reduce the number of innocent casualties.&lt;br/&gt;&lt;br/&gt;Thomas&lt;br/&gt;&lt;br/&gt;Le jeu. 16 févr. 2023 à 22:29, Clara Shikhelman &amp;lt;clara.shikhelman at gmail.com&amp;gt;&lt;br/&gt;a écrit :&lt;br/&gt;&lt;br/&gt;&amp;gt; Hi List,&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; We’re writing to seek early feedback on a draft for a neighbour reputation&lt;br/&gt;&amp;gt; setting recommendation as a jamming mitigation. The main idea is that&lt;br/&gt;&amp;gt; allowing full access to liquidity and slots in a channel can result in&lt;br/&gt;&amp;gt; jamming. To prevent this, we allow full access only to neighbours that&lt;br/&gt;&amp;gt; forward HTLC that resolve quickly and generate more profit than the damage&lt;br/&gt;&amp;gt; they can potentially create.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; The full suggested jamming mitigation solution includes upfront fees&lt;br/&gt;&amp;gt; together with reputation, see [1] for details.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; In the previous episodes:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; As presented here [1], we suggest a two part jamming mitigation strategy.&lt;br/&gt;&amp;gt; Reputation-based forwarding is aimed to solve “slow jamming”, where the&lt;br/&gt;&amp;gt; jamming transaction takes a long time to resolve.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; The main idea is that each node gives a binary reputation to its&lt;br/&gt;&amp;gt; neighbour. Each channel has a quota of liquidity and slots (say 50% of the&lt;br/&gt;&amp;gt; channel size and 50% of the slots in the channel) dedicated to transactions&lt;br/&gt;&amp;gt; coming from neighbours with reputation 0, or for transactions coming from&lt;br/&gt;&amp;gt; neighbours with reputation 1 that were not endorsed by the neighbour.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; For example, when Alice asks Bob to forward to Charlie then:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; If (Alice has reputation 1 with Bob) and (Alice endorses transaction):&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Forward and endorse&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Else:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; If (amount &amp;lt; available liquidity quota) and (available slots in quota&amp;gt;0):&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Forward HTLC without endorsing&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Reduce available liquidity and slots&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Else:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Reject&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Reputation:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; The question we discuss here is how does Alice gain “good” reputation&lt;br/&gt;&amp;gt; (i.e., a score of 1). Alice starts at 0, and she gains and keeps her good&lt;br/&gt;&amp;gt; reputation of 1 by continuously paying more fees to Bob than the damage she&lt;br/&gt;&amp;gt; can inflict.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; The 3 main parameters for reputation that each node operator picks are S,L&lt;br/&gt;&amp;gt; and M. Our recommendations are as follows:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;    -&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;    S should be chosen as the maximum time an HTLC can be unresolved in&lt;br/&gt;&amp;gt;    any of Bob’s channels.&lt;br/&gt;&amp;gt;    -&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;    M is the revenue generated by Bob’s node in the time S, representing&lt;br/&gt;&amp;gt;    the damage Alice could inflict.&lt;br/&gt;&amp;gt;    -&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;    L is the time in which Alice should generate M revenue for Bob for her&lt;br/&gt;&amp;gt;    to have a good reputation of 1. We suggest L=10S.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Alice has reputation 1 if, in the last L seconds, she has forwarded&lt;br/&gt;&amp;gt; payments that generated M satoshi in fees.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; As an example:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;    -&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;    Bob has a maximum CLTV delta of 2 weeks [2]&lt;br/&gt;&amp;gt;    -&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;    Over the last 2 weeks, he has earned 0.5 BTC in routing fees&lt;br/&gt;&amp;gt;    -&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;    Alice will be considered to have good reputation if she has forwarded&lt;br/&gt;&amp;gt;    0.5 BTC of routing revenue to Bob over the last 20 weeks&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Formally:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Let t be the current time, and let S and L be constants.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; M is calculated to be the revenue of Bob in time [t-S,t]. The revenue of&lt;br/&gt;&amp;gt; Bob is the sum of fees from transactions forwarded by any neighbour besides&lt;br/&gt;&amp;gt; Alice &#43; any payments received by Bob. Note that Bob can choose to also take&lt;br/&gt;&amp;gt; into account utility gained from sending payments or anything of value to&lt;br/&gt;&amp;gt; the node operator.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Alice has reputation 1 if in the time [t-L,t] she has forwarded HTLCs&lt;br/&gt;&amp;gt; that paid M in normalized fees.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; We normalize fees by resolution time to reward payments that resolve&lt;br/&gt;&amp;gt; quickly and discount slow resolving payments. Here we assume 10 seconds is&lt;br/&gt;&amp;gt; the “normal” resolution time, this number can be bikesheded, and we round&lt;br/&gt;&amp;gt; up to avoid penalizing transactions resolved quicker than the “normal”.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; The fee from a single transaction is normalized by the time it took for&lt;br/&gt;&amp;gt; the HTLC to resolve, counted in slots of 10 seconds. That is:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Normalized_fee = (fee)/[ceiling(time_to_resolve/10s)]&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Some notes&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;    1.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;    The reputation management happens locally, that is, the only protocol&lt;br/&gt;&amp;gt;    change needed is the ability to signal endorsement as a TLV in&lt;br/&gt;&amp;gt;    UpdateAddHTLC. The various parameters can be selected for various risk&lt;br/&gt;&amp;gt;    preferences.&lt;br/&gt;&amp;gt;    2.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;    We currently suggest a binary reputation for simplicity. Having&lt;br/&gt;&amp;gt;    several buckets could be interesting to study, yet we don’t think that the&lt;br/&gt;&amp;gt;    complexity and the possible privacy issues are worth the potential benefits.&lt;br/&gt;&amp;gt;    3.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;    For most use cases, having reputation 0 is more than enough. If we&lt;br/&gt;&amp;gt;    send and receive transactions at a low rate, we usually don’t need the full&lt;br/&gt;&amp;gt;    liquidity and slots available in a channel. Reputation mostly comes into&lt;br/&gt;&amp;gt;    play only when a channel is under attack, and then not all transaction are&lt;br/&gt;&amp;gt;    allowed to go through.&lt;br/&gt;&amp;gt;    4.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;    Following this thread [3]: it is important to note that we are only&lt;br/&gt;&amp;gt;    giving reputation to our direct neighbours. An advantage of this is that we&lt;br/&gt;&amp;gt;    have repeated interactions with them. In practice, this is also the only&lt;br/&gt;&amp;gt;    clean data we have to use when deciding whether to forward an HTLC or not.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Best,&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Carla and Clara&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; [1]&lt;br/&gt;&amp;gt; &lt;a href=&#34;https://lists.linuxfoundation.org/pipermail/lightning-dev/2022-November/003740.html&#34;&gt;https://lists.linuxfoundation.org/pipermail/lightning-dev/2022-November/003740.html&lt;/a&gt;&lt;br/&gt;&amp;gt; [2]&lt;br/&gt;&amp;gt; &lt;a href=&#34;https://github.com/lightningnetwork/lnd/blob/de94a4ea5e81799330a72dfde111817b38565d99/htlcswitch/link.go#L51&#34;&gt;https://github.com/lightningnetwork/lnd/blob/de94a4ea5e81799330a72dfde111817b38565d99/htlcswitch/link.go#L51&lt;/a&gt;&lt;br/&gt;&amp;gt; [3]&lt;br/&gt;&amp;gt; &lt;a href=&#34;https://lists.linuxfoundation.org/pipermail/lightning-dev/2023-February/003842.html&#34;&gt;https://lists.linuxfoundation.org/pipermail/lightning-dev/2023-February/003842.html&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/20230302/47bf0566/attachment-0001.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/lightning-dev/attachments/20230302/47bf0566/attachment-0001.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-09T13:12:48Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsxxvexhl8xyrjhaesp7yu65nalj27yan29hdzqcns0ues0ppnwvlgzyp0pc0629uxszkqsxwp6h50r5kp2kxxreehq9dgf2zmcxcpxzdwfktxv3dm</id>
    
      <title type="html">📅 Original date posted:2023-03-03 📝 Original message: The ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsxxvexhl8xyrjhaesp7yu65nalj27yan29hdzqcns0ues0ppnwvlgzyp0pc0629uxszkqsxwp6h50r5kp2kxxreehq9dgf2zmcxcpxzdwfktxv3dm" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsqx2dcfqmv5aqxyhpkqx2ywfzwaar3z9det0fv9vlawwqf5z2sf7cgps5er&#39;&gt;nevent1q…s5er&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2023-03-03&lt;br/&gt;📝 Original message:&lt;br/&gt;The benefit is that you can be more precise when blocking. With a binary&lt;br/&gt;solution a single attacker can easily fill your quota of low-confidence&lt;br/&gt;HTLCs and then all low-reputation nodes are blocked. But not all of them&lt;br/&gt;are attackers, some of them just don&amp;#39;t send you enough traffic to get a&lt;br/&gt;high reputation for instance and you&amp;#39;re going to block them too. With a&lt;br/&gt;continuous solution you can differentiate between an active attacker and&lt;br/&gt;someone who just sends to nodes with poor connectivity and only block the&lt;br/&gt;first.&lt;br/&gt;&lt;br/&gt;For reporting c truthfully, if you report it too high you will be penalized&lt;br/&gt;by having your reputation lowered, if you report it too low you will&lt;br/&gt;penalize your HTLCs and still get the same reputation as if you had&lt;br/&gt;reported it truthfully.&lt;br/&gt;&lt;br/&gt;Le ven. 3 mars 2023 à 19:45, Clara Shikhelman &amp;lt;clara.shikhelman at gmail.com&amp;gt;&lt;br/&gt;a écrit :&lt;br/&gt;&lt;br/&gt;&amp;gt; Could you explain the benefits of continuous solutions over binary? This&lt;br/&gt;&amp;gt; is something we should definitely understand before going in a more&lt;br/&gt;&amp;gt; complicated direction.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Also, I&amp;#39;m still not sure that the rational behaviour is to report *c*&lt;br/&gt;&amp;gt; truthfully.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; On Fri, Mar 3, 2023 at 11:51 AM Thomas HUET &amp;lt;thomas.huet at acinq.fr&amp;gt; wrote:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; By giving a high confidence to HTLCs you increase the chance that they&lt;br/&gt;&amp;gt;&amp;gt; are relayed which should be your goal. Having a high reputation is not a&lt;br/&gt;&amp;gt;&amp;gt; goal in itself, it&amp;#39;s just a way to make your HTLCs more likely to be&lt;br/&gt;&amp;gt;&amp;gt; relayed. If you always report confidence 0, then yes you will have a&lt;br/&gt;&amp;gt;&amp;gt; reputation of 1 but your HTLCs will still be rejected at the first sign of&lt;br/&gt;&amp;gt;&amp;gt; congestion.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Le ven. 3 mars 2023 à 17:14, Clara Shikhelman &amp;lt;clara.shikhelman at gmail.com&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; a écrit :&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Hi Thomas,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Thanks for the example.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; - If c &amp;lt; p then yes it gives it a higher reputation but the reputation&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; is capped at 1 anyway, so by underestimating the confidence the node&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; doesn&amp;#39;t gain anything.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Is there anything to gain from giving high confidence? By doing this,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; you risk lowering your reputation, and it&amp;#39;s not clear what you gain.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Could it be that the best selfish strategy is to report confidence 0&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; (that maps to reputation 1) all the time?&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;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/20230303/d15bb113/attachment-0001.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/lightning-dev/attachments/20230303/d15bb113/attachment-0001.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-09T13:08:17Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqs96c4k8a82mekcy2auuncsljlfq4ez8aew4s6yjw0kjd3lhely9uczyp0pc0629uxszkqsxwp6h50r5kp2kxxreehq9dgf2zmcxcpxzdwfk85m752</id>
    
      <title type="html">📅 Original date posted:2023-03-03 📝 Original message: By ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqs96c4k8a82mekcy2auuncsljlfq4ez8aew4s6yjw0kjd3lhely9uczyp0pc0629uxszkqsxwp6h50r5kp2kxxreehq9dgf2zmcxcpxzdwfk85m752" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsdhwdhcgwr5y78skvxgdt3s2hh5vlyqd2p9hdz8nxw5dkj5kys8hcn747y9&#39;&gt;nevent1q…47y9&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2023-03-03&lt;br/&gt;📝 Original message:&lt;br/&gt;By giving a high confidence to HTLCs you increase the chance that they are&lt;br/&gt;relayed which should be your goal. Having a high reputation is not a goal&lt;br/&gt;in itself, it&amp;#39;s just a way to make your HTLCs more likely to be relayed. If&lt;br/&gt;you always report confidence 0, then yes you will have a reputation of 1&lt;br/&gt;but your HTLCs will still be rejected at the first sign of congestion.&lt;br/&gt;&lt;br/&gt;Le ven. 3 mars 2023 à 17:14, Clara Shikhelman &amp;lt;clara.shikhelman at gmail.com&amp;gt;&lt;br/&gt;a écrit :&lt;br/&gt;&lt;br/&gt;&amp;gt; Hi Thomas,&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Thanks for the example.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; - If c &amp;lt; p then yes it gives it a higher reputation but the reputation is&lt;br/&gt;&amp;gt;&amp;gt; capped at 1 anyway, so by underestimating the confidence the node doesn&amp;#39;t&lt;br/&gt;&amp;gt;&amp;gt; gain anything.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt; Is there anything to gain from giving high confidence? By doing this, you&lt;br/&gt;&amp;gt; risk lowering your reputation, and it&amp;#39;s not clear what you gain.&lt;br/&gt;&amp;gt; Could it be that the best selfish strategy is to report confidence 0 (that&lt;br/&gt;&amp;gt; maps to reputation 1) all the time?&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/20230303/bc05d231/attachment.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/lightning-dev/attachments/20230303/bc05d231/attachment.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-09T13:08:17Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsd3ca7tm78c0ejlutf2lv06tr3h0f78f2gsa5eactqvkd6nxuvzpczyp0pc0629uxszkqsxwp6h50r5kp2kxxreehq9dgf2zmcxcpxzdwfkr0djaw</id>
    
      <title type="html">📅 Original date posted:2023-03-02 📝 Original message: To ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsd3ca7tm78c0ejlutf2lv06tr3h0f78f2gsa5eactqvkd6nxuvzpczyp0pc0629uxszkqsxwp6h50r5kp2kxxreehq9dgf2zmcxcpxzdwfkr0djaw" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsr589qdy5lgggaq7ejv80af6qtp5snlle0h6k3zt47602x7wla5zs0623uh&#39;&gt;nevent1q…23uh&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2023-03-02&lt;br/&gt;📝 Original message:&lt;br/&gt;To give a very simple example, imagine a node that sends the same&lt;br/&gt;confidence c for all HTLCs. We want c to be equal to the probability p that&lt;br/&gt;its HTLCs succeed.&lt;br/&gt;- If c = p then all is well and we give a reputation of 1 to the node.&lt;br/&gt;- If c &amp;gt; p then this node is overconfident or is lying to have its HTLCs&lt;br/&gt;relayed, in both cases we should lower its reputation to account for that.&lt;br/&gt;- If c &amp;lt; p then yes it gives it a higher reputation but the reputation is&lt;br/&gt;capped at 1 anyway, so by underestimating the confidence the node doesn&amp;#39;t&lt;br/&gt;gain anything.&lt;br/&gt;Ideally we want all honest nodes to have a reputation of 1. It doesn&amp;#39;t mean&lt;br/&gt;that all their HTLCs succeed, it just means that they provide reliable&lt;br/&gt;estimates of the success probability of the HTLCs.&lt;br/&gt;&lt;br/&gt;Le jeu. 2 mars 2023 à 19:57, Clara Shikhelman &amp;lt;clara.shikhelman at gmail.com&amp;gt;&lt;br/&gt;a écrit :&lt;br/&gt;&lt;br/&gt;&amp;gt; Hi Thomas,&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; I really like the idea of taking into consideration the failures. In our&lt;br/&gt;&amp;gt; proposal, a failure won&amp;#39;t benefit your reputation, as the neighbour is&lt;br/&gt;&amp;gt; trying to reach a fee threshold, but taking it into account instead of&lt;br/&gt;&amp;gt; ignoring it could be helpful against an adversary trying to manipulate&lt;br/&gt;&amp;gt; parameters.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Could you elaborate a bit about &amp;#34;*c, the confidence given by the previous&lt;br/&gt;&amp;gt; node.*&amp;#34; It looks from the formula (that has *1/c* component) that the&lt;br/&gt;&amp;gt; lower the confidence, the higher the reputation, and I am not sure that&lt;br/&gt;&amp;gt; this is the goal. Some numerical examples could help clarify the dynamics&lt;br/&gt;&amp;gt; you are aiming for.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Do you have some estimation of what kind of protection or compensation&lt;br/&gt;&amp;gt; this method offers?&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Best,&lt;br/&gt;&amp;gt; Clara&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; On Thu, Mar 2, 2023 at 8:14 AM Thomas HUET &amp;lt;thomas.huet at acinq.fr&amp;gt; wrote:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Hello,&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; I think the local reputation is more important than upfront fees and&lt;br/&gt;&amp;gt;&amp;gt; should be worked on first because 1) the most likely attack against the&lt;br/&gt;&amp;gt;&amp;gt; network today is the slow jamming attack against which upfront fees are not&lt;br/&gt;&amp;gt;&amp;gt; very effective (an attacker would only consider fast jamming if the network&lt;br/&gt;&amp;gt;&amp;gt; is already resilient to slow jamming) and 2) I think that local reputation&lt;br/&gt;&amp;gt;&amp;gt; may protect well enough against all types of jamming so that we don&amp;#39;t even&lt;br/&gt;&amp;gt;&amp;gt; need upfront fees to protect against fast jamming.&lt;br/&gt;&amp;gt;&amp;gt; Regarding the formula itself, I would treat all scores as continuous&lt;br/&gt;&amp;gt;&amp;gt; values between 0 and 1 instead of binary classes. My proposed formula is&lt;br/&gt;&amp;gt;&amp;gt; detailed here:&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://docs.google.com/document/d/1hEt1EzyPFJ3gOY7PAvtm_XotTnlQO2r7LSF8Jx34qgc/edit?usp=sharing&#34;&gt;https://docs.google.com/document/d/1hEt1EzyPFJ3gOY7PAvtm_XotTnlQO2r7LSF8Jx34qgc/edit?usp=sharing&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt; However my proposal is compatible with Clara&amp;#39;s one in that the only thing&lt;br/&gt;&amp;gt;&amp;gt; that needs to be communicated to the peers is how confident we are that the&lt;br/&gt;&amp;gt;&amp;gt; payment will succeed and all the rest is done locally and everyone can use&lt;br/&gt;&amp;gt;&amp;gt; their own formula. I would just prefer this confidence value to be more&lt;br/&gt;&amp;gt;&amp;gt; than one bit but my formula would work with anything, even zero bits. The&lt;br/&gt;&amp;gt;&amp;gt; advantage of using more bits is that we can be more precise in which HTLCs&lt;br/&gt;&amp;gt;&amp;gt; we reject and reduce the number of innocent casualties.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Thomas&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Le jeu. 16 févr. 2023 à 22:29, Clara Shikhelman &amp;lt;&lt;br/&gt;&amp;gt;&amp;gt; clara.shikhelman at gmail.com&amp;gt; a écrit :&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Hi List,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; We’re writing to seek early feedback on a draft for a neighbour&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; reputation setting recommendation as a jamming mitigation. The main idea is&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; that allowing full access to liquidity and slots in a channel can result in&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; jamming. To prevent this, we allow full access only to neighbours that&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; forward HTLC that resolve quickly and generate more profit than the damage&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; they can potentially create.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; The full suggested jamming mitigation solution includes upfront fees&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; together with reputation, see [1] for details.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; In the previous episodes:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; As presented here [1], we suggest a two part jamming mitigation&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; strategy. Reputation-based forwarding is aimed to solve “slow jamming”,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; where the jamming transaction takes a long time to resolve.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; The main idea is that each node gives a binary reputation to its&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; neighbour. Each channel has a quota of liquidity and slots (say 50% of the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; channel size and 50% of the slots in the channel) dedicated to transactions&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; coming from neighbours with reputation 0, or for transactions coming from&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; neighbours with reputation 1 that were not endorsed by the neighbour.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; For example, when Alice asks Bob to forward to Charlie then:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; If (Alice has reputation 1 with Bob) and (Alice endorses transaction):&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Forward and endorse&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Else:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; If (amount &amp;lt; available liquidity quota) and (available slots in&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; quota&amp;gt;0):&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Forward HTLC without endorsing&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Reduce available liquidity and slots&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Else:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Reject&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Reputation:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; The question we discuss here is how does Alice gain “good” reputation&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; (i.e., a score of 1). Alice starts at 0, and she gains and keeps her good&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; reputation of 1 by continuously paying more fees to Bob than the damage she&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; can inflict.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; The 3 main parameters for reputation that each node operator picks are S,L&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; and M. Our recommendations are as follows:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    -&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    S should be chosen as the maximum time an HTLC can be unresolved in&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    any of Bob’s channels.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    -&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    M is the revenue generated by Bob’s node in the time S, representing&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    the damage Alice could inflict.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    -&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    L is the time in which Alice should generate M revenue for Bob for&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    her to have a good reputation of 1. We suggest L=10S.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Alice has reputation 1 if, in the last L seconds, she has forwarded&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; payments that generated M satoshi in fees.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; As an example:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    -&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    Bob has a maximum CLTV delta of 2 weeks [2]&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    -&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    Over the last 2 weeks, he has earned 0.5 BTC in routing fees&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    -&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    Alice will be considered to have good reputation if she has&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    forwarded 0.5 BTC of routing revenue to Bob over the last 20 weeks&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Formally:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Let t be the current time, and let S and L be constants.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; M is calculated to be the revenue of Bob in time [t-S,t]. The revenue&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; of Bob is the sum of fees from transactions forwarded by any neighbour&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; besides Alice &#43; any payments received by Bob. Note that Bob can choose to&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; also take into account utility gained from sending payments or anything&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; of value to the node operator.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Alice has reputation 1 if in the time [t-L,t] she has forwarded HTLCs&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; that paid M in normalized fees.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; We normalize fees by resolution time to reward payments that resolve&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; quickly and discount slow resolving payments. Here we assume 10 seconds is&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; the “normal” resolution time, this number can be bikesheded, and we round&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; up to avoid penalizing transactions resolved quicker than the “normal”.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; The fee from a single transaction is normalized by the time it took for&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; the HTLC to resolve, counted in slots of 10 seconds. That is:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Normalized_fee = (fee)/[ceiling(time_to_resolve/10s)]&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Some notes&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    1.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    The reputation management happens locally, that is, the only&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    protocol change needed is the ability to signal endorsement as a TLV&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    in UpdateAddHTLC. The various parameters can be selected for various&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    risk preferences.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    2.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    We currently suggest a binary reputation for simplicity. Having&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    several buckets could be interesting to study, yet we don’t think that the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    complexity and the possible privacy issues are worth the potential benefits.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    3.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    For most use cases, having reputation 0 is more than enough. If we&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    send and receive transactions at a low rate, we usually don’t need the full&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    liquidity and slots available in a channel. Reputation mostly comes into&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    play only when a channel is under attack, and then not all transaction are&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    allowed to go through.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    4.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    Following this thread [3]: it is important to note that we are only&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    giving reputation to our direct neighbours. An advantage of this is that we&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    have repeated interactions with them. In practice, this is also the only&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;    clean data we have to use when deciding whether to forward an HTLC or not.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Best,&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Carla and Clara&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; [1]&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://lists.linuxfoundation.org/pipermail/lightning-dev/2022-November/003740.html&#34;&gt;https://lists.linuxfoundation.org/pipermail/lightning-dev/2022-November/003740.html&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; [2]&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://github.com/lightningnetwork/lnd/blob/de94a4ea5e81799330a72dfde111817b38565d99/htlcswitch/link.go#L51&#34;&gt;https://github.com/lightningnetwork/lnd/blob/de94a4ea5e81799330a72dfde111817b38565d99/htlcswitch/link.go#L51&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; [3]&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://lists.linuxfoundation.org/pipermail/lightning-dev/2023-February/003842.html&#34;&gt;https://lists.linuxfoundation.org/pipermail/lightning-dev/2023-February/003842.html&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Lightning-dev mailing list&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Lightning-dev at lists.linuxfoundation.org&lt;br/&gt;&amp;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;&amp;gt;&amp;gt;&lt;br/&gt;&amp;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/20230302/f66062bc/attachment-0001.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/lightning-dev/attachments/20230302/f66062bc/attachment-0001.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-09T13:08:16Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsr3rq5hhl6klvpl6p7csmx6lp6jllg2uulxgrvxt9wfsalpwnxddszyp0pc0629uxszkqsxwp6h50r5kp2kxxreehq9dgf2zmcxcpxzdwfkcwmllg</id>
    
      <title type="html">📅 Original date posted:2023-03-02 📝 Original message: ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsr3rq5hhl6klvpl6p7csmx6lp6jllg2uulxgrvxt9wfsalpwnxddszyp0pc0629uxszkqsxwp6h50r5kp2kxxreehq9dgf2zmcxcpxzdwfkcwmllg" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs970n4w5lpe5jxyz5xkwadvt4k68zqckuxfrrmurkyt0x9j5uqwyqmxn9cw&#39;&gt;nevent1q…n9cw&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2023-03-02&lt;br/&gt;📝 Original message:&lt;br/&gt;Hello,&lt;br/&gt;&lt;br/&gt;I think the local reputation is more important than upfront fees and should&lt;br/&gt;be worked on first because 1) the most likely attack against the network&lt;br/&gt;today is the slow jamming attack against which upfront fees are not very&lt;br/&gt;effective (an attacker would only consider fast jamming if the network is&lt;br/&gt;already resilient to slow jamming) and 2) I think that local reputation may&lt;br/&gt;protect well enough against all types of jamming so that we don&amp;#39;t even need&lt;br/&gt;upfront fees to protect against fast jamming.&lt;br/&gt;Regarding the formula itself, I would treat all scores as continuous values&lt;br/&gt;between 0 and 1 instead of binary classes. My proposed formula is detailed&lt;br/&gt;here:&lt;br/&gt;&lt;a href=&#34;https://docs.google.com/document/d/1hEt1EzyPFJ3gOY7PAvtm_XotTnlQO2r7LSF8Jx34qgc/edit?usp=sharing&#34;&gt;https://docs.google.com/document/d/1hEt1EzyPFJ3gOY7PAvtm_XotTnlQO2r7LSF8Jx34qgc/edit?usp=sharing&lt;/a&gt;&lt;br/&gt;However my proposal is compatible with Clara&amp;#39;s one in that the only thing&lt;br/&gt;that needs to be communicated to the peers is how confident we are that the&lt;br/&gt;payment will succeed and all the rest is done locally and everyone can use&lt;br/&gt;their own formula. I would just prefer this confidence value to be more&lt;br/&gt;than one bit but my formula would work with anything, even zero bits. The&lt;br/&gt;advantage of using more bits is that we can be more precise in which HTLCs&lt;br/&gt;we reject and reduce the number of innocent casualties.&lt;br/&gt;&lt;br/&gt;Thomas&lt;br/&gt;&lt;br/&gt;Le jeu. 16 févr. 2023 à 22:29, Clara Shikhelman &amp;lt;clara.shikhelman at gmail.com&amp;gt;&lt;br/&gt;a écrit :&lt;br/&gt;&lt;br/&gt;&amp;gt; Hi List,&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; We’re writing to seek early feedback on a draft for a neighbour reputation&lt;br/&gt;&amp;gt; setting recommendation as a jamming mitigation. The main idea is that&lt;br/&gt;&amp;gt; allowing full access to liquidity and slots in a channel can result in&lt;br/&gt;&amp;gt; jamming. To prevent this, we allow full access only to neighbours that&lt;br/&gt;&amp;gt; forward HTLC that resolve quickly and generate more profit than the damage&lt;br/&gt;&amp;gt; they can potentially create.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; The full suggested jamming mitigation solution includes upfront fees&lt;br/&gt;&amp;gt; together with reputation, see [1] for details.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; In the previous episodes:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; As presented here [1], we suggest a two part jamming mitigation strategy.&lt;br/&gt;&amp;gt; Reputation-based forwarding is aimed to solve “slow jamming”, where the&lt;br/&gt;&amp;gt; jamming transaction takes a long time to resolve.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; The main idea is that each node gives a binary reputation to its&lt;br/&gt;&amp;gt; neighbour. Each channel has a quota of liquidity and slots (say 50% of the&lt;br/&gt;&amp;gt; channel size and 50% of the slots in the channel) dedicated to transactions&lt;br/&gt;&amp;gt; coming from neighbours with reputation 0, or for transactions coming from&lt;br/&gt;&amp;gt; neighbours with reputation 1 that were not endorsed by the neighbour.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; For example, when Alice asks Bob to forward to Charlie then:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; If (Alice has reputation 1 with Bob) and (Alice endorses transaction):&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Forward and endorse&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Else:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; If (amount &amp;lt; available liquidity quota) and (available slots in quota&amp;gt;0):&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Forward HTLC without endorsing&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Reduce available liquidity and slots&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Else:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Reject&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Reputation:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; The question we discuss here is how does Alice gain “good” reputation&lt;br/&gt;&amp;gt; (i.e., a score of 1). Alice starts at 0, and she gains and keeps her good&lt;br/&gt;&amp;gt; reputation of 1 by continuously paying more fees to Bob than the damage she&lt;br/&gt;&amp;gt; can inflict.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; The 3 main parameters for reputation that each node operator picks are S,L&lt;br/&gt;&amp;gt; and M. Our recommendations are as follows:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;    -&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;    S should be chosen as the maximum time an HTLC can be unresolved in&lt;br/&gt;&amp;gt;    any of Bob’s channels.&lt;br/&gt;&amp;gt;    -&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;    M is the revenue generated by Bob’s node in the time S, representing&lt;br/&gt;&amp;gt;    the damage Alice could inflict.&lt;br/&gt;&amp;gt;    -&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;    L is the time in which Alice should generate M revenue for Bob for her&lt;br/&gt;&amp;gt;    to have a good reputation of 1. We suggest L=10S.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Alice has reputation 1 if, in the last L seconds, she has forwarded&lt;br/&gt;&amp;gt; payments that generated M satoshi in fees.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; As an example:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;    -&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;    Bob has a maximum CLTV delta of 2 weeks [2]&lt;br/&gt;&amp;gt;    -&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;    Over the last 2 weeks, he has earned 0.5 BTC in routing fees&lt;br/&gt;&amp;gt;    -&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;    Alice will be considered to have good reputation if she has forwarded&lt;br/&gt;&amp;gt;    0.5 BTC of routing revenue to Bob over the last 20 weeks&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Formally:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Let t be the current time, and let S and L be constants.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; M is calculated to be the revenue of Bob in time [t-S,t]. The revenue of&lt;br/&gt;&amp;gt; Bob is the sum of fees from transactions forwarded by any neighbour besides&lt;br/&gt;&amp;gt; Alice &#43; any payments received by Bob. Note that Bob can choose to also take&lt;br/&gt;&amp;gt; into account utility gained from sending payments or anything of value to&lt;br/&gt;&amp;gt; the node operator.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Alice has reputation 1 if in the time [t-L,t] she has forwarded HTLCs&lt;br/&gt;&amp;gt; that paid M in normalized fees.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; We normalize fees by resolution time to reward payments that resolve&lt;br/&gt;&amp;gt; quickly and discount slow resolving payments. Here we assume 10 seconds is&lt;br/&gt;&amp;gt; the “normal” resolution time, this number can be bikesheded, and we round&lt;br/&gt;&amp;gt; up to avoid penalizing transactions resolved quicker than the “normal”.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; The fee from a single transaction is normalized by the time it took for&lt;br/&gt;&amp;gt; the HTLC to resolve, counted in slots of 10 seconds. That is:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Normalized_fee = (fee)/[ceiling(time_to_resolve/10s)]&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Some notes&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;    1.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;    The reputation management happens locally, that is, the only protocol&lt;br/&gt;&amp;gt;    change needed is the ability to signal endorsement as a TLV in&lt;br/&gt;&amp;gt;    UpdateAddHTLC. The various parameters can be selected for various risk&lt;br/&gt;&amp;gt;    preferences.&lt;br/&gt;&amp;gt;    2.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;    We currently suggest a binary reputation for simplicity. Having&lt;br/&gt;&amp;gt;    several buckets could be interesting to study, yet we don’t think that the&lt;br/&gt;&amp;gt;    complexity and the possible privacy issues are worth the potential benefits.&lt;br/&gt;&amp;gt;    3.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;    For most use cases, having reputation 0 is more than enough. If we&lt;br/&gt;&amp;gt;    send and receive transactions at a low rate, we usually don’t need the full&lt;br/&gt;&amp;gt;    liquidity and slots available in a channel. Reputation mostly comes into&lt;br/&gt;&amp;gt;    play only when a channel is under attack, and then not all transaction are&lt;br/&gt;&amp;gt;    allowed to go through.&lt;br/&gt;&amp;gt;    4.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;    Following this thread [3]: it is important to note that we are only&lt;br/&gt;&amp;gt;    giving reputation to our direct neighbours. An advantage of this is that we&lt;br/&gt;&amp;gt;    have repeated interactions with them. In practice, this is also the only&lt;br/&gt;&amp;gt;    clean data we have to use when deciding whether to forward an HTLC or not.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Best,&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Carla and Clara&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; [1]&lt;br/&gt;&amp;gt; &lt;a href=&#34;https://lists.linuxfoundation.org/pipermail/lightning-dev/2022-November/003740.html&#34;&gt;https://lists.linuxfoundation.org/pipermail/lightning-dev/2022-November/003740.html&lt;/a&gt;&lt;br/&gt;&amp;gt; [2]&lt;br/&gt;&amp;gt; &lt;a href=&#34;https://github.com/lightningnetwork/lnd/blob/de94a4ea5e81799330a72dfde111817b38565d99/htlcswitch/link.go#L51&#34;&gt;https://github.com/lightningnetwork/lnd/blob/de94a4ea5e81799330a72dfde111817b38565d99/htlcswitch/link.go#L51&lt;/a&gt;&lt;br/&gt;&amp;gt; [3]&lt;br/&gt;&amp;gt; &lt;a href=&#34;https://lists.linuxfoundation.org/pipermail/lightning-dev/2023-February/003842.html&#34;&gt;https://lists.linuxfoundation.org/pipermail/lightning-dev/2023-February/003842.html&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/20230302/47bf0566/attachment-0001.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/lightning-dev/attachments/20230302/47bf0566/attachment-0001.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-09T13:08:15Z</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqspfjmhylv8l8xvd8ttvkaakdjhwhl498vgttaunu2unf30u7cn6mqzyp0pc0629uxszkqsxwp6h50r5kp2kxxreehq9dgf2zmcxcpxzdwfkxhcz0u</id>
    
      <title type="html">📅 Original date posted:2022-07-01 📝 Original message: Hi ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqspfjmhylv8l8xvd8ttvkaakdjhwhl498vgttaunu2unf30u7cn6mqzyp0pc0629uxszkqsxwp6h50r5kp2kxxreehq9dgf2zmcxcpxzdwfkxhcz0u" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsrhvts2gach7y950482hw58pyhdl8wdknyepave92u8le5dphwagcvlyquv&#39;&gt;nevent1q…yquv&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2022-07-01&lt;br/&gt;📝 Original message:&lt;br/&gt;Hi Joost,&lt;br/&gt;&lt;br/&gt;It was discussed in this issue:&lt;br/&gt;&lt;a href=&#34;https://github.com/lightning/bolts/issues/835&#34;&gt;https://github.com/lightning/bolts/issues/835&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;On the network, the traffic is not balanced. Some nodes tend to receive&lt;br/&gt;more than they send, merchants for instance. For the lightning network to&lt;br/&gt;be reliable, we need to incentivise people to open channels to such nodes,&lt;br/&gt;or else there won&amp;#39;t be enough liquidity available and payments will fail.&lt;br/&gt;The current fee structure provides this incentive: You pay some onchain&lt;br/&gt;fees and lock some funds and in exchange you will earn routing fees. My&lt;br/&gt;concern is that your proposed change would break that incentive and make&lt;br/&gt;the network less reliable.&lt;br/&gt;&lt;br/&gt;Thomas&lt;br/&gt;&lt;br/&gt;Le ven. 1 juil. 2022 à 14:02, Joost Jager &amp;lt;joost.jager at gmail.com&amp;gt; a écrit :&lt;br/&gt;&lt;br/&gt;&amp;gt; Hi Bastien,&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; I vaguely remembered that the idea of inbound fees had been discussed&lt;br/&gt;&amp;gt; before. Before writing my post, I scanned through old ML posts and bolts&lt;br/&gt;&amp;gt; issues but couldn&amp;#39;t find the discussion. Maybe it was part of a different&lt;br/&gt;&amp;gt; but related email or a bolts pr?&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; With regards to your objections, isn&amp;#39;t it the case that it is always&lt;br/&gt;&amp;gt; possible to DoS your peer by just rejecting any forward that comes in from&lt;br/&gt;&amp;gt; them? Or indirectly affecting them negatively by setting high fees on all&lt;br/&gt;&amp;gt; outbound channels? To me it seems that there is nothing to lose by adding&lt;br/&gt;&amp;gt; inbound fees.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; My thinking is that if I accept an incoming htlc, my local balance&lt;br/&gt;&amp;gt; increases on that incoming channel. My money gets locked up in a channel&lt;br/&gt;&amp;gt; that may or may not be interesting to me. Wouldn&amp;#39;t it be fair to be&lt;br/&gt;&amp;gt; compensated for that?&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Any thoughts from routing node operators would be welcome too (or links to&lt;br/&gt;&amp;gt; previous threads).&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Joost&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; On Fri, Jul 1, 2022 at 1:19 PM Bastien TEINTURIER &amp;lt;bastien at acinq.fr&amp;gt;&lt;br/&gt;&amp;gt; wrote:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Hi Joost,&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; As I&amp;#39;ve already stated every time this has been previously discussed, I&lt;br/&gt;&amp;gt;&amp;gt; believe&lt;br/&gt;&amp;gt;&amp;gt; this doesn&amp;#39;t make any sense. The funds that are on the other side of the&lt;br/&gt;&amp;gt;&amp;gt; channel belong to your peer, not you, so they&amp;#39;re free to use it however&lt;br/&gt;&amp;gt;&amp;gt; they&lt;br/&gt;&amp;gt;&amp;gt; want. If you&amp;#39;re not happy with the way your peer is managing their fees,&lt;br/&gt;&amp;gt;&amp;gt; then&lt;br/&gt;&amp;gt;&amp;gt; don&amp;#39;t open channels to them and let the network decide whether you&amp;#39;re&lt;br/&gt;&amp;gt;&amp;gt; right or&lt;br/&gt;&amp;gt;&amp;gt; not.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Moreover, you shouldn&amp;#39;t care at all. If all the funds are on your peer&amp;#39;s&lt;br/&gt;&amp;gt;&amp;gt; side,&lt;br/&gt;&amp;gt;&amp;gt; this isn&amp;#39;t your problem, you used up all the money that was yours. As&lt;br/&gt;&amp;gt;&amp;gt; long as&lt;br/&gt;&amp;gt;&amp;gt; the channel is open, this is free inbound liquidity for you, so you&amp;#39;re&lt;br/&gt;&amp;gt;&amp;gt; even&lt;br/&gt;&amp;gt;&amp;gt; benefiting from this.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; If Alice could set fees for Bob&amp;#39;s side of the channel, Alice could&lt;br/&gt;&amp;gt;&amp;gt; arbitrarily&lt;br/&gt;&amp;gt;&amp;gt; DoS Bob&amp;#39;s payments by setting a high fee. This is just one example of the&lt;br/&gt;&amp;gt;&amp;gt; many&lt;br/&gt;&amp;gt;&amp;gt; ways this idea completely breaks the routing incentives.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Cheers,&lt;br/&gt;&amp;gt;&amp;gt; Bastien&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Le ven. 1 juil. 2022 à 13:10, Joost Jager &amp;lt;joost.jager at gmail.com&amp;gt; a&lt;br/&gt;&amp;gt;&amp;gt; écrit :&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Path-finding algorithms that are currently in use generally don’t&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; support negative fees. But in this case, the sum of inbound and outbound&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; fees is still positive and therefore not a problem. If routing nodes set&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; their policies accidentally or intentionally so that the sum of fees turns&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; out negative, senders can just round up to zero and find a path as normal.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Correction to this:&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; The sum of inbound and outbound are not the fees set by one single&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; routing node. When path-finding considers a candidate hop, this adds the&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; outbound fee of the &amp;#34;from&amp;#34; node and the inbound fee of the &amp;#34;to&amp;#34; node.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Because those nodes don&amp;#39;t necessarily coordinate fees, it may happen more&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; often that the fee goes negative. Rounding up to zero is still a quick fix&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; and better than ignoring inbound fees completely.&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Lightning-dev mailing list&lt;br/&gt;&amp;gt;&amp;gt;&amp;gt; Lightning-dev at lists.linuxfoundation.org&lt;br/&gt;&amp;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;&amp;gt;&amp;gt;&lt;br/&gt;&amp;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/20220701/3c0f507d/attachment.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/lightning-dev/attachments/20220701/3c0f507d/attachment.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-09T13:06:32Z</updated>
  </entry>

</feed>