SlideShare ist ein Scribd-Unternehmen logo
1 von 74
Technology of
Lightning Network
Takaya Imai
Jun/27/2017
the Cluster Disruptive Technologies Hub@Tel Aviv, Israel
United Bitcoiners Inc. Co-Founder and CTO
Frontier Partners LLC. Founder and CEO
Self Introduction
• United Bitcoiners Inc. Co-Founder & CTO
• Frontier Partners LLC Founder & CEO
• Chief Translator of Mastering Bitcoin for Japanese
• Open Edition
• https://www.bitcoinbook.info
• Second Edition is released on 29 June
Self Introduction
• Background
• Ph. D. of Elementary Particle Physics
• kakaku.com
• Web service of price comparison in Japan
• Search Engine Development, Search Engine Server Control,
Big Data Processing & Analysis, Machine Learning, Image
Recognition
• Data Tower Inc. CEO
Scaling Problems of
Bitcoin
• Transactions in one block is full
• 1MB per block
• Increase of Bitcoin blockchain data size
• High TX fee
• ex. 360 satoshi / byte
• ~ 7 TX per second
• 10 min block time
• 1 Mbytes / 256 bytes / 10 min / 60 second = 6.8 TX per second
• This block time is necessary for stable Bitcoin blockchain and is enough for usual bitcoin payment.
• But it is very slow comparing with credit card or NFC.
• …
2000 TX / 10 min / 60 second = 3.3 TX per second
360sat*256bytes*2,500usd/100,000,000sat = 2.304usd per TX
Scaling Problems of
Bitcoin
• Lightning Network is one of solutions for scaling.
• Scaling solutions have two types.
Scaling
on-chain or off-chain
• on-chain
• Side chain
• Changing block size
• Segregated Witness
• …
• off-chain
• Lightning Network
• …
Lightning Network is being
improved more and more now
• Basic ideas are based on a white paper of Joseph Poon and Thaddeus
Dryja.
• First release: Fed/28/2015
• https://lightning.network/lightning-network-paper.pdf
• BOLT(Base of Lightning Technology) is a RFC of Lightning Network and this
is being updated frequently.
• https://github.com/lightningnetwork/lightning-rfc
• I talk about basic ideas of Lightning Network today.
Lightning Network
Projects
Company/
Organization
Lightning Labs MIT DCI Blockstream ACINQ bcoin-org
Product Name lnd lit lightningd eclair plasma
Commitors
Thaddeus Dryja,
Joseph Poon,
Olaoluwa Osuntokun
Thaddeus Dryja
Rusty Russel,
Christian Decker
Pierre-Marie Padiou,
Fabrice Drouin,
dpad85
Christopher Jeffrey
Language Go Go C Scala Node js
first commit
(JST)
2015/10/25 2016/11/6 2015/5/24 2015/8/16 2016/8/29
lastest commit
(JST)
2017/6/27 2017/6/23 2017/6/27 2017/6/10 2016/11/23
github
https://github.com/light
ningnetwork/lnd
https://github.com/mi
t-dci/lit
https://github.com/El
ementsProject/lightn
ing
https://github.com/A
CINQ/eclair
https://github.com/bc
oin-org/plasma
Basic ideas of
Lighting Network
• Micro Payment Channel(bi-directional)
• Multi-hop for channels
• HTLC(Hashed Time Lock Contract)
Micro Payment Channel
(Uni-directional)
Micro Payment Channel
“Open”
Alice Bob
Channel Open Request
Blockchain
TX
input
Alice
1BTC
output
Alice & Bob
but
Alice after t1
1BTC
Broadcast
Micro Payment Channel
“First Payment”
Alice BobBlockchain
TX
input
Alice
1BTC
output
Alice & Bob
but
Alice after t1
1BTC
TX
input
Alice & Bob
1BTC
output
Alice
0.9BTC
output
Bob
0.1BTC
Send
no signature
Broadcast
Micro Payment Channel
“First Payment”
Alice BobBlockchain
TX
input
Alice
1BTC
output
Alice & Bob
but
Alice after t1
1BTC
TX
input
Alice & Bob
1BTC
output
Alice
0.9BTC
output
Bob
0.1BTC
Add signature
Send
Micro Payment Channel
“Second Payment”
Alice BobBlockchain
TX
input
Alice
1BTC
output
Alice & Bob
but
Alice after t1
1BTC
TX
input
Alice & Bob
1BTC
output
Alice
0.8BTC
output
Bob
0.2BTC
Send
Micro Payment Channel
“Second Payment”
Alice BobBlockchain
TX
input
Alice
1BTC
output
Alice & Bob
but
Alice after t1
1BTC
TX
input
Alice & Bob
1BTC
output
Alice
0.8BTC
output
Bob
0.2BTC
Send
Micro Payment Channel
“Second Payment & Close”
Alice BobBlockchain
TX
input
Alice
1BTC
output
Alice & Bob
but
Alice after t1
1BTC
TX
input
Alice & Bob
1BTC
output
Alice
0.8BTC
output
Bob
0.2BTC
Broadcast
Send
Micro Payment Channel
“Uncooperative Close”
Alice BobBlockchain
TX
input
Alice
1BTC
output
Alice & Bob
but
Alice after t1
TX
input
Alice & Bob
1BTC
output
Alice
0.8BTC
output
Bob
0.2BTC
TX
input
Alice
1BTC
output
Alice
1BTC
Bob disappears
Broadcast
Send
Micro Payment Channel
(Bi-directional)
Bi-directional channel
• It is okay to use uni-directional channel.
• But bi-directional channel is better and more
efficient.
Bi-directional channel
• Channel needs two tx fees.
• opening tx fee
• closing tx fee
• It is no need to open a channel in case of one time
payment.
• It is better to use one channel longer and have many
updates on the channel.
Bi-directional channel
• Bi-directional channel is okay to use the same way
as uni-directional one?
• Bi-directional channel needs status updates.
• How do revoked statuses create? -> HTCL(Hashed
Time Lock Contract)
Bi-directional channel
• Recent implementations does not use strict HTLC
but pubkey.
• I use HTLC for simplicity today.
Bi-directional Channel
(Open a channel)
Open a channel
Alice BobBlockchain
TX Funding
input
Alice
0.5BTC
output
Alice & Bob
1BTCinput
Bob
0.5BTC
signed not signed
Send
Open a channel
Alice BobBlockchain
TX Funding
input
Alice
0.5BTC
output
Alice & Bob
1BTCinput
Bob
0.5BTC
signed signed
Send back
Open a channel
Alice BobBlockchain
TX Funding
output
Alice & Bob
1BTC
input
input
TX Funding
output
Alice & Bob
1BTC
input
input
Alice Revoke Secret1
Alice Revoke Hash1
Bob Revoke Secret1
Bob Revoke Hash1
Open a channel
Alice BobBlockchain
TX Funding
output
Alice & Bob
1BTC
input
input
TX Funding
output
Alice & Bob
1BTC
input
input
Alice Revoke Secret1 Bob Revoke Secret1
Bob Revoke Hash1
Alice Revoke Hash1
Open a channel
Alice BobBlockchain
TX Funding
output
Alice & Bob
1BTC
input
input
TX Funding
output
Alice & Bob
1BTC
input
input
Alice Revoke Secret1 Bob Revoke Secret1Bob Revoke Hash1 Alice Revoke Hash1
Open a channel
Alice BobBlockchain
TX Funding
output
Alice & Bob
1BTC
Send
input
input
TX Funding
output
Alice & Bob
1BTC
input
input
TX
Bob commitment1
output
Bob after n blocks
or
Bob Revoke Hash1 & Alice
0.5BTC
input
Alice & Bob
1BTC
output
Alice
0.5BTC
signed
Alice Revoke Secret1 Bob Revoke Secret1 Alice Revoke Hash1
not signed
Open a channel
Alice BobBlockchain
TX
Bob commitment1
(Bob c1)
output
Bob after n blocks
or
Bob Revoke Hash1 & Alice
0.5BTC
input
Alice & Bob
1BTC
output
Alice
0.5BTC
TX Funding
output
Alice & Bob
1BTC
input
input
TX Funding
output
Alice & Bob
1BTC
input
input
Alice Revoke Secret1 Bob Revoke Secret1 Alice Revoke Hash1
Open a channel
Alice BobBlockchain
TX
Bob c1
input
output
TX Funding
output
Alice & Bob
1BTC
input
input
TX Funding
output
Alice & Bob
1BTC
input
input
output
TX
Alice c1
output
Alice after n blocks
or
Alice Revoke Hash1 & Bob
0.5BTC
input
Alice & Bob
1BTC
output
Bob
0.5BTC
Send
signed
Alice Revoke Secret1 Bob Revoke Secret1
not signed
Open a channel
Alice BobBlockchain
TX Funding
output
Alice & Bob
1BTC
input
input
TX Funding
output
Alice & Bob
1BTC
input
input
TX
Alice c1
output
Alice after n blocks
or
Alice Revoke Hash1 & Bob
0.5BTC
input
Alice & Bob
1BTC
output
Bob
0.5BTC
TX
Bob c1
output
Bob after n blocks
or
Bob Revoke Hash1 & Alice
0.5BTC
input
Alice & Bob
1BTC
output
Alice
0.5BTC
Alice Revoke Secret1 Bob Revoke Secret1
Open a channel
Alice BobBlockchain
TX Funding
output
Alice & Bob
1BTC
input
input
TX Funding
output
Alice & Bob
1BTC
input
input
TX
Bob c1
output
Bob after n blocks
or
Bob Revoke Hash1 & Alice
0.5BTC
input
Alice & Bob
1BTC
output
Alice
0.5BTC
Broadcast
TX
Alice c1
output
Alice after n blocks
or
Alice Revoke Hash1 & Bob
0.5BTC
input
Alice & Bob
1BTC
output
Bob
0.5BTC
Alice Revoke Secret1 Bob Revoke Secret1
Open a channel
Alice BobBlockchain
TX Funding
output
Alice & Bob
1BTC
input
input
TX
Bob c1
input
Alice & Bob
1BTC
output
Alice
0.5BTC
TX
Alice c1
input
Alice & Bob
1BTC
output
Bob
0.5BTC
finished opening channel
Alice Revoke Secret1 Bob Revoke Secret1
output
Alice after n blocks
or
Alice Revoke Hash1 & Bob
0.5BTC
output
Bob after n blocks
or
Bob Revoke Hash1 & Alice
0.5BTC
Bi-directional Channel
(Update a channel)
Update a channel
Alice BobBlockchain
TX Funding
output
Alice & Bob
1BTC
input
input
TX
Alice c1
input
Alice & Bob
1BTC
TX
Bob c1
input
Alice & Bob
1BTC
Alice Revoke Secret1 Bob Revoke Secret1Alice Revoke Secret2
Alice Revoke Hash2
Bob Revoke Secret2
Bob Revoke Hash2
output
Alice after n blocks
or
Alice Revoke Hash1 & Bob
0.5BTC
output
Bob after n blocks
or
Bob Revoke Hash1 & Alice
0.5BTC
output
Bob
0.5BTC
output
Alice
0.5BTC
Update a channel
Alice BobBlockchain
Alice Revoke Secret1 Bob Revoke Secret1Alice Revoke Secret2 Bob Revoke Secret2
TX Funding
output
Alice & Bob
1BTC
input
input
TX
Alice c1
output
Alice after n blocks
or
Alice Revoke Hash1 & Bob
0.5BTC
input
Alice & Bob
1BTC
TX
Bob c1
output
Bob after n blocks
or
Bob Revoke Hash1 & Alice
0.5BTC
input
Alice & Bob
1BTC
TX
Alice c2
output
Alice after n blocks
or
Alice Revoke Hash2 & Bob
0.4BTC
input
Alice & Bob
1BTC
TX
Bob c2
output
Bob after n blocks
or
Bob Revoke Hash2 & Alice
0.6BTC
input
Alice & Bob
1BTC
output
Alice
0.4BTC
output
Bob
0.6BTC
output
Bob
0.5BTC
output
Alice
0.5BTC
Update a channel
Alice BobBlockchain
TX Funding
output
Alice & Bob
1BTC
input
input
TX
Bob c2
input
Alice & Bob
1BTC
output
Alice
0.4BTC
TX
Alice c2
input
Alice & Bob
1BTC
output
Bob
0.6BTC
TX
Alice c1
input
Alice & Bob
1BTC
output
Bob
0.5BTC
TX
Bob c1
input
Alice & Bob
1BTC
output
Alice
0.5BTC
Alice Revoke Secret1
Bob Revoke Secret1
Alice Revoke Secret2 Bob Revoke Secret2
output
Alice after n blocks
or
Alice Revoke Hash1 & Bob
0.5BTC
output
Bob after n blocks
or
Bob Revoke Hash1 & Alice
0.5BTC
output
Alice after n blocks
or
Alice Revoke Hash2 & Bob
0.4BTC
output
Bob after n blocks
or
Bob Revoke Hash2 & Alice
0.6BTC
Update a channel
Alice BobBlockchain
TX Funding
output
Alice & Bob
1BTC
input
input
TX
Bob c2
TX
Alice c2
TX
Alice c1
TX
Bob c1
Alice Revoke Secret1Bob Revoke Secret1 Alice Revoke Secret2 Bob Revoke Secret2
input
Alice & Bob
1BTC
output
Alice
0.4BTC
input
Alice & Bob
1BTC
output
Bob
0.6BTC
input
Alice & Bob
1BTC
output
Bob
0.5BTC
input
Alice & Bob
1BTC
output
Alice
0.5BTC
output
Alice after n blocks
or
Alice Revoke Hash1 & Bob
0.5BTC
output
Bob after n blocks
or
Bob Revoke Hash1 & Alice
0.5BTC
output
Alice after n blocks
or
Alice Revoke Hash2 & Bob
0.4BTC
output
Bob after n blocks
or
Bob Revoke Hash2 & Alice
0.6BTC
Update a channel
Alice BobBlockchain
TX Funding
output
Alice & Bob
1BTC
input
input
TX
Bob c2
TX
Alice c2
TX
Alice c1
TX
Bob c1
Alice Revoke Secret1Bob Revoke Secret1 Alice Revoke Secret2 Bob Revoke Secret2
input
Alice & Bob
1BTC
output
Alice
0.4BTC
input
Alice & Bob
1BTC
output
Bob
0.6BTC
input
Alice & Bob
1BTC
output
Bob
0.5BTC
input
Alice & Bob
1BTC
output
Alice
0.5BTC
output
Alice after n blocks
or
Alice Revoke Hash1 & Bob
0.5BTC
output
Bob after n blocks
or
Bob Revoke Hash1 & Alice
0.5BTC
output
Alice after n blocks
or
Alice Revoke Hash2 & Bob
0.4BTC
output
Bob after n blocks
or
Bob Revoke Hash2 & Alice
0.6BTC
Bi-directional Channel
(Close a channel)
Close a channel
Alice BobBlockchain
TX Funding
output
Alice & Bob
1BTC
input
input
TX
Bob c2
TX
Alice c2
Alice Revoke Secret1Bob Revoke Secret1 Alice Revoke Secret2 Bob Revoke Secret2
input
Alice & Bob
1BTC
output
Alice
0.4BTC
input
Alice & Bob
1BTC
output
Bob
0.6BTC
output
Alice after n blocks
or
Alice Revoke Hash2 & Bob
0.4BTC
output
Bob after n blocks
or
Bob Revoke Hash2 & Alice
0.6BTC
TX
Close
input
Alice & Bob
1BTC
output
Bob
0.6BTC
output
Alice
0.4BTC
signed
Send
not signed
Close a channel
Alice BobBlockchain
TX Funding
output
Alice & Bob
1BTC
input
input
TX
Bob c2
TX
Alice c2
Alice Revoke Secret1Bob Revoke Secret1 Alice Revoke Secret2 Bob Revoke Secret2
input
Alice & Bob
1BTC
output
Alice
0.4BTC
input
Alice & Bob
1BTC
output
Bob
0.6BTC
output
Alice after n blocks
or
Alice Revoke Hash2 & Bob
0.4BTC
output
Bob after n blocks
or
Bob Revoke Hash2 & Alice
0.6BTC
TX
Close
input
Alice & Bob
1BTC
output
Bob
0.6BTC
output
Alice
0.4BTC
signed
Broadcast
signed
Alice cheats a channel
Alice BobBlockchain
TX Funding
output
Alice & Bob
1BTC
input
input
TX
Bob c2
TX
Alice c2
TX
Alice c1
TX
Bob c1
Alice Revoke Secret1Bob Revoke Secret1 Alice Revoke Secret2 Bob Revoke Secret2
input
Alice & Bob
1BTC
output
Alice
0.4BTC
input
Alice & Bob
1BTC
output
Bob
0.6BTC
input
Alice & Bob
1BTC
output
Bob
0.5BTC
input
Alice & Bob
1BTC
output
Alice
0.5BTC
output
Alice after n blocks
or
Alice Revoke Hash1 & Bob
0.5BTC
output
Bob after n blocks
or
Bob Revoke Hash1 & Alice
0.5BTC
output
Alice after n blocks
or
Alice Revoke Hash2 & Bob
0.4BTC
output
Bob after n blocks
or
Bob Revoke Hash2 & Alice
0.6BTC
Broadcast
Alice cheats a channel
Alice BobBlockchain
TX
Alice c1
Alice Revoke Secret1Bob Revoke Secret1 Alice Revoke Secret2 Bob Revoke Secret2
input
Alice & Bob
1BTC
output
Bob
0.5BTC
output
Alice after n blocks
or
Alice Revoke Hash1 & Bob
0.5BTC
TX
input
Alice Revoke Secret1 & Bob
0.5BTC
output
Bob
0.5BTC
Alice cheats a channel
Alice BobBlockchain
Alice Revoke Secret1Bob Revoke Secret1 Alice Revoke Secret2 Bob Revoke Secret2
Broadcast
TX
Alice c1
input
Alice & Bob
1BTC
output
Bob
0.5BTC
output
Alice after n blocks
or
Alice Revoke Hash1 & Bob
0.5BTC
TX
input
Alice Revoke Secret1 & Bob
0.5BTC
output
Bob
0.5BTC
Alice cheats a channel
Alice BobBlockchain
Alice Revoke Secret1Bob Revoke Secret1 Alice Revoke Secret2 Bob Revoke Secret2
TX
Alice c1
input
Alice & Bob
1BTC
output
Bob
0.5BTC
output
Alice after n blocks
or
Alice Revoke Hash1 & Bob
0.5BTC
TX
input
Alice Revoke Secret1 & Bob
0.5BTC
output
Bob
0.5BTC
Alice is uncooperative
Alice BobBlockchain
TX Funding
output
Alice & Bob
1BTC
input
input
TX
Bob c2
TX
Alice c2
TX
Alice c1
TX
Bob c1
Alice Revoke Secret1Bob Revoke Secret1 Alice Revoke Secret2 Bob Revoke Secret2
input
Alice & Bob
1BTC
output
Alice
0.4BTC
input
Alice & Bob
1BTC
output
Bob
0.6BTC
input
Alice & Bob
1BTC
output
Bob
0.5BTC
input
Alice & Bob
1BTC
output
Alice
0.5BTC
output
Alice after n blocks
or
Alice Revoke Hash1 & Bob
0.5BTC
output
Bob after n blocks
or
Bob Revoke Hash1 & Alice
0.5BTC
output
Alice after n blocks
or
Alice Revoke Hash2 & Bob
0.4BTC
output
Bob after n blocks
or
Bob Revoke Hash2 & Alice
0.6BTC
Alice is uncooperative
Alice BobBlockchain
TX Funding
output
Alice & Bob
1BTC
input
input
TX
Bob c2
TX
Alice c2
TX
Alice c1
TX
Bob c1
Alice Revoke Secret1Bob Revoke Secret1 Alice Revoke Secret2 Bob Revoke Secret2
input
Alice & Bob
1BTC
output
Alice
0.4BTC
input
Alice & Bob
1BTC
output
Bob
0.6BTC
input
Alice & Bob
1BTC
output
Bob
0.5BTC
input
Alice & Bob
1BTC
output
Alice
0.5BTC
output
Alice after n blocks
or
Alice Revoke Hash1 & Bob
0.5BTC
output
Bob after n blocks
or
Bob Revoke Hash1 & Alice
0.5BTC
output
Alice after n blocks
or
Alice Revoke Hash2 & Bob
0.4BTC
output
Bob after n blocks
or
Bob Revoke Hash2 & Alice
0.6BTC
Broadcast
Multi-hop
Multi-hop
payee recipient
Multi-hop
• No central server is in Lightning Network.
• Many paths are available for payment from payee to
recipient.
• It can build so many micro payment system without an
huge investment to central server. For example, more than
10 million tx per second over the world.
• Each node in the middle can get a fee for transporting tx to
maintain nodes.
Multi-hop
payee recipient
Node in the middle can steal money?
Alice Bob Carol
Lightning Payment Image
payee recipient
Alice Bob Carol
Carol Secret, R
Carol Hash, H
Lightning Payment Image
payee recipient
Alice Bob Carol
Carol Secret, R
Carol Hash, H
Send
tx with H
need R to
use
tx with H
need R to
use
Send
tx with H
need R to
use
Send
Send
R
Send
R
Multi-hop
(Update a channel with
Carol)
Update a channel with Carol
Alice Bob
TX
Alice c1
TX
Bob c1
input
Alice & Bob
1BTC
output
Bob
0.5BTC
input
Alice & Bob
1BTC
output
Alice
0.5BTC
output
Alice after n blocks
or
Alice Revoke Hash1 & Bob
0.5BTC
output
Bob after n blocks
or
Bob Revoke Hash1 & Alice
0.5BTC
Carol
Carol Secret
Carol Hash
Alice Revoke Secret1Bob Revoke Secret1
Update a channel with Carol
Alice Bob
TX
Alice c1
TX
Bob c1
input
Alice & Bob
1BTC
output
Bob
0.5BTC
input
Alice & Bob
1BTC
output
Alice
0.5BTC
output
Alice after n blocks
or
Alice Revoke Hash1 & Bob
0.5BTC
output
Bob after n blocks
or
Bob Revoke Hash1 & Alice
0.5BTC
Carol
Carol Secret
Carol Hash
Alice Revoke Secret1Bob Revoke Secret1
Bob Revoke Secret2
Bob Revoke Hash2
Alice Revoke Secret2
Alice Revoke Hash2
Update a channel with Carol
Alice Bob
TX
Alice c1
TX
Bob c1
input
Alice & Bob
1BTC
output
Bob
0.5BTC
input
Alice & Bob
1BTC
output
Alice
0.5BTC
output
Alice after n blocks
or
Alice Revoke Hash1 & Bob
0.5BTC
output
Bob after n blocks
or
Bob Revoke Hash1 & Alice
0.5BTC
Carol
Carol Secret
Carol Hash
Send
Alice Revoke Secret1Bob Revoke Secret1 Alice Revoke Secret2
Alice Revoke Hash2
Bob Revoke Secret2
Bob Revoke Hash2
Update a channel with Carol
Alice Bob
TX
Alice c1
TX
Bob c1
input
Alice & Bob
1BTC
output
Bob
0.5BTC
input
Alice & Bob
1BTC
output
Alice
0.5BTC
output
Alice after n blocks
or
Alice Revoke Hash1 & Bob
0.5BTC
output
Bob after n blocks
or
Bob Revoke Hash1 & Alice
0.5BTC
Carol
Carol Secret
Alice Revoke Secret1Bob Revoke Secret1 Alice Revoke Secret2
Alice Revoke Hash2
Bob Revoke Hash2
Send
Alice Revoke Hash2
Send
Carol Hash
Bob Revoke Secret2
Bob Revoke Hash2
Update a channel with Carol
Alice Bob
TX
Alice c1
TX
Bob c1
input
Alice & Bob
1BTC
output
Bob
0.5BTC
input
Alice & Bob
1BTC
output
Alice
0.5BTC
output
Alice after n blocks
or
Alice Revoke Hash1 & Bob
0.5BTC
output
Bob after n blocks
or
Bob Revoke Hash1 & Alice
0.5BTC
Carol
Carol Secret
Carol Hash
TX
Bob c2
input
Alice & Bob
1BTC
output
Alice
0.4BTC
output
Bob after n blocks
or
Bob Revoke Hash2 & Alice
0.5BTC
output
Carol Hash & Bob after m blocks
or
Bob Revoke Hash2 & Alice
or
Alice after t2
0.1BTC
Alice Revoke Secret1Bob Revoke Secret1 Alice Revoke Secret2
Carol Hash Bob Revoke Hash2
Alice Revoke Hash2
Bob Revoke Secret2
Bob Revoke Hash2
Alice Revoke Hash2
Update a channel with Carol
Alice Bob
TX
Bob c2
TX
Alice c1
TX
Bob c1
input
Alice & Bob
1BTC
output
Alice
0.4BTC
input
Alice & Bob
1BTC
output
Bob
0.5BTC
input
Alice & Bob
1BTC
output
Alice
0.5BTC
output
Alice after n blocks
or
Alice Revoke Hash1 & Bob
0.5BTC
output
Bob after n blocks
or
Bob Revoke Hash1 & Alice
0.5BTC
output
Bob after n blocks
or
Bob Revoke Hash2 & Alice
0.5BTC
output
Carol Hash & Bob after m blocks
or
Bob Revoke Hash2 & Alice
or
Alice after t2
0.1BTC
Carol
Carol Secret
Carol Hash
Send
Alice Revoke Secret1Bob Revoke Secret1 Alice Revoke Secret2
Carol Hash Bob Revoke Hash2
Alice Revoke Hash2
Bob Revoke Secret2
Bob Revoke Hash2
Alice Revoke Hash2
Alice Bob
TX
Alice c1
TX
Bob c1
input
Alice & Bob
1BTC
output
Bob
0.5BTC
input
Alice & Bob
1BTC
output
Alice
0.5BTC
output
Alice after n blocks
or
Alice Revoke Hash1 & Bob
0.5BTC
output
Bob after n blocks
or
Bob Revoke Hash1 & Alice
0.5BTC
Carol
Carol Secret
Carol Hash
TX
Bob c2
input
Alice & Bob
1BTC
output
Alice
0.4BTC
output
Bob after n blocks
or
Bob Revoke Hash2 & Alice
0.5BTC
output
Carol Hash & Bob after m blocks
or
Bob Revoke Hash2 & Alice
or
Alice after t2
0.1BTC
Update a channel with Carol
Alice Revoke Secret1Bob Revoke Secret1 Alice Revoke Secret2
Carol Hash Bob Revoke Hash2 Carol Hash
Alice Revoke Hash2
Bob Revoke Secret2
Bob Revoke Hash2
Alice Revoke Hash2
Update a channel with Carol
Alice Bob
TX
Alice c1
TX
Bob c1
input
Alice & Bob
1BTC
output
Bob
0.5BTC
input
Alice & Bob
1BTC
output
Alice
0.5BTC
output
Alice after n blocks
or
Alice Revoke Hash1 & Bob
0.5BTC
output
Bob after n blocks
or
Bob Revoke Hash1 & Alice
0.5BTC
Carol
Carol Secret
Carol Hash
TX
Alice c2
input
Alice & Bob
1BTC
output
Bob
0.5BTC
output
Alice after n blocks
or
Alice Revoke Hash2 & Bob
0.4BTC
output
Carol Hash & Bob
or
Alice Revoke Hash2 & Bob
or
Alice after t2
0.1BTC
TX
Bob c2
input
Alice & Bob
1BTC
output
Alice
0.4BTC
output
Bob after n blocks
or
Bob Revoke Hash2 & Alice
0.5BTC
output
Carol Hash & Bob after m blocks
or
Bob Revoke Hash2 & Alice
or
Alice after t2
0.1BTC
Bob Revoke Secret1 Alice Revoke Secret2
Carol Hash Bob Revoke Hash2
Alice Revoke Hash2
Alice Revoke Secret1
Carol Hash
Bob Revoke Secret2
Bob Revoke Hash2
Alice Revoke Hash2
Flare: Lightning Network
Routing Algorithm
• I could not touch routing algorithm today.
• Flare is very interesting approach.
• http://bitfury.com/content/5-white-papers-
research/whitepaper_flare_an_approach_to_routing_in_ligh
tning_network_7_7_2016.pdf
• However, I think it has a possibility for a node in the middle to
encumber a R transfer(Carol Secret) in case of more than two
nodes in the middle.
Thanks!

