New lncli Implementation in LND v0.18.3

With the release of LND v0.18.3, the lncli has been enhanced to support the creation of invoices that utilize blinded paths. This addition provides users with greater control over their transaction privacy, allowing for more anonymous receipts

Benefits of Using Blinded Paths

  • Enhanced Privacy: By obscuring the actual route, users can prevent intermediaries from mapping out the transaction path, safeguarding their financial privacy
  • Resistance to Traffic Analysis: Makes it significantly harder for malicious actors to perform traffic analysis or deanonymization attacks
  • Improved Security: Adds an additional layer of security by limiting the exposure of network topology information

Creating an Invoice with Blinded Paths lncli command

  1. Command Structure
lncli addinvoice --amt <amount_in_satoshis> --blind --min_real_blinded_hops <min_hops> --max_blinded_paths <max_paths> --blinded_path_omit_node <node_pubkey>
  1. Example
  • Enable blinded paths
  • Minimum of 1 real hop in the blinded path
  • Use 5 hops for each blinded path, padding with dummy hops if necessary
  • Maximum of 3 blinded paths
  • Omit a specific node from being used in the blinded paths

Command:

lncli addinvoice --amt 1000 --blind --min_real_blinded_hops 1 --num_blinded_hops 5 --max_blinded_paths 3 --blinded_path_omit_node 02c4ae20674d7627021639986d75988b5f17c8693ed43b794beeef2384d04e5bf1

Explanation of Parameters

  • --amt: Specifies the amount in satoshis for the invoice
  • --blind: Enables the creation of blinded paths for the invoice
  • --min_real_blinded_hops: Sets the minimum number of real (non-dummy) hops in each blinded path. This ensures that even with obfuscation, there are genuine hops in the route
  • --num_blinded_hops: Determines the number of hops to use for each blinded path included in the invoice. If the actual route has fewer hops, dummy hops will be added to pad the path to the specified number. This standardizes the length of routes, making traffic analysis more difficult
  • --max_blinded_paths: Specifies the maximum number of blinded paths to include in the invoice. More paths can increase privacy by providing multiple potential routes, but may also increase the size of the invoice
  • --blinded_path_omit_node: Excludes a specific node from being used in the blinded paths. This provides more control over the routing process and can help avoid problematic nodes. The flag can be specified multiple times to omit multiple nodes
See docs for more detailed information
See more about blinded paths
63 sats \ 3 replies \ @k00b 18h
It's going to be fun watching LND catch up on this stuff and see it get more widely used.
reply
121 sats \ 2 replies \ @Bee_Aye 15h
is this a stepping stone to bolt12, or kindof a different approach altogether to receiver privacy?
reply
61 sats \ 1 reply \ @k00b 15h
Stepping stone but also useful and independent of bolt12!
reply
very cool 🤙
reply