リプレイ攻撃

リプレイ攻撃

第0章 はじめに

イーサリアムのハードフォーク後、多数の「リプレイ攻撃」が発生しました。いくつかの取引所はコインを失ったと主張しており、ユーザーがコインを失ったケースはさらに多かった。では、リプレイ攻撃とは一体何なのでしょうか?

第 1 章 コンピュータ用語での「リプレイ攻撃」

イーサリアムのハードフォーク後に発生した「リプレイ攻撃」は、従来のコンピュータ用語とは異なります。

従来の用語「リプレイ攻撃」: 個人情報詐欺を指します。 Wikipedia の定義は次のように非常に明確です。

アリスがボブに対して自分自身を認証するとします。ボブは彼女に識別情報としてパスワードを提供するように求めます。同時に、イブは彼らの通信を盗聴し、パスワードを記録しました。アリスとボブが通信を完了した後、イブはアリスのふりをしてボブに連絡します。ボブがパスワードを要求すると、イブはアリスのパスワードを送信し、ボブは自分と通信している相手がアリスであることを認識します。

イーサリアムのハードフォークによって引き起こされる「リプレイ攻撃」は、個人情報詐欺ではありません。あるチェーン上のトランザクションは別のチェーンでも合法であることが多く、トランザクションは別のチェーンに再ブロードキャストされる可能性があるため、「リプレイ攻撃」と呼ばれますが、これは本質的には「攻撃」ではありません。

第2章: イーサリアムのハードフォーク: 深刻な「リプレイ攻撃」

イーサリアムはブロック高 192 万でハードフォークし、ETH チェーンと ETH クラシック チェーンと呼ばれる 2 つのチェーンが生成され、それらのトークンはそれぞれ ETH と ETHc と呼ばれます。これら 2 つのチェーンのアドレスと秘密鍵生成アルゴリズムは同じであり、トランザクション形式もまったく同じであるため、一方のチェーン上のトランザクションはもう一方のチェーンでも完全に合法である可能性が高いです。したがって、あるチェーンで開始したトランザクションは、他のチェーンで再ブロードキャストされ、確認される可能性もあります。これは「リプレイ攻撃」です。

例を使ってみましょう。イーサリアムのハードフォーク後に発生した「リプレイ攻撃」は以下のとおりです。

1. イーサリアムはブロック高 1920000 で 2 つのチェーンにハードフォークし、ETH チェーンと ETH クラシック チェーンと呼ばれ、それぞれのトークンは ETH と ETHc と呼ばれます。

2. ハードフォークの高さより前のすべての ETH は、フォーク後の両方のチェーンで有効です。つまり、フォーク前に ETH を保有していた人には、自動的に同量の ETHc が付与されます。

3. ユーザーはハードフォークの直前に ETH を保有しています。ユーザーは、自分で秘密鍵を管理しているローカル ウォレット (これは ETH チェーン ウォレットと ETH クラシック チェーン ウォレットの両方で同じ) を使用して、取引所にトランザクションを送信し、自分のアカウントに ETH を補充します。ただし、ETH チェーンと ETH Classic チェーンの両方がこのトランザクションを合法的なトランザクションとして認識し、パッケージ化します。つまり、ユーザーは元々 1 つのチェーンでトランザクションをブロードキャストしましたが、別のチェーンで「再生」することができます。 (ウォレットを使用して自分でブロードキャストすることもできますし、誰かまたはプログラムがあなたの取引情報を見つけてあなたに代わってブロードキャストすることもあります)

4. ユーザーの再チャージアカウントは取引所に属しているため、ユーザーにとってはオフチェーンウォレットとなります。取引所があなたにそれを与えない場合、あなたは本来あなたのものであるはずの ETHc を失うことになります。