Weitere ähnliche Inhalte

Ähnlich wie Technology of Lightning Network in Tel Aviv, Israel

Blockchain for Business Yale School of Management Dr John Maheswaran
Blockchain for Business Yale School of Management Dr John MaheswaranBlockchain for Business Yale School of Management Dr John Maheswaran
Blockchain for Business Yale School of Management Dr John MaheswaranJohn M.
 
Bitcoin - Understanding and Assessing potential Opportunities
Bitcoin - Understanding and Assessing potential OpportunitiesBitcoin - Understanding and Assessing potential Opportunities
Bitcoin - Understanding and Assessing potential OpportunitiesQuasarVentures
 
BlockchainConf.tech - Build a private blockchain workshop
BlockchainConf.tech - Build a private blockchain workshopBlockchainConf.tech - Build a private blockchain workshop
BlockchainConf.tech - Build a private blockchain workshopPad Kankipati
 
BLE Localiser (Full) for iOS Dev Scout
BLE Localiser (Full) for iOS Dev ScoutBLE Localiser (Full) for iOS Dev Scout
BLE Localiser (Full) for iOS Dev Scoutyeokm1
 
How to deploy machine learning models in the Cloud
How to deploy machine learning models in the CloudHow to deploy machine learning models in the Cloud
How to deploy machine learning models in the CloudAlex Casalboni
 
Lightning Network Economics: Channels
Lightning Network Economics: ChannelsLightning Network Economics: Channels
Lightning Network Economics: Channelsguasoni
 
Microservices testing and automation
Microservices testing and automationMicroservices testing and automation
Microservices testing and automationAlex Soto
 
Timeshift Everything, Miss Nothing - Mashup your PVR with Kamaelia
Timeshift Everything, Miss Nothing - Mashup your PVR with KamaeliaTimeshift Everything, Miss Nothing - Mashup your PVR with Kamaelia
Timeshift Everything, Miss Nothing - Mashup your PVR with Kamaeliakamaelian
 
Day 15.1 spanningtreeprotocol
Day 15.1 spanningtreeprotocolDay 15.1 spanningtreeprotocol
Day 15.1 spanningtreeprotocolCYBERINTELLIGENTS
 
Blockchain explained (Technology running Bitcoin)
Blockchain explained (Technology running Bitcoin)Blockchain explained (Technology running Bitcoin)
Blockchain explained (Technology running Bitcoin)Qais Ammari
 
J.burke HackMiami6
J.burke HackMiami6J.burke HackMiami6
J.burke HackMiami6Jesse Burke
 
Understanding blockchain
Understanding blockchainUnderstanding blockchain
Understanding blockchainKingsley Davies
 
Flaying the Blockchain Ledger for Fun, Profit, and Hip Hop
Flaying the Blockchain Ledger for Fun, Profit, and Hip HopFlaying the Blockchain Ledger for Fun, Profit, and Hip Hop
Flaying the Blockchain Ledger for Fun, Profit, and Hip HopAndrew Morris
 
20170620 MEETUP intro to blockchain and smart contracts (1)
20170620 MEETUP intro to blockchain and smart contracts (1)20170620 MEETUP intro to blockchain and smart contracts (1)
20170620 MEETUP intro to blockchain and smart contracts (1)Brussels Legal Hackers
 
Cassandra @ Yahoo Japan | Cassandra Summit 2016
Cassandra @ Yahoo Japan | Cassandra Summit 2016Cassandra @ Yahoo Japan | Cassandra Summit 2016
Cassandra @ Yahoo Japan | Cassandra Summit 2016Satoshi Konno
 
Cassandra @ Yahoo Japan (Satoshi Konno, Yahoo) | Cassandra Summit 2016
Cassandra @ Yahoo Japan (Satoshi Konno, Yahoo) | Cassandra Summit 2016Cassandra @ Yahoo Japan (Satoshi Konno, Yahoo) | Cassandra Summit 2016
Cassandra @ Yahoo Japan (Satoshi Konno, Yahoo) | Cassandra Summit 2016DataStax
 
Black Ops of TCP/IP 2011 (Black Hat USA 2011)
Black Ops of TCP/IP 2011 (Black Hat USA 2011)Black Ops of TCP/IP 2011 (Black Hat USA 2011)
Black Ops of TCP/IP 2011 (Black Hat USA 2011)Dan Kaminsky
 
KubeBoot - Spring Boot deployment on Kubernetes
KubeBoot - Spring Boot deployment on KubernetesKubeBoot - Spring Boot deployment on Kubernetes
KubeBoot - Spring Boot deployment on KubernetesAlex Soto
 
What is Blockchain and why should we care?
What is Blockchain and why should we care?What is Blockchain and why should we care?
What is Blockchain and why should we care?Paul Johnston
 

Ähnlich wie Technology of Lightning Network in Tel Aviv, Israel (20)

Blockchain for Business Yale School of Management Dr John Maheswaran
Blockchain for Business Yale School of Management Dr John MaheswaranBlockchain for Business Yale School of Management Dr John Maheswaran
Blockchain for Business Yale School of Management Dr John Maheswaran
 
Bitcoin - Understanding and Assessing potential Opportunities
Bitcoin - Understanding and Assessing potential OpportunitiesBitcoin - Understanding and Assessing potential Opportunities
Bitcoin - Understanding and Assessing potential Opportunities
 
BlockchainConf.tech - Build a private blockchain workshop
BlockchainConf.tech - Build a private blockchain workshopBlockchainConf.tech - Build a private blockchain workshop
BlockchainConf.tech - Build a private blockchain workshop
 
BLE Localiser (Full) for iOS Dev Scout
BLE Localiser (Full) for iOS Dev ScoutBLE Localiser (Full) for iOS Dev Scout
BLE Localiser (Full) for iOS Dev Scout
 
How to deploy machine learning models in the Cloud
How to deploy machine learning models in the CloudHow to deploy machine learning models in the Cloud
How to deploy machine learning models in the Cloud
 
Lightning Network Economics: Channels
Lightning Network Economics: ChannelsLightning Network Economics: Channels
Lightning Network Economics: Channels
 
Microservices testing and automation
Microservices testing and automationMicroservices testing and automation
Microservices testing and automation
 
Timeshift Everything, Miss Nothing - Mashup your PVR with Kamaelia
Timeshift Everything, Miss Nothing - Mashup your PVR with KamaeliaTimeshift Everything, Miss Nothing - Mashup your PVR with Kamaelia
Timeshift Everything, Miss Nothing - Mashup your PVR with Kamaelia
 
Day 15.1 spanningtreeprotocol
Day 15.1 spanningtreeprotocolDay 15.1 spanningtreeprotocol
Day 15.1 spanningtreeprotocol
 
Blockchain explained (Technology running Bitcoin)
Blockchain explained (Technology running Bitcoin)Blockchain explained (Technology running Bitcoin)
Blockchain explained (Technology running Bitcoin)
 
J.burke HackMiami6
J.burke HackMiami6J.burke HackMiami6
J.burke HackMiami6
 
Understanding blockchain
Understanding blockchainUnderstanding blockchain
Understanding blockchain
 
Flaying the Blockchain Ledger for Fun, Profit, and Hip Hop
Flaying the Blockchain Ledger for Fun, Profit, and Hip HopFlaying the Blockchain Ledger for Fun, Profit, and Hip Hop
Flaying the Blockchain Ledger for Fun, Profit, and Hip Hop
 
20170620 MEETUP intro to blockchain and smart contracts (1)
20170620 MEETUP intro to blockchain and smart contracts (1)20170620 MEETUP intro to blockchain and smart contracts (1)
20170620 MEETUP intro to blockchain and smart contracts (1)
 
Cassandra @ Yahoo Japan | Cassandra Summit 2016
Cassandra @ Yahoo Japan | Cassandra Summit 2016Cassandra @ Yahoo Japan | Cassandra Summit 2016
Cassandra @ Yahoo Japan | Cassandra Summit 2016
 
Cassandra @ Yahoo Japan | Cassandra Summit 2016
Cassandra @ Yahoo Japan | Cassandra Summit 2016Cassandra @ Yahoo Japan | Cassandra Summit 2016
Cassandra @ Yahoo Japan | Cassandra Summit 2016
 
