I am not sure whether it makes sense that the wallet is responsible for the KYC. Think of it as a physical wallet, which you can buy at any store without having to identify yourself, because it will be an empty wallet.
As soon as you start using it, the identity of yourself should be verified, but again not by the wallet, but I think by the “Libra-net” itself.
There are two use-cases when you have an empty wallet:
- Either you mint some Libra when you deposit fiat into the reserve
- You receive some Libra from a “friend”
Theoretically 2) would not need identity verification, because your “friend” should have done a proper KYC already through 1), but let’s be realistic, a KYC through 1) might not be bulletproof and therefore it could make sense, at least for “bigger” transactions.
The current trend seems to be that each government will allow certified E-ID providers (see for example https://www.swissid.ch/ or https://www.c-b-f-s.com/), which means the actual KYC could be done through such E-ID providers and the “Libra-net” just has to do the verification (for example using the public key of the E-ID provider).
One challenge though is that these E-ID providers are under different jurisdictions and that the regulations can be different, for example Switzerland allows micro-transactions as replacement for video chat identification, whereas Germany does not yet.
Therefore some countries might not allow transactions from certain countries.
It would be very interesting to hear from the Libra folks how these various challenges could be solved.