5. ユーザーがハードフォークの前に取引所に ETH を保管していた場合、原則として取引所はユーザーに 2 つの通貨を提供する必要があります。ユーザーが取引所からローカルウォレットに ETH を引き出す場合、引き出されるコインはハードフォークの直前のコインになります。さらに、自分のコンピューターに ETH チェーン ウォレットと ETH クラシック チェーン ウォレットの 2 つのウォレットをインストールしました。出金アドレスは ETH チェーン ウォレットで生成され、その後、秘密鍵をインポートすることで、資金アドレスが ETH Classic チェーン ウォレットにインポートされます。その後、お金を引き出すときに、両方のチェーンで引き出しトランザクションをブロードキャストして、2 つのローカル ウォレットが同じ金額を受け取ることができるようになります。

6. ステップ 5 で、ユーザーが ETH チェーン ウォレットなどのウォレットを 1 つだけインストールしている場合、他の ETHc は受信されませんが、コインを受信するための秘密鍵が ETH チェーンと同じであるため、失われることはありません。この秘密鍵を抽出し、ETH Classic チェーン ウォレットにインポートするだけです。

7. ステップ 5 で、ユーザーが ETH を引き出すと、Yunbi から P ネットワークに ETH を引き出すなど、別の取引所に再チャージされます。現時点では、P ネットワークはユーザーに ETH という 1 種類の通貨のみを提供するため、ユーザーは ETHc を失います。失われた ETHc を持っているのは誰ですか?それはPネットワークの手中にあります。ユーザーが Yunbi Exchange に ETHc のシェアを要求し、Yunbi が親切かつ責任を持って実際にユーザーにそれを与える場合、Yunbi は ETHc のシェアを失うことに相当します。

8. ブロック高 920 万以降に保有されるコインの場合、状況はさらに複雑になります。たとえば、コインはハードフォーク前からハードフォーク後のアドレス 1 に送信されます。このアドレス 1 は ETH と ETHc の両方で有効です。その後、ETH チェーンで受け取ったコインは、アドレス 1 からアドレス 2 に再度送信されます。このトランザクションをトランザクション 2 として記録します。このトランザクションは ETH Classic チェーンでも有効であり、再生できます。再生されたトランザクションをトランザクション 2′ として記録します。しかし、トランザクション 2 を有効にしてトランザクション 2' を無効にする方法がある場合、つまり、ETH チェーン上のコインはアドレス 1 からアドレス 2 に正常に送信されますが、ETH Classic チェーン上のコインはアドレス 1 からアドレス 2 に送信されません。この場合、ETH チェーンのアドレス 2 にあるコインは、再度取引されても ETH Classic チェーン上で再生できません。

9. ステップ 8 で、どのような状況でトランザクション 2′ の送信が失敗する可能性がありますか?つまり、リプレイ攻撃をどう解決すればよいのでしょうか? 1 つの方法は、トランザクション 2' が送信された後、0 の確認が行われる前に、トランザクション 2' に対して二重支払い攻撃を開始することです。つまり、同等の秘密鍵を使用してトランザクション 2" に再度署名し、コインを別のアドレス 3 に送信します。トランザクション 2" が成功し、トランザクション 2' が失敗した場合、ETH チェーンのアドレス 2 と ETH Classic チェーンのアドレス 3 のコインは再生できません。

ETH Classic チェーンでトランザクション 2 をブロードキャストしないことは可能ですか?いいえ、ブロードキャストしない場合は誰かが代わりにブロードキャストし、取引情報は暗号化されません。どの悪者があなたの取引情報を見つけてあなたにブロードキャストするかは誰にもわかりません。そして、あなたのブランチのコインはこのチェーンのアドレス 2 に送信されます。

しかし、すべての ETH アドレスと ETHc アドレス (これら 2 つのアドレスはまったく同じで、ETH アドレスは ETHc アドレスでもあります) を作成して、あなたがコインを持ち、私がコインを持たないようにしたい場合、アドレスが多すぎるため、それを行うことはほぼ不可能です。つまり、この方法ではリプレイ問題を完全に解決することは不可能です。

しかし、ユーザーにとっては、この方法を使用して ETH と ETHc を分離し、2 つを異なるアドレスに配置することができるため、将来的に 1 つのチェーン上のトランザクションを別のチェーンに再生する必要があるかどうかを考える必要がなくなります。しかし、0 確認トランザクションで二重支払い攻撃を開始するのは誰かという疑問が再び生じます。難しそうなので、一般のユーザーには基本的にできないと思います。交換すべきです。