Cassandra @ Yahoo Japan (Satoshi Konno, Yahoo) | Cassandra Summit 2016
Cassandra @ Yahoo Japan (Satoshi Konno, Yahoo) | Cassandra Summit 2016Cassandra @ Yahoo Japan (Satoshi Konno, Yahoo) | Cassandra Summit 2016
Cassandra @ Yahoo Japan (Satoshi Konno, Yahoo) | Cassandra Summit 2016
 
Black Ops of TCP/IP 2011 (Black Hat USA 2011)
Black Ops of TCP/IP 2011 (Black Hat USA 2011)Black Ops of TCP/IP 2011 (Black Hat USA 2011)
Black Ops of TCP/IP 2011 (Black Hat USA 2011)
 
KubeBoot - Spring Boot deployment on Kubernetes
KubeBoot - Spring Boot deployment on KubernetesKubeBoot - Spring Boot deployment on Kubernetes
KubeBoot - Spring Boot deployment on Kubernetes
 
What is Blockchain and why should we care?
What is Blockchain and why should we care?What is Blockchain and why should we care?
What is Blockchain and why should we care?
 

Mehr von takayaimai

ライトニングネットワーク ペイメントの新潮流〜貨幣システムはどこまで刷新されるのか〜
ライトニングネットワーク ペイメントの新潮流〜貨幣システムはどこまで刷新されるのか〜ライトニングネットワーク ペイメントの新潮流〜貨幣システムはどこまで刷新されるのか〜
ライトニングネットワーク ペイメントの新潮流〜貨幣システムはどこまで刷新されるのか〜takayaimai
 
Scalability problems @ neutrino 20181023
Scalability problems @ neutrino 20181023Scalability problems @ neutrino 20181023
Scalability problems @ neutrino 20181023takayaimai
 
LApps -- Offchain Academy Hackday
LApps -- Offchain Academy HackdayLApps -- Offchain Academy Hackday
LApps -- Offchain Academy Hackdaytakayaimai
 
スマホアプリハンズオン(Lightning Network)を 始めた理由
スマホアプリハンズオン(Lightning Network)を 始めた理由スマホアプリハンズオン(Lightning Network)を 始めた理由
スマホアプリハンズオン(Lightning Network)を 始めた理由takayaimai
 
ライトニングノードをいじってみよう
ライトニングノードをいじってみようライトニングノードをいじってみよう
ライトニングノードをいじってみようtakayaimai
 
Lightningエコシステムの最前線@HashHub Conference 2018
Lightningエコシステムの最前線@HashHub Conference 2018Lightningエコシステムの最前線@HashHub Conference 2018
Lightningエコシステムの最前線@HashHub Conference 2018takayaimai
 
セカンドレイヤーの技術動向@国際大学GLOCOM
セカンドレイヤーの技術動向@国際大学GLOCOMセカンドレイヤーの技術動向@国際大学GLOCOM
セカンドレイヤーの技術動向@国際大学GLOCOMtakayaimai
 
ライトニングノードをたててみよう
ライトニングノードをたててみようライトニングノードをたててみよう
ライトニングノードをたててみようtakayaimai
 
ライトニングネットワークのビジネス展開 消費者向け少額直接広告
ライトニングネットワークのビジネス展開 消費者向け少額直接広告ライトニングネットワークのビジネス展開 消費者向け少額直接広告
ライトニングネットワークのビジネス展開 消費者向け少額直接広告takayaimai
 
2nd presentation of ライトニングネットワーク JBA 2018/04/24
2nd presentation of ライトニングネットワーク JBA 2018/04/242nd presentation of ライトニングネットワーク JBA 2018/04/24
2nd presentation of ライトニングネットワーク JBA 2018/04/24takayaimai
 
1st presentation of ライトニングネットワーク JBA 2018/04/24
1st presentation of ライトニングネットワーク JBA 2018/04/241st presentation of ライトニングネットワーク JBA 2018/04/24
1st presentation of ライトニングネットワーク JBA 2018/04/24takayaimai
 
Blockchain技術勉強会 #Lightning Networkの技術と最前線
Blockchain技術勉強会 #Lightning Networkの技術と最前線Blockchain技術勉強会 #Lightning Networkの技術と最前線
Blockchain技術勉強会 #Lightning Networkの技術と最前線takayaimai
 
lnwalletウォレットアプリでのライトニングネットワーク受金方法
lnwalletウォレットアプリでのライトニングネットワーク受金方法lnwalletウォレットアプリでのライトニングネットワーク受金方法
lnwalletウォレットアプリでのライトニングネットワーク受金方法takayaimai
 
