51%攻撃
51%攻撃とは、ブロックチェーンネットワークにおいて悪意のある攻撃者が、ネットワークのハッシュレートの過半数以上を制御し、その結果として取引の妥当性を操作したり、二重支払いを行ったりする攻撃のことを指します。攻撃者がネットワークの51%以上のハッシュレートを持つことで、ブロックの作成権限を独占し、不正な操作を行いやすくなるのが特徴です。
攻撃者が51%攻撃を成功させることで、以下のような行動が可能となります。
- ダブルスペンディング
同じトークンを複数回使用し、不正に取引を完了させることができる。
- ブロックの巻き戻し
攻撃者はブロックを無効化して過去のトランザクションを書き換えることができる。
- 不正なトランザクションの排除
攻撃者は他のユーザーの取引を排除して、自身の取引だけが有効になるよう操作できる。
これらの行動によって、攻撃者は不正な利益を得ることが可能です。しかし、51%攻撃は成功するためには膨大な計算能力を持つことが必要であり、大規模なブロックチェーンネットワークに対して実行することは非常に難しいです。
過去には、いくつかの暗号通貨で51%攻撃が発生した例があります。例としては、以下のようなものがあります。
- VeriCoin 2014年
攻撃者がネットワークのハッシュレートを制御し、ブロックの巻き戻しを行い、2回のダブルスペンディングを行いました。
- Bitcoin Gold 2018年
攻撃者がネットワークの51%以上のハッシュレートを制御し、ダブルスペンディングを行いました。
- Monacoin 2018年
約90分間にわたってMonacoinのブロックチェーン上で二重支払いが行われ、約58万ドル相当のMonacoinが盗まれるという被害が発生しました。
他にも、ビットコイン、イーサリアム、ライトコインなどの主要な暗号通貨でも51%攻撃が試みられたことがありますが、これらの攻撃は失敗に終わっています。
これらの攻撃は、ブロックチェーンネットワークのセキュリティ上の脆弱性を露呈し、その後のセキュリティ対策やアルゴリズムの変更が行われるきっかけとなりました。暗号通貨のプロトコルやネットワークのセキュリティを強化することで、51%攻撃を未然に防ぐことが重要です。
51%攻撃とPoWの関係
51%攻撃は、Proof of Work(PoW)という暗号通貨のコンセンサスアルゴリズムに関連しています。PoWは、ブロックを生成するために計算能力を競わせる仕組みであり、一般的にはハッシュレートが高いマイナーがブロックを生成する権利を得ます。
PoWでは、ネットワーク全体のハッシュレートに基づいてブロックチェーンのセキュリティが確保されます。しかし、ネットワークのハッシュレートが一つの参加者によって支配される場合、その参加者は自由にブロックの生成をコントロールすることができ、これが51%攻撃を可能にします。
攻撃者がネットワークの51%以上のハッシュレートを持つことで、ブロックの生成やトランザクションの承認を独占し、不正な操作を行いやすくなります。例えば、ダブルスペンディングを行ったり、他のユーザーの取引を排除したりすることが可能です。
PoWはセキュリティが高い一方で、ネットワークの51%攻撃を防ぐためには多くの計算リソースが必要となるため、エネルギー消費量が高いという課題もあります。このため、他のコンセンサスアルゴリズムであるProof of Stake(PoS)など、よりエネルギー効率の高いアルゴリズムも提案されています。PoSでは、攻撃者がネットワークの過半数を制御するためには大量のトークンを所有する必要があり、ハッシュレートという計算能力による攻撃が不要となるため、51%攻撃を防ぐことができます。