ライトニングでセルフカストディをしようと思うと、最低でも自分でチャネルを保有する必要があり、よりトラストレス性を高めようと思えば自分のノードを立てることになります。したがって、世の中にあるセルフカストディ型のライトニングウォレットはこのいずれかの形をとっています。
しかし、この使い方にはコストがつきものです。例えばチャネルの開設には今のオンチェーン手数料が低迷している環境でも数十円、場合によっては数千円以上になることも考えられます。ライトニングノードの維持も無料ではありません。(趣味で維持している場合は無料のように考えてしまいますが)
ライトニングはカストディ型で普及する、という今では主流の主張はこれらのコスト面と、それに関連したユーザーエクスペリエンスの問題を根拠にしています。コストやUXの課題を軽減しつつ、セルフカストディを捨てない折衷案はないのでしょうか?
今日はその折衷案として考えられる、ライトニングが使えるセルフカストディ型のウォレット方式を2つ考えてみます。
・現行のセルフカストディ型ライトニングウォレットは大別して2種類に分かれ、それぞれに課題がある
・Mutiny Walletが挑戦したEcash/LNハイブリッド型はノンカストディアルか?
・Arkの併用はライトニングウォレットとして現実的か?
現行のセルフカストディ型ライトニングウォレットは大別して2種類に分かれ、それぞれに課題がある
冒頭でも紹介したように、現行のセルフカストディ型ライトニングウォレットは2種類に大別できます。ユーザーがチャネルのみ持っているもの(以下、LSP依存型)と、ユーザーが自身のノードを持っているもの(以下、セルフノード型)です。
LSPについては2020年の東晃慈氏の寄稿をご覧ください。
LSP依存型
LSP依存型のウォレットではユーザーの端末上には軽量版のライトニングノードが動作しており、ウォレット運営者のノードに対してチャネルを開設することで動作します。
多くの場合、チャネルの開設は初回の着金時に、LSP側によるチャネル開設をゼロ承認の段階で受け入れることで実現しています。開設費用は着金する金額から引かれることが一般的です。(例:Phoenix Wallet)
ユーザーの端末上のライトニングノードは基本的には広域のライトニングネットワークには接続せず、必要なデータはLSP側に依存していることが多いです。この設計によって(LSPをある程度トラストすることで)通信量の削減やオンライン要求を緩和します。チャネルを張る相手が当該LSPに限定されているため、不特定のノードによる攻撃等を心配する必要はありません。
このLSP依存型のウォレットが現在のセルフカストディ型ライトニングウォレットの王道です。主なコストはチャネルの開設・閉鎖費用と、LSPの資金拘束に対する対価(金利ないし送金手数料)です。
費用面では割と合理的ですが、LSPを使ったライトニングウォレット自体の実装コストが高かったり、ユーザーにチャネルの管理などをさせてしまう側面があり利用ハードルが高いとの指摘があります。また、より大きな問題として新規ユーザーに(少なくとも初回着金時には)必ずチャネルを割り当てることになりますが、オンチェーン手数料が高騰していればそれは難しくなり、また長期的にそのユーザーがどのように利用してくるかわからないため、どれくらいの大きさのチャネルを割り当てるかの目安もありません。
LSP経営の難しさを紹介した記事です。
このように、オンチェーン手数料の高騰に弱いこと、LSP自身の資金を拘束するコストがあることがスケーリングの課題になっています。
例えばユーザーが急に何万人も増えた場合、LSPの資金がショートしてしまう可能性だってあります。その急増したユーザーがその後一切使ってくれなくなった場合、チャネルの開設・閉鎖費用でLSPは大損です。アクティビティがなくなったチャネルをいつ閉鎖すべきかもはっきりしません。
セルフノード型
最近増えてきているのがGreenlightなどを使った、ユーザー自身のしっかりしたライトニングノードが割り当てられているライトニングウォレットです。Greenlightの場合はユーザー端末上ではなく、サーバー上に存在し、ユーザーの端末上には秘密鍵を含む署名機能のみが配置されます。
Greenlightについてはこの記事で紹介しています。
Elysium WalletやDiamond HandsのD WalletがGreenlightを用いたウォレットの例です。
こちらもLSPと併用することで「最初の着金時にチャネルが自動的に開設されるシームレスな体験」を実現でき、一般的にはそう利用されると考えられます。ただ、原理上はユーザー自身のフルノードとして自由に使える性格のものです。(署名機能がユーザーの端末上にあるため、24時間いつでも署名を求められる送金の中継などには向きませんが)
LSP依存型のウォレットはチャネルの開設・閉鎖費用やLSP側の資金拘束の対価(金利ないし送金手数料)が構造的なコストでしたが、セルフノード型はそこにさらにノード自体のホスティング費用がかかってしまいます。Greenlightでは軽量なノード実装であるCLNを採用しているとはいえ、無料には程遠いでしょう。すべてを合計すると月に数百円はコストがかかってしまいそうです。
例えばユーザーが急に数万人増えて、それぞれが数百~数千円程度の残高を持ってしまった場合に、ウォレットの収益だけでノードの維持コストを負担することは非現実的です。したがって、ユーザーにサブスクなどの形で負担をお願いすることになってしまいますが、カストディ型のものを含めると無料で提供されるライトニングウォレットが多いため、セルフノード型にこだわりを持つユーザーのみが使うニッチなアプリという立場に甘んじることになります。
LSP依存型、セルフノード型ともに問題は「ライトユーザーの扱い」であることが明確です。ユーザーあたりの送金金額が十分に大きければLSPの収益で諸費用はカバーできますが、現状のライトニング決済の普及率ではどうしようもありません。仮に平均的なユーザーが毎月10万円をライトニング決済していれば、0.5%の手数料で毎月500円となりどちらのモデルも成り立ちそうですが…。
Mutiny Walletが挑戦したEcash/LNハイブリッド型はノンカストディアルか?
ライトニングチャネルについてくる諸費用は、特に強制決済が発生すると大きな問題になります。去年、ブラウザで動作する初のセルフカストディ型ライトニングウォレットだったMutiny Walletは(人気ウォレットのZeusが対応した)Hodl Invoice絡みの強制決済が多発し、ライトニングコミュニティで揉めていました。
Zeusがオフライン受取りを目的にHodl Invoiceに対応したことがきっかけで、送金側となったMutiny Walletでチャネルの強制決済が多発。
そこで、Mutiny Walletは抜本的なリデザインを行い、ユーザーはライトニングチャネルではなくEcashを扱い、Mutinyが運営するLNノードをゲートウェイとして外部への支払いや受取りを行うというモデルに作り替えました。
これはカストディの側面に注目すると大きな変化です。なぜなら、Ecashトークン自体がセルフカストディだと言えても、事実上の裏付けとなっているビットコインはそうではないためです。(Fedimintを使っていればフェデレーション型のカストディとなり、やりようによっては日本の規制も納得させられるかもしれませんが。)
ユーザーごとにチャネル開設・閉鎖のコストがかからないため、もしこのモデルでサーバー運営者によるラグプル(盗難)を防ぐことができるのであれば非常に理想的です。
Arkの併用はライトニングウォレットとして現実的か?
あるいは、Arkという選択肢もあります。Arkについても過去に解説しています。
Ark内でオフチェーンのチャネル開設・閉鎖を行うというコンセプトもありますが、よりシンプルにArkを「いつでもオンチェーンに資金を出せるEcashサーバー」のようなものと考えてみましょう。この比較はBitcoin Tokyo 2024のセッション「ビットコインレイヤー2:それぞれの特徴と最適な用途」で少し取り上げました。
簡単にまとめれば、各参加者は残高をオフチェーントランザクション内のUTXO(VTXO)として保有しており、この残高分布(トランザクションのツリー)を定期的にArk Service Provider(ASP)がユーザーと協力して更新していくという形です。ライトニングとの接続も、ASP自身あるいは同じArk内の他のユーザーがゲートウェイ(ブリッジ)となってくれるモデルで、カストディとプライバシー以外の側面はEcashと非常によく似ています。
実際はASPの助けなしにオンチェーン出金するにはかなり手数料がかかってしまうと想定されるので、実質的にはある閾値を超えるまではASPをトラストしているようなものですが、これに関してはライトニングも同じです。
こちらはおそらく各国の規制もクリアできるのではないかと考えられるため、ライトニングをより普及させる手段として待望されています。残念ながら、ビットコインにコベナンツが導入されるまでは十分な使いやすさは実現しなさそうですが。(Covenantless Arkというものもありますが、でかいマルチシグなのでオンライン要件があります)
こちらもチャネル開設・閉鎖のコストがユーザーごとにかからないため、ノンカストディアルな中ではとても有望でしょう。強いて言えば、Ecashと異なりArkの「ラウンド」(トランザクションツリーの更新)が完了するまでの数分間は決済されていない(送金者とASPが共謀すれば送金を取り消せる)という細かい違いはあり、ここがユーザー体験にどう影響するかはまだわかりません。(ASPが運営するLNノード経由の出金には全く関係ありませんが)
まとめ
・エンドユーザーがライトニングチャネルやライトニングノードを持つモデルは、ライトユーザーにとって(LSPが負担するものを含め)コストが重たい
・Mutiny Walletが採用したEcashとライトニングを併用する方式はユーザーあたりのコストは低く、ユーザー体験も損なわないが、カストディ周りに従来のモデルと比較して妥協がある
・Arkが使えるようになれば、Mutiny Walletが採用したモデルのArk版(すなわち、ユーザーがパーミッションレスにオンチェーンに出金できる、完全なるノンカストディアル版)が実現できる見込みがあるが、数年後以降の話になってしまう
・セルフカストディ型ライトニングウォレットのあり方は今後もまだ変わっていく余地が大きい
