r/europrivacy 4d ago

Europe Europe is building its own zero-knowledge age verification app and it just hit technical readiness

Just came across this on Biometric Update: Europe's age verification app built by Scytales and T-Systems just hit technical readiness, claiming users can prove their age without revealing any other personal data. The mechanism is essentially zero-knowledge verification at the infrastructure level, which is the same core idea behind what World ID, Privado ID, and Polygon ID have been pushing from the private side for a while now, except here it's being built directly into EU digital identity infrastructure.

What's interesting is the timing. GDPR enforcement is tightening, the biometric stadium entry debate in Germany is getting loud, and now the EU is quietly shipping privacy-preserving identity tooling at the state level. Feels like the regulatory pressure is finally forcing public infrastructure to catch up to what private protocols have been building toward for years.

0 Upvotes

13 comments sorted by

16

u/mpg111 4d ago

is this a press release? because it sounds like marketing department wrote that

11

u/Gugalcrom123 4d ago

It is in no way OK: it requires Android or iOS; anyone wanting to use online services without being Google's or Apple's sheep is left out.

1

u/blvsh 4d ago

This breaks the EU law itself, wont work

7

u/Shoddy-Childhood-511 4d ago

Rule 2 violation because this lacks any technical links.

There is much that can be said in principle, but not much could be said without linking the specific spec, code, etc being discussed in this iteration. A few weeks ago some EU age verification app was broken for example.

About the only meaningful conversation here could be links to EFF and other NGOs explaining why age verification on the provider side if inherently a privacy violation and disproportionate, independent of the technology used.

2

u/d1722825 4d ago

Reference specification:

https://ageverification.dev/av-doc-technical-specification/docs/architecture-and-technical-specifications/

The open source reference implementation:

https://github.com/eu-digital-identity-wallet

Member states have to built their own, but they can use these as a base and only change small tings.


The EU age verification app wasn't broken, one person pointed out a few issues that was blown up.

The issue was basically that, if someone has root access to your phone, then the PIN code you set up on the app doesn't protect you. But if someone has root access to your phone, then they can do anything, and has many other methods to get your data. App locking pin codes just can't protect you against this type of attack. (Note that this is not the PIN code that you may use to unlock your phone or SIM card.)

Anyways, the age verification app / system has some questionable things (that wasn't one of them), to be fair it is one of the best and most privacy respecting solution I have seen so far, but not (yet) perfect.

1

u/Shoddy-Childhood-511 4d ago

ZKPs are listed as experimental there, so that's the old interactive protocol? That leaks metadata like crazy, so nobody should ever touch it for anything.

Anyways the specific ZKPs being proposed matter, but the EU has angled towards the wrong choices.

CloudFlare's PrivacyPass would've perfect anonymity itself, but leaks how frequently the credential gets used. This could be fixed, but not with the required device binding.

BBS signatures were proposed and might've strong anonymity too, although I've not looked closely. BBS+ group signatures would completely break anonymity, probably not being used, but the similarities require a close look.

The ZKPs being proposed by Google do not have perfect zero-knowledge. And their zero-knowledge looks extremely weak even.

1

u/d1722825 4d ago

AFAIK the current protocol is based on OpenID4VCI and the selective disclosure part of OpenID4VP. I think it doesn't leak that much metadata (your nationality, the rough number of age verifications), but maybe I have missed something.

1

u/Shoddy-Childhood-511 4d ago

At best OpenID4VCI means SD-JWTs, which are not unlinkable in any meaningful sense, and OpenID4VCI includes much worse protocols.

We've watched this W3C VC etc bullshit for a decade or so now, always using ZKPs or similar as a fig leaf, so they can design protocols that make privacy impossible.

2

u/d1722825 4d ago

The EU age verification app is not zero knowledge yet. The website you are proving your age to learns your nationality, and your government learns roughly how many times you proved your age.

They are planning to switch to a solution based on zero-knowledge proof, but it is not used at this moment:

https://ageverification.dev/av-doc-technical-specification/docs/annexes/annex-B/annex-B-zkp/

Although they use other techniques to try to be privacy friendly.

4

u/Draqutsc 4d ago

Great, now Google knows all Europeans true ages. And way more...

1

u/Shoddy-Childhood-511 4d ago

Yes, any large centralised operator like google, cloudflare, etc would quickly correlate any data revealed by using the system, because the OpenID4VCI standard creates its own unique identifiers.

BBS signatures or ZKPs could reduce the exposure somewhat, but..

We've had like a decade of watching the various identity guys, starting from the W3C Verifiable Claims WG, all bring up stronger privacy options as a fig leaf, while they then push the most privacy destroying thing that they can get away with, like OpenID4VCI.

1

u/billdietrich1 4d ago

I think it's a reference implementation. Each country will build their own or adapt this one to their use ?