Startup Weekend Tokyoから暗号通貨、ブロックチェーンまで(Startup Weekend Tokyo to Cryptocurrenc...
Startup Weekend Tokyoから暗号通貨、ブロックチェーンまで(Startup Weekend Tokyo to Cryptocurrenc...Startup Weekend Tokyoから暗号通貨、ブロックチェーンまで(Startup Weekend Tokyo to Cryptocurrenc...
Startup Weekend Tokyoから暗号通貨、ブロックチェーンまで(Startup Weekend Tokyo to Cryptocurrenc...takayaimai
 
ICOと未来 Bitcoin Blockchain School
ICOと未来 Bitcoin Blockchain SchoolICOと未来 Bitcoin Blockchain School
ICOと未来 Bitcoin Blockchain Schooltakayaimai
 
Bitcoin: Segwit後の世界
Bitcoin: Segwit後の世界Bitcoin: Segwit後の世界
Bitcoin: Segwit後の世界takayaimai
 
Discreet Log Contracts(DLC)を読む
Discreet Log Contracts(DLC)を読むDiscreet Log Contracts(DLC)を読む
Discreet Log Contracts(DLC)を読むtakayaimai
 
Interledger Protocol
Interledger ProtocolInterledger Protocol
Interledger Protocoltakayaimai
 
Mimblewimbleホワイトペーパー解説
Mimblewimbleホワイトペーパー解説Mimblewimbleホワイトペーパー解説
Mimblewimbleホワイトペーパー解説takayaimai
 

Mehr von takayaimai (20)

ライトニングネットワーク ペイメントの新潮流〜貨幣システムはどこまで刷新されるのか〜
ライトニングネットワーク ペイメントの新潮流〜貨幣システムはどこまで刷新されるのか〜ライトニングネットワーク ペイメントの新潮流〜貨幣システムはどこまで刷新されるのか〜
ライトニングネットワーク ペイメントの新潮流〜貨幣システムはどこまで刷新されるのか〜
 
Scalability problems @ neutrino 20181023
Scalability problems @ neutrino 20181023Scalability problems @ neutrino 20181023
Scalability problems @ neutrino 20181023
 
LApps -- Offchain Academy Hackday
LApps -- Offchain Academy HackdayLApps -- Offchain Academy Hackday
LApps -- Offchain Academy Hackday
 
スマホアプリハンズオン(Lightning Network)を 始めた理由
スマホアプリハンズオン(Lightning Network)を 始めた理由スマホアプリハンズオン(Lightning Network)を 始めた理由
スマホアプリハンズオン(Lightning Network)を 始めた理由
 
ライトニングノードをいじってみよう
ライトニングノードをいじってみようライトニングノードをいじってみよう
ライトニングノードをいじってみよう
 
Lightningエコシステムの最前線@HashHub Conference 2018
Lightningエコシステムの最前線@HashHub Conference 2018Lightningエコシステムの最前線@HashHub Conference 2018
Lightningエコシステムの最前線@HashHub Conference 2018
 
セカンドレイヤーの技術動向@国際大学GLOCOM
セカンドレイヤーの技術動向@国際大学GLOCOMセカンドレイヤーの技術動向@国際大学GLOCOM
セカンドレイヤーの技術動向@国際大学GLOCOM
 
MuSig
MuSigMuSig
MuSig
 
ライトニングノードをたててみよう
ライトニングノードをたててみようライトニングノードをたててみよう
ライトニングノードをたててみよう
 
ライトニングネットワークのビジネス展開 消費者向け少額直接広告
ライトニングネットワークのビジネス展開 消費者向け少額直接広告ライトニングネットワークのビジネス展開 消費者向け少額直接広告
ライトニングネットワークのビジネス展開 消費者向け少額直接広告
 
2nd presentation of ライトニングネットワーク JBA 2018/04/24
2nd presentation of ライトニングネットワーク JBA 2018/04/242nd presentation of ライトニングネットワーク JBA 2018/04/24
2nd presentation of ライトニングネットワーク JBA 2018/04/24
 
1st presentation of ライトニングネットワーク JBA 2018/04/24
1st presentation of ライトニングネットワーク JBA 2018/04/241st presentation of ライトニングネットワーク JBA 2018/04/24
1st presentation of ライトニングネットワーク JBA 2018/04/24
 
Blockchain技術勉強会 #Lightning Networkの技術と最前線
Blockchain技術勉強会 #Lightning Networkの技術と最前線Blockchain技術勉強会 #Lightning Networkの技術と最前線
Blockchain技術勉強会 #Lightning Networkの技術と最前線
 
lnwalletウォレットアプリでのライトニングネットワーク受金方法
lnwalletウォレットアプリでのライトニングネットワーク受金方法lnwalletウォレットアプリでのライトニングネットワーク受金方法
lnwalletウォレットアプリでのライトニングネットワーク受金方法
 
Startup Weekend Tokyoから暗号通貨、ブロックチェーンまで(Startup Weekend Tokyo to Cryptocurrenc...
Startup Weekend Tokyoから暗号通貨、ブロックチェーンまで(Startup Weekend Tokyo to Cryptocurrenc...Startup Weekend Tokyoから暗号通貨、ブロックチェーンまで(Startup Weekend Tokyo to Cryptocurrenc...
Startup Weekend Tokyoから暗号通貨、ブロックチェーンまで(Startup Weekend Tokyo to Cryptocurrenc...
 
ICOと未来 Bitcoin Blockchain School
ICOと未来 Bitcoin Blockchain SchoolICOと未来 Bitcoin Blockchain School
ICOと未来 Bitcoin Blockchain School
 
Bitcoin: Segwit後の世界
Bitcoin: Segwit後の世界Bitcoin: Segwit後の世界
Bitcoin: Segwit後の世界
 
Discreet Log Contracts(DLC)を読む
Discreet Log Contracts(DLC)を読むDiscreet Log Contracts(DLC)を読む
Discreet Log Contracts(DLC)を読む
 
Interledger Protocol
Interledger ProtocolInterledger Protocol
Interledger Protocol
 
Mimblewimbleホワイトペーパー解説
Mimblewimbleホワイトペーパー解説Mimblewimbleホワイトペーパー解説
Mimblewimbleホワイトペーパー解説
 

Kürzlich hochgeladen

Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Hyundai Motor Group
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 

Kürzlich hochgeladen (20)

Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 

Technology of Lightning Network in Tel Aviv, Israel

  • 1. Technology of Lightning Network Takaya Imai Jun/27/2017 the Cluster Disruptive Technologies Hub@Tel Aviv, Israel United Bitcoiners Inc. Co-Founder and CTO Frontier Partners LLC. Founder and CEO
  • 2. Self Introduction • United Bitcoiners Inc. Co-Founder & CTO • Frontier Partners LLC Founder & CEO • Chief Translator of Mastering Bitcoin for Japanese • Open Edition • https://www.bitcoinbook.info • Second Edition is released on 29 June
  • 3. Self Introduction • Background • Ph. D. of Elementary Particle Physics • kakaku.com • Web service of price comparison in Japan • Search Engine Development, Search Engine Server Control, Big Data Processing & Analysis, Machine Learning, Image Recognition • Data Tower Inc. CEO
  • 4.
  • 5. Scaling Problems of Bitcoin • Transactions in one block is full • 1MB per block • Increase of Bitcoin blockchain data size • High TX fee • ex. 360 satoshi / byte • ~ 7 TX per second • 10 min block time • 1 Mbytes / 256 bytes / 10 min / 60 second = 6.8 TX per second • This block time is necessary for stable Bitcoin blockchain and is enough for usual bitcoin payment. • But it is very slow comparing with credit card or NFC. • …
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11. 2000 TX / 10 min / 60 second = 3.3 TX per second
  • 13. Scaling Problems of Bitcoin • Lightning Network is one of solutions for scaling. • Scaling solutions have two types.
  • 14. Scaling on-chain or off-chain • on-chain • Side chain • Changing block size • Segregated Witness • … • off-chain • Lightning Network • …
  • 15. Lightning Network is being improved more and more now • Basic ideas are based on a white paper of Joseph Poon and Thaddeus Dryja. • First release: Fed/28/2015 • https://lightning.network/lightning-network-paper.pdf • BOLT(Base of Lightning Technology) is a RFC of Lightning Network and this is being updated frequently. • https://github.com/lightningnetwork/lightning-rfc • I talk about basic ideas of Lightning Network today.
  • 16. Lightning Network Projects Company/ Organization Lightning Labs MIT DCI Blockstream ACINQ bcoin-org Product Name lnd lit lightningd eclair plasma Commitors Thaddeus Dryja, Joseph Poon, Olaoluwa Osuntokun Thaddeus Dryja Rusty Russel, Christian Decker Pierre-Marie Padiou, Fabrice Drouin, dpad85 Christopher Jeffrey Language Go Go C Scala Node js first commit (JST) 2015/10/25 2016/11/6 2015/5/24 2015/8/16 2016/8/29 lastest commit (JST) 2017/6/27 2017/6/23 2017/6/27 2017/6/10 2016/11/23 github https://github.com/light ningnetwork/lnd https://github.com/mi t-dci/lit https://github.com/El ementsProject/lightn ing https://github.com/A CINQ/eclair https://github.com/bc oin-org/plasma
  • 17. Basic ideas of Lighting Network • Micro Payment Channel(bi-directional) • Multi-hop for channels • HTLC(Hashed Time Lock Contract)
  • 19. Micro Payment Channel “Open” Alice Bob Channel Open Request Blockchain TX input Alice 1BTC output Alice & Bob but Alice after t1 1BTC Broadcast
  • 20. Micro Payment Channel “First Payment” Alice BobBlockchain TX input Alice 1BTC output Alice & Bob but Alice after t1 1BTC TX input Alice & Bob 1BTC output Alice 0.9BTC output Bob 0.1BTC Send no signature
  • 21. Broadcast Micro Payment Channel “First Payment” Alice BobBlockchain TX input Alice 1BTC output Alice & Bob but Alice after t1 1BTC TX input Alice & Bob 1BTC output Alice 0.9BTC output Bob 0.1BTC Add signature Send
  • 22. Micro Payment Channel “Second Payment” Alice BobBlockchain TX input Alice 1BTC output Alice & Bob but Alice after t1 1BTC TX input Alice & Bob 1BTC output Alice 0.8BTC output Bob 0.2BTC Send
  • 23. Micro Payment Channel “Second Payment” Alice BobBlockchain TX input Alice 1BTC output Alice & Bob but Alice after t1 1BTC TX input Alice & Bob 1BTC output Alice 0.8BTC output Bob 0.2BTC Send
  • 24. Micro Payment Channel “Second Payment & Close” Alice BobBlockchain TX input Alice 1BTC output Alice & Bob but Alice after t1 1BTC TX input Alice & Bob 1BTC output Alice 0.8BTC output Bob 0.2BTC Broadcast Send
  • 25. Micro Payment Channel “Uncooperative Close” Alice BobBlockchain TX input Alice 1BTC output Alice & Bob but Alice after t1 TX input Alice & Bob 1BTC output Alice 0.8BTC output Bob 0.2BTC TX input Alice 1BTC output Alice 1BTC Bob disappears Broadcast Send
  • 27. Bi-directional channel • It is okay to use uni-directional channel. • But bi-directional channel is better and more efficient.
  • 28. Bi-directional channel • Channel needs two tx fees. • opening tx fee • closing tx fee • It is no need to open a channel in case of one time payment. • It is better to use one channel longer and have many updates on the channel.
  • 29. Bi-directional channel • Bi-directional channel is okay to use the same way as uni-directional one? • Bi-directional channel needs status updates. • How do revoked statuses create? -> HTCL(Hashed Time Lock Contract)
  • 30. Bi-directional channel • Recent implementations does not use strict HTLC but pubkey. • I use HTLC for simplicity today.
  • 32. Open a channel Alice BobBlockchain TX Funding input Alice 0.5BTC output Alice & Bob 1BTCinput Bob 0.5BTC signed not signed Send
  • 33. Open a channel Alice BobBlockchain TX Funding input Alice 0.5BTC output Alice & Bob 1BTCinput Bob 0.5BTC signed signed Send back
  • 34. Open a channel Alice BobBlockchain TX Funding output Alice & Bob 1BTC input input TX Funding output Alice & Bob 1BTC input input Alice Revoke Secret1 Alice Revoke Hash1 Bob Revoke Secret1 Bob Revoke Hash1
  • 35. Open a channel Alice BobBlockchain TX Funding output Alice & Bob 1BTC input input TX Funding output Alice & Bob 1BTC input input Alice Revoke Secret1 Bob Revoke Secret1 Bob Revoke Hash1 Alice Revoke Hash1
  • 36. Open a channel Alice BobBlockchain TX Funding output Alice & Bob 1BTC input input TX Funding output Alice & Bob 1BTC input input Alice Revoke Secret1 Bob Revoke Secret1Bob Revoke Hash1 Alice Revoke Hash1
  • 37. Open a channel Alice BobBlockchain TX Funding output Alice & Bob 1BTC Send input input TX Funding output Alice & Bob 1BTC input input TX Bob commitment1 output Bob after n blocks or Bob Revoke Hash1 & Alice 0.5BTC input Alice & Bob 1BTC output Alice 0.5BTC signed Alice Revoke Secret1 Bob Revoke Secret1 Alice Revoke Hash1 not signed
  • 38. Open a channel Alice BobBlockchain TX Bob commitment1 (Bob c1) output Bob after n blocks or Bob Revoke Hash1 & Alice 0.5BTC input Alice & Bob 1BTC output Alice 0.5BTC TX Funding output Alice & Bob 1BTC input input TX Funding output Alice & Bob 1BTC input input Alice Revoke Secret1 Bob Revoke Secret1 Alice Revoke Hash1
  • 39. Open a channel Alice BobBlockchain TX Bob c1 input output TX Funding output Alice & Bob 1BTC input input TX Funding output Alice & Bob 1BTC input input output TX Alice c1 output Alice after n blocks or Alice Revoke Hash1 & Bob 0.5BTC input Alice & Bob 1BTC output Bob 0.5BTC Send signed Alice Revoke Secret1 Bob Revoke Secret1 not signed
  • 40. Open a channel Alice BobBlockchain TX Funding output Alice & Bob 1BTC input input TX Funding output Alice & Bob 1BTC input input TX Alice c1 output Alice after n blocks or Alice Revoke Hash1 & Bob 0.5BTC input Alice & Bob 1BTC output Bob 0.5BTC TX Bob c1 output Bob after n blocks or Bob Revoke Hash1 & Alice 0.5BTC input Alice & Bob 1BTC output Alice 0.5BTC Alice Revoke Secret1 Bob Revoke Secret1
  • 41. Open a channel Alice BobBlockchain TX Funding output Alice & Bob 1BTC input input TX Funding output Alice & Bob 1BTC input input TX Bob c1 output Bob after n blocks or Bob Revoke Hash1 & Alice 0.5BTC input Alice & Bob 1BTC output Alice 0.5BTC Broadcast TX Alice c1 output Alice after n blocks or Alice Revoke Hash1 & Bob 0.5BTC input Alice & Bob 1BTC output Bob 0.5BTC Alice Revoke Secret1 Bob Revoke Secret1
  • 42. Open a channel Alice BobBlockchain TX Funding output Alice & Bob 1BTC input input TX Bob c1 input Alice & Bob 1BTC output Alice 0.5BTC TX Alice c1 input Alice & Bob 1BTC output Bob 0.5BTC finished opening channel Alice Revoke Secret1 Bob Revoke Secret1 output Alice after n blocks or Alice Revoke Hash1 & Bob 0.5BTC output Bob after n blocks or Bob Revoke Hash1 & Alice 0.5BTC
  • 44. Update a channel Alice BobBlockchain TX Funding output Alice & Bob 1BTC input input TX Alice c1 input Alice & Bob 1BTC TX Bob c1 input Alice & Bob 1BTC Alice Revoke Secret1 Bob Revoke Secret1Alice Revoke Secret2 Alice Revoke Hash2 Bob Revoke Secret2 Bob Revoke Hash2 output Alice after n blocks or Alice Revoke Hash1 & Bob 0.5BTC output Bob after n blocks or Bob Revoke Hash1 & Alice 0.5BTC output Bob 0.5BTC output Alice 0.5BTC
  • 45. Update a channel Alice BobBlockchain Alice Revoke Secret1 Bob Revoke Secret1Alice Revoke Secret2 Bob Revoke Secret2 TX Funding output Alice & Bob 1BTC input input TX Alice c1 output Alice after n blocks or Alice Revoke Hash1 & Bob 0.5BTC input Alice & Bob 1BTC TX Bob c1 output Bob after n blocks or Bob Revoke Hash1 & Alice 0.5BTC input Alice & Bob 1BTC TX Alice c2 output Alice after n blocks or Alice Revoke Hash2 & Bob 0.4BTC input Alice & Bob 1BTC TX Bob c2 output Bob after n blocks or Bob Revoke Hash2 & Alice 0.6BTC input Alice & Bob 1BTC output Alice 0.4BTC output Bob 0.6BTC output Bob 0.5BTC output Alice 0.5BTC
  • 46. Update a channel Alice BobBlockchain TX Funding output Alice & Bob 1BTC input input TX Bob c2 input Alice & Bob 1BTC output Alice 0.4BTC TX Alice c2 input Alice & Bob 1BTC output Bob 0.6BTC TX Alice c1 input Alice & Bob 1BTC output Bob 0.5BTC TX Bob c1 input Alice & Bob 1BTC output Alice 0.5BTC Alice Revoke Secret1 Bob Revoke Secret1 Alice Revoke Secret2 Bob Revoke Secret2 output Alice after n blocks or Alice Revoke Hash1 & Bob 0.5BTC output Bob after n blocks or Bob Revoke Hash1 & Alice 0.5BTC output Alice after n blocks or Alice Revoke Hash2 & Bob 0.4BTC output Bob after n blocks or Bob Revoke Hash2 & Alice 0.6BTC
  • 47. Update a channel Alice BobBlockchain TX Funding output Alice & Bob 1BTC input input TX Bob c2 TX Alice c2 TX Alice c1 TX Bob c1 Alice Revoke Secret1Bob Revoke Secret1 Alice Revoke Secret2 Bob Revoke Secret2 input Alice & Bob 1BTC output Alice 0.4BTC input Alice & Bob 1BTC output Bob 0.6BTC input Alice & Bob 1BTC output Bob 0.5BTC input Alice & Bob 1BTC output Alice 0.5BTC output Alice after n blocks or Alice Revoke Hash1 & Bob 0.5BTC output Bob after n blocks or Bob Revoke Hash1 & Alice 0.5BTC output Alice after n blocks or Alice Revoke Hash2 & Bob 0.4BTC output Bob after n blocks or Bob Revoke Hash2 & Alice 0.6BTC
  • 48. Update a channel Alice BobBlockchain TX Funding output Alice & Bob 1BTC input input TX Bob c2 TX Alice c2 TX Alice c1 TX Bob c1 Alice Revoke Secret1Bob Revoke Secret1 Alice Revoke Secret2 Bob Revoke Secret2 input Alice & Bob 1BTC output Alice 0.4BTC input Alice & Bob 1BTC output Bob 0.6BTC input Alice & Bob 1BTC output Bob 0.5BTC input Alice & Bob 1BTC output Alice 0.5BTC output Alice after n blocks or Alice Revoke Hash1 & Bob 0.5BTC output Bob after n blocks or Bob Revoke Hash1 & Alice 0.5BTC output Alice after n blocks or Alice Revoke Hash2 & Bob 0.4BTC output Bob after n blocks or Bob Revoke Hash2 & Alice 0.6BTC
  • 50. Close a channel Alice BobBlockchain TX Funding output Alice & Bob 1BTC input input TX Bob c2 TX Alice c2 Alice Revoke Secret1Bob Revoke Secret1 Alice Revoke Secret2 Bob Revoke Secret2 input Alice & Bob 1BTC output Alice 0.4BTC input Alice & Bob 1BTC output Bob 0.6BTC output Alice after n blocks or Alice Revoke Hash2 & Bob 0.4BTC output Bob after n blocks or Bob Revoke Hash2 & Alice 0.6BTC TX Close input Alice & Bob 1BTC output Bob 0.6BTC output Alice 0.4BTC signed Send not signed
  • 51. Close a channel Alice BobBlockchain TX Funding output Alice & Bob 1BTC input input TX Bob c2 TX Alice c2 Alice Revoke Secret1Bob Revoke Secret1 Alice Revoke Secret2 Bob Revoke Secret2 input Alice & Bob 1BTC output Alice 0.4BTC input Alice & Bob 1BTC output Bob 0.6BTC output Alice after n blocks or Alice Revoke Hash2 & Bob 0.4BTC output Bob after n blocks or Bob Revoke Hash2 & Alice 0.6BTC TX Close input Alice & Bob 1BTC output Bob 0.6BTC output Alice 0.4BTC signed Broadcast signed
  • 52. Alice cheats a channel Alice BobBlockchain TX Funding output Alice & Bob 1BTC input input TX Bob c2 TX Alice c2 TX Alice c1 TX Bob c1 Alice Revoke Secret1Bob Revoke Secret1 Alice Revoke Secret2 Bob Revoke Secret2 input Alice & Bob 1BTC output Alice 0.4BTC input Alice & Bob 1BTC output Bob 0.6BTC input Alice & Bob 1BTC output Bob 0.5BTC input Alice & Bob 1BTC output Alice 0.5BTC output Alice after n blocks or Alice Revoke Hash1 & Bob 0.5BTC output Bob after n blocks or Bob Revoke Hash1 & Alice 0.5BTC output Alice after n blocks or Alice Revoke Hash2 & Bob 0.4BTC output Bob after n blocks or Bob Revoke Hash2 & Alice 0.6BTC Broadcast
  • 53. Alice cheats a channel Alice BobBlockchain TX Alice c1 Alice Revoke Secret1Bob Revoke Secret1 Alice Revoke Secret2 Bob Revoke Secret2 input Alice & Bob 1BTC output Bob 0.5BTC output Alice after n blocks or Alice Revoke Hash1 & Bob 0.5BTC TX input Alice Revoke Secret1 & Bob 0.5BTC output Bob 0.5BTC
  • 54. Alice cheats a channel Alice BobBlockchain Alice Revoke Secret1Bob Revoke Secret1 Alice Revoke Secret2 Bob Revoke Secret2 Broadcast TX Alice c1 input Alice & Bob 1BTC output Bob 0.5BTC output Alice after n blocks or Alice Revoke Hash1 & Bob 0.5BTC TX input Alice Revoke Secret1 & Bob 0.5BTC output Bob 0.5BTC
  • 55. Alice cheats a channel Alice BobBlockchain Alice Revoke Secret1Bob Revoke Secret1 Alice Revoke Secret2 Bob Revoke Secret2 TX Alice c1 input Alice & Bob 1BTC output Bob 0.5BTC output Alice after n blocks or Alice Revoke Hash1 & Bob 0.5BTC TX input Alice Revoke Secret1 & Bob 0.5BTC output Bob 0.5BTC
  • 56. Alice is uncooperative Alice BobBlockchain TX Funding output Alice & Bob 1BTC input input TX Bob c2 TX Alice c2 TX Alice c1 TX Bob c1 Alice Revoke Secret1Bob Revoke Secret1 Alice Revoke Secret2 Bob Revoke Secret2 input Alice & Bob 1BTC output Alice 0.4BTC input Alice & Bob 1BTC output Bob 0.6BTC input Alice & Bob 1BTC output Bob 0.5BTC input Alice & Bob 1BTC output Alice 0.5BTC output Alice after n blocks or Alice Revoke Hash1 & Bob 0.5BTC output Bob after n blocks or Bob Revoke Hash1 & Alice 0.5BTC output Alice after n blocks or Alice Revoke Hash2 & Bob 0.4BTC output Bob after n blocks or Bob Revoke Hash2 & Alice 0.6BTC
  • 57. Alice is uncooperative Alice BobBlockchain TX Funding output Alice & Bob 1BTC input input TX Bob c2 TX Alice c2 TX Alice c1 TX Bob c1 Alice Revoke Secret1Bob Revoke Secret1 Alice Revoke Secret2 Bob Revoke Secret2 input Alice & Bob 1BTC output Alice 0.4BTC input Alice & Bob 1BTC output Bob 0.6BTC input Alice & Bob 1BTC output Bob 0.5BTC input Alice & Bob 1BTC output Alice 0.5BTC output Alice after n blocks or Alice Revoke Hash1 & Bob 0.5BTC output Bob after n blocks or Bob Revoke Hash1 & Alice 0.5BTC output Alice after n blocks or Alice Revoke Hash2 & Bob 0.4BTC output Bob after n blocks or Bob Revoke Hash2 & Alice 0.6BTC Broadcast
  • 60. Multi-hop • No central server is in Lightning Network. • Many paths are available for payment from payee to recipient. • It can build so many micro payment system without an huge investment to central server. For example, more than 10 million tx per second over the world. • Each node in the middle can get a fee for transporting tx to maintain nodes.
  • 61. Multi-hop payee recipient Node in the middle can steal money? Alice Bob Carol
  • 62. Lightning Payment Image payee recipient Alice Bob Carol Carol Secret, R Carol Hash, H
  • 63. Lightning Payment Image payee recipient Alice Bob Carol Carol Secret, R Carol Hash, H Send tx with H need R to use tx with H need R to use Send tx with H need R to use Send Send R Send R
  • 65. Update a channel with Carol Alice Bob TX Alice c1 TX Bob c1 input Alice & Bob 1BTC output Bob 0.5BTC input Alice & Bob 1BTC output Alice 0.5BTC output Alice after n blocks or Alice Revoke Hash1 & Bob 0.5BTC output Bob after n blocks or Bob Revoke Hash1 & Alice 0.5BTC Carol Carol Secret Carol Hash Alice Revoke Secret1Bob Revoke Secret1
  • 66. Update a channel with Carol Alice Bob TX Alice c1 TX Bob c1 input Alice & Bob 1BTC output Bob 0.5BTC input Alice & Bob 1BTC output Alice 0.5BTC output Alice after n blocks or Alice Revoke Hash1 & Bob 0.5BTC output Bob after n blocks or Bob Revoke Hash1 & Alice 0.5BTC Carol Carol Secret Carol Hash Alice Revoke Secret1Bob Revoke Secret1 Bob Revoke Secret2 Bob Revoke Hash2 Alice Revoke Secret2 Alice Revoke Hash2
  • 67. Update a channel with Carol Alice Bob TX Alice c1 TX Bob c1 input Alice & Bob 1BTC output Bob 0.5BTC input Alice & Bob 1BTC output Alice 0.5BTC output Alice after n blocks or Alice Revoke Hash1 & Bob 0.5BTC output Bob after n blocks or Bob Revoke Hash1 & Alice 0.5BTC Carol Carol Secret Carol Hash Send Alice Revoke Secret1Bob Revoke Secret1 Alice Revoke Secret2 Alice Revoke Hash2 Bob Revoke Secret2 Bob Revoke Hash2
  • 68. Update a channel with Carol Alice Bob TX Alice c1 TX Bob c1 input Alice & Bob 1BTC output Bob 0.5BTC input Alice & Bob 1BTC output Alice 0.5BTC output Alice after n blocks or Alice Revoke Hash1 & Bob 0.5BTC output Bob after n blocks or Bob Revoke Hash1 & Alice 0.5BTC Carol Carol Secret Alice Revoke Secret1Bob Revoke Secret1 Alice Revoke Secret2 Alice Revoke Hash2 Bob Revoke Hash2 Send Alice Revoke Hash2 Send Carol Hash Bob Revoke Secret2 Bob Revoke Hash2
  • 69. Update a channel with Carol Alice Bob TX Alice c1 TX Bob c1 input Alice & Bob 1BTC output Bob 0.5BTC input Alice & Bob 1BTC output Alice 0.5BTC output Alice after n blocks or Alice Revoke Hash1 & Bob 0.5BTC output Bob after n blocks or Bob Revoke Hash1 & Alice 0.5BTC Carol Carol Secret Carol Hash TX Bob c2 input Alice & Bob 1BTC output Alice 0.4BTC output Bob after n blocks or Bob Revoke Hash2 & Alice 0.5BTC output Carol Hash & Bob after m blocks or Bob Revoke Hash2 & Alice or Alice after t2 0.1BTC Alice Revoke Secret1Bob Revoke Secret1 Alice Revoke Secret2 Carol Hash Bob Revoke Hash2 Alice Revoke Hash2 Bob Revoke Secret2 Bob Revoke Hash2 Alice Revoke Hash2
  • 70. Update a channel with Carol Alice Bob TX Bob c2 TX Alice c1 TX Bob c1 input Alice & Bob 1BTC output Alice 0.4BTC input Alice & Bob 1BTC output Bob 0.5BTC input Alice & Bob 1BTC output Alice 0.5BTC output Alice after n blocks or Alice Revoke Hash1 & Bob 0.5BTC output Bob after n blocks or Bob Revoke Hash1 & Alice 0.5BTC output Bob after n blocks or Bob Revoke Hash2 & Alice 0.5BTC output Carol Hash & Bob after m blocks or Bob Revoke Hash2 & Alice or Alice after t2 0.1BTC Carol Carol Secret Carol Hash Send Alice Revoke Secret1Bob Revoke Secret1 Alice Revoke Secret2 Carol Hash Bob Revoke Hash2 Alice Revoke Hash2 Bob Revoke Secret2 Bob Revoke Hash2 Alice Revoke Hash2
  • 71. Alice Bob TX Alice c1 TX Bob c1 input Alice & Bob 1BTC output Bob 0.5BTC input Alice & Bob 1BTC output Alice 0.5BTC output Alice after n blocks or Alice Revoke Hash1 & Bob 0.5BTC output Bob after n blocks or Bob Revoke Hash1 & Alice 0.5BTC Carol Carol Secret Carol Hash TX Bob c2 input Alice & Bob 1BTC output Alice 0.4BTC output Bob after n blocks or Bob Revoke Hash2 & Alice 0.5BTC output Carol Hash & Bob after m blocks or Bob Revoke Hash2 & Alice or Alice after t2 0.1BTC Update a channel with Carol Alice Revoke Secret1Bob Revoke Secret1 Alice Revoke Secret2 Carol Hash Bob Revoke Hash2 Carol Hash Alice Revoke Hash2 Bob Revoke Secret2 Bob Revoke Hash2 Alice Revoke Hash2
  • 72. Update a channel with Carol Alice Bob TX Alice c1 TX Bob c1 input Alice & Bob 1BTC output Bob 0.5BTC input Alice & Bob 1BTC output Alice 0.5BTC output Alice after n blocks or Alice Revoke Hash1 & Bob 0.5BTC output Bob after n blocks or Bob Revoke Hash1 & Alice 0.5BTC Carol Carol Secret Carol Hash TX Alice c2 input Alice & Bob 1BTC output Bob 0.5BTC output Alice after n blocks or Alice Revoke Hash2 & Bob 0.4BTC output Carol Hash & Bob or Alice Revoke Hash2 & Bob or Alice after t2 0.1BTC TX Bob c2 input Alice & Bob 1BTC output Alice 0.4BTC output Bob after n blocks or Bob Revoke Hash2 & Alice 0.5BTC output Carol Hash & Bob after m blocks or Bob Revoke Hash2 & Alice or Alice after t2 0.1BTC Bob Revoke Secret1 Alice Revoke Secret2 Carol Hash Bob Revoke Hash2 Alice Revoke Hash2 Alice Revoke Secret1 Carol Hash Bob Revoke Secret2 Bob Revoke Hash2 Alice Revoke Hash2
  • 73. Flare: Lightning Network Routing Algorithm • I could not touch routing algorithm today. • Flare is very interesting approach. • http://bitfury.com/content/5-white-papers- research/whitepaper_flare_an_approach_to_routing_in_ligh tning_network_7_7_2016.pdf • However, I think it has a possibility for a node in the middle to encumber a R transfer(Carol Secret) in case of more than two nodes in the middle.