
The DAO事件とは? スマートコントラクトの脆弱性が招いたイーサリアム史上最大の分岐点
基礎知識
The DAO事件とは、2016年に発生した、当時世界最大規模の分散型自律組織(DAO)であった「The DAO」から、約50億円相当のイーサリアム(ETH)が不正流出したハッキング事件です。
例えるなら…
【プログラムが支配する投資ファンドの綻び】
本来であれば中央管理者が介在せず、プログラム(スマートコントラクト)だけで公正に運営されるはずだった「自律型投資ファンド」が、コードに潜んでいたバグを突かれ、資産を吸い出されてしまった事件です。これはブロックチェーン技術の「信頼性」に対する強烈な警鐘となりました。
3つの主要ポイント
1, スマートコントラクトの脆弱性の露呈
「リエントランシー(再入可能)」というコード上の不備を突かれ、送金処理が終わる前に何度も出金要求を繰り返すことで資産が抜き取られました。
2, コミュニティによる強制介入
不正流出した資産を回収するため、イーサリアムコミュニティは異例の「ハードフォーク」を実施。ハッカーの処理を無効化し、資産を救済するという決断を下しました。
3, イーサリアムの分裂
ネットワークを強制的に分岐させたことに対し、「コードは法なり(Code is Law)」というブロックチェーンの哲学を重視する層が反発。これが現在の「Ethereum(ETH)」と「Ethereum Classic(ETC)」に分かれるきっかけとなりました。
技術的背景と構造
歴史的背景
2016年、The DAOはイーサリアムのブロックチェーン上で動き、参加者の投票により投資先を決める画期的なプロジェクトとして登場し、当時の時価で約150億円を調達しました。しかし、当時はスマートコントラクトのセキュリティ監査手法が確立しておらず、開発現場は「プログラムにバグはないはずだ」という過信の中にありました。
メカニズム
事件の核心は「リエントランシー(Reentrancy)」攻撃です。The DAOの契約コードにおいて、「送金処理」と「残高更新」の順序が不適切でした。ハッカーは、外部から呼び出し可能な「フォールバック関数」を悪用し、送金が終わる前に再帰的に出金処理を繰り返すことで、本来引き出せないはずの金額を短時間に大量流出させました。
NOA's View
The DAO事件は、Web3における「コードの正しさ」と「コミュニティの意思」という永遠の矛盾を浮き彫りにしました。この事件を経て、スマートコントラクトの厳格な監査は業界の必須条件となり、開発者の責任とコミュニティによるガバナンスのあり方が深く再考されることとなりました。技術的な完璧さを求める姿勢と、緊急時に人間がどう介入すべきかという問いは、現在のDAO運営においても最も重要な教訓として生き続けています。
補足:関連用語とリンク
Smart Contract(スマートコントラクト)
契約条件をプログラム化し、自動的に実行・執行する仕組み。
Hard Fork(ハードフォーク)
互換性を切り捨て、新しいルールでネットワークを分岐させるアップデート。
Code is Law(コードは法なり)
プログラムコードが最終的な裁定者であり、人為的な介入を拒むべきとする思想。
