You guys talking about government + 51% threat are forgetting one VERY important thing:
Paper money does not compute hashes, no matter how big your pile of money is.
For the government t put those millions of dollars to work to destroy Bitcoin, they first need to actually buy or make A LOT of computing hardware. Too bad for them, almost all good hashing ATI cards are sold out around the world, and we miners aren't willing to part with ours
dream on ... said it a million times but will do it again: imagine new pools showing up that offer you 10% more than all the others, greedy miners will happily join those. once these pools reach the size of other pools, they can attack those by mining for them delivering shares but no blocks.
once those malicious pools have a combined 50% of the miners the other pools will get invalid blocks driving more miners to the bad ones. and who's the one to decide which pool is not malicious? and what greedy miner will not mine where he gets BTC, relying that others will make those BTC valuable again in the future?
I believe the bitcoin as is will fail due to greed not supporting the network as it was intended by pools controlling what gets in the block and pools controlling who gets to see the block at what time.
Is there any pool that I can mine for, but still manage all transactions and maybe even the reward? following some rule: if i give only 25% of the reward to the pool, the pool counts that share as a 25% share? This way I could mine for several pools with each share and once I find a block I want to directly broadcast it and not leave that part to the pool. This would also diminish the vulnerability for above described attack as the miners for the bad pool publish their blocks independently of the pool so it can't hold it back.