Skip to main content
QUICK REVIEW

[論文レビュー] Probing Channel Balances in the Lightning Network

Sergei Tikhomirov, Rene Pickhardt|arXiv (Cornell University)|Apr 1, 2020
Lightning and Electromagnetic Phenomena参考文献 11被引用数 22
ひとこと要約

この論文は、HTLCベースのエラーレスポンスを悪用する低コストで逆転可能なプローブ技術を用いて、攻撃者が効率的にライトニングネットワークチャネルの残高分布をプローブし推定できることを示している。この手法により、1チャネルあたり1分未塔で残高を特定でき、資金の最小限のコミットメントで実現され、LNの設計におけるプライバシーと効率のトレードオフが顕在化される。

ABSTRACT

As Lightning network payments are neither broadcasted nor publicly stored. Thus LN has been seen not only as scalability but also as privacy solution for Bitcoin. The protocol guarantees that only the latest channel state can be confirmed on channel closure. LN nodes gossip about channels available for routing and their total capacities. To issue a (multi-hop) payment, the sender creates a route based on its local knowledge of the graph. As local channel balances are not public, payments often fail due to insufficient balance at an intermediary hop. In that case, the payment is attempted along multiple routes until it succeeds. This constitutes a privacy-efficiency tradeoff: hidden balances improve privacy but hinder routing efficiency. In this work, we show that an attacker can easily discover channel balances using probing. This takes under a minute per channel and requires moderate capital commitment and no expenditures. We describe the algorithm and test our proof-of-concept implementation on Bitcoin's testnet. We argue that LN's balance between privacy and routing efficiency is suboptimal: channel balances are neither well protected nor utilized. We outline two ways for LN to evolve in respect to this issue. To emphasize privacy, we propose a modification of error handling that hides details of the erring channel from the sending node. This would break our probing technique but make routing failures more common, as the sender would not know which channel from the attempted route has failed. To improve efficiency, we propose a new API call that would let the sender query balances of channels that it is not a party of. We argue that combining these approaches can help LN take the best of both worlds: hide private data when feasible, and utilize public data for higher routing efficiency.

研究の動機と目的

  • プライバシー保証があるにもかかわらず、ライトニングネットワークのチャネル残高がプロービング攻撃にさらされている範囲を調査すること。
  • HTLCベースのエラーレスポンスを用いたチャネル残高のプロービングの実現可能性とコストを評価すること。
  • 隠れた残高がルーティング効率を妨げるため、LNの現在の設計におけるプライバシーと効率のトレードオフを特定すること。
  • ネットワークのコアプロパティを損なわずに、プライバシーやルーティング効率の両方を改善する解決策を提案すること。
  • プロービングがネットワーク安定性に与える影響およびハング状態のHTLCのリスクを評価すること。

提案手法

  • 攻撃者は、複数のルートをプローブできる十分な容量を持つ少数のエントリーチャネルを開設する。
  • 攻撃者は、マルチホップルートに沿って増加する金額のHTLCを送信し、エラーレスポンスに基づいてターゲットチャネルの残高を推定する。
  • この手法は、中間ノードがチャネルに十分な残高がない場合に即座にエラーを返すという事実に依存しており、失敗したチャネルの残高が露呈される。
  • 攻撃者は複数のルートを用い、ハング状態のHTLCを含むチャネルを避けるために、より小さいプローブ金額を使用するか、異なる経路で再試行する。
  • この技術は逆転可能である:すべての失敗したHTLCはプロービング後にクリアされるため、資金は永続的に失われない。
  • 著者らは、c-lightning実装を用いて、Bitcoinのテストネット上でプロービング手法を実装・テストした。

実験結果

リサーチクエスチョン

  • RQ1攻撃者がチャネル状態の直接アクセスや知識なしに、ライトニングネットワークチャネルの残高を推定できるか?
  • RQ2HTLCとエラーレスポンスを用いたチャネル残高プロービングのコストと時間効率はどの程度か?
  • RQ3並列チャネルの存在が、プロービング攻撃の信頼性にどのように影響するか?
  • RQ4現在のLN設計が、エラーメッセージを通じた残高漏洩によって、どの程度プライバシーを損なっているか?
  • RQ5プライバシーとルーティング効率のバランスを改善するためのアーキテクチャ的変更は何か?

主な発見

  • 攻撃者は、テストネット上でのアクティブなチャネルの90%以上を、1チャネルあたり1分未塔でプローブし、残高を特定できる。
  • プロービング攻撃には最小限の資金コミットメントで済む(完全カバレッジに要する最大資金は0.167 BTC(約1500ドル))。これは、失敗したHTLCが逆転可能であるためである。
  • 攻撃はスケーラブルである:少数のエントリーチャネルを持つ1人の攻撃者でも、任意に長いルートを用いてネットワーク全体をプローブできる。
  • ハング状態のHTLCが存在するとプロービング効率が低下するが、攻撃者はより小さいプローブ金額を使用するか、複数のエントリーチャネルを用いることでこれを緩和できる。
  • 現在のLNのエラーハンドリングは、重要な残高情報が漏洩しており、オニオンルーティングのプライバシー保証を損なっている。
  • 本研究は、現在の残高プライバシーモデルが最適でないことを確認した。これは、残高を保護できないばかりか、公開残高データの欠如により効率的なルーティングも実現できないからである。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。