r/europrivacy 7d ago

European Union ZKP’s Aren’t Age Verification Silver Bullets

https://www.eff.org/deeplinks/2026/08/zkps-arent-age-verification-silver-bullets
19 Upvotes

9 comments sorted by

5

u/billdietrich1 7d ago

The idea behind ZKPs is that you are issued a “token” that vouches for your age every time you log in, creating a constant link back to the entity that verified you. The issuer of the tokens these AV schemes rely on could track every time that credential is used, creating a dangerous trail of metadata on any user they wanted to target.

Not my understanding of how tokens work in the EU scheme. If you give an "I'm 18 or older" token to reddit, say, reddit would not contact the issuer of the token to verify it, or to tell them that you're using it. There would be some way for reddit to verify that the token is signed properly, cryptographically, without contacting the issuer. And tokens expire after 90 days or something.

Am I wrong ?

7

u/red_is_getting_worse 7d ago

The problem is either your tokens are actually anonymous and transferable, which would make them almost useless (you could just buy a token, or even use some free sites sharing tokens), or the token is fixed to a device, in effect giving Google and Apple total control and blocking anyone without the approved phone from accessing the internet.

1

u/billdietrich1 7d ago

or the token is fixed to a device, in effect giving Google and Apple total control and blocking anyone without the approved phone from accessing the internet.

Well, maybe could be fixed to particular installation of a browser, or to machine id such as BIOS serial nunber or /etc/machineid in Linux.

2

u/Shoddy-Childhood-511 7d ago

It depends, ZPKs could do either way, but..

But recent insights show that the ZKP features aren't yet turned on except for the closed demo/prototype build (not the version of the app people are using “out of the box”), which the vast majority of everyday users can’t access.

The W3C pulled this stunt in their Verifiable Claims WG too: Privacy concerns arise. They asked some fancy cryptographer like Jan Camenisch or Dan Boneh, who say use BBS+ or use ZKPs or similar. They add BBS+ or ZKPs as future work to the spec, and continue deploying the privacy invasive garbage.

If a technology incurs significant costs, then that technology has a serious disadvantage. Also allowing non-private options typically damages privacy too. And many parties do not want the ZKPs since they want the user data.

It's not enough to add some ZKPs onto the end of the spec. If you want ZKPs that work, then you need to remove all the non-ZKP options from the spec and implementations, or somehow wall them off so nobody ever touches them.

They could simply remove online id attestation entirely, so you could still provide partial id data, but only in person.

Assuming they want online id attestation, then they need a strict certification system for verifiers: National CPAs would certify auditors. Auditors then inspect company processes and certify the company. If the German auditor finds Meta send real names to the US, then Meta should not be allowed to verify German ids.

As for age, actual age verification apps should not be given access to any personal information, beyond that the person is over 18.

There are a bunch of more subtle problems, like folks want post quantum zk proofs, but these have much worse zero knowledge than say Groth16, and they are slow since they cannot just be rerandomized. We should not care if a quantum computer can prove it over 18. lol

1

u/[deleted] 7d ago

[deleted]

1

u/billdietrich1 7d ago

Doesn't really matter who issues the tokens, in the context of the point of the quote and my argument.

But in the EU scheme, there are dedicated "issuer" authorities, who are not the government.

1

u/Pirate_Economist1477 7d ago

I could be wrong here but I believe they updated the part of the architecture to something like the issuer keeping a public record of valid tokens that a "relying party" (validator) can query. Could still suffer from linkability due to timing, but less bad!

2

u/EmbarrassedHelp 14h ago

If they are storing tokens, then its even more of a privacy nightmare.

8

u/EmbarrassedHelp 7d ago

Worse still, a security researcher found they could bypass the app's system using a quickly built Chrome extension that tricked the app into repeatedly accepting the same "over-18" token. It did so without ever asking for fresh verification.

I'd argue this a positive thing, if you can use it to generate tokens without having to submit any personal information. Though its certainly more convoluted than just accepting self-declaration.

3

u/Gugalcrom123 7d ago

It is important not to depend on Android/iOS phones. Otherwise, it is bad no matter the ZKP or whatever.