10. 別の方法としては、チェーンの 1 つに 51% 攻撃を仕掛け、チェーンの 1 つを直接破壊して、その計算能力をゼロに下げ、それ以降は高さが上がらなくなるようにして、チェーンが死んだ状態にします。こうすれば問題は完全に解決されます。

あるいは、チェーンの 1 つの価格が非常に低いレベルまで下がると、誰も気にしなくなり、トランザクションを再度実行する必要もなくなります。

第3章 イーサリアム経済エコシステムのノードに対するリプレイ攻撃の影響

イーサリアムは現在、ユーザーにとって大きな問題を抱えています。ETHとETHcはどちらも経済的なボリュームが大きいため、ユーザーがコインがリプレイされる可能性を解決できない場合、片方のコインを売却しながらもう片方のコインを保持することは困難になります。そうでなければ、良心的な交換の支援によってのみ実行できます。 2 つの通貨が長期間存在し続けると、ユーザーは混乱し、普通の人なら誰でも「一体なぜこんなことが起きているのか」と疑問に思うでしょう。最終的に Ethereum に価値を与えるのはユーザーです。ユーザーが離れてしまったら、プレイする意味がありません。

ユーザーが 1 つのコインを無視して、他のコインだけを愛することができる場合。たとえば、ETHc ではなく ETH のみが使用されている場合、ユーザーにとってはリプレイ攻撃は存在しないのと同じです。しかし、それを実行できる人は何人いるでしょうか?取引をやり直すことでより多くのお金を得ることができると知っていれば、気にしない人はいないでしょう。

新規ユーザーであれば、混乱することはありません。新規ユーザーがコインの 1 つを購入した場合、取引所が愚かでない限り、トランザクションを再度実行して別のコインを取得する機会を得ることは困難です。

当初、ユーザーは ETHc の一部を無料で受け取っていましたが、現在はリプレイによる損失を避けるためにコインを慎重に扱う必要があります。今は最高の時であり、今は最悪の時でもある。

現在、ETH と ETHc の経済活動は基本的に取引所内で維持されています。ニュース報道から判断すると、取引所は現在、基本的にリプレイ取引を解決できるようになっている。これまでの損害に対する補償や責任の分担もユーザーとの間で行われている。 ETH と ETHc が取引所を通過すると、ユーザーには 1 つの通貨のみが存在することになります。しかし、問題は、取引所がリプレイ取引の問題をどのように解決するかということです。それを解決するには、悪を行わないか、悪を行うかの 2 つの方法があります。恐ろしいのは、悪事を働くことが合法であるということです(イーサリアム ブロックチェーンの法律によると)。

優れた取引所は、ユーザーの ETH または ETHc を受け取ると、トランザクションを別のチェーンに再生しようとします。リプレイが成功すると、ユーザーには両方のコインが再チャージされます。失敗した場合、ユーザーはコイン 1 枚で再チャージされます。その後、コインは取引所内で完全に分離され、チェーンは 1 つだけ存在するようになります。悪質な取引所は、ユーザーが預けたコインのみを入金し、取引をやり直し、成功した場合はそのお金を自分たちのものにします。

取引所も賢いものと愚かなものに分かれます。スマート取引所は、ユーザーがチャージする 2 種類の通貨を完全に分離します。ユーザーがこれらのコインの 1 つを購入して引き出すと、トランザクションを別のチェーンに再現することはできません。愚かな取引所は2つの通貨を区別しません。ユーザーが 1 つの通貨を引き出すと、トランザクションは別のチェーンに再生されます。成功すれば、ユーザーは無料でお金を受け取ることができます。

マイナーとマイニングプールについてはどうでしょうか?それは問題ではありません。 ETH をマイニングすると、ETHc をマイニングできなくなります。リプレイ攻撃は彼らにとって大きな問題ではなく、新しく採掘されたコインはリプレイできません。難易度と価格を比較検討した後、どちらを採掘すればより多くの収益が得られるかは問題ではありません。

