There was a topic recently: "what can kill bitcoin", and one of suggested answers was "A kid kidnapped, ransom paid in bitcoins, track lost in a mixer". Such a news would attract huge media attention and can seriously damage BTC reputation. What if, god forbid, taking BTC for ransom becomes common among kidnappers? Can we prevent it from happening, i.e. keep track of these coins?
And more generally, is there a way to keep track of "dirty" coins, while still having "honest" coins anonymous? So that real criminals won't be able to use their ill-gotten money, while honest tax-avoiders

will still be safe?
Can it be done by some technical means, like coloured coins? Or by some reputation means? Something like this: there is a blacklist of "dirty" addresses (in a server or embedder in the blockchain). If the payment came from a "dirty" address, the transaction will be rejected by miners and eventually rolled back. As for mixers, to prevent from being associated with dirty money (and eventually getting blacklisted by miners), they would want to keep log of transactions, with addresses! An average mixer customer, naturally, won't come to a "tax-friendly" mixer, that reports them to authorities. But he also won't go to "dirty" mixer. First, because he (most likely) don't approve criminals. And second, because he don't want to get blacklisted himself. So, the honest folk will still enjoy their anonymity, while the Earth be burning under criminals' feet.