A very rough sketch of such a system:
- Any exchange that wishes to offer crypto services to US citizens must do KYC according to the existing regulations.
- Those exchanges make available each day a file with all the KYC-ed wallet adresses.
- Miners can theoretically choose which transactions to include and which to reject, but at the moment the main (only?) criterion is how much fees are attached to the transaction. You could mandate that they also do a lookup into the KYC data and only accept the transaction if the sending address is present in the list.
- I could even see the SEC or some other central body (perhaps one per country) maintaining such a list, exchanges submit their lists and miner can download it. This is already done in several other sectors of the economy.
And why would you do this? The KYC you're making public is already available to the government, and the on-chain transactions are already public.
Mining is a core function. None of it works without that (or staking, which is equivalent). A miner is not able to know who you are, since the regulated exchanges are not reporting their KYC to all the miners. Making miners responsible for sending 1099s would effectively make it illegal to run public blockchains.