Skip to content

[feature]: Experimental HTLC Endorsement #7883

@carlaKC

Description

@carlaKC

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    channel jammingIssues related to channel jamming mitigation

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions