boltz-backend
boltz-backend copied to clipboard
Covenants: Trustless & Offline LNURL payments
Background
Inspired by the Breez idea of signing payments within mobile notification device compute time and Aqua's desire to enable "Receive to [email protected]" Lightning Addresses, we are exploring the idea to implement Liquid Reverse Swaps to LNURL/LN addresses trustlessly - using covenants.
Goal
- trustless LNURL/Lightning Addresses
- receiver can receive payments offline
How it works
Boltz adds a script path that allows coins to be claimed to the wallet address of the user (and only to this address) by just providing the preimage. No signature required. This way we can have a 3rd party with access to swap preimages broadcast claim transactions without the possibility to steal because it can only go to the user's address. The user will see received funds next time coming online.
Useful OPCODEs:
OP_INSPECTINPUTVALUE
OP_INSPECTOUTPUTVALUE
OP_INSPECTOUTPUTSCRIPTPUBKEY
TBD
- Blinding as we are using CT on Liquid only
More
A mobile wallet might even use a primitive like Android's doze windows to claim instead of relying on a third party if there is a chance the 3rd party could collude with Boltz and leak preimages.