一般的にハッキングが困難と言われているブロックチェーンを脅かす、「51%攻撃(アタック)」をご存知でしょうか。

1)51%攻撃とは?

51%攻撃とは、悪意のあるマイナーが50%以上の計算能力を持つことで、不正な取引を行う行為を指します。

ビットコインなどのブロックチェーンの承認方法ひとつに、PoW(Proof of Work /プルーフ・オブ・ワーク)というコンセンサス・アルゴリズムが採用されています。PoWでは「計算力」によって、取引の承認権が与えられます。ある特定の人物、もしくはグループがその承認権の50%以上を掌握した時、取引の承認権が独占されます。これを利用して、正しくない承認を行う行為を51%攻撃といいます。

参考記事:プルーフ・オブ・ワーク

2)51%攻撃で何ができるのか

51%攻撃をすることによって、その攻撃者は以下のことができます。

  1. ①不正な取引の承認
  2. ②正当な取引の拒否

詳しく見ていきましょう。

①不正な取引の承認

51%攻撃が行われると、不正な取引が承認されてしまいます。普段は不特定多数の人が相互に監視をしているため、不正な取引は棄却されますが、51%攻撃が起こると承認がその攻撃者に完全に委ねられてしまうので、それがまかり通ってしまいます。

②正当な取引の拒否

また、51%攻撃の攻撃者は、正当な取引を拒否することもできます。「不正な取引の承認」と「正当な取引の拒否」を同時に行うことを「二重支払」と言い、すでに取引された仮想通貨で再び支払いを行うことを指します。

例えば攻撃者が1BTCを使用して商品を購入。その取引が終わった後にそれを拒否し、またその1BTCで他の人と別の取引を行うといったことができてしまうのです。

3)51%攻撃ではできないこと

それでは51%攻撃では、攻撃者は何ができないのでしょうか。51%攻撃では以下のことはできません。

  1. ①過去の取引の改ざん
  2. ②仮想通貨を盗む
  3. ③新しく通貨を発行する

詳しく見ていきましょう。

①過去の取引の改ざん

ブロックチェーンの性質として、過去の取引を改ざんすることは非常に困難で、たとえ51%攻撃が起こったとしてもそれは変わりません。新しいブロックは前の取引データを元に作成されるため、過去の取引を改ざんしようとするとそのブロック以前のブロックでは辻褄(つじつま)が合わなくなってしまいます。

②仮想通貨を盗む

51%攻撃が起こったとしても、他人のウォレットから通貨を盗むことはできません。ビットコインなどの仮想通貨の取引の際は電子署名という技術が使われています。その取引の際に使用される、持ち主のみが知っている「秘密鍵」がなくては発生していない取引をつくり出すことはできません。取引の承認を掌握することができても他人の秘密鍵を入手することはできないため、通貨を盗むことはできないのです。

③新しく通貨を発行する

マイニング以外で新しい通貨を発行することもできません。ほとんどの仮想通貨は初期発行時に上限発行枚数が決められており、それは不変です。たとえ51%攻撃を起こしたとしても、その上限は変更不可能なので、攻撃者はそのようにして利益を得ることはできません。

4)51%攻撃が起こる可能性

では、51%攻撃は実際に起こり得るのでしょうか?残念ながら、その答えはイエスです。

下のパイグラフをご覧ください。

このように仮想通貨の中で最も時価総額が高いビットコインでさえ、計算力の高い上位4社(BTC.com、F2pool、poolin、Antpool)が共謀することがあれば、51%攻撃は可能となってしまいます。(参照元:Clockchain.info)メジャーでない通貨はより容易に攻撃されてしまいます。

しかし攻撃コストの観点から、51%攻撃が起こる可能性は極めて低いと言われています。

以下のサイトで、51%攻撃のコストが確認できますが、ビットコインの場合1時間当たり6000万円ほどのコストが掛かります。(2019年12月時点)

◇51%攻撃コスト

まず、51%攻撃を起こすためには多くのマイニングマシンと、それを稼働するための莫大な電気が必要となります。また、ハッシュレートはインターネット上で確認できるため、あるグループが51%攻撃を仕掛けるかもしれないという懸念から、その攻撃前に価格が下落することが考えられます。

51%攻撃を起こして二重支払などで利益を出そうとしても、それにかかるコストを上回ることは極めて困難となります。つまり利益的なメリットがないため51%はそうそう起こらないと言えるのです。

5)51%攻撃の実例

それでも、マイナーな仮想通貨では過去に51%攻撃が行われてしまいました。

有名な51%攻撃の例を挙げておきましょう。

①モナコイン(MONA)

モナコインは2018年5月13日から15日にかけて51%攻撃の被害にあいました。推定被害額は約9万ドル(980万円程度)です。

参考:モナコイン、バージ、ビットコインゴールドのハッキング情報まとめ

②ビットコインゴールド(BTG)

ビットコインゴールドは2018年5月16日から19日にかけてその被害にあいました。推定被害額は約1800万ドル(20億円程度)です。

③ビットコイン(BTC)

ビットコインは実際には被害を受けてはいませんが、Ghash.ioという会社がマイニングパワーの50%を超えそうになる瞬間がありました。結局51%攻撃は起こらなかったものの、その攻撃を懸念して価格が一時下落しました。

6)51%攻撃の対策

残念ながら、現時点で51%に対する有効な対策はありません。コンセンサスアルゴリズムをPoI(Proof of Importance)やPoS(Proof of Stake)などに変更することも考えられますが、それぞれにもまた脆弱性があります。

しかし前述した通り、攻撃者が利益を得ることは極めて困難なため、対策を講じずとも51%攻撃が起こる可能性は低いといえます。

7)まとめ

ここまで51%攻撃について説明してきました。

悪意のある人物、もしくはグループが計算力の過半数を占めることによって二重支払が起きるなど様々な危険が51%にはあります。

しかしながら攻撃コストから51%攻撃を起こすメリットは少なく、攻撃されることは少ないといえます。普段から保有通貨のハッシュレートをチェックしていると、現在どれだけ51%が起こる可能性があるのかが分かるので気になる方はチェックしてみてください。

参考: