Skip to content

Latest commit

 

History

History
80 lines (66 loc) · 2.62 KB

private-trusted-zero-conf-channels.md

File metadata and controls

80 lines (66 loc) · 2.62 KB

How to Create Private-Trusted Zero-Conf Channels between Routing Node and Blixt Wallet

Overview

Node
     \
       \______________                                            ______________
Node __ |            |............................................|            |
        |   Routing  |       private-trusted, 0conf channel       |   Blixt    |
Node __ |    Node    |............................................|   Wallet   |
       /|____________|                                            |____________|
     /
Node

Requirements:


Pros & Cons

Pros Cons
More secure: no remote access to routing node required Experimental: Accounting of the node may get in trouble (fake overall balance)
No onchain costs: channel stays offchain, no opening, no (force) closing costs due to completely internal channel management Channel Management: Refilling of depleted Blixt side has to be done manually and directly on the node by paying an invoice. Careful upfront planning of necessary liquidity has to be done
Non-custodial way of paying with Lightning

Setup

Routing Node requires some necessary options set in lnd.conf:

[protocol]
protocol.option-scid-alias=true
protocol.zero-conf=true

In Blixt Wallet, allow your Routing Node to open zero-conf channels:

Settings -> Set zero conf peers
Enter routing node's pubkey (lookup on mempool.space)

Connect Blixt Wallet to Routing Node:

Settings -> Show Lightning Peers
Lookup routing node's connection string via mempool.space, enter and connect.

Reminder: bos locks utxos for about 10 mins! If you don't have enough funds on the node, use external funding.

While connected, open (e.g. 10M) private-trusted zero-conf channel (note: set-fee-rate has to be set although tx is never broadcasted, also 9M will be moved to Blixt side on channel opening with option --give):

$ bos open [pubkey] \
        --type private-trusted \
        --avoid-broadcast \
        --set-fee-rate 1 \
        --amount 10000000 \
        --give 9000000
        [--external-funding]

On depletion of Blixt side, :

In Blixt, create an invoice: lnbc1....
Transfer to and pay the invoice from the routing node.

Close private-trusted zero-conf channel:

# Routing Node:
$ lncli abandonchannel ....

# Blixt Wallet:
TBD