The DAO Hack

The DAO hack is one of the most consequential events in Ethereum’s history — a $60 million smart contract exploit that forced the Ethereum community to make an impossible choice: violate blockchain immutability to recover stolen funds, or let the attacker keep them. The community chose to fork, splitting Ethereum into two chains and permanently dividing the crypto world on the question of “code is law” versus pragmatic governance.


What Was The DAO?

The DAO (Decentralized Autonomous Organization) was a venture capital fund built on Ethereum, launched in April 2016 by Slock.it (Stephan Tual, Simon and Christoph Jentzsch). It raised 12.7 million ETH — worth approximately $150 million at the time — from over 11,000 investors, making it the largest crowdfunding campaign in history. Token holders could vote on which Ethereum projects received funding.

The DAO was fully governed by smart contracts on Ethereum — no management team, no board, just code.


The Exploit (June 17, 2016)

A vulnerability in The DAO’s splitDAO function was exploited using a reentrancy attack:

  1. The attacker called the withdraw function to request a refund of ETH
  2. Before The DAO’s smart contract could update the attacker’s balance to zero, the malicious contract called withdraw again — recursively
  3. ETH was sent out repeatedly before the balance variable was updated
  4. This recursive loop drained 3.6 million ETH (~$60M at the time) into a “child DAO” the attacker controlled

The reentrancy bug was a known smart contract risk that had been flagged in security audits before the launch — but not patched.


The Crisis

The stolen ETH was locked in a child DAO for 27 days before it could be withdrawn (due to The DAO’s own split rules). This gave the Ethereum community a narrow window to respond. Options debated:

  1. Do nothing (“code is law” — the attacker followed the rules of the code as written)
  2. Soft fork — blacklist the attacker’s addresses (rejected due to a separate vulnerability in the soft fork itself)
  3. Hard fork — roll back the blockchain to before the hack, returning all funds to a recovery contract

After weeks of intense debate, the Ethereum Foundation and most miners agreed to the hard fork, which was implemented on July 20, 2016 at block 1,920,000.


The Fork: ETH vs. ETC

Nodes and miners that upgraded: Ethereum (ETH) — the “rolled back” chain, where the hack was effectively undone.

Nodes and miners that refused: Ethereum Classic (ETC) — the original unmodified chain, where the attacker kept the funds, championed by those who believed “code is law” and that blockchains must be immutable.

The split created two competing Ethereum chains that persist to this day. ETC retains proof-of-work consensus; ETH transitioned to proof-of-stake in 2022.


Legacy

  • Reentrancy became crypto’s most infamous vulnerability — the attack pattern was named and is now a mandatory check in every smart contract audit
  • Solidity’s checks-effects-interactions pattern became the standard defense
  • The DAO hack established that Ethereum could fork under social pressure — a precedent that both reassures and disturbs the community depending on perspective
  • The hack directly contributed to Ethereum’s smart contract security culture and the rise of formal verification tools

Related Terms


Sources

  1. Jentzsch, C. (2016). “Decentralized Autonomous Organization to Automate Governance.” White Paper, Slock.it.
  1. Atzei, N., Bartoletti, M., & Cimoli, T. (2017). “A Survey of Attacks on Ethereum Smart Contracts.” POST 2017.
  1. Buterin, V. (2016). “Hard Fork Completed.” Ethereum Blog, July 20, 2016.
  1. Vigna, P. & Casey, M. (2018). The Truth Machine. St. Martin’s Press.
  1. Daian, P. et al. (2019). “Flash Boys 2.0: Frontrunning, Transaction Reordering, and Consensus Instability in Decentralized Exchanges.” arXiv.