LND now can make spontaneous payments [keysend] in a multi path route.

This means that now streaming large value payments will be much more stable and successful!

github.com/lightningnetwork/ln

@adam @maxhillebrand I get confused on AMP/keysend. They are different, right?

@dave @adam yes, different things.

AMP: Atomic Multipath Payments. The sender creates MULTIPLE routes through different payment channels to the receiver. This is atomic, in the sense that either ALL routes succeed, or NONE.

Keysend: The sender does not need to ask the receiver for an invoice [hash of a pre-image], but the sender encrypts a secret to the receivers public key, and uses this cyphertext to build the HTLC route. The receiver can then decrypt the cyphertext to reveal the preimage.

@maxhillebrand @adam AMP replaces keysend eventually, correct? At least, that's the thinking? If I understand correctly it's the whole thing with the preimage that makes keysend not desirable long term.

@dave @adam No.

AMP just means that you can split up a single payment across multiple routes.

Keysend is an entirely different concept, but it does work ontop of AMP payments too.

@dave @adam I don't know of any serious long term concerns with keysend to be honest...

maybe I'm missing something though, but i think it's solid.

@maxhillebrand @adam Thanks.
For some reason I just get really confused about AMP, Static Invoices and Keysend and where each lives in the stack.

@dave @adam Not sure what you mean with static invoices, lol 😃

Regular lightning requires the receiver to generate a secret, hash it, put it in the lightning invoice, and give that to the sender to construct the route.

Keysend is as described above that the sender creates the secret and encrypts it to the receivers public key. Thus the "invoice" is a static public key.

LNURL encodes a static domain that links to the node, the sender then talks to the receivers server to get the invoice.

@maxhillebrand @adam I'm basing my limited understanding of these on this discussion:

github.com/lightningnetwork/ln

"Keysend is being deprecated in favor of AMP. Keysend was meant to be just a hold over until AMP was rolled out..."

@maxhillebrand @adam Roy at Breez had explained to me a few weeks ago that what he called "static invoices" would be a way to replace it as well with an open ended invoice generated by the receiver, thus placing the preimage back in the hands of the receiver instead of with the sender as it is with keysend.

That was my understanding from Roy's comments, but maybe I misunderstood him.

@maxhillebrand @adam I admit my ignorance as to why the preimage being on one side vs. the other is a problem.

@dave @adam

If the receiver generates the pre-image, then the sender only gets it if the payment went through successfully.

This is somewhat of a "proof of payment".

Right now, the same pre-image is used for every hop in the route, so even routing nodes can provide this "proof" [thus it's not really a proof after all...]

However, with Taproot / Schnorr / Adaptor Signatures, each node has a different "pre-image", thus only the sender will get the "ultimate pre-image", so then it's a proof.

@dave @adam I don't quite understand what roasbeef is implying here...

Maybe more advanced multi path payments protocols [there are several] do include the spontaneous payment flow as well.

Tough to keep up to date with all the progress...

@maxhillebrand @dave @adam Keeping up with this stuff feels like a full time job, I'm so thankful there's a whole company paying people to figure it out.

@agates @maxhillebrand @adam Yeah, I'm on the lightning dev mailing list and it's hard to decipher what they're saying much of the time. SO many proposals.

@agates @dave @adam Yeah, seriously, welcome to the rabbit hole 😄

Say goodbye to all other hobbies and healthy sleep cycles.

@dave @adam Again I'm not sure what's the cutting edge of spontaneous payments...

Cannot find anything other than the above described flow in the optech archive...

bitcoinops.org/en/topics/spont

@dave @maxhillebrand No. This adds MPP. Static invoices is quite some way Offa's per Ryan Gentry, and he promised a heads up well in advance.

Sign in to participate in the conversation
PodcastIndex Social

Intended for all stake holders of podcasting who are interested in improving the eco system