ライトニングネットワーク用語でPrivate Channelという用語を見たことがありますか?本コラムでも数回は使用していますが、きちんと説明したことはなかったように思います。「結局Private Channelってなんなの?」そんなあなたのために、今日はPrivate Channelについてわかりやすく解説します。

BitMEX Researchは年初の時点でPrivate ChannelがLNの総チャネル数に占める割合を28%、残高に占める割合を12%と推定しています。

用語の整理:"Public" vs "Private"

Private Channelとは、通常のチャネルであるPublic Channel (Routing Channel)と対になる名称です。ということで、まずはRouting Channelを詳しく見ていき、Private Channelはそれとどう異なるか比較してみましょう。

Routing Channelはライトニングネットワーク上の送金経路となりうるチャネルのことです。Routing Nodeと呼ばれる中継手数料を得ることが目的のノードが運用しており、送金経路として選んでもらうためにLN上の他のノードにRouting Channelの存在を告知して、いつでも送金経路として選べるよう常にオンラインでいる必要があります。また、中継が失敗しないように、チャネルの残高を送金可能額・受金可能額にある程度バランスよく配分しておく必要があります。このため、Routing Nodeの運用はカジュアルユーザー向けではなく、どちらかというとマニアや事業者向けになっていくと考えられています。

Routing Node = 送金を中継することがある、常時オンラインのノード

Routing Channel = 送金の中継に使ってもらう目的でRouting Nodeがネットワークに存在を告知するチャネル

一方でPrivate Channelとは、送金の中継を目的としないエンドユーザーが特定のノードとの間に結ぶチャネルで、ネットワーク全体には告知されないもののことを言います。Private Channelを結んだ相手のノードは多くの場合ウォレット事業者などのRouting Nodeですが、エンドユーザーとのPrivate Channelをたくさん持つRouting NodeをGateway Nodeと言ったりします。

Private Channelしか持たず、他のノードによって送金経路として使うことができないノードをNon-routing Nodeといいます。これらのノードは存在自体がネットワークには告知されません。(Routing Hintというものを使って送受金ができます。)

Non-routing Node = Private Channelのみを持つ、送金を中継しない、ネットワークの終端のノード

Private Channel = 他者の送金の中継を目的としないため、ネットワークには存在が告知されないチャネル

Gateway Node = Non-routing NodeとのPrivate Channelを多数もつRouting Node (Private Channelで繋がるエンドユーザーの送金を中継するノード)

これを踏まえ、ライトニングネットワークを図で示すとこうなります:

Non-routing Node 多数    <<<エンドユーザー

~Private Channel(s)~    <<<関係者にしか見えない

Gateway Node (Routing Node) <<<主に事業者

~Routing Channel(s)~    <<<誰にでも見える

Routing Node(s)       <<<主に事業者

~Routing Channel(s)~    <<<誰にでも見える

Gateway Node (Routing Node) <<<主に事業者

~Private Channel(s)~     <<<関係者にしか見えない

Non-routing Node 多数    <<<エンドユーザー

どういうメリットがあるのか

さて、用語を整理したところで、Private Channelの存在にはどういうメリットがあるのか見ていきましょう。

まずは、利便性です。Routing Nodeを運用するには前述の通り、常時オンラインにしたりチャネルのバランスを保つ必要があります。スマホでときどきライトニングウォレットを利用したい程度のユーザーにとっては負担が大きすぎるので、そのようなユーザーはPrivate Channelを使うことで常時オンラインでいる必要がなくなります。ただし、接続するGateway Nodeがある程度トラストできる相手である必要があるのと、ずっと使っていないと資金効率を上げるためチャネルを閉じられることがあります。

次にプライバシーです。Private ChannelやNon-routing Nodeはネットワークから見えないので、ネットワークの分析に関してはRouting Nodeと比較してプライバシー面で有利といえます。ただし、Gateway Nodeにはネットワークの終端だと知られているので、その点ではプライバシー面は圧倒的に不利かもしれません。(一方で、多くの人が複数のPrivate Channelを持っていれば、送金ごとにどの事業者を通すか選択することができます。)

関連して、セキュリティ面でのメリットもあります。以前にいくつか紹介しているようなLNでの理論上の攻撃は、送金の中継もしくはチャネルの受け入れが被害に遭う原因となります。したがって、Non-routing Nodeを使うことで影響を回避することができます。

どういう場面で使われるのか

実際にPrivate Channelが使われている一番の場は、モバイル向けのライトニングウォレットです。例えばノンカストディアルなライトニングウォレットのBreezを利用する場合、アプリを利用開始する際にPrivate Channelが開設されます。勝手に送金が中継されることで残高が偏ったりしないので、Breez側でチャネルの管理がしやすいというメリットがあります。(ネットワーク全体でも、質の低いRouting Channelが少ないほうが経路の計算が楽です。)

他にも、アプリに組み込まれて利用されるケースも考えられます。ユーザーがアカウントを開設した時点でPrivate Channelを張ることで、ユーザーにライトニングノードを意識させることなく送金したり、簡単な操作でアプリ内課金をすることができるかもしれません。(実質アプリがウォレットになるというだけのことですが、UXの改善にはなるかもしれません。)

DonnerLabが開発しているFPSゲーム"Bitcoin Bounty Hunt"もこのような形になっていたような気がします。(残念ながら今はなぜか起動がうまくいかないので確認できていません)

まとめ

今回はPrivate ChannelとRouting Channelの違いを用語、役割、そして用途から解説しました。現在もチャネル数の28%がPrivate Channelと推定されるように、ウォレットのインストールが増えれば主流になっていくのはPrivate Channelだと考えられます。

これまでライトニングネットワークはどちらかというと利用に対して流動性が過多でしたが、もしネットワークのユーザーを表すPrivate Channelが増加して流動性不足を招き中継手数料が上昇すれば、やっとRouting Nodeのインセンティブが強化されてライトニングネットワークの全体的な成長に繋がるかもしれません。

Private Channel数は直接観測することが非常に難しいデータですが、アクティブユーザー数を測る上で一番正確なものかもしれないので、今後もBitMEX Researchと同様の手法で観測される数値には注目したいところです。

BitMEX Researchが用いた手法は、Routing Channel数から推測されるチャネルの非協力的クローズの数と、実際の非協力的クローズの数の差をPrivate Channelによるものとする手法で、かなりざっくりとしたものです。

Lightning Network (Part 7) - Proportion Of Public vs Private Channels | BitMEX Blog
Abstract: Following on from our January 2020 piece on our database of at least 60,000 non-cooperative lightning network channel closures, we were asked how many of these were public channels vs private ones. We have used the 1ml.com database of public lightning channels and cross referenced it with…