I once made a calculation of whether it is possible to track all banknotes by serial number. There are only 20bn EU banknotes! Fits snuggly in a Postgres DB.
With that, you could detect patterns: Does these guys always withdraws from this ATM and the money is cashed in that other neighborhood? Drug deal. A banknotes suddenly reappears after years? Black money stored in bulk, let’s see who withdrew it. Etc.
There's this run by volunteers, but there's not mich going on.
The challenge here would be keeping the transaction costs as low as possible and using a stable coin. It would cost everyone a couple bucks to send messages, which is a nuisance, and some people might be tempted to steal nickels for various reasons. The crypto would be there to prove there is no way the recipient can possibly receive your message without putting up cash. Perhaps some very popular people could set their threshold higher to reduce noise. But even $0.01 would be highly effective.