LN as a Directed Graph
Single-Funded Channel Topology
Thaddeus Dryja <rx@awsomnet.org>
DG717
2016-04-11
LN recap
LN recap
How to build the network
A’s UTXO
B’s UTXO
Channel outpoint
(A&B)
2-in 1-out fund TX
Dual-funded channels
A’s UTXO
B’s UTXO
Channel outpoint
2-in 1-out fund TX
Single-funded channels
A’s UTXO
Channel outpoint
(A&B)
1-in 1-out fund TX
B
Channel exhaustion
Channel exhaustion exception
Simplest possible UI
Directed -> Undirected
sender
receiver
TX efficiency
TX efficiency
The real problem
Downward scalability
Bitcoin does not support micro-payments.
(unless the price of 1 bitcoin falls below $100)
Sub-satoshi
(Rafael Pass and abhi shelat 2015)
Probabilistic payment
Probabilistic payment
(pre-image bytes are from /dev/urandom or can be from some hash tree or whatever)
Probabilistic payment
(0.000000005 BTC) (5 nanoBTC)
Probabilistic payment
Script 1 / Tx 1
SigCarol && 10 blocks ||
SigDave && Y1 ||
SigDave && len(X) == 20
Script 2 / Tx 2
SigCarol && 10 blocks ||
SigDave && Y2 ||
SigDave && len(X) == 21
Carol’s choices
1: Nothing
2: Sign & broadcast both
3/4: Sign & broadcast a chosen TX
Script 1 / Tx 1
SigCarol && 10 blocks ||
SigDave && Y1 ||
SigDave && len(X) == 20
Script 2 / Tx 2
SigCarol && 10 blocks ||
SigDave && Y2 ||
SigDave && len(X)==21
5/6: Sign & send sig and other Y preimage
Script 1 / Tx 1
SigCarol && 10 blocks ||
SigDave && Y1 ||
SigDave && len(X) == 20
Script 2 / Tx 2
SigCarol && 10 blocks ||
SigDave && Y2 ||
SigDave && len(X)==21
Probabilistic payment: iterate
TX1(script1:49, script2:51) TX2(script2:49, script1:51)
Probabilistic payment: timing
Probabilistic payment: probabilities
Probabilistic payment: probabilities
Summary
Questions
Thanks to: DG717 for hosting, Denise & Michael for setting this up, sponsors for pizza, and everyone for coming!