おーみん@仮想通貨日記

仮想通貨を中心に様々なジャンルをお届けします。

モナコイン(MONA)に脆弱性!PoWの弱点が見つかる

おはようございます。おーみんです。

「モナコインの欠点」

今までは取引所のセキュリティの甘さ故にハッキング等の事件が起きていましたが、ついに仮想通貨自体への攻撃が起きてしまいました。被害額は約1000万円程度なため、コインチェック事件と比較すると大したことはないですが、仮想通貨自体に攻撃が成功してしまった形になったために衝撃は大きいでしょう。

今回はモナコインがどんな攻撃をされたのか見ていきたいと思います。

簡単に書くよ

モナコインはPoWというGPUを用いてマイニングを行うコンセンサスアルゴリズムを採用しています。

通常ブロックをマイニングすると、他の端末へ送ってマイニング結果が正しいか確認してもらうのですが今回の犯人はそれを隠し持っていました。

隠しながらコソコソとマイニングをしてブロックを繋げていった結果、本当のチェーンよりも長くなってしまったのです。

そこで、犯人は自分の隠していたチェーンと本当のチェーンを入れ替えました。ブロックチェーンは長い鎖が本物と見なされるために、犯人が隠していたチェーンが本物だと認識されちゃったんですね~。

これを「Block Withholding Attack」と言うらしいです。

 

・・・・・

詳しく書いていくよ

本来ブロックチェーンというものはP2Pで構成されており、自身がマイニングをしたら他の端末へ「マイニング成功したよ~!」と確認をしてもらいます。

他の端末が確認をしてマイニング結果が正しかったらブロックチェーンに取り込まれるのですが、今回の犯人はマイニング成功しても誰にも教えませんでした。

自分でこっそりとマイニングを続けて、実際のチェーンよりも長いチェーンを作っていったのです。

f:id:bookreadkun:20180518113048p:plain

上のチェーンが皆の端末で確認し合って作ったもので、そのチェーンよりも長いチェーンを犯人は自分の端末上で作っていた感じですね。

 

そして海外の仮想通貨取引所「Livecoin」で事件が起きます。

犯人はまず皆で作った正しいチェーンに「Livecoinにモナコインを送金して他のコインへ交換した」という情報を書き込みます。

しかし、犯人の作っているチェーンにはそんな情報は書き込みません。おそらく自身の別のウォレットにでも送金したりしているんでしょう。

そこで、犯人は自分の作ったチェーンを初めてネットワーク上にぶち込みます。

 

当然いきなり新しいチェーンが舞い込んできたので、皆「なんだ!新しいチェーンが来たぞ!!正しいか調べよーう!」となるのですが、ブロックチェーンの性質上、長いチェーンが信用されるために犯人のチェーンが正しいと認識されてしまうのです。

 

その結果犯人は「モナコインを取引所に送った"こと"にして別の仮想通貨を手に入れる」なんてことができちゃったんですね~・・・

取引所「Livecoin」側は犯人からモナコインを受け取った"こと"になってしまい、その分の損失(約1000万円)が出てしまったわけです。

現時点でモナコインの開発者もTwitter上で以下のような発言をしています。

モナコインはブロックの承認時間が約90秒と、ビットコインの約10分と比べてとても短いです。短いのはある意味便利なんですが、それだけマイニングも簡単ということであり、ハッキングもされやすいということになります。

ということでビットコインはまだ大丈夫でしょう。

むしろ承認時間が長いビットコインの相対的価値は上がったのでは?と私は考えています。

こういう問題は、量子コンピュータ等が出てきてから真剣に考える必要があるとおもっていましたが、意外と早かったですね。PoSやDPoSなど、色々なコンセンサスアルゴリズムがありますが、結局どれが一番安全なのかはまだ分かっていません。

これからどう技術が発展していくのか見ていくことにします。

サラッとまとめるよ

まあ、今回の事件はつまり・・・

「モナコインのチェーンが改ざんされてPoWの課題が浮き彫りになってしまった」

ということですね。

 

それでは!読んでくれてどうもありがとうございました!

ついでに「読者になる」ボタンも押していただけると嬉しいです。