ビットコインで隠れ事件発生 オーバーフロー事件
事件の発生
2010.8.15 06:00(UTC)ビットコイン関係者しか知らない事件が発生しました。ブロックチェーンの74638番目のブロックにおかしな取引データがあるという報告がビットコインフォーラムに投稿されたのです。
184,467,440,737.09551616 BTCが取引されたという取引データだった。約1840億 BTCは最大発行枚数2100万 BTCをはるかに超えています。
異常な取引データが発生した原因
すぐに原因の究明が行われ、オーバーフローが原因だったことがすぐにわかりました。取引した値が大きかった場合、足し算するとオーバーフローするというバグがあったのです。
対策の環境
従来の中央集権型アプリなら、バグを修正するとともに、サーバーのデータを修正すれば対策完了です。
しかし、ビットコインは非中央集権型のアプリです。プログラムとブロックチェーンは多くのPCにコピーされています。全てのPCのプログラムと取引データ(ブロックチェーン)を書き換えるのは大変なだけではなく、禁止です。そのようなことを行うことが中央集権的なことなのです。
一旦決めた契約は誰も途中で変更が許されないという方針は、契約をプログラムで実現するからにはプログラム修正を許さないことになります。例えバグであっても、違法であることが分かっても、裁判所から命令されてもです。
サトシ禁を破る
サトシが提案した対策方法は、プログラムの修正とブロックチェーンの改ざんです。ブロックチェーンを改ざんして、問題の取引データを取消して、正しいデータに置き換えてしまおうというのです。
プログラム修正は、バグ対策が目的だとはいえ、見方によっては、権力者による都合に良い修正です。これを破るという事は、ビットコインの思想に反することになります。しかし、サトシはこのような方法で対策するのがベストと判断しました。
また、このような場合はブロックチェーンの思想に反してでも対策を行うべきという先例をサトシ自らが作ったという事になります。
ビットコインの思想に反するという問題だけではありません。プログラムもブロックチェーン(データ)も中央に一つだけではなく、世界中にコピーがあるのです。システムは稼働中であり、利用者はこのようなトラブルがあったことを知りません。誰にも知られないようにバグ修正とブロックチェーンの修正を行う必要があります。
ビットコインは改ざんが最も困難なアプリです。多くのPCがチェックしているので、1台のPCが行った改ざんは受け付けない仕組みです。
このトラブルの対策はナカモトサトシが中心になってフォーラムの仲間と行いました。
サトシはフォーラムの仲間に協力を求め、何も知らないユーザより強力なマシンパワーを手に入れ、間違いデータのあるブロックチェーンとは別の訂正されたブロックチェーンに枝分かれさせることに成功させたのです。
この事件から学ぶこと
この事件でわかることは、攻撃者のマシンパワーがビットコインのユーザ全てのマシンパワーより強力な場合、データの改ざんは成功するという事です。対策の提案者がサトシであり、協力者が善良な人たちであり、彼らが強力なマシンパワーを持つPCを持っていたから解決できたのです。
また、一般の利用者に知られないところで対策が行われた隠れ事件です。ビットコインは最強の暗号で保護されており、このような脆弱性はないと思われていますが、例えビットコインであってもそうではなかったのです。
ビットコインデータは誰もが見ることができます。だから、この事件の傷跡を今でもブロックチェーンエクスプローラーで見ることができます。
この事件はサトシがいたので、対策が成功しました。もう一つの事件はサトシが開発チームを去った後の2013年に発生しました。
【マガジン】お金の仕組み
ビットコイン誕生前夜 Winny
ビットコイン誕生前夜 Napster
ビットコイン論文の先頭1ページを読むと見えてくること
ビットコイン実現のために解決すべき 二重使用問題
Peer to Peerネットワーク ブロックチェーンの基礎技術 その1
大福帳 ブロックチェーンの基礎技術 その2
ビットコイン マイニングとは
ブロックチェーン ブロックを覗いてみる、コードを書いてみる
ビットコインで隠れ事件発生 オーバーフロー事件
ビットコインの隠れ事件2 チェーン分岐事件
ビットコインに関連した事件
仮想通貨は法定通貨より便利
この記事が参加している募集
よろしければサポートお願いします! いただいたサポートは全て『「思い出の場所」の記事とGoogle地図を関連付けるWeb地図アプリ』のLancersでのプログラミングの外注に使わせていただきます。 よろしくお願いします。