Prueba de Conocimiento Cero
(Zero-Knowledge Proof)
Una prueba de conocimiento cero es un método criptográfico para demostrar que una afirmación es cierta, como «el titular tiene más de 18 años», sin revelar ninguno de los datos subyacentes en los que se basa la afirmación, como la fecha de nacimiento real.
Mientras que la divulgación selectiva permite a un titular revelar las afirmaciones elegidas tal cual son, una prueba de conocimiento cero no revela nada en absoluto: el verificador solo aprende que la afirmación es cierta, respaldada por una prueba que puede comprobar frente a la firma del emisor. Esta es una garantía de privacidad más fuerte que la divulgación selectiva, y un área activa de estandarización para futuros formatos de credencial usados en el ecosistema del EUDI Wallet. La prueba se construye de modo que cualquiera pueda comprobarla frente a parámetros públicos y a la firma del emisor, pero ninguna combinación de pruebas entregadas a distintos verificadores puede vincularse de nuevo a la misma credencial ni entre sí, lo que elimina el riesgo de correlación que surge de mostrar repetidamente el mismo valor firmado. Una credencial simple de divulgación selectiva todavía permite que dos verificadores confabulados comparen una afirmación con hash y concluyan que el mismo titular visitó a ambos, mientras que una prueba de conocimiento cero de la misma afirmación tiene un aspecto distinto cada vez que se genera. El coste es la complejidad y el gasto computacional: generar y verificar una prueba de conocimiento cero exige más capacidad de procesamiento que comprobar una firma sencilla, y los esquemas criptográficos implicados, como las firmas BBS+ o las zk-SNARK, son más recientes y menos estandarizados que la divulgación selectiva basada en hashes ya desplegada en SD-JWT. Varias implementaciones de referencia y pilotos del EUDI Wallet están evaluando las técnicas de conocimiento cero como una futura vía de mejora para atributos en los que más importa la imposibilidad de vincular, como las comprobaciones de edad o nacionalidad repetidas en muchos servicios no relacionados.
Términos relacionados
¿Significa usar una prueba de conocimiento cero que el verificador tiene que confiar ciegamente en el titular?
No. El verificador sigue apoyándose en criptografía y no en la confianza en el titular. La prueba vincula matemáticamente la afirmación a la firma original del emisor, de modo que un verificador puede tener la certeza de que una afirmación es genuina y no se ha alterado aunque nunca vea los datos subyacentes, la misma garantía que da una comprobación de firma normal, solo que sin exponer el valor que hay detrás.