Trampoline payments
Trampoline payments are a proposed type of payment where the spender routes the payment to an intermediate node who can select the rest of the path to the final receiver.
Using a single trampoline node necessarily reveals the destination to it. To regain privacy, a spender may require a payment be routed through multiple trampoline nodes so that none of them knows whether they’re routing the payment to the final receiver or just another intermediate trampoline node.
Although allowing trampoline nodes to select part of the path likely requires paying more routing fees, it means the spender doesn’t need to know how to route payments to any arbitrary node—it’s sufficient for the spender to know how to route a payment to any trampoline-compatible node. This is advantageous for lightweight LN clients that aren’t able to track the full network graph because they’re often offline or run on underpowered mobile hardware.
Primary code and documentation
Optech newsletter and website mentions
2024
- LDK #3446 adds support for including a trampoline payment flag in a BOLT12 invoice
- LDK #2756 adds support for including a trampoline routing packet in its messages
- Eclair #2811 allows trampoline payments to use a blinded path for the ultimate receiver
- Eclair #2810 allows trampoline routing infomation to use more than 400 bytes
2022
- Eclair #2435 adds support for basic async payments for trampoline relay
- Discussion about combining trampoline routing with first-hop payment holds
2021
- Summary of LN developer conference, including discussion of trampoline payments
- Electrum 4.1.0 adds support for trampoline payments
2019
- 2019 year-in-review: trampoline payments
- Eclair #1209 adds experimental support for trampoline onion format
- BOLT PR and discussion about trampoline payments
- Trampoline payments for LN
See also
Previous Topic:
Timeout trees
Next Topic:
Transaction bloom filtering