Skip to content

Instantly share code, notes, and snippets.

@ariard
Last active July 4, 2022 00:50
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ariard/a9b3d21813aeb522f70ea339bc5541b0 to your computer and use it in GitHub Desktop.
Save ariard/a9b3d21813aeb522f70ea339bc5541b0 to your computer and use it in GitHub Desktop.

LDK Review Club 2nd Session

Jul 5, 2022, 6 PM UTC, #review-club on Discord

lightningdevkit/rust-lightning#1503

Host: ariard PR author: ValentineWallace

The PR branch HEAD was cd06d2d at the time of this review club meeting.

Notes

  • In current Lightning, the invoice protocol for payment request is communicated out-of-band.
  • An upgrade of the payment protocol called offers has been proposed to enable new features : static invoices, refunds and proof of payer.
  • Offers leverages few components such as Schnorr sigs and the onion format used to route HTLC.
  • #1503 introduces a new module OnionMessenger to receive and send onion messages, with an API matching the already existent ChannelManager. The API design discussions already happened with #1432.

Questions

  1. How the current onion format for HTLC payment works ? What the hop_payloads represent ?
  2. How the construction of the new onion format OnionPacket differs ? What's the relationship with BlindedRoute, "control" TLVs and "data" TLVs ?
  3. The blinded route mechanism claims to hide the identity of the recipient. How it achieves ? Are they privacy leaks or deanonymization attacks ?
  4. What offers offer as features and new payments flows ? How does it compare to LN-url ?
  5. What could be efficient rate-limitations for onion messages ?
  6. What could be future use-case of CustomHandler and CustomMessage<T> ?
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment