This is both true and not true. It is true that transactions on the blockchain is public. But it's not true that it makes it trivially easy to identify the actual entities behind those transactions.
The only thing that's actually public are the public keys of the transacting parties. Public keys can be anonymously generated for free. It only becomes possible to deanonymize transactions if the money actually touches a deanonymized terminus.
Even assuming all the fiat off-ramps are properly KYC'd, it still gives the criminal unilateral control to arbitrarily decide when and where to risk deanonymization. You can commit a crime, then wait years for the heat to let up and make sure you're in a safe country without extradition treaties.
The only thing that's actually public are the public keys of the transacting parties. Public keys can be anonymously generated for free. It only becomes possible to deanonymize transactions if the money actually touches a deanonymized terminus.
Even assuming all the fiat off-ramps are properly KYC'd, it still gives the criminal unilateral control to arbitrarily decide when and where to risk deanonymization. You can commit a crime, then wait years for the heat to let up and make sure you're in a safe country without extradition treaties.