[Lightning-dev] Outsourcing route computation with trampoline payments
pm+lists at acinq.fr
Thu Mar 28 22:24:46 UTC 2019
I think we can use the upcoming "Multi-frame sphinx onion format" 
to trustlessly outsource the computation of payment routes.
A sends a payment to an intermediate node N, and in the onion payload,
A provides the actual destination D of the payment and the amount. N
then has to find a route to D and make a payment himself. Of course D
may be yet another intermediate node, and so on. The fact that we can
make several "trampoline hops" preserves the privacy characteristics
that we already have.
Intermediate nodes have an incentive to cooperate because they are
part of the route and will earn fees. As a nice side effect, it also
creates an incentive for "routing nodes" to participate in the gossip,
which they are lacking currently.
This could significantly lessen the load on (lite) sending nodes both
on the memory/bandwidth side (they would only need to know a smallish
neighborhood) and on the cpu side (intermediate nodes would run the
actual route computation).
As Christian pointed out, one downside is that fee computation would
have to be pessimistic (he also came up with the name trampoline!).
More information about the Lightning-dev