ライトニングネットワークはお金の危険にさらされていますか? この記事では、その原理と治療法について説明します

オリジナル| オデイリープラネットデイリー

著者 | ナン・フェン

! [ライトニングネットワークは資金のリスクにさらされていますか? その原理と治療法を解説する記事(https://piccdn.0daily.com/202310/21153903/6kk6vnwj6zp8nyzo.png!webp)

はじめに

10月20日、ビットコインコア開発者/dev/fd0は、Xプラットフォームで、プロトコルレベルのセキュリティ問題の処理の調整を含む、ライトニングネットワークの開発とその実装への参加を停止すると発表しました。

/dev/fd0 は、各 ビットコイン ノードが独自のメモリプールを持つことを意味します。 トランザクションはピアによって転送されます。 ライトニングネットワークノードを使用してチャネルを開き、HTLC 転送を受け入れる場合、置換サイクル攻撃に対して脆弱です。

開発者が「代替ループ攻撃」と呼んでいるものと、それを実装する方法については、この記事で説明します。

ライトニングネットワーク

ビットコインネットワークのTPSは約7で手数料が高く、ライトニングネットワークはマイクロペイメントのニーズを解決するために作成されました。

ライトニングネットワークは、暗号通貨ネットワークのスケーラビリティとトランザクション速度に対応するように設計された、ビットコインおよびその他の暗号通貨向けのレイヤー2スケーリングソリューションです。

実装原則は次のように簡略化できます。

1.取引当事者AとBは「取引チャネル」(実際にはマルチシグウォレット)を確立します 2. AとBがそれぞれA1とB1を補充します(このステップはチェーン上にあります) 3. AとBにはオフチェーンのトランザクションがあり、AにはXの純送金があります(たとえば、Aは1元からBに100回、Bは99回Aに1元で送金し、最後にAは1元の純流出があります) 4. チェーン上のA1-XおよびB1 + Xトランザクションを更新する

上記のプロセスにより、AとBがオフチェーンで行うトランザクションの数に関係なく、2つのオンチェーン料金を支払うだけで済み、多くの時間を節約できます。

ハッシュタイムロックコントラクト (HTLC)

上記の形式は、AとBの間の直接トランザクションチャネルに限定されており、クロスチャネル支払いにはリレーノードが表示され、チャネル間で支払いを行うためにリレーノードは2つの間のトランザクションを転送し、リレーノードはチップを収集できます。

しかし、これは問題に直面しています:各チャネル内のすべての参加者が正直で信頼できることを確認する必要があります、そしてマルチチャネルリンクを介して安全です。

したがって、HTLC(ハッシュタイムロックコントラクト)の出現により、HTLCとの支払いトランザクションは次のように簡素化できます。

  1. Aは秘密のRを準備し、そのハッシュ値Hを計算します
  2. Aは制限時間Tを設定します
  3. AはHTLCでの支払い取引をBに送信し、次の2つの条件が満たされた場合にのみ取引が確定します
  • BはコードRに答えます(Hによって検証済み)
  • B回答はT以内(例:10ブロック以内)
  1. Bがコードを知らない場合、または答えがタイムアウトの場合、資金はAに返還されます

通常のトランザクションプロセス

上記のHTLCでは、中継ノードが関与する支払いは次のようになります。

1.最終的な受信者Cは、送信者Aにコードを提供します 2. AはハッシュHでHTLC支払いを開始します(現時点では資金はBの手に渡っていないことに注意してください) 3. B は支払い情報を受け取り、ハッシュ値 H を使用して C への HTLC 支払いを開始します。 4. C資金を受け取るには、コードに答え、資金を受け取ります。 Bもこの時点でコードを知っています 5. Bはコードを使用してAによって開始された支払いを取得し、資金を受け取り、トランザクションが完了します

! [ライトニングネットワークは資金のリスクにさらされていますか? 【原理と治療方法を説明する】(https://piccdn.0daily.com/202310/21153901/f5wdnvckblw5uctb.png!webp)

3つを含むプロセスは上記のとおりであり、さらにいくつかのリレーノードを途中で追加できますが、支払いモードは変更されず、チェーンを介して最終受信者に支払いを送信し、コードを最初のリレーノードにバックプロパゲーションして最終的にトランザクションを完了します。

リレーノードがコードR を受信しない場合(次のホームが応答しない場合、制限時間はリレーノード自体によって判断されます)、リレーノードはチャネルを閉じることを選択できます、**チェーンが成功した場合、**Bによって開始された支払いは「無効」になり、資金の損失はありません。 **

周期的な代替攻撃

HTLCの基本原理に戻ると、コードに応答することに加えて、リレーノードは「リレーノードがT内で応答する」という別の条件を満たす必要があり、悪意のある攻撃者はこのポイントを攻撃することを目的としています。

  1. AとCが悪意を持って共謀し、被害者は中継ノードBです(Bは3ブロック以内に回答するように要求します)
  2. AはBへの支払いを開始し(この時点でブロックの高さが1000であると仮定)、ブロック1020の前に回答を求めます
  3. B が C への支払を開始します (ブロック高さ 1005) 4.ブロックの高さが1008の場合、BはCが応答しないことを確認し、チャネルを閉じることを決定し、ブロック1009で有効になります
  4. Cは高ガス(1)とのトランザクションを開始し(ブロック1008)、Bによって開始されたトランザクションがメモリプールに入ることを不可能にする
  5. Cは高ガス(2)とのトランザクションを開始し(ブロック1009)、Bはまだメモリプールに入ることができません
  6. Cはブロック1020まで無限ループで動作し、秘密符号Rを与え、資金を引き出す

BはAが開始した支払いに応答する時間がなく、資金はAに返還され、Cへの支払いが確立され、最終的に「循環代替攻撃」が実装されます。 さらに、AとCは、Bのクロージングトランザクションをループ攻撃するために共謀することにより、二重支出を達成することもできます。

まとめ

上記の攻撃ベクトルは存在しますが、攻撃者がライトニングネットワークでやりたいことを何でもして資金を盗むことができるという意味ではなく、著者はローカルメモリプールとトランザクションリレートラフィックの監視、マイナーのメモリプール監視など、5つの対処方法も提案しています。

未来は明るく、道は曲がりくねっており、今年はオーディナルズ、BRC-20、タップルートアセットなどの一連の新しいものがビットコインネットワークで生まれました。

参考文献

原文表示
このページには第三者のコンテンツが含まれている場合があり、情報提供のみを目的としております(表明・保証をするものではありません)。Gateによる見解の支持や、金融・専門的な助言とみなされるべきものではありません。詳細については免責事項をご覧ください。
  • 報酬
  • コメント
  • 共有
コメント
0/400
コメントなし
いつでもどこでも暗号資産取引
qrCode
スキャンしてGateアプリをダウンロード
コミュニティ
日本語
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)