If there is a particular transaction that any other entity wants to link to you, the burden of proof is on them. If you submitted your information to an exchange because of KYC and that transaction can be linked to your account, ... that's it. But if the transaction goes through several hops and ends up in some CoinJoin or seemingly stuck somewhere else (like a mixer does), with no connection to you, no one can prove anything.
Software/ protocols do have a purpose that is implemented into code and its consensus enforcing rules.
Such purpose can be relevant for legal terms.
Like I d say monero is designed to hide financial transactions from regulators