製品の観点からクロスチェーントラックの設計ロジックを詳細に分析
先知实验室
2022-02-23 14:00
本文约5202字,阅读全文需要约21分钟
常に変化するクロスチェーン ソリューションにより、クロスチェーン トラックの設計ロジックを深く分析できます。

序文:

序文:

最近頻繁に発生するクロスチェーンのセキュリティ問題は市場の幅広い注目を集めていますが、この記事では製品設計の観点から始めて、なぜこの分野で製品のセキュリティ問題がこれほど多く発生しているのかを読者に伝えたいと考えています。この記事で指摘されている問題はすべてのプロジェクトに存在するわけではないことを宣言する必要があります。ほとんどの問題は、関連する対処戦略を使用して設計されています。主な目的は、より多くの人がこのトラックの複雑さを理解できることを期待することです。

副題

01. 変わり続けるクロスチェーンソリューション

前回の調査報告書では実際に数種類の情報クロスチェーンソリューションを皆さんに説明してきましたが、最終的にどのようなプレゼンテーションになろうとも、プロダクトデザインの観点からはサイドチェーン(本文では広義のサイドチェーン)のみを話します。ロールアップの仕組みは、サイドチェーン、ハッシュタイムロック、公証人の 3 つのメカニズムに要約することもできます。

(1) 側鎖

3 つのスキームの中で、サイドチェーン スキームは、さまざまなロールアップやポルカドット パラチェーンなど、最も高いセキュリティを備えています。セキュリティはメインチェーンとサイドチェーンの間で共有されます。ただし、サイドチェーン スキームでは通常、元のチェーンとターゲット チェーンが同型である必要があるため、適用できるシナリオははるかに少なくなります。これは、セキュリティを共有できないクロスチェーン ソリューションには問題が多すぎるため、Vitalik がマルチチェーンには同意するがクロスチェーンには同意しない理由でもあります。

(2) ハッシュタイムロック

このソリューションは、最も分散化されたピアツーピアの異種クロスチェーン ソリューションであると主張していますが、コストが高く、ユーザーの待ち時間が長すぎるため、現在の導入率は高くありません。そして、通貨交換の中間ノードとして機能するサードパーティが依然として必要な場合、セキュリティと分散化の要件を満たす、いわゆる中間コンセンサス層も必要になります。

(3) 公証人の仕組み

これは現在最も一般的に使用されているヘテロジニアス クロスチェーン ブリッジ ソリューションであり、市場に出回っているほとんどの製品は基本的に同じ起源を持ち、製品設計の観点からはほとんど違いがありません。主な違いは、情報検証の方法と手順、公証人のコンセンサスアルゴリズム、エスクローウォレットの署名アルゴリズムなどに焦点を当てることができます。ユーザーエクスペリエンスと安全性の点では大きな違いはありません。したがって、セキュリティの観点から見ると、直面するセキュリティ リスクにも多くの共通点があります。

副題

02. 公証人機構のプロダクトロジックフロー

公証メカニズムが直面するさまざまなリスクを理解する前に、このタイプのソリューションの設計ロジックを製品の観点から理解する必要があります。

(1) 簡単な紹介

画像の説明

最も簡素化されたクロスチェーンプロセス

(2) 設計の難しさ

これには多くの問題がありますが、最大の問題はマルチシグネチャウォレットの管理です。イーサリアムから Fantom への ETH クロスはデポジットであり、ユーザー A がクロスバックしたい場合はコインを引き出す必要があるためです。

分散化と入出金の安全性が最大の課題となっている。

1. お金は誰が管理するのですか? 2. 誰が始めますか? 3. 取引を監視するのは誰ですか? 4. ユーザーが送金したことを確認するにはどうすればよいですか? 5. ユーザーのお金が本当にユーザー自身が引き出したいものであることを確認するにはどうすればよいですか? 6. リプレイ攻撃を防ぐにはどうすればよいですか? 7. 失敗したトランザクションを再度送信するにはどうすればよいですか? 8. マルチシグマネージャーが悪さをした場合はどうすればよいですか? 9. ダウンタイムが発生した場合はどうすればよいですか?

あえて考えませんが、考えれば考えるほど複雑な気持ちになります。クロスチェーンブリッジの技術には、マルチシグネチャだけでなく、アセット発行、クロスチェーンモニタリング、非同期検証も含まれ、さらには独立した中間コンセンサス層(新しいチェーン)を発行する必要もあります。

