Slide 1

Slide 1 text

Lightning Network 技術的ではない概要の説明


Slide 2

Slide 2 text

Lightning Networkって?
 Bitcoinのブロックチェーンを 間接的に使ってBitcoinを送金するしくみ。 
 


Slide 3

Slide 3 text

何がうれしいの?
 ● 送金完了=決済完了
 ○ マイニングされるまで待つ、というような時間が不要 
 ● サーバ不要
 ○ Bitcoinと同じく、誰かに情報登録するようなことはしない 


Slide 4

Slide 4 text

その代わり・・・
 ● Lightning Networkというネットワークに参加しないと使えない 
 ○ ネットワーク上の誰かと接続する 
 ○ 接続するだけじゃなく、その間に「チャネル」というBitcoinアドレスを作って、どちらかが送金しないといけない 
 ○ チャネルを作るところまではBitcoinなので、マイニングされるまで時間がかかる 
 ● チャネルに入っているBitcoin量の範囲でしか送金できない 
 ○ 2人の間のBitcoin量が増減することで送金を表現しているので、後から追加できない 
 ■ 将来の仕様で検討中 
 ● 送金先の相手が、そのタイミングでネットワーク上に存在していないとダメ 
 ○ Bitcoinだとブロックチェーンに書き込めばよいので、相手の状態は気にしなくてよい 
 ● しくみが複雑
 ○ 説明しても、誰も理解してくれない・・・ 


Slide 5

Slide 5 text

よくあるLightning払い (1)
 今日もおいしかったよ。 
 サバが特に良かった。 
 ありがとうございます。 
 次回はカツオの季節ですね。 
 QR code こちらで
 お支払い
 ください。


Slide 6

Slide 6 text

よくあるLightning払い (2)
 QRコードを読み込ん で、支払い、っと


Slide 7

Slide 7 text

よくあるLightning払い (3)
 ・・・ ・・・ ・・・

Slide 8

Slide 8 text

よくあるLightning払い (4)
 ありがとうございます! また 来るよ いただき ました!


Slide 9

Slide 9 text

何が行われていたのか?
 最初のこのシーンでは、支払いを受ける人が、支払う人に対してQRコードを渡している。 
 このQRコードは「invoice」(請求書)と呼ばれるもので、以下のような情報が入っている。 
 ● invoiceを作成した人だけがチェックできるデータ 
 ○ payment hashやR-HASHなどと呼ばれる 
 ● 送金してほしい金額
 ○ 単位:msat=1000分の1 satoshi=1000億分の1 BTC 
 ● invoiceを作成した日時
 ● invoiceの有効期間
 ● invoice作成者のデジタル署名 


Slide 10

Slide 10 text

何が行われていたのか?
 このシーンでは、スマートフォンにインストールされているLightning WalletアプリケーションでinvoiceのQRコー ドを読み取っている。
 ここでは以下を前提とした。 
 ● 既にLightning Networkに参加している 
 ● Lightning Networkで支払うのに十分な金額がある 
 もし参加していなければQRコードを読む前に参加を促されるだろうし、金額が足りないようであればQRコード を読み取った時点で警告されて支払うことができない。 


Slide 11

Slide 11 text

何が行われていたのか?
 そしてこのシーン。
 ここではいろいろなことが内部で行われている。 
 ● 支払いするLightning Networkの選択 
 ○ 各Networkの人には中継手数料を払う(少額だが) 
 ● 実際に送金したものの、途中でNetworkが切断されていたので選択のやり直し 
 ○ 成功するまで繰り返すので、たまに時間がかかることがある 
 ● 相手まで送金する意思が届いたので、送金側が間違いないか確認 
 ● 送金情報に問題がなかったので、受け取った証明データを返す 
 ● 送金した人が、受け取った証明データに問題が無いことを確認 
 ・・・ ・・・ ・・・

Slide 12

Slide 12 text

何が行われていたのか?
 そして、全部問題なかったのでOKとなりました。 
 めでたしめでたし。
 
 もしどこかでOKにならなかった場合? 
 それは、送金失敗、になるだけである。 
 送金額が足りているのに失敗する場合は、自分と支払先のNetworkがどこかで切断されていることになるの で、どうにかしてNetworkを作らないと先に進めない。 
 一番簡単なのは、送金先と直接Networkを作ることだろうが、作成完了まで時間がかかる・・・ 


Slide 13

Slide 13 text

Bitcoinを取り戻す Lightning Networkでの送金は、Lightning Network内で行われているだけなので、 Bitcoinとして使いたいので あればBitcoinとして取り戻すことになる。 Lightning Networkへ参加する場合は、別の参加者との間に Bitcoinアドレスを用意し、そこに送金した。 取り戻す場合はその逆で、送金した Bitcoinアドレスからそれぞれに払い戻すことになる。 それはすなわち、そのルートでの Lightning Networkへの参加を 止めることを意味する。 なお、同時に複数のLightning Networkルートを作っておくのは 問題ない(むしろ、そちらの方が普通かもしれない )。 MultiSig 参加 取り戻す=離脱

Slide 14

Slide 14 text

おわりに
 Lightning Networkの概要を紹介した。 
 雰囲気だけでもつかんでもらえれば幸いである。 
 実際に動かしてみると、読んで想像したのと違うという印象を受けるのではないかと思う。 
 testnetであれば失敗しても金額的に損はしないので、ぜひ体験していただきたい。