DAOハック事件:2016年、世界を震撼させた5500万ドルの仮想通貨強奪劇と、その後の衝撃的展開
- 2024-12-31
2016年、DAOハック事件:史上最大級の仮想通貨強奪劇
2016年6月17日、世界中の暗号通貨コミュニティを震撼させる事件が起きました。それは、**DAO(Decentralized Autonomous Organization、分散型自律組織)と呼ばれる、当時世界最大のクラウドファンディングプロジェクトへの大規模なハッキングです。実に5500万ドル(約60億円)**ものイーサリアムが盗難されるという、前代未聞の事件でした。この記事では、このDAOハック事件の全貌、そしてその後の衝撃的な展開を詳しく解説していきます。
DAOとは?革新的な分散型組織の理念と脆弱性
DAOは、ブロックチェーン技術を活用した革新的な組織形態です。複数の資金を管理するのではなく、「一つの資金」で様々なプロジェクトを管理するという、クラウドファンディングの進化形とも言える概念でした。DAOでは、トークン保有者が提案、投票を行い、組織の運営を決定します。
DAOの仕組みは、以下の通りです。
- 提案: トークン保有者は、投資提案を提出することができます。(例:100万ドルを投資し、企業XYZの10%の株式を取得する)
- 検証と投票: 提案は初期検証を経て、全投資家による投票が行われます。投資家が期待値を正と判断すれば「賛成」、負と判断すれば「反対」に投票します。
- 実行と収益還元: 投票で一定の賛成票(クォーラム:20%)が集まれば、DAOは自動的に指定されたイーサリアムをスマートコントラクトに送金します。提案による収益は、DAOの財源に還元されます。
このように、DAOは分散型で自律的な運営を目指していました。いわば、分散型ヘッジファンドのような存在です。多数決による意思決定が基本ですが、少数派の意見も尊重するために、**「スプリット機能」**が実装されていました。これは、提案に反対する少数派が、自分のイーサリアムをメインDAOから子DAOへ移動させることができる機能です。
巨大な成功と予兆:1億5000万ドルの資金調達と発見されたバグ
DAOは、当時のイーサリアム市場の熱狂的な雰囲気と、投資家のFOMO(Fear Of Missing Out、取り残される恐怖)を背景に、**1270万ETH(約1億5000万ドル)**という莫大な資金を集めました。これは、当時としては前例のない規模のクラウドファンディングでした。
しかし、成功の裏では、すでに危険な兆候が潜んでいました。コーネル大学のコンピュータサイエンス教授が、DAOのコードに深刻なバグを発見したのです。それは、666行目にあるバグで、ハッカーが無制限にイーサリアムを引き出せる可能性がありました。たとえ10ドルしか口座にないとしても、何度も引き出しを繰り返すことで、すべての資金を奪うことが可能だったのです。
予言された危機:ハックの発生と5500万ドルの消失
教授はDAO運営チームに、この脆弱性を修正するよう警告を発しました。Slock.it社(DAOの運営会社)は脆弱性を認めつつも、攻撃は「実行不可能」として、対策を軽視しました。修正はDAOのバージョン1.1に含まれる予定でしたが、この間にハッカーは既に動き出していました。
そして、6月17日、DAOはハッキングされました。**5500万ドル(約60億円)**ものイーサリアムが盗難されたのです。
「スプリット機能」の悪用:巧妙なハッキング手法
ハッカーは、一見すると通常の「スプリット機能」を用いた提案(提案番号59「Lonely, so lonely」)を提出しました。7日間の議論期間が設けられましたが、誰もこのスプリットに参加しませんでした。ハッカーは、このスプリット機能を再帰的に呼び出すことで、大量のイーサリアムを盗み出しました。これは、スマートコントラクトのバグとスプリット機能の設計上の欠陥を巧妙に利用した攻撃でした。
具体的には、ハッカーは以下の手順で攻撃を実行しました。
- 通常のスプリット提案を提出する
- 7日間の議論期間中に誰もスプリットに参加しないまま期間を経過させる
- スプリット機能を発動し、イーサリアムを自分のウォレットに送金する
- この操作を数百回繰り返すことで、DAOの資金を大量に盗み出す
これは、ATMが現金を引き出した後に残高を更新するのではなく、先に現金を渡してしまうような脆弱性と似ています。
ローンリー・ソー・ローンリー:ハックの開始とイーサリアム価格の暴落
ハッカーによる攻撃開始後、DAOの資金は毎時800万ドルものペースで流出していきました。コミュニティは混乱し、何が起きているのかを把握しようと必死でした。
この事件の影響で、イーサリアムの価格は一時的に20ドルから15ドルへと暴落しました。
ロビンフッドの登場:ホワイトハットハッカーによる反撃
世界中が混乱に陥る中、ブラジル・リオデジャネイロに住むAlex Van de Sande氏を中心とした、**ホワイトハットハッカー集団「Robin Hood」**が動き出しました。彼らは残りの資金を回収し、正当な所有者に返還しようとしました。
しかし、新たなスプリット提案を提出するには7日間の投票期間が必要であるため、時間がない状況でした。そこで彼らは、間もなく終了期限を迎える別の提案(提案番号71)に便乗し、同じハッキング手法で残りの資金を奪取しようと試みました。
しかし、攻撃開始から6時間後、突如攻撃が停止しました。トランザクションが失敗し、ハッカーの攻撃は終了したのです。その原因は、Alex氏のインターネット回線が切断されたことでした。まさに、寸前で失敗したのです。
イーサリアムのフォーク:歴史を書き換える決断
DAOのハック事件を受けて、イーサリアムコミュニティは歴史的な決断を下しました。それは、**イーサリアムのフォーク(分岐)**です。ブロックチェーンは、ブロックごとに積み重なるトランザクションのリストで、一度書き込まれた情報は変更できません。しかし、マイナーの過半数(51%以上)が合意すれば、ブロックチェーンを改変することが可能です。
これは通常、51%攻撃と呼ばれ、悪意のある行為です。しかし、DAOの事件では、コミュニティはハッキングによって失われた資金を回復させるために、善意によるフォークを実行しました。
フォーク賛否両論:コードイコール法の議論
フォークには賛否両論がありました。
反対派は、
- **コードイコール法(Code is law):**ブロックチェーン上の情報は不変であるべき
- ハッカーの権利: ハッカーはスマートコントラクトの規約に従って行動しており、盗難とはみなされない
と主張しました。
一方、賛成派は、
- 倫理と法: ハッキングは倫理的に間違っており、違法である
- DAOの重要性: DAOは大きすぎて失敗できない
と主張しました。結果的に、コミュニティ投票では、87%がフォークに賛成しました。
エーテルとイーサリアムクラシックの誕生:フォーク後の世界
ブロック1,920,000で、世界中のコンピュータノードがソフトウェアをアップデートし、フォークが完了しました。DAOと子DAOのイーサリアムは、返金コントラクトに移されました。
しかし、フォーク前のイーサリアムブロックチェーンは、イーサリアムクラシックとして存続しました。これは、DAOハックが起きた元の、変更されていないブロックチェーンです。
フォーク後、ユーザーは、
- フォーク前のイーサリアムを保有していた場合、イーサリアムとイーサリアムクラシックの両方を保有することになる
- DAOにイーサリアムを預けていた場合、返金コントラクトからイーサリアムを引き出すことができる
- ハックに参加していた場合、イーサリアムクラシックで相当な利益を得ることになる
という状況になりました。
イーサリアムクラシックの現状とロビンフッドのその後
イーサリアムクラシックは当初、ブロックチェーン原理主義者の間で支持を集めましたが、現在では、利用可能なプロトコルが少なく、イーサリアムに比べて活気がありません。
一方、Robin Hoodは、盗まれたイーサリアムクラシックの一部を売却し、イーサリアムに換金しようと試みました。しかし、その多くは取引所で凍結され、返還されました。
DAOハック事件:教訓と未来
DAOハック事件は、スマートコントラクトの開発における厳格なテストと監査の重要性、そしてコミュニティによる迅速な対応の必要性を浮き彫りにしました。また、ブロックチェーン技術の不変性と柔軟性のバランスが、今後の課題であることを示しました。
この事件は、暗号通貨業界にとって大きな転換点となりました。DAOは失敗しましたが、その経験は後のDAO開発に活かされ、より安全で洗練されたDAOが誕生しています。しかしながら、DAOの潜在力とリスクは、今もなお暗号通貨コミュニティにとって重要な課題であり続けているのです。 DAOは、分散化と自律性の理想を追求する実験であり、その歴史は、未来の分散型社会構築への重要な教訓を与えてくれています。