lnd/routing
Elle Mouton 8df03de3e9
routing: swap out final hop blinded route pub keys
If multiple blinded paths are provided, they will each have a different
pub key for the destination node. This makes using our existing
pathfinding logic tricky since it depends on having a single destination
node (characterised by a single pub key). We want to re-use this logic.
So what we do is swap out the pub keys of the destinaion hop with a
pseudo target pub key. This will then be used during pathfinding. Later
on once a path is found, we will swap the real destination keys back in
so that onion creation can be done.
2024-07-31 09:14:31 +02:00
..
blindedpath blindedpath: smarter dummy hop policy selection 2024-07-26 13:03:07 +02:00
chainview multi: make sure missionControlStore catches done signal 2024-07-23 21:30:08 +08:00
localchans multi: Inbound fees are retained when not provided 2024-05-22 20:48:42 +02:00
route routing: assume TLV onion during path finding 2024-06-24 10:01:21 -07:00
shards
testdata
additional_edge_test.go routing+refactor: let BlindedEdge carry BlindedPayment 2024-07-10 09:12:39 +02:00
additional_edge.go routing: add BlindedPayment() method to AdditionalEdges 2024-07-10 09:12:39 +02:00
bandwidth_test.go multi: use btcd's btcec/v2 and btcutil modules 2022-03-09 19:02:37 +01:00
bandwidth.go routing: rename and export routingGraph 2024-07-15 13:10:24 +02:00
blinding_test.go routing: swap out final hop blinded route pub keys 2024-07-31 09:14:31 +02:00
blinding.go routing: swap out final hop blinded route pub keys 2024-07-31 09:14:31 +02:00
control_tower_test.go routing: make sure StatusInitiated is notified when creating payments 2023-11-15 20:18:21 +08:00
control_tower.go routing: make sure StatusInitiated is notified when creating payments 2023-11-15 20:18:21 +08:00
graph.go multi: add abstraction for Router and SessionSource graph access 2024-07-15 15:13:57 +02:00
heap_test.go
heap.go routing: add inbound fee support to pathfinding 2024-03-31 18:12:28 +02:00
integrated_routing_context_test.go multi: add abstraction for Router and SessionSource graph access 2024-07-15 15:13:57 +02:00
integrated_routing_test.go multi: make tlv onion compulsory 2024-01-11 09:43:31 -08:00
log.go multi: add NewLogClosure in lnutils to avoid repetition 2024-07-25 21:25:23 +08:00
missioncontrol_state_test.go
missioncontrol_state.go
missioncontrol_store_test.go missioncontrolstore: add additional tests and benchmarks 2024-06-19 07:33:14 -03:00
missioncontrol_store.go multi: make sure missionControlStore catches done signal 2024-07-23 21:30:08 +08:00
missioncontrol_test.go routing+lnrpc: make capacity factor configurable 2023-02-24 15:28:55 +01:00
missioncontrol.go multi: fee estimation timeout parameters 2024-03-05 09:24:27 +01:00
mock_graph_test.go routing+refactor: remove the need to give CachedGraph source node access 2024-07-15 13:10:24 +02:00
mock_test.go routing: update mockers in unit test 2023-11-13 16:09:12 +08:00
nodepair.go
pathfind_test.go routing: swap out final hop blinded route pub keys 2024-07-31 09:14:31 +02:00
pathfind.go routing: swap out final hop blinded route pub keys 2024-07-31 09:14:31 +02:00
payment_lifecycle_test.go routing+routerrpc: cancelable context in SendPaymentV2 2024-06-17 09:32:26 +02:00
payment_lifecycle.go refactor: move various duties from ChannelRouter to graph.Builder 2024-07-15 15:56:33 +02:00
payment_session_source.go multi: add abstraction for Router and SessionSource graph access 2024-07-15 15:13:57 +02:00
payment_session_test.go multi: add abstraction for Router and SessionSource graph access 2024-07-15 15:13:57 +02:00
payment_session.go routing: pass BlindedPaymentPathSet around everywhere 2024-07-31 09:14:28 +02:00
probability_apriori_test.go trivial: Fix spelling errors 2023-09-21 22:35:33 -04:00
probability_apriori.go trivial: Fix spelling errors 2023-09-21 22:35:33 -04:00
probability_bimodal_test.go routing: stronger use of direct bimodal probability 2023-03-23 11:12:10 +01:00
probability_bimodal.go routing: stronger use of direct bimodal probability 2023-03-23 11:12:10 +01:00
probability_estimator_test.go routing: add probability benchmarks 2023-02-14 13:34:25 +01:00
probability_estimator.go routing: add probability estimator interface 2023-02-10 09:58:40 +01:00
README.md scripted-diff: replace ⛰ emoji with $ [skip ci] 2022-10-28 12:06:49 -04:00
result_interpretation_test.go routing: add handling for blinded errors from final node 2023-12-18 12:07:56 -05:00
result_interpretation.go routing: add handling for blinded errors from final node 2023-12-18 12:07:56 -05:00
router_test.go routing: swap out final hop blinded route pub keys 2024-07-31 09:14:31 +02:00
router.go routing: swap out final hop blinded route pub keys 2024-07-31 09:14:31 +02:00
setup_test.go
unified_edges_test.go routing: add BlindedPayment to unifiedEdge 2024-07-10 09:12:39 +02:00
unified_edges.go routing: rename and export routingGraph 2024-07-15 13:10:24 +02:00

routing

Build Status MIT licensed GoDoc

The routing package implements authentication+validation of channel announcements, pruning of the channel graph, path finding within the network, sending outgoing payments into the network and synchronizing new peers to our channel graph state.

Installation and Updating

$  go get -u github.com/lightningnetwork/lnd/routing