したがって、ユーザーのわかりにくさをさらに単純化するために、クロスチェーンプロセス全体を入金と出金の 2 つの部分に分けます。理解を深めるために。

(3) プロセスのさらなる改良

1. 入金

まず最初に宣言しておきますが、以下の図に描かれているプロセスは、慎重な議論をせずに私が推測した設計計画にすぎません。その目的は、設計ロジックで起こり得るセキュリティ問題を調査することであり、最終的な計画として採用することはできません。全部でたらめ。

図に示すように、元のチェーンからターゲット チェーンへの入金トランザクションには、原則として次の手順が含まれます。

(1) ユーザーがホスティングアドレスにリチャージする

(2) リスナーがトランザクションを監視した後、BP (コンセンサスノードはマルチシグネチャ管理者でもある) がトランザクションを開始します。

(3) 契約書は BP 署名の正確性を検証します。

(4) ノード耐障害性機構の有無

(5) コールバックがない場合、コールバックがある場合は、マッピングされたアドレスの関係に従ってターゲット チェーン アドレスをリチャージします。

(6) BPはリチャージトランザクションを確認します

(7) Byzantiumを通過後、ターゲットチェーン上のユーザーのアドレスにマッピングトークンを転送します。

このプロセスは一般的な異種クロスチェーンについて議論することを目的としているため、anyswap や他のソリューションと比較して、ユーザーが中間コンセンサス層でアドレス関係をバインドできるようにする追加のステップが追加されていることに注意してください。これは主に、異なる異種チェーン トランザクションに情報を添付する方法が異なることが原因であり、これを均一に処理するには、ユーザーが最初にマッピング関係をバインドできるようにすることをお勧めします。 EVM チェーン上のトランザクションを処理している場合は、この手順は必要ありません。トランザクションを開始するときにターゲット チェーンのアドレスをアタッチするだけです。

話を戻します。上記のプロセスから、2 番目のステップ以降、さまざまな状況でさまざまな論理検証の問題や処理の問題が発生することがわかります。

主な検証ロジックには次のものが含まれます。

(1) トランザクションをリッスンした後、アセット マッピングが開始され、ユーザー A のターゲット チェーン トランザクションに転送されたことを確認します。

(2) ターゲットチェーントランザクションの開始とトランザクション結果の検証 もちろん、私のプロセスで描いた検証ロジックに加えて、偽造通貨のリチャージ問題の検証や、別のトランザクションを呼び出すときに実行する必要がある特別な処理の問題も含める必要があります。トークン。将来発生する可能性のある潜在的な安全上の危険をよりよく要約するために、コインを引き出すプロセスを引き続き理解しましょう。

2. コインを引き出す

コイン引き出しによって示されるプロセスは、ターゲット チェーン資産を元のチェーン資産に戻すロジックです。現在、多くのトークンには複数のチェーン バージョンがあることに注意することが重要です。これは、多くのトークンが複数のチェーン上にあることを意味します。ネイティブ トークンを所有する。したがって、一部の橋梁プロジェクトでは資産プールが設定されることがよくあります。十分な資金プールの場合、ユーザーはanyDAIなどのマッピングされた資産の存在を感じず、それらをターゲットチェーンバージョンのトークンに直接置き換えますが、これは全体的なロジックには影響しません。ということで、分析は続きます。

図に示すように、ターゲット チェーンからオリジナル チェーンへのトランザクションのプロセスは次のとおりです。 (1) ユーザーがトランザクションを開始します (ターゲット チェーン上のエスクロー ウォレットに同量のマッピングされた資産を転送します) (2) ) BP の身元を確認する BP はコイン引き出しリクエストを開始します (3) コイン引き出し権限と署名を確認します (4) ビザンチウムを通過した後、元のチェーンでコイン引き出しリクエストを完了し、エスクロー ウォレットから資金を転送します(5) 中間にノードがある場合 検証エラーやダウンタイムなどの問題はロールバックして再開始する必要がある 上記のプロセスから、主な検証ロジックに次のことが含まれることがわかります。 (1) 開始と署名の許可の検証 (2) 問題発生後のフォールト トレラント メカニズム

(4) セキュリティリスク

1. 設計ロジックにおけるセキュリティの問題

クロスチェーン ブリッジの設計をより注意深く理解すると、クロスチェーン ブリッジの設計ロジックには多くの課題があることがわかります。要約すると、主に 3 つの問題があります (関連する盗難事件は次のマークでマークされています)。質問は終わりです)

(1) 保証金

a) コインチャージ契約の権限には抜け穴があり、チャージされたお金が直接送金されることになります。これは、ほぼすべての契約プロジェクトが遭遇する愚かな問題です。 b) 偽造通貨のリチャージの問題。一部のプロジェクトでは、クロスチェーン トークンの信頼性が検証されておらず、その結果、正直に言うと、fakeTOKEN -> realTOKEN (anyswap) が発生します。これも少し愚かです。 d) 偽造通貨リチャージの問題、ETH やその他のネイティブ資産は ERC20 契約とは異なり、多くの攻撃は ETH の不適切な取り扱いに起因し、その結果、偽 ETH -> 本物 ETH が発生し、それが WETH のようなラップされた資産が人気がある理由です。 (thorchain) c) 異なるトークンはすべて ERC20 標準であり、特定の実装方法が異なるか、追加のロジック (リベース、フォールバックなど) があるにもかかわらず、開発者は適応時に適切な調査を行っていません。 WETH、PERI、OMT、WBNB、MATIC、AVAX) などは、送信者のカスタム フォールバック関数を呼び出して、転送完了後に追加の操作を実行します。これにより、クロスチェーン ブリッジの判断が複雑になります (anyswap 2022.1.18)

(2) クロスチェーンメッセージ転送

チェーン a のコイン リチャージが完了し、チェーン b の資産がアカウントに到着する前に、クロスチェーン ブリッジは独立したブロックチェーン システムのように処理されます。これには、一般に dpos を使用するコンセンサス メカニズムが必要です。以下はすべてです。 dposの利用を想定 検討すべき課題はあるが、全てのノードがプロジェクト側に属しているのではないかと考えており、そもそも集中化のリスクがある。 a) コイン入金メッセージを監視するために、ランダムにクロスチェーン処理提案を最初に開始するのは誰ですか?それとも交代で?それとも中間コンセンサス層によって生成されるブロックの順序に従っていますか? b) 複数の公証人はどのようにしてデポジットの正確性を検証しますか? データ ソースがすべて infura などのデータ プロバイダーからのものである場合、infura は単一リスク ポイントです。最も安全なのは独自のノードを維持することですが、これには多大なコストがかかります。 c) クロスチェーン処理が完了した (b がクレジットされた) ことを確認する方法は、処理されていない状況がいくつかあります i. クロスチェーン ブリッジが処理を開始しなかった ii. クロスチェーン ブリッジが処理を開始したiii. ブリッジ検証は合格したが、B チェーン上でトランザクションが開始されない iv. B チェーン上にトランザクションがあるが、失敗する (資金不足またはその他の状況)

(3) 多重署名検証の問題

頻繁に問題が発生する最も大きな被害を受ける領域のほとんどは、コード ロジックの問題です。 a) 3/5 シグネチャ。マルチ シグネチャ リストにないシグネチャを構築するだけです。これも +1 (チェーンスワップ) とみなされます。 b) マルチ署名とは名ばかりの集中化の問題は、実際にはプロジェクト当事者の手に委ねられており、集中化の大きなリスク c) 署名検証方法、チェーンごとの開発モデルが異なるため、避けられない漏れが生じる開発者が接続するとき、ワームホールの例: solana の検証署名関数はシステム コントラクト内の関数です。通常はシステム コントラクトを呼び出し、コード内にシステム コントラクトのアドレスを記述する必要があります。ここでパラメータとしてシステムコントラクトを指定すると、ハッカーがコインを引き出す際に偽のシステムコントラクトアドレスを渡し、署名検証を回避してコインをスムーズに引き出すことができました。

(4) 返金