イーサリアムの経済エコシステムには、まだ開発者が存在します。 Ethereum Foundation の現在の姿勢は、ETH Classic を受け入れることです。なんと寛大なことか。分かりません。

上記の分析に基づくと、イーサリアムの経済エコシステムでは、リプレイ攻撃の存在によりユーザーが最も多くの問題に苦しんでいます。交換は良心と技術のテストを受ける必要があります。一方、マイナーや開発者は大きな影響を受けていないようです。

このような混乱によって、皆の自信が傷つくと思います。誰もがこの連鎖で利益を上げ続けたいのであれば、そのうちの 1 つを殺す方法を見つけなければなりません。

第4章 結論

最初は誰もが ETHc を無料で手に入れたと思っていましたが、今ではリプレイによってコインを失わないように注意する必要があります。これは本当に最高の時であり、これは本当に最悪の時でもある。

(質問に答えてくださったYunbi.comのCEO、Qiu Liang氏に感謝します)


<<:  ブロックチェーンはAlipayを「失業者」にするのか?アント・ファイナンシャルはそうは考えていない

>>:  新たな研究によると、ビットコインの経済は改善し、主流のビジネスへと向かっている。

推薦する

ブロックチェーンはモノのインターネットに革命をもたらすでしょうか?

Baozou Timesのコメント:ビットコインの基盤技術であるブロックチェーンは、モノのインター...

シェンママイニングマシンのファームウェアの新バージョンが2020年4月18日にリリースされました

親愛なるShenmaユーザーの皆様:引き続きのご支援とご信頼を賜りますようお願い申し上げます。当社は...

XMY マルチコインマイニングチュートリアル

Myriad(XMY、中国語名:Colorful Coin)は、 2014年2月に正式にリリースされ...

ファイルコインネットワークは24時間で34万FILを生産

Filfox ブラウザのデータによると、Filecoin ネットワークの現在のブロックの高さは 10...

マイニングマシン事業が困難、ビットメインは賃金支払いを停止

長い間沈黙を守ってきたビットメインは、給与支払いの延期を発表したことで業界で白熱した議論を巻き起こし...

巨人の肩の上に立つ — Synereo のブロックチェーン 2.0

ビットコインのブロックチェーンの性質を説明したサトシ・ナカモトによる2008年のホワイトペーパーは、...

研究レポート |ビジネスの道筋は明確になりつつあり、暗号通貨銀行には明るい未来が期待されている

著者【Huobi Research Institute】徐妙燕、陳漢、袁玉明まとめ2020年、Gra...

ライトコインの創設者は、Segregated Witness を有効化し、マイナーにそうするよう説得する予定

Golden Finance News - 4月20日、ライトコインの創設者であり、Coinbase...

開発者によると、イーサリアム2.0は11月にリリース予定

ETH 2.0 クライアントの構築に携わる開発者によると、Ethereum 2.0 は 11 月にリ...

Chain World AMA: Nabox が DeFi と Web3.0 アプリケーションの時代へご案内

日常生活において、私たちは集中型ウォレットに最も馴染みがあり、それが私たちの生活のほぼすべてを占めて...

ブロックチェーン技術を利用してデジタル作品の所有権を保護する

クレイジーな解説:理論上は分散型台帳の容量は無制限ですが、データは任意に保存できます。しかし、既存の...

強気相場が早くも到来? 2020年と2017年のビットコイントレンドの包括的な比較

原題: BTC は抵抗なく 17,000 ドルを突破、2021 年の BTC 史上最高値の可能性BT...

OKEx 投資リサーチ |ビットコインの半減期はどのような影響を与えるでしょうか?

1. ビットコインの半減期1.1 半減の概念の紹介サトシ・ナカモトがビットコイン システムを設計し...

コインゾーントレンド: 今週のビッグデータに基づくビットコインの価格動向 (2016-06-2)

国内外の価格差は縮小し、統合が方向転換を待つ1. 市場動向<br/>ビットコインの現在の...

よく考えてみると、エネルギー消費は恐ろしい問題です。DPOS は POW に勝ります。

「マイニング」は大量のエネルギーを消費するプロセスであることは誰もが知っていますが、どの程度のエネ...