1. Create a new (and properly vetted, this time) smart contract which will release an agreed and appropriate sum to the hacker.
For the sake of argument, let’s say $1 million, which (it could be argued) is a just reward for his ingenuity and attention to detail.
2. Create another smart contract (or use the same one?) to release the rest of the funds back to an escrow account (assuming that the total investment was $160 million, then $159 million will be returned).
Therefore less than one percent (0.625 percent) has been ‘lost’ to the hacker.
3. These losses will be spread on a pro rata basis across all the investors in The Dao.
For example, if you put in $100, you get back $99.375.
4. Refund the investors through yet another (properly vetted) smart contract and then close down The Dao permanently.
Fund are unfrozen.
The hacker walks away with a reward but relinquishes all claims on the rest of the funds.
Everyone else walks aways with an almost full refund.
No roll back (fork) is necessary.
No disastrous precedent is set and the integrity of the Ethereum blockchain is preserved.
The efficacy of properly designed and vetted smart contracts is proved.
We can all move forward and learn from the mistakes that were made.
PS. I do realise that the hacker ‘made it away’ with ‘only’ $50 million of the total $160 million or so invested in The Dao but the precise numbers are not the most important aspect of my proposed solution. Someone else can do the exact calcuations.