a) (2)-c で述べたように、クロスチェーン状態にはさまざまな可能性が考えられますが、いずれにしても、ユーザーに返金方法を提供する必要があります。その後、ターゲット チェーン上のユーザーに anyToken を送信し、ソース チェーンの anyToken を書き込みます。この目的は、問題がどこにあっても、ユーザーは anyToken を保持することで自分が保持している資産を表すことができるようにすることです。このプロセスには 3 つのチェーン (ソース、ターゲット、クロスチェーン ブリッジ) と 4 つのアセット (ソース チェーンとターゲット チェーン上の元のトークン/anyToken) があり、コード ロジックの問題が非常に発生しやすくなります。 b) Thorchain は 2021 年 7 月 23 日に流出し、ハッカーはコード ロジックの問題を利用して大量の偽のリチャージを構築しましたが、クロスチェーン ブリッジでは処理できなかったため、返金ロジックに入り、その結果、ハッカーは巨額の返金を受けることになりました。

2. その他のセキュリティリスク

ただし、論理的なプロセスによって示される問題はビジネス ロジックの問題だけであり、すべてではありません。セキュリティの観点からは、他の 3 つのリスクも考慮する必要があります。

(1) システミックリスク

たとえば、元のチェーンのデポジットは最初は成功していましたが、その後ロールバックされました。これは大きな問題であり、V 神は資産が Solana から Ethereum に移管されることを議論しました。しかし、たとえば、ロールアップなどイーサリアムとセキュリティを共有するレイヤー 2 では、この問題は発生しません。

(2) フロントエンドリスク

a) oxdao.fi 0xdao.fi oxdai.fi などの偽造 URL。 b) Xss 攻撃、つまりクロスサイト スクリプティング攻撃は、www.xxxx.finance/?params= などのコード インジェクション攻撃です。 hackerscode12345, URL は確かに公式 Web サイトですが、Web サイトにはハッカーのコードが含まれています。フロントエンド開発が xss の防止に注意を払わない場合、このコードはページ上で実行され、ユーザーがハッカーの転送トランザクションに署名を許可するため、不明なソースからのリンクを開かないでください。 c) Cors クロスサイト サービス攻撃: 厳密な同一オリジン ポリシーの下では、ブラウザーはこのサイトからのコンテンツのみをロードできます。つまり、www.xxxx.finance サイトに表示されるすべてのコンテンツと呼び出されるインターフェイスは xxxx からのものである必要があります。 Finance ドメイン名ですが、現在のプロジェクトのほとんどはクロスサイト呼び出しを許可しています。つまり、xxxx のフロントエンドはクイックスワップ インターフェイスを呼び出すことができ、またその逆も可能であり、これは開発に利便性をもたらしますが、リスクももたらします。 xxxx.finance がブラウザのキャッシュに機密データを保存した後、悪意のある Web サイトにアクセスしました。xxxx の同一生成元ポリシーが制限されていない場合、この悪意のある Web サイトは xxxx のキャッシュに保存されているデータを自由に取得できます。

(3) 追加機能のリスク

副題

03. エピローグ

1. このレポートの目的は、ユーザーがクロスチェーン ブリッジのセキュリティ リスクをより明確に理解できるようにすることであり、クロスチェーン ブリッジがどのように攻撃されるかについて悪意を持って描写するものではありません。

2. 公証機構のクロスチェーンブリッジソリューションは、少なくとも現時点では、最高の経験、最も広い適用範囲、そして最も低いコストを備えたソリューションです。そして、どんな製品も傷跡から成熟するまでのプロセスを経るものであり、ブロックチェーン製品に対する攻撃は多くの場合「論理的な問題」です。これらの質問は、時間と経験とともに改善されるはずです。

QR コードをスキャンしてコミュニティに参加してください。製品の問題については、ジャクソンの個人 Twitter をフォローして @0xOar について話し合ってください。

SeerLabs について:

SeerLabs (Prophet Labs) は、ブロックチェーン市場のインキュベーションに焦点を当てたアジアの主要機関であり、世界的な最先端のマーケティング コンセプトとグロース ハッカーを擁し、プロジェクト関係者やスタートアップが超高速の成長を達成できるよう支援することに尽力しています。 Ploygon (MATIC)、HoDooi.com、DIA、Paralink、Swingby、XEND Finance、BOSON など 30 以上のプロジェクトのインキュベーションに参加して成功しました。

参加しませんか:

Twitter: https://twitter.com/seerlabs_crypto

製品コミュニケーション:https://twitter.com/0xOar

協力メール:sharon@seerlabs.io

リスク警告:デジタル資産はリスクの高い投資対象であり、一般の人々はブロックチェーンを合理的に捉え、リスク認識を高め、正しい通貨概念と投資概念を確立することが求められます。

先知实验室
作者文库