Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Lightning Networkとは
Search
Nayuta
May 25, 2019
Technology
0
230
Lightning Networkとは
Lightning Networkを簡単に説明
Nayuta
May 25, 2019
Tweet
Share
More Decks by Nayuta
See All by Nayuta
Lightning Networkノード運用(2019年6月版)
nayutainc
1
320
Lightning Network Ptarmigan Hands-on
nayutainc
0
200
How to use Lightning Software
nayutainc
0
180
For_BCCC(20190520)
nayutainc
0
260
Other Decks in Technology
See All in Technology
「Roblox」の開発環境とその効率化 ~DAU9700万人超の巨大プラットフォームの開発 事始め~
keitatanji
0
140
GISエンジニアよ 現場に行け!
sudataka
1
140
なごミュ@SPAJAM2025 第二回予選
1901drama
0
110
JAWS-UG のイベントで使うハンズオンシナリオを Amazon Q Developer for CLI で作ってみた話
kazzpapa3
0
120
Amazon GuardDuty での脅威検出:脅威検出の実例から学ぶ
kintotechdev
0
130
薬屋のひとりごとにみるトラブルシューティング
tomokusaba
0
390
工業高校で学習したとあるエンジニアのキャリアの話
shirayanagiryuji
0
120
Agent Development Kitで始める生成 AI エージェント実践開発
danishi
0
160
オブザーバビリティ文化を組織に浸透させるには / install observability culture
mackerelio
0
320
Foundation Model × VisionKit で実現するローカル OCR
sansantech
PRO
1
420
【OptimizationNight】数理最適化のラストワンマイルとしてのUIUX
brainpadpr
2
550
データモデリング通り #2オンライン勉強会 ~方法論の話をしよう~
datayokocho
0
190
Featured
See All Featured
Art, The Web, and Tiny UX
lynnandtonic
301
21k
jQuery: Nuts, Bolts and Bling
dougneiner
64
7.8k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Code Reviewing Like a Champion
maltzj
525
40k
Facilitating Awesome Meetings
lara
55
6.5k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.4k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
How STYLIGHT went responsive
nonsquared
100
5.7k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
183
54k
Git: the NoSQL Database
bkeepers
PRO
431
65k
Transcript
Lightning Network 技術的ではない概要の説明
Lightning Networkって? Bitcoinのブロックチェーンを 間接的に使ってBitcoinを送金するしくみ。
何がうれしいの? • 送金完了=決済完了 ◦ マイニングされるまで待つ、というような時間が不要 • サーバ不要 ◦ Bitcoinと同じく、誰かに情報登録するようなことはしない
その代わり・・・ • Lightning Networkというネットワークに参加しないと使えない ◦ ネットワーク上の誰かと接続する ◦ 接続するだけじゃなく、その間に「チャネル」というBitcoinアドレスを作って、どちらかが送金しないといけない
◦ チャネルを作るところまではBitcoinなので、マイニングされるまで時間がかかる • チャネルに入っているBitcoin量の範囲でしか送金できない ◦ 2人の間のBitcoin量が増減することで送金を表現しているので、後から追加できない ▪ 将来の仕様で検討中 • 送金先の相手が、そのタイミングでネットワーク上に存在していないとダメ ◦ Bitcoinだとブロックチェーンに書き込めばよいので、相手の状態は気にしなくてよい • しくみが複雑 ◦ 説明しても、誰も理解してくれない・・・
よくあるLightning払い (1) 今日もおいしかったよ。 サバが特に良かった。 ありがとうございます。 次回はカツオの季節ですね。
QR code こちらで お支払い ください。
よくあるLightning払い (2) QRコードを読み込ん で、支払い、っと
よくあるLightning払い (3) ・・・ ・・・ ・・・
よくあるLightning払い (4) ありがとうございます! また 来るよ いただき ました!
何が行われていたのか? 最初のこのシーンでは、支払いを受ける人が、支払う人に対してQRコードを渡している。 このQRコードは「invoice」(請求書)と呼ばれるもので、以下のような情報が入っている。 • invoiceを作成した人だけがチェックできるデータ ◦ payment
hashやR-HASHなどと呼ばれる • 送金してほしい金額 ◦ 単位:msat=1000分の1 satoshi=1000億分の1 BTC • invoiceを作成した日時 • invoiceの有効期間 • invoice作成者のデジタル署名
何が行われていたのか? このシーンでは、スマートフォンにインストールされているLightning WalletアプリケーションでinvoiceのQRコー ドを読み取っている。 ここでは以下を前提とした。 • 既にLightning Networkに参加している
• Lightning Networkで支払うのに十分な金額がある もし参加していなければQRコードを読む前に参加を促されるだろうし、金額が足りないようであればQRコード を読み取った時点で警告されて支払うことができない。
何が行われていたのか? そしてこのシーン。 ここではいろいろなことが内部で行われている。 • 支払いするLightning Networkの選択 ◦ 各Networkの人には中継手数料を払う(少額だが)
• 実際に送金したものの、途中でNetworkが切断されていたので選択のやり直し ◦ 成功するまで繰り返すので、たまに時間がかかることがある • 相手まで送金する意思が届いたので、送金側が間違いないか確認 • 送金情報に問題がなかったので、受け取った証明データを返す • 送金した人が、受け取った証明データに問題が無いことを確認 ・・・ ・・・ ・・・
何が行われていたのか? そして、全部問題なかったのでOKとなりました。 めでたしめでたし。 もしどこかでOKにならなかった場合? それは、送金失敗、になるだけである。 送金額が足りているのに失敗する場合は、自分と支払先のNetworkがどこかで切断されていることになるの
で、どうにかしてNetworkを作らないと先に進めない。 一番簡単なのは、送金先と直接Networkを作ることだろうが、作成完了まで時間がかかる・・・
Bitcoinを取り戻す Lightning Networkでの送金は、Lightning Network内で行われているだけなので、 Bitcoinとして使いたいので あればBitcoinとして取り戻すことになる。 Lightning Networkへ参加する場合は、別の参加者との間に Bitcoinアドレスを用意し、そこに送金した。 取り戻す場合はその逆で、送金した
Bitcoinアドレスからそれぞれに払い戻すことになる。 それはすなわち、そのルートでの Lightning Networkへの参加を 止めることを意味する。 なお、同時に複数のLightning Networkルートを作っておくのは 問題ない(むしろ、そちらの方が普通かもしれない )。 MultiSig 参加 取り戻す=離脱
おわりに Lightning Networkの概要を紹介した。 雰囲気だけでもつかんでもらえれば幸いである。 実際に動かしてみると、読んで想像したのと違うという印象を受けるのではないかと思う。 testnetであれば失敗しても金額的に損はしないので、ぜひ体験していただきたい。