-
Notifications
You must be signed in to change notification settings - Fork 75
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
IdP Blindness: User Info VCs #677
Comments
Just a small update here: we intend to prototype this and see where it might take us. |
Another update here: I just finished merging a prototype behind a flag in chrome canaries (here are the CLs if you want to reverse engineer) and kicked off a devtrial. Here are some instructions on how you can give this a try in Chrome:
You should get something like the following without telling the issuer who the verifier is: Screen.Recording.2024-12-20.at.13.57.23.mov |
One problem that we identified early on that we still don't know how to solve is the IdP Tracking Problem: wouldn't it be great if we could login to websites without necessarily telling the Social login provider that we did?
Since we started developing FedCM, I think a lot has changed. For one, we got a lot more experience with zero knowledge proofs. For two, the three-party model got more mature too, with credential formats like SD-JWTs and ISO MDocs being deployed in systems like government-issued IDs. Importantly, we also developed a much stronger foundation with FedCM that we can stand on (e.g. we know how to construct a privacy preserving account chooser, log-in users that are logged-out, etc), making this problem a lot more tractable now than it was a few years ago.
There are many non mutually-exclusive ways that we can try to tackle this problem (e.g. with third party wallets and the Digital Credentials API), and one scheme that I think that FedCM is in a unique position to offer is to turn the browser into a holder. I think that might give us a whole different set of trade-offs, specifically on privacy (e.g. having fewer parties involved) and the activation energy required (e.g. not requiring explaining wallets to users) at some costs (e.g. ossification).
I'm interested in ZKP formats most, but since MDocs and SD-JWTs are a bit easier to start from, architecturally, here is more or less what I had in mind:
I think zero-knowledge proof formats, such as BBS+, can increase the privacy properties here, and be supported in a similar architecture as the one described above.
It is not yet clear to me what kinds of trade-offs this architecture will have, but I have an intuition that it will offer a very different set of properties compared to other alternatives. For example, this is clearly backwards incompatible with the existing server-side deployment, so will activate the ecosystem much more slowly than vanilla FedCM. But, on the other hand, I think that this is likely the most private cross-site identity system that we can build, because it involves the fewest entities possible, so will find its use in enough places.
The text was updated successfully, but these errors were encountered: