Perhaps it is time for our companies and institutions to move away from social security numbers, credit cards, driver licenses and such stuff to having people authenticate using apps on their devices (or in person with biometrics).
iPhones now have the Secure Enclave, Androids have the Secure Element. You can store private keys there.
Authentication is done by apps signing challenges. This can be done in many ways, including oAuth, QR codes to authorize new devices etc.
Identity can be done by posting signed identity claims across websites, and adding/repudiating public keys in a personal scuttlebutt-type blockchain.
You can then easily sign into site X and prove your identity on sites Y and Z, without any sites necessarily tracking you between them.
Here is my semi-humble proposal for a decentralized, secure auth protocol that works with everything out there:
https://github.com/Qbix/auth
If you have experience writing tech specifications, please reply, I need someone to write the normative section of that protocol properly.