PoW攻撃とDigiByte

PoW攻撃とDigiByte

ブロックチェーンの承認方式の一つPoW(Proof of work、プルーフ オブ ワーク)に対する攻撃を最近発生した事例を含めてDigiByteならどう対処できるかを考えていきます。

 

 

51%攻撃

広く認知されている膨大な計算パワーを使ってハッシュレートの過半数(51%以上)を持つことで、二重取引や不正取引が可能となってしまう攻撃です。

DigiByteはこちらでも解説しているように5つのマイニングアルゴリズムでマイニングします。DigiByteに51%攻撃を仕掛ける場合マイニング方式の異なるすべてのアルゴリズムを制御しなくてはなりませんので他のシングルアルゴリズムのブロックチェーンより安全性が保たれています。

 

Vergeに起きた攻撃

2018年4月4日にVerge(XVG)が51%攻撃を受けているとの発表がありました。XVGはDigiByteと似たマルチアルゴリズム方式をとっており、ブロック毎に違うアルゴリズムでマイニングするのが通常です。しかしXVGのソースコードの脆弱性(バグ)をつかれ、タイムスタンプを偽装する事によって本来不可能なはずのscryptアルゴリズムで連続毎秒1ブロックという驚異の早さで複数回ブロック生成が行われてしまいました。その後ハードフォークにて脆弱性は改善されたようです。

 

MONACOINに起きた攻撃

PoWのブロックチェーンでは通常マイナーがブロックを採掘した際にネットワークに報告(ブロードキャスト)するのですが、今回MONACOINが受けたseifish mining(Block withhoiding Attack)という攻撃は、採掘したブロックを報告せず隠し持ってある程度強力なパワーで連続してブロックを掘り続けます。そして本来のチェーンよりも長くなったブロックをチェーンにつなげることによって攻撃者のチェーンがメインチェーンとなります。これによって20以上のブロックが巻き戻し(reorg)される事態となったようです。

 

以上2つの通貨で起きた最近の攻撃ですが(ポイントを絞った簡単な説明なので詳しくは検索してください)、Vergeの攻撃はソースコードの脆弱性をついたものなので万が一DigiByteにも同様のソースコードの脆弱性があれば狙われる可能性はあるかもしれません。2つの攻撃の共通点は同アルゴリズムで連続してブロックを掘っている点です。これに対してDigiByteは同アルゴリズムで連続して5ブロック以上は掘る事が出来ず、次のアルゴリズムに移されるので安全性は高いと言えます。また、MONACOINの難易度調整アルゴリズムはDark Gravity WaveでDigiByteの難易度調整アルゴリズムDigiShield同様、ブロック毎に難易度調整をしますがDigiShieldは直近の6ブロックの平均値を参照して難易度を設定するので比較的安定しやすいです。今回MONACOINは難易度が急激に低くなったポイントを狙われたようなので、難易度が安定しやすいDigiByteはこの点においても安全性が高いといえます。

 

 

PoWはこういった攻撃を完全に防ぐことは不可能とされていますが、2014年には限りなくその可能性をゼロに近づける開発(DigiShield & MultiShield)がされている51%攻撃に対する耐性を持つブロックチェーンです。そのため4年以上の運用実績の中でDigiByteブロックチェーンに今まで主だった攻撃などは受けておらず安定した運用を続けています。

 

 

※今回はPoWに対する脅威の一例を紹介しましたが、ほかのPoSなどのコンセンサスアルゴリズムにもそれぞれ脅威はあります。PoWの危険性を煽るものではありません。