シビル攻撃 | Binance Academy

シビル攻撃はオンラインシステム上の脅威で、攻撃者が複数のアカウント、ノード、コンピュータを作ってネットワークを支配しようとする攻撃の事を言います。
ある人物がSNSで複数アカウントを作成するのと同じぐらいシンプルな攻撃です。
しかし、仮想通貨の世界では、より関連性のある例が誰かがブロックチェーンネットワーク上で複数ノードを稼働させる場合です。
名前の中の単語「シビル」は、解離性同一性障害、多重人格とも呼ばれる病気の患者だったSybil Dorsettという名前の女性に関するケーススタディから来ています。

シビル攻撃が引き起こす問題

  • 十分な偽ID(もしくは、シビルID)を作成したら、誠実なノードをネットワークから追放することができるかもしれません。そうしたら、攻撃者はブロックの受信と送信を拒否することで、効率的に他のユーザーをネットワークから妨害します。
  • 攻撃者がネットワークの計算力やハッシュレートの過半数を支配しようとするような大規模なシビル攻撃では、51%攻撃を実行することができます。そのようなケースでは、攻撃者はトランザクションの順番を変えたり、トランザクションが承認されるのを妨げたりすることができます。さらには、ネットワークを支配している間のトランザクションを消すことによって、二重支払いを行うこともできます。
これまでコンピュータサイエンティストたちは、様々な方法でシビル攻撃を検知して、防止するために多くの時間を使い、研究を行ってきました。現状、確実な防御方法は存在しません。

ブロックチェーンにおけるシビル攻撃対策

多くのブロックチェーンでは、シビル攻撃からの防御のために、Proof of Work、Proof of Stake、そしてDelegated Proof of Stakeなどのコンセンサスアルゴリズムを使っています。
これらのコンセンサスアルゴリズムは実際にシビル攻撃を防ぎはしません。しかし、攻撃者に対して、シビル攻撃を行うのは非現実的だと思わせます。
例えば、Bitcoinのブロックチェーンは新しいブロックを発行するために特定のセットのルールを採用しています。
そのルールの1つに、ブロックを作成する能力がProof of Workメカニズムの総処理能力に比例しなければならないというものです。つまり、新しいブロックを作成するのに要求される計算力を実際に保有する必要があることを意味し、これによって攻撃者にとって攻撃はとても難しく、かつコストもかかるようになっています。
Bitcoinのマイニングは非常に集約化されており、マイナーはシビル攻撃を行うよりも、誠実にマイニングを行い続ける強力なインセンティブがあります。
シビル攻撃以外にも、ブロックチェーンに対する一般的な攻撃手段がいくつかあります。Binanceアカデミーで今後他の攻撃についても取り上げるので、楽しみにしていてください。