11章ゴシップとチャネルグラフ

本章では、ライトニングネットワークのゴシッププロトコルを取り上げ、ノードがゴシッププロトコルを使ってチャネルグラフをどのように作成し、管理するかについて説明します。また、「ゴシップする」ピアの探索に使われるDNSブートストラップメカニズムも復習することにします。

図11-1では、枠で囲まれた部分(ルーティング層とピアツーピア層にまたがる「ルーティング手数料」と「ゴシップリレー」部分)に当たります。

ライトニングプロトコルスイートでのゴシッププロトコル

図11-1 ライトニングプロトコルスイートでのゴシッププロトコル

すでに学んだように、ライトニングネットワークはソースベースのオニオンルーティングプロトコルを使って支払人のペイメントを受取人に送信します。このため、支払人のノードはそのノードと受取人のノードをつなぐペイメントチャネルのパスを構築できなければなりません(この部分については、12章で説明します)。したがって、支払人はチャネルグラフを作成することでライトニングネットワークの地図を作成できるはずです。チャネルグラフは、外部に公表されたチャネルと、これらのチャネルによってリンクされるノードを相互に接続したものです。

チャネルはオンチェーンで実行されるファンディングトランザクションを使うため、ライトニングノードはビットコインブロックチェーンから既存のチャネルを取り出すだけでよい、と誤解してしまうかもしれません。しかし、そのようなことができるのはある程度までです。ファンディングトランザクションはP2WSH(Pay-to-Witness-Script-Hash)アドレスであり、ファンディングトランザクションのアウトプットが使用されるまで、スクリプトの性質(2-of-2マルチシグ)は明らかになりません。スクリプトの性質がわかっていたとしても、すべての2-of-2マルチシグスクリプトがペイメントチャネルに対応しているわけではありません。この点は重要なので覚えておいてください。 ...

Get マスタリング・ライトニングネットワーク ―ビットコインの迅速な支払いを実現するセカンドレイヤーブロックチェーンプロトコル now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.