Skip to content

Implement BOLT fulfillment payloads for successful HTLC attribution #4759

Description

@joostjager

lightning/bolts#1344 adds an optional fulfillment_payload TLV to update_fulfill_htlc, gated by option_attribution_data.

This lets the final recipient return encrypted success-side data to the original payment sender, analogous to how update_fail_htlc.reason returns encrypted failure data. One motivating use case is proof of payment for spontaneous/keysend payments, where the sender chose the preimage and the preimage alone does not prove recipient acknowledgement.

rust-lightning should support originating, relaying, and sender-side decoding of this payload while preserving the successful-payment attribution data semantics defined in the BOLT PR, including padded fulfillment_payload_tlvs, intermediate-hop ammag obfuscation, and the final-vs-intermediate attribution HMAC rules.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions