Still, looks like another case where my exponential difficulty requirement for blockchain reorganization idea would come in handy. It would kill any and all offline mining attacks.
is there any reason why this wouldn't be implemented?
Ahh. The fine print...
Turns out that no one is exactly sure what would happen in a few cases. I have a rough understanding of what would happen most of the time, but nothing formal. It is possible for sections of the network to become permanently diverged from the rest of the world, but the amount of time needed for that to happen depends very much on the size of the section that gets disconnected. For example, if the network was split into two halves (by mining power) they could become irreconcilable in a relatively short time, like a few hours. But who wouldn't notice the hashing power dropping by 50%? A smaller split is less likely to be noticed, but will take longer to get screwed. A solo miner that finds a block every month would need a year or more to get hopelessly wedged, and if he doesn't notice that he is really
solo for that long, it is his problem. (The exact times depend on the parameters of the exponential system.)
And it would complicate things if we ever needed to fix a bug like the signed/unsigned thing from a while back. Right now, if a major bug is found, and it takes a day or two to get a fix made, as long as most of the mining pools get together, they can overtake the buggy chain and restore order to the entire network. Under the exponential plan, each node would require human intervention unless the fix was found rather quickly. I think that this will gradually become less of an argument as alternate clients gain popularity. Once the monoculture gives way to the ecosystem, it simply won't be possible to do fixes in that way anyway.
Oh, and then there is the issue of starting up. An attacker that can control which blocks a new node gets during the download can prevent it from ever meeting up with the rest of the network. But there is no reason for a new node to be using the exponential system during the initial download anyway, so that isn't much of an issue in reality.