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
無意味な開発生産性の議論から抜け出すための予兆検知とお金とAI
i35_267
6
13k
[ JAWS-UG千葉支部 x 彩の国埼玉支部 ]ムダ遣い卒業!FinOpsで始めるAWSコスト最適化の第一歩
sh_fk2
2
110
【LT会登壇資料】TROCCO新コネクタ「スマレジ」を活用した直営店データの分析
kazari0425
1
110
AWS認定を取る中で感じたこと
siromi
1
190
インフラ寄りSREの生存戦略
sansantech
PRO
4
1.6k
Contributing to Rails? Start with the Gems You Already Use
yahonda
2
100
OSSのSNSツール「Misskey」をさわってみよう(右下ワイプで私のOSCの20年を振り返ります) / 20250705-osc2025-do
akkiesoft
0
170
SEQUENCE object comparison - db tech showcase 2025 LT2
nori_shinoda
0
150
PO初心者が考えた ”POらしさ”
nb_rady
0
220
LLM時代の検索
shibuiwilliam
2
360
スタートアップに選択肢を 〜生成AIを活用したセカンダリー事業への挑戦〜
nstock
0
250
Delegating the chores of authenticating users to Keycloak
ahus1
0
160
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
37
3.3k
How STYLIGHT went responsive
nonsquared
100
5.6k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
510
Building Applications with DynamoDB
mza
95
6.5k
Code Review Best Practice
trishagee
69
19k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
Typedesign – Prime Four
hannesfritz
42
2.7k
Why You Should Never Use an ORM
jnunemaker
PRO
58
9.4k
Making the Leap to Tech Lead
cromwellryan
134
9.4k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Unsuck your backbone
ammeep
671
58k
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であれば失敗しても金額的に損はしないので、ぜひ体験していただきたい。