2016 年のホワイト ペーパーで提案された Lightning Network (LN) は、ビットコイン上に構築されたレイヤー 2 ソリューションです。LN は、ビットコインのスケーラビリティの問題、つまりビットコイン取引の速度とコストに対応するために作成されました。
ビットコインの現在の理論上の最大トランザクション数(TPS)は10ですが、実際には3〜7です。これを、2020年に平均6,000 TPSを処理したVISAなどの従来の支払いプロセッサと比較してください(VISAの主張に基づくと、年間1,880億件のトランザクション)。
ビットコインの取引手数料は、ネットワークを使用する現在の需要に応じて大きく異なる場合があります。たとえば、2021年4月20日の平均取引手数料は50ドルを超えていましたが、2021年8月9日の平均は約2.50ドルでした。銀行振込や国際送金などの大規模な取引の場合、ビットコインの速度とコストは他の方法と同等かそれ以上です。しかし、ビットコインを日常の支払い(コーヒー1杯、ガソリンなどのいわゆるマイクロトランザクション)に使用する場合は、取引速度を上げ、取引コストを大幅に削減する必要があります。
理論上のライトニングネットワーク
LN の仕組みと現在の LN の課題を理解するには、ビットコインについて話す必要があります。ビットコイン ネットワークの制限要因は、すべてのトランザクションをチェーン上の新しいブロックに入れる必要があることです。ブロックは約 10 分ごとにチェーンに追加されるため、ビットコイン プロトコルを大幅に変更せずに実行できるトランザクションの数には厳しい制限があります。
ビットコイン プロトコルの大幅な変更に関する議論はこれまでにも行われており、その結果「ハードフォーク」が発生し、最も有名なのはビットコイン キャッシュの誕生です。ライトニング ネットワークは、新しいブロックチェーンを作成するのではなく、レイヤー 2 ソリューションです。つまり、ビットコイン プロトコルは比較的変更されずに、大幅な変更によってもたらされるメリットが (少なくとも理論上は) 提供されます。
LN は、2 者間の支払いチャネルを設定することで機能します。このチャネルでは、最初と最後のトランザクションのみが Bitcoin ブロックチェーンに配置されます。最初と最後のトランザクション間の任意の数のトランザクションはオフチェーンで発生するため、これらのトランザクションは Bitcoin プロトコルによって制限されません。
支払いチャネルを開始するには、双方が一定量のビットコインをコミットする必要があります。そのビットコインは保持され、支払いチャネルが開いている限り解放できません。このチャネルを通じて転送できるビットコインの合計量は、コミットされたビットコインの合計量です。これを説明するために例を見てみましょう。
アリスとボブは、お互いに支払いチャネルを形成したいと考えています。アリスは 10 BTC、ボブは 5 BTC を支払いチャネルにコミットします。アリスとボブの合計 15 BTC を含む最初のトランザクションが、ビットコイン ブロックチェーンに配置されます。トランザクションがブロックチェーンに追加されると (10 分以上かかる場合があります)、アリスとボブは、はるかに高速で、実質的にコストなしで無制限にトランザクションを行うことができます。以下は、アリスとボブの間のトランザクションです。
アリスはボブに1BTCを送ります アリス: 9BTC ボブ: 6BTC
アリスはボブに2BTCを送ります。アリス: 7BTC ボブ: 8BTC
ボブはアリスに3BTCを送ります。アリス: 10BTC ボブ: 5BTC
ボブはアリスに1BTCを送ります。アリス: 11BTC ボブ: 4BTC
どちらか一方または両方がチャネルを閉じる場合、アリスとボブの最終残高を含む終了トランザクションがブロックチェーンに送信されます。この場合、アリスの最終残高は 11 BTC、ボブの最終残高は 4 BTC です。
アリスがキャロルと取引したい場合はどうなるでしょうか? ボブはキャロルとの支払いチャネルを持っているので、アリスはボブと取引し、ボブは取引をキャロルに渡します。このシナリオでは、ボブは取引を渡すために少額の支払いを受ける可能性があることに注意してください。時間の経過とともに、6次の分離理論により、LN はアリスが他の誰とでも取引できるようにします。
ライトニングネットワークの実践
LN はまだテスト段階にある新しいプロトコルです。そのため、使いやすさからセキュリティに至るまで、多くの課題に直面しています。
LN ノードの実行がどれだけ簡単かという懸念があります。LN が成功するには、LN プロトコルを実行するビットコイン ノードの堅牢なネットワークが必要です。LN ノードの実行は非常に難しい場合があり、小規模なノードを実行する場合の支払いインセンティブの問題が発生する可能性があります。ただし、LN の実行は完全なビットコイン ノードを実行するよりもそれほど難しくないと主張することもできます。ただし、LN は主にマイクロトランザクションを対象としているため、LN での日常的な使用は LN 対応ウォレットを通じて行われます。LN 対応ウォレットはあまりユーザーフレンドリーではなく、これらのウォレットのほとんどは、まだ公開テスト段階であるため、多額の資金を入金しないことをお勧めします。より確立されたビットコイン ウォレットとは異なり、これらの LN 対応ウォレットは新しいため、カストディバージョンと非カストディバージョンの間にトレードオフがあります。非カストディアル LN ウォレットは使い方が少し難しく、わかりにくくなっています。カストディオプションは使いやすいですが、ビットコインを第三者に頼る必要があります。
最後に、そして最も心配なことに、LN は数多くの脆弱性に直面しています。これには以下が含まれます。
グリーフィング攻撃: 資金は失われませんが、被害者の Lightning 資金が凍結され、支払いチャネルがトランザクションを処理できなくなります。
フラッドと略奪: 攻撃者は、多くの被害者にブロックチェーンから同時に資金を請求するよう強制します (フラッド)。攻撃者は、この混雑を利用して、期限までに請求できなかった資金を盗みます (略奪)。
時間遅延攻撃: 攻撃者はブロックの配信を遅らせることで、被害者が新しいブロックに気付く時間を長くします。
ピンニング攻撃: 攻撃者は被害者を騙して LN チャネルを不適切に閉じさせ、個々のトランザクションを盗みます。