public keys are only available after you make a transaction and usually the bitcoin clients create a new address for each new transaction such that the public key for the account which actually holds the coins is never revealed.
So the government just says, "Here, use one of these 12 wallet programs, they are certified as automatically compliant by the IRS. Using other software makes compliance your own headache."