Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[feature]: Experimental HTLC Endorsement #7883

Closed
carlaKC opened this issue Aug 10, 2023 · 0 comments · Fixed by #8390
Closed

[feature]: Experimental HTLC Endorsement #7883

carlaKC opened this issue Aug 10, 2023 · 0 comments · Fixed by #8390
Labels
channel jamming Issues related to channel jamming mitigation

Comments

@carlaKC
Copy link
Collaborator

carlaKC commented Aug 10, 2023

As described on the mailing list, we'd like to use an experimental TLV (endorsed / 65555) in update_add_htlc to "dry-run" propagation of HTLC endorsement. This would be an incredibly valuable way to validate that "steady-state" payment flows are unaffected by the addition of endorsement/reputation and observe the proposed reputation algorithm's behavior in the wild.

Part 1: Passive Relay of Endorsement Field

The first step will be to get the experimental field relayed within the network (on an opt-in or opt-out basis):

  • If LND receives TLV 65555 on the incoming update_add_htlc:
    • Set the outgoing update_add_htlc's TLV 65555 to the value on the incoming link.
  • Otherwise:
    • Set the outgoing update_add_htlc's TLV 65555 to []byte.

Endorsement is a chain of signals which is completely lost if even a single node along the route does not set it. Updating nodes to relay the TLV would be incredibly valuable, as that preserves the chain of signals and allows a very small subset of experimenting nodes to use this value.

Part 2: Active Experimentation

Participants that volunteer to participate in the experiment will start to set these values:

  1. Senders: set endorsed = 1 for some portion of their payments.
  2. Forwarders: set outgoing endorsed to 0 or 1 on the outgoing update_add_htlc (based on the current spec's instructions) -> requires [feature]: Add Outgoing Custom TLVs to HTLC Interceptor #7841.
@carlaKC carlaKC added the channel jamming Issues related to channel jamming mitigation label Aug 10, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
channel jamming Issues related to channel jamming mitigation
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant