I thought the point of the blockchain was that it recorded every transaction.
I have no idea if it's practical, but in principle, it should be possible to trace the coins from a known point in time, taking into account the "dilution" when they are mixed with other coins.
In other words, if you give me your entire wallet consisting of 1BC that is later determined to be "dirty money" (as declared by the police/a court/whomever) and I put it in my wallet consisting of 9 other BC, my wallet is now "10% contaminated" by the "dirty money."
If I then I give 1BC each to 10 other people who have wallets with 9BC in them, those 10 people each have wallets that are "1% contaminated" by the original "dirty money".
If they each add 90 BC to their wallets, they will each have wallets with 100BC that are now "merely 0.1% contaminated" by the "dirty money."
And so on.
But you will know "where the money went."
As I said, this should be doable in principle. As to whether it is doable in practice I have no idea.
If this kind of tracing is doable in practice, then it can be used to reduce the occurrence of coin theft by reporting thefts to a central authority (or even logging the theft in the block-chain itself) and having people who accept BC as payment treat coins that have been stolen as worthless and treat those that have been co-mingled with stolen coins in "upstream" transactions as having only a "fractional" value based on the "non-dirty" portion of its transaction history.
Yes, there will be thefts but the crook will have to pass the dirty money off on to some innocent/naive party quickly, before the coins are reported stolen. Whoever has the coins or a wallet that was contaminated by having the coins used in an upstream transaction at the time that the theft is reported will typically be stuck with the loss, but from that point on the coins can be used at a "fair" value, based on the value of the non-stolen portion of the money. Depending on the legal frameworks in place and whether the party who gave them the contaminated BC can be identified, they may be totally out of luck or they may be able to recoup the loss from their own counter-party or an insurance company. If they are able t recoup from the counter-party, he will either be stuck with the loss or he may be able to recoup it from the party who gave him contaminated coins or his insurance company, and so on.
Of course, there is the possibility of fraudulently reporting money as stolen. To prevent this, it is doubtful that any reporting system that didn't include some form of accountability for lying would be feasible. I can't think of any way of doing this besides requiring people to reveal their real-life identity and real-world address to the police or other "authority" so that if it turns out they are lying, they can be prosecuted for perjury.
Oh, before you ask, yes, I do realize that this would increase the complexity of handling BC transactions significantly and that alone may make such a system impractical, at least for now.