Bitcoin could be attacked pretty easily right now. It really isn't big enough to stand a substantial assault from a major government. In part it's due to being too small of a network; while there is a lot of CPU power mining, it would have to grow a couple orders of magnitude before I seriously considered it resilient (an in order for that to happen, the value of Bitcoins will have to grow the same amount, to make mining worthwhile). A DDOS against the top miners and pools, plus a few million dollars in CPU cycles, could probably allow you to successfully fork the block chain.

Furthermore, there isn't much of a pure-Bitcoin economy. There are a few things you can buy in Bitcoins, but you cannot make your living in Bitcoins and pay for all of the goods and services you need in Bitcoins. As such, Bitcoin relies on the exchanges to keep the economy going. And there aren't that many of them, and they aren't that resilient. Taking down the top couple of exchanges could devastate the Bitcoin economy. Heck, just taking down Mt.Gox would probably do it.

And there are some weaknesses in the current implementation as well. Most discovery of peers is still done through a single centralized IRC channel. There are a few hard-coded peers to bootstrap the network even if the IRC channel is unreachable, but again, for a sufficiently motivated government, that probably wouldn't be too hard to deal with.

But you also have to wonder if a government would want to attack Bitcoin. After all, there are a lot of people who think that it's an anonymous method of transferring money, but it really isn't. It's pseudonymous, but the entire history of transactions is publicly available to everyone. With a little bit of knowledge of who own certain keys (by buying or selling from people, using compromised vendors, or the like), you could start to generate some pretty good data on where money is flowing. Given that you also publish your IP publicly, and someone listening into the network could start to watch for which IP addresses initiate certain transactions, a party with sufficient resources could probably de-anonymize a large amount of the transactions that go over Bitcoin. Yes, there are ways to protect yourself; connect to the network via Tor or a proxy, launder the money through online exchanges or wallet services, be careful about breaking up transactions randomly across addresses and time to hide any laundering. But there are many people who are not going to be sufficiently technically savvy or motivated to do all of that. Bitcoin probably provides a lot of interesting data to snoops; why try to shut that down?

There are similar arguments for Tor. For one thing, running a Tor exit node and snooping the traffic can get you a lot of interesting data. Given the technical and legal risks of a private citizen running a Tor exit node, I wonder how many of them are run by governments looking for interesting data? Anonymity is pretty hard; there are lots of ways to leak information allowing yourself to be uniquely identified, like browser fingerprinting, forgetting to turn off cookies when using Tor, and the like.

There are also reasons why the government might want to encourage the use of Tor and Bitcoin. Remember, Tor was originally funded by the US Naval Research Laboratory. Any type of security or privacy tool can help US interests as much as it can harm spooks. Tor was originally developed to protect government communications, and can be used both by the government's allies as well as its enemies.

So, I don't think that Bitcoin or Tor are under serious threat of full-frontal assault from a first world government, nor do I think they could survive such an attack. But I think that said first world governments are probably more interested in keeping them running and keeping an eye on them quietly than very visibly shutting them down.