[Lightning-dev] Base AMP

Rusty Russell rusty at rustcorp.com.au
Wed Nov 21 22:50:17 UTC 2018

ZmnSCPxj <ZmnSCPxj at protonmail.com> writes:
> Good morning Rusty,
>> And do not play with `amount_to_forward`, as it's an important
>> signal to the final node that the previous node did not offer less value
>> for the HTLC than it was supposed to. (You could steal the top bit to
>> signal partial payment if you really want to).
>   If `incomplete_payment` flag is set, then final nodes must claim HTLCs only if:
>     sum(incoming_htlc_amt) >= amt_to_pay

No, because now you've lost assurance that this *particular* HTLC hasn't
been skimmed by the previous node.

ie. if I suspect a payment is using Base-AMP (and that's pretty clear if
I see two identical payment_hashes), I can reduce the amount I offer in
the outgoing HTLC to 1 satoshi: if it doesn't fail immediately, the next
hop is the final destination.

>   Where `sum(incoming_htlc_amt)` is the total `incoming_htlc_amt` for all incoming HTLCs terminating at this final node with the same `payment_hash`.

But it's unnecessary for the recipient to know the total amount I meant
to pay; they just need to return the receipt once it exceeds the amount
they want.


More information about the Lightning-dev mailing list