lnproxy allows you to hide your node pubkey from anyone sending you lightning payments. Think of it like a VPN for an invoice. With lnproxy, users can instead generate and give out wrapped invoices to obfuscate the identity of their lightning network nodes. It changes the privacy game!

Chair of the Board of Governors of the Federal Reserve Jerome Powell letting the world know US central bank digital currency would not be anonymous.
CBDCs threaten the very foundations of American life. Central banks across the world are exploring the possibility of developing their own digital currencies, known as CBDCs. - Bitcoin Policy Institue

The world is becoming moar centralized frens, and Jerome wants to spy on every transaction you do with a US central bank digital currency. The darkness is here, and lightning has become the hope we all need right now. This is why more and more privacy-focused projects are being built right now.

Developers to the rescue!

lnproxy allows you to hide your node pubkey from anyone sending you lightning payments. Think of it like a VPN for an invoice.

Introducing lnproxy?

lnproxy also works on tor

lnproxy takes a bolt 11 invoice and generates a “wrapped” invoice that can be settled if and only if the original invoice is settled. The “wrapped” invoice has the same payment hash, expiry, and description, as the invoice it wraps but adds a small routing fee to the amount. The “wrapped” invoice can be used anywhere the original invoice would be used to trustlessly obfuscate the destination of a payment.

Why?

Lightning network privacy will improve. In the meantime, users of custodial lightning wallets, like Wallet of Satoshi or the Bitcoin Beach Wallet, reveal the destination of every lightning payment they make to their custodian. With lnproxy, these users can instead generate and pay wrapped invoices to obfuscate the destination of the payment from their custodian.

lnproxy invoice flow from Wallet of Satoshi to Zeus

How does lnproxy work?

lnproxy wrapped invoices are hodl invoices. When an lnproxy node accepts an htlc for the wrapped invoice, it immediately pays the original invoice and uses the revealed preimage to settle the wrapped invoice. This ensures that you don't need to trust lnproxy with your payments.

For additional privacy, using a vpn or the lnproxy node's tor hidden service prevents the lnproxy node from discovering your IP address. Onion routing on the lightning network protects the privacy for the source of payments to wrapped invoices.

API is available now

This little binary uses the lnd REST API to handle lightning things so running it requires lnd.

To build, just set the parameters in lnproxy.go and run go build lnproxy.go, or something like that.

The compelling use case for lnproxy is users should realize lnproxy is not trustless, the proxy operator knows the destination of the payment and you have to trust him not to reveal that info, but privacy-wise it's trusting you, much like a VPN provider. There is a whole discussion on Stacker.News around this. If you hooked up several lnproxy together, you would, in theory, create an onion network for routing lightning payments.

GitHub - lnproxy/lnproxy: https://lnproxy.org
https://lnproxy.org. Contribute to lnproxy/lnproxy development by creating an account on GitHub.

lnproxy is brought to you by an anonymous user. If you would like to contribute to the project be sure to peep the git. Find out more at https://lnproxy.org/