EU Age Control: el caballo de Troya para la ID digital
(juraj.bednar.io)- Se promociona como una verificación con protección de privacidad que solo demuestra la edad, pero la estructura real de despliegue depende de apps nacionales y rutas opcionales, y no funciona como una sola app de la UE
- Las grandes plataformas pueden usar un proveedor KYC genérico que haga escaneo de pasaporte y verificación de liveness en lugar de la wallet de la UE, por lo que la ruta con protección de privacidad no es un requisito obligatorio, sino solo una opción
- La ruta principal de la implementación de referencia actual no usa zero-knowledge proofs, sino ISO 18013-5 mdoc with ES256, y la unlinkability tampoco se apoya en garantías matemáticas fuertes, sino en reglas de rotación de credenciales desechables de la wallet
- Si a la verificación de integridad de la app se le agrega hardware attestation, el binario final debe coincidir con el código aprobado por Google o Apple, lo que puede excluir dispositivos como GrapheneOS o teléfonos Linux personalizados
- El relay attack no se bloquea aunque todas las firmas y attestation sean válidas, y también se advierte que esta estructura podría allanar el camino para aceptar digital IDs revocables más allá de la verificación de edad
Ruta de evasión del DSA y sustitución con KYC
- Las grandes plataformas que manejan cierto tipo de contenido necesitan verificar la edad, pero no están obligadas a usar la wallet de la UE orientada a la privacidad
- La plataforma puede elegir la EU wallet
- Al mismo tiempo, también puede integrar un proveedor KYC genérico que haga escaneo completo del pasaporte y verificaciones de liveness
- Las funciones de privacidad quedan como algo opcional
- La promoción se concentra en lo privacy-preserving, pero las reglas también permiten rutas alternativas con menor privacidad
- La vía de integrar directamente los eID nacionales se describe como difícil en la práctica
- Integrar los distintos national eID systems de 27 países es complejo
- Para los proveedores KYC, seguir usando bases de datos de apariencia física de documentos y procedimientos basados en fotos es más barato y funciona de manera más general
- También se evalúa como bajo el nivel actual de preparación para la interoperabilidad
- La trusted list oficial tiene 0 apps en producción
- La implementation de referencia también se describe como aún incompleta
- Se considera poco realista esperar una interoperabilidad limpia en los 27 países para fines de 2026
Flujo real de verificación y control del dispositivo
- La principal ruta de alta confianza usa NFC passport
- Se escanea la MRZ en la parte inferior de la página con la foto para obtener la clave que permite leer y descifrar los datos del chip NFC
- El chip contiene datos firmados y una JPEG photo del titular
- Según el diseño, el teléfono toma una foto del rostro en tiempo real y la compara localmente con la foto del chip
- Esta comparación facial local está pensada para evitar que un hijo escanee el pasaporte de sus padres y emita su propia credencial
- Aunque la app sea open source, si en la distribución nacional real se obliga hardware attestation, se bloquean modificaciones arbitrarias
- Según el texto, en el código de referencia actual la verificación de attestation del lado del servidor todavía no está conectada
- Aun así, está planteado para que las distribuciones nacionales la agreguen
- El binario final debe coincidir exactamente con el código firmado por Google o Apple
- Este modelo de seguridad excluye ciertos dispositivos y sistemas operativos
- GrapheneOS y teléfonos Linux personalizados no serían aceptados
- Se indica que los dispositivos Huawei, aunque puedan hacer su propia hardware attestation, no pasan Play Integrity
- Como ejemplo relacionado se enlaza GrapheneOS attestation compatibility guide
- También existe una ruta más simple de MRZ-only, pero con limitaciones importantes
- Es una ruta donde solo se toma la foto del documento, sin lectura NFC ni comparación facial
- Se indica que no está claro si las apps nacionales reales la van a soportar
- La referencia recomienda la ruta de alta confianza basada en chip
Diferencia entre la criptografía promocionada y la criptografía realmente incorporada
- El relato público gira en torno a zero-knowledge proofs, pero la ruta de ejecución de la app Android de referencia no usa criptografía ZK
- El método que hoy funciona se describe como ISO 18013-5 mdoc with ES256
- Cada atributo se firma por adelantado
- La wallet revela solo los atributos solicitados y oculta el resto con salted-digest commitments
- Aunque el repositorio incluya librerías ZK, la presentation path no las invoca
- Se distingue entre que algo esté en el repositorio y que realmente esté switched on
- Queda abierta la pregunta de si las apps nacionales lo activarán después
- La unlinkability en la referencia actual también se explica de forma distinta a una garantía matemática fuerte
- El texto la llama disposable-batch unlinkability
- Se indica que, si las credenciales firmadas se usan una sola vez, podría revelarse solo que la persona es mayor de 18 y quién es el emisor, sin identificadores únicos
Características de privacidad y sus límites
- El flujo completo se acerca a un modelo local-first, pero sigue necesitando un servidor emisor de credenciales
- El escaneo del documento y las verificaciones iniciales se hacen en el teléfono
- Bajo el supuesto de una attested app, el servidor emisor puede confiar hasta cierto punto en qué código se ejecutó
- El servidor valida la firma del documento y emite una credential firmada
- La unlinkability desde la perspectiva del verificador solo vale si la wallet se comporta según las reglas
- El diseño no hace que dos pruebas sean matemáticamente imposibles de correlacionar, sino que usa disposable credentials una sola vez y luego obtiene otras nuevas
- Si la wallet cumple eso, distintos verificadores verán firmas diferentes y será difícil vincularlas
- Si la wallet hace trampa o se reutiliza la proof, se exponen los mismos bytes de firma y la vinculación se vuelve fácil
- El relato habitual de ZK = unlinkability permanente no aplica aquí
- Esa propiedad no se conserva porque la criptografía vuelva inútil la reutilización, sino porque la wallet tiene que respetar las reglas de rotación
- Como comparación se mencionan BBS+ y CL signatures, diciendo que esos enfoques sí pueden crear pruebas no vinculables aunque se reutilicen
- El alcance del rastreo desde la perspectiva del emisor también es limitado
- El emisor entrega la credential cuando el usuario presenta su ID
- Después, el servidor no sabe dónde ni cuántas veces se usa esa credential
- Incluso un posible rate limit solo limitaría la emisión, no la cantidad real de usos
- Bajo el funcionamiento normal de la wallet, se dice que a lo sumo puede inferirse que se trata de un ciudadano de un país de la UE, pero sería difícil saber qué cuentas pertenecen a la misma persona o vincular actividad entre sitios
Problema de relay attack
- Se presenta un escenario de relay attack al que la especificación no responde adecuadamente
- Un menor intenta entrar a un sitio con restricción de edad y entrega el código QR o enlace a un servicio de autenticación por intermediario
- Ese servicio lo reenvía a un teléfono limpio que sí tiene la wallet gubernamental de un adulto real
- Si el adulto aprueba, el sitio recibe una proof de mayoría de edad totalmente válida y concede acceso
- En este flujo no falla ninguna verificación criptográfica
- Todas las firmas son reales, la attestation es real y el adulto efectivamente es adulto
- El problema es que el protocolo no queda vinculado al ser humano que está frente a este navegador ahora mismo, sino solo al hecho de que alguna wallet en algún lugar aprobó la operación
- La ausencia de proximity check se presenta como la limitación clave
- La Digital Credentials API del navegador solo mitiga algo cuando la navegación y la autenticación ocurren en el mismo teléfono
- Se indica que los códigos QR y deep links usados entre dispositivos siguen abiertos a este problema
- Play Integrity tampoco lo resuelve
- Play Integrity solo hace attestation de qué código corre en qué dispositivo
- No dice quién está frente al dispositivo ni dónde está ese dispositivo
- En el flujo por proxy, el servicio web intermediario no es el objetivo de la attestation, solo retransmite bytes
- Una vez que un adulto queda registrado, se considera que el modelo de reventa se vuelve más fácil
- Se indica que la wallet contiene 30 disposable credentials que se renuevan con poca frecuencia
- El emisor no ve cómo se consumen realmente esas credenciales
- Por eso, un operador proxy podría reutilizar la misma credential con muchos menores y el sistema aguas arriba no lo detectaría
- Se define este problema no como un bug de implementación, sino como una propiedad estructural derivada de la protocol shape
- Por eso se considera un problema que persistiría en las apps de los 27 países que sigan la especificación
Preocupación por la expansión hacia infraestructura de ID digital
- La app de verificación de edad se presenta como una puerta de entrada hacia una digital ID infrastructure
- El punto de partida es la protección infantil y el bloqueo de contenido dañino, pero se describe que en la práctica la estructura genera fricción para empujar a la gente a elegir una attested wallet más conveniente
- En esta estructura, la propia app también está sujeta a attestation, por lo que Google o Apple terminan decidiendo qué puede ejecutarse
- Se indica que el issuer puede revocar credenciales
- Se dice que la app de referencia filtra la foto del rostro solo localmente
- Al mismo tiempo, como los 27 países van a crear versiones separadas, se considera que cada implementación nacional podría introducir sus propios bugs de privacidad
- Se dice que las invocaciones repetidas de la wallet producen un Hawthorne effect
- Si en sitios polémicos hay que abrir la wallet cada vez, aunque la proof sea anónima, podría aumentar la autocensura
- Se afirma que el historial de los gobiernos protegiendo bien este tipo de datos no es bueno
- También se plantea la preocupación de que después esto pueda conectarse con otros sistemas como Digital Euro
- Entonces, se considera que una gran parte de la vida podría apagarse de forma remota
- Se pone como ejemplo el impago de una multa de estacionamiento para imaginar escenarios de suspensión temporal de la credential
- En conclusión, se remarca que no hace falta aceptar digital IDs revocables como precio por acceder a internet
Distinción sobre los casos de hackeo divulgados públicamente
- Los problemas reportados se dividen en dos categorías
- mock-up bugs: filtración de archivos, escaneo MRZ sin validación, demos con extensión de Chrome que golpean un backend placeholder, etc.
- structural properties: ausencia de proximity binding, one-time-use del lado del cliente, ruptura de la unlinkability cuando hay reutilización, etc.
- La primera categoría se clasifica como problemas que pueden corregirse en implementaciones nacionales
- La filtración de archivos en disco de la app de referencia se corregirá y no se considera un problema esencial
- Incluso si se pudiera engañar al sistema para obtener una credential de prueba, se indica que la ruta principal real no será el mock-up con escáner MRZ sin validar, sino los sistemas eID nacionales de cada país
- La segunda categoría se trata como propiedades que no son bugs, sino consecuencias directas de la especificación
- Se define como un problema que permanecerá en todas las implementaciones nacionales que sigan la especificación
- También se considera que el hack basado en una custom Chrome extension no funcionará en producción
- Si se fuerza attestation, fallará en la validación de la app
- También se indica que la ruta MRZ no se conecta al backend común real de la UE y que el registro de documentos válidos queda bajo jurisdicción nacional
- Se concluye que las demostraciones de “romper el mock-up” se parecen más a atacar un ejemplo de uso de librerías
- En la práctica existirán apps nacionales separadas, como la eslovaca, húngara, alemana, neerlandesa, francesa, etc.
Demanda y conclusión
- Se considera que sí existe demanda para este tipo de sistema
- Padres que sienten que internet es peligroso quieren herramientas para proteger a sus hijos
- Más allá de si los niños podrán saltárselo, se describe que el cliente real suele ser el padre que quiere tranquilidad más que el menor que supuestamente será protegido
- También se incluyen enlaces de referencia
- El juicio final se resume en cuatro puntos
- Las EU fancy ZK apps van retrasadas, por lo que es probable que las plataformas usen proveedores KYC genéricos, estimadores de edad facial con IA y otros medios
- Si se implementa según la especificación, sí hay características de privacidad significativas que dificultan que las plataformas conozcan el nombre real del usuario o vinculen sus cuentas
- Pero esas características dependen más del wallet behavior que de una imposición criptográfica, y la matemática ZK presente en el repositorio hoy no está activada
- También vienen de la mano restricciones de funcionamiento en dispositivos no Google/Apple approved device y la limitación estructural del relay attack
1 comentarios
Comentarios de Hacker News
Esto no es un caballo de Troya, sino el objetivo explícito que aparece en resoluciones, debates y textos legales
El requisito de verificación de edad se eligió como una forma de demostrar que la tecnología es viable y, al mismo tiempo, como el punto de partida más simple hacia una identidad digital completa
La UE ya cuenta con gobiernos nacionales que ofrecen servicios de autenticación basados en tarjetas inteligentes o en cuentas gubernamentales, parecidos a OIDC, y la billetera digital es una extensión de eso para facilitar la autenticación de ciudadanos de otros países de la UE y permitir llevar la identificación en el teléfono
El escenario de pasarle a un hijo un token de verificación de edad ya es posible en la vida real, y ese riesgo siempre se ha asumido para luego castigarlo si se detecta; no es como si el bar te siguiera para comprobar si realmente estás bebiendo
Una identificación física real suele mostrarse solo en situaciones poco frecuentes, como trámites bancarios, firma de documentos o gestiones con el gobierno, y hasta para comprar alcohol casi nunca la pedían
Y cuando la pedían, normalmente solo había que mostrarla, no dejar que le tomaran una foto para guardarla
Pero si en supermercados, farmacias, gasolineras, estacionamientos, restaurantes y bares empezaran a pedir identificación, tomarle fotos y guardarlas en una base de datos, a nadie le gustaría
Igual que el autor, yo también tengo una identificación eslovaca y quisiera saber cuándo realmente va a servir para acceder a servicios en internet
El defecto del que hablamos aquí permite industrializar la evasión, así que es muy distinto a hacer unas cuantas compras por encargo en el mundo físico
La verdadera unlinkability criptográfica, como BBS+ o las firmas CL, puede generar pruebas reutilizables sin correlación entre sí, pero este sistema no hace eso
Como también se discutió con el eID suizo, la razón para usar firmas rotativas en lugar de ZKP es que la mayoría del hardware de seguridad de los teléfonos no soporta algoritmos como BBS+
En vez de que cada país tenga que crear su propio sistema de resguardo criptográfico, se considera más realista y menos problemático en conjunto hacer que el módulo de hardware vaya rotando un conjunto de firmas pregeneradas
La ventaja del módulo de hardware es que, si pierdes el teléfono, resulta mucho más difícil para un atacante extraer la clave secreta real
Cada vez que sale el tema de la identidad digital, los que inflan el miedo repiten las mismas preocupaciones copiadas y pegadas, pero si lees la especificación EUDI verás que muchas de ellas ya están contempladas
https://eudi.dev/1.6.0/architecture-and-reference-framework-main/
Necesito un mejor punto de partida que andar leyendo artículos de Wikipedia sobre eID de cada país
Ya cansa muchísimo esta dinámica de alarmismo estilo Pedro y el lobo
También se puede ver desde otro ángulo
EU Age Control en sí no es un caballo de Troya, y la app hace exactamente lo que dice que hace
Lo que pasa es que nadie quiere usarla
El verdadero caballo de Troya es el sistema operativo móvil corporativo
Como parece un regalo gratis y bonito, la gente lo acepta con gusto, pero en realidad su negocio central es erosionar la privacidad en beneficio de Google, Apple y sus socios publicitarios
La gente no ve esa función; solo ve el regalo bonito y gratuito
Por eso la app de verificación de edad solo funciona en sistemas operativos móviles corporativos
Como dijo el autor, si no es un dispositivo aprobado por Google o Apple, quedan fuera Linux, GrapheneOS, Huawei y el firmware personalizado, y eso forma parte del modelo de seguridad
La verdadera excusa para exigir identificación no es la verificación de edad, sino la seguridad, y precisamente esa lógica es la que impide que el dueño del dispositivo use un sistema operativo compilado por él mismo
A mi parecer, la identidad digital probablemente terminará siendo inevitable, igual que la moneda digital
Como es más cómoda y eficiente, se seguirá emitiendo, y las pruebas de identidad en papel irán desapareciendo con el tiempo
En un mundo conectado, los tokens físicos como la tarjeta bancaria o la licencia de conducir no son imprescindibles ni la mejor solución
Por eso el foco debería estar en limitar lo que el gobierno no puede hacer con eso
Por ejemplo, así como no debería poder quitarte la ciudadanía, tampoco debería poder desactivar o borrar tu identidad con facilidad
Está la identidad digital del gobierno neerlandés para declarar impuestos y similares, y también se pueden hacer cosas parecidas con certificados X509 emitidos por el gobierno de Ucrania y una app
No termino de entender por qué todo eso tendría que verse como algo malo
En el Reino Unido incluso puede ocurrir por decisión política, y si ya pueden congelar cuentas bancarias y bloquear otros derechos, me cuesta creer que se pueda prohibir eso de forma efectiva
Tampoco veo tan claro cuál es el problema de los tokens físicos
Son simples, no crean un punto único de falla, y si pierdes el teléfono todavía te quedan las tarjetas y el efectivo; además resisten mejor las caídas de red o del sistema
No me parece que cargar unas cuantas tarjetas sea una desventaja tan grave
Además, incluso en papel se puede incluir una identificación digitalizada y firmada criptográficamente, así que en seguridad y legibilidad por máquina puede cumplir un papel bastante parecido al de lo electrónico
Donde el token electrónico realmente destaca, ya sea para identidad o cualquier otra cosa, es al demostrar la posesión física de una única copia
La UE ya lleva años avanzando en esa dirección, supuestamente para controlar lo que los gobiernos pueden hacer
https://escapekey.substack.com/p/europe-goes-full-digital
Viendo cómo cambiaron las elecciones después del crecimiento de las redes sociales, parece que los gobiernos quieren recuperar el control que tenían antes
Invocando miedos como material de abuso sexual infantil, terrorismo y ahora CP generado por IA, van apretando cada vez más el internet abierto, y al final parece que terminaremos con una versión occidental de segunda del Gran Cortafuegos y algo parecido al crédito social
Algunos países liberal-democráticos ya parecen haber sembrado esas bases
Algunas cuentas grandes de influencers resultaron ser bots chinos o rusos, y la dinámica de sembrar odio y división empeora todavía más con los LLM
Algún tipo de identidad digital que permita verificar la realidad detrás de las cuentas sociales podría ser la última esperanza real para proteger el debate público
Mi gobierno lleva tiempo diciendo que las redes sociales nos vuelven más tontos, más deprimidos y más ansiosos, y creo que es verdad
Entiendo que ese impacto también afecta a las elecciones, pero no parece que el punto central que quieren resolver sean las elecciones en sí
Si resuelves el problema, es natural que eso también repercuta en las elecciones
Incluso cuando está basado en menores reales, si un multimillonario vende abiertamente acceso al generador, parece que no pasa nada
Eso me hace pensar aún más que todo esto es un hombre de paja inflado para meter miedo
Sea una app demo o no, lo más importante es implementarlo bien
Porque es poco probable que todos los Estados miembros lo implementen correctamente
Y la solución para proteger a los niños también tiene límites
No darles teléfono o computadora a los niños puede ser una solución simple, y de todos modos los sitios ilegales no van a cumplir con la verificación de edad
Si sitios como Pirate Bay cumplieran bien la ley, ni siquiera existirían, así que al final esto se parece más a una solución ineficaz
Sobre todo, qué protocolos de aprobación y control se van a usar entre países
La idea de una base de datos única o de una red sin controles me parece bastante aterradora
Hoy en día muchas escuelas exigen acceso a computadoras
Ya usamos eID desde hace mucho tiempo, y no pasa nada si eso se usa más ampliamente en línea
Lo mismo con la verificación de edad, pero tendría que hacerse de una forma en la que empresas estadounidenses o Palantir no estén metidas en el proceso
No parece probable que se permita un verdadero sistema de Zero Knowledge Proof para algo como la verificación de edad
Y el remote attestation tampoco funciona así
En un sistema ZKP real, si una sola clave se filtra o se extrae, podrían crearse pruebas falsas ilimitadas y sería difícil detectarlo
https://eudi.dev/2.5.0/discussion-topics/g-zero-knowledge-proof/
Certifica incluso dispositivos antiguos como los de Oreo, pero en aparatos a los que el fabricante ya dejó de dar actualizaciones quedan en la práctica vulnerabilidades infinitas, lo que hace posible la extracción de claves
Muchos países ya llevan años operando con identidad digital
El problema no es la identidad digital en sí, sino la vigilancia
Una identidad digital que se use solo al interactuar directamente con la entidad emitida por el gobierno está bien, e incluso puede ser deseable
Pero imponer la verificación de edad es una forma de abrir esa información también a empresas privadas, y por eso eso sí me parece el caballo de Troya
{"over_18": true}o{"over_16": true, "over_18": false}con firma del gobiernoClaro, en un caso raro como una identificación del Vaticano podría ser problemático, pero de entrada ellos ni siquiera participan en este sistema
Internet originalmente era una vía de escape cyberpunk, pero ahora parece que vamos hacia la eliminación de la anonimidad cueste lo que cueste
Un mundo donde desbloqueas el teléfono con reconocimiento facial y tu historial de internet queda vinculado 1:1 con tu identificación gubernamental simplemente se siente triste