¿Cómo puedo explicar “prueba de conocimiento cero” a un usuario final?

32

Un ZKP permite la prueba de saber la respuesta a un secreto, sin revelar realmente cuál es esa respuesta.

¿Hay alguna analogía que pueda ayudar a las personas a poner este concepto en práctica diaria? Un ejemplo de " mentir a los niños " es suficiente.

Por ejemplo, Diffie-Hellman tiene la analogía mezcla de colores y la metáfora del candado.

¿Hay alguna metáfora de la vida real, superhéroe con poderes, héroe / villano, objeto o algo con lo que alguien pueda relacionarse que ayude a describir qué es un ZKP?

Mi intención es convertir la metáfora ganadora en una animación que se reproducirá en un dispositivo móvil cuando se presente un ZKP. (una animación en el lado del remitente, otra en el lado de recepción)

    
pregunta random65537 24.04.2015 - 22:33
fuente

5 respuestas

51

Escuché este ejemplo durante una de las conferencias invitadas en mi escuela de posgrado. Creo que es lo suficientemente simple, ya que yo mismo lo he usado muchas veces, para explicar ZKP a personas con casi Conocimiento cero de crypto / math.

Digamos que quiero convencerte de que tengo un superpoder para contar el número exacto de hojas en un árbol, en unos pocos segundos. Quiero convencerte sin realmente revelar ese número exacto y sin revelar cómo funciona mi superpoder . Puedo idear un protocolo simple:

Cerraré los ojos y te daré la opción de arrancar una hoja de ese árbol. Ya que es solo una opción, lo sacarás o no lo harás. No tengo otra forma de saber si lo hiciste o no, contando rápidamente las hojas con mi superpoder . Ahora, cuando miraré el árbol, me preguntarás si realmente lo sacaste o no.

Si te doy una respuesta incorrecta, sabrás de inmediato que mi superpoder es falso y también lo es mi conocimiento. Sin embargo, si mi respuesta es correcta, podrías pensar que acabo de tener suerte. En cuyo caso podemos repetir los pasos anteriores. Podemos seguir repitiendo estos pasos hasta el punto en que esté satisfecho con el hecho de que poseo el superpoder y que conozco el número exacto .

    
respondido por el Rahil Arora 25.04.2015 - 09:45
fuente
6

La mejor demostración de pruebas de conocimiento cero que he encontrado es "Criptografía infantil aplicada, o Cómo convencer a tus hijos de que no estás haciendo trampa " por Moni Naor, Yael Naor y Omer Reingold. Examinan un problema criptográfico simple pero real: cómo convencer a la gente de que conoces la solución a un ¿Dónde está Waldo puzzle sin liberar ninguna información sobre su ubicación. Como lo sugiere el título del artículo, la explicación pretende ser lo suficientemente simple para que un niño la entienda.

    
respondido por el Psychonaut 29.04.2015 - 12:52
fuente
3

La buena respuesta es esta historia: El caso notable es la metáfora de la "cueva de Ali Baba" utilizada para ilustrar los mecanismos básicos detrás de una prueba de conocimiento cero: el promotor debe convencer al verificador sobre su conocimiento a través de un protocolo interactivo, pero al mismo tiempo, un espectador casual no debe obtener cualquier información sobre el conocimiento secreto.

  • Del libro: Explicando los algoritmos usando metáforas, Michal Forišek · Monika Steinová, 2013
  • La referencia del libro es este artículo de 1990: Cómo explicar los protocolos de conocimiento cero a sus hijos.

    
respondido por el Ali 29.04.2015 - 12:28
fuente
1

Kudos en la analogía de mezcla rsa. Un gran hallazgo.

El zkp depende principalmente de una operación de algún tipo, y la parte verificadora puede dictar algunos términos que la parte contraria puede usar. Por supuesto, esto depende mucho de la pregunta que se haga en primer lugar.

La combinación de la puerta secreta peggy victor no funcionaría si la pregunta se formulara como Victor, queriendo saber si Peggy podría llegar al lado izquierdo / derecho del túnel en lugar de saber la contraseña para pasar por la puerta.

Por lo tanto, la pregunta en la vida real podría resumirse para los niños como tal:

Me gustaría saber si entiende cómo funciona A / B / C, o si está al tanto de un conocimiento que dice que sí. La prueba de lo que podría ser alguna forma de prueba, que podría traducirse en alguna forma de exposición literal de la respuesta aceptada, o una expresión física del conocimiento (es decir, ¿sabe cómo funciona el motor de combustión, y sí, aquí está el plano)? 8 con carbohidratos gemelos que hice con mis propias manos con el acero tallado de las profundidades de una mina en algún lugar del norte de Rusia). Lo complicado con ZKP, y esto se extiende a muchas otras áreas, es si al presentar la prueba, en sí misma revela la manera en que se puede derivar la respuesta.

Y aparece en la vida real, que se traduce en la cantidad de tiempo necesaria para que la parte verificadora realice una ingeniería inversa de la prueba para determinar las maquinaciones internas. Así que sostengo que ZKP también se trata de aumentar este tiempo a una proporción donde no tiene sentido resolver esto.

Y con eso, podrías aplicar esto a bastantes ejemplos del mundo real.

    
respondido por el munchkin 25.04.2015 - 10:06
fuente
0

Supongamos que hay dos tipos de bebidas que en general se consideran iguales pero en diferentes envases. Pero sabiendo que son iguales intenta descubrir una prueba para distinguir entre los dos. A la siguiente A le gustaría convencer a B de que dos bebidas no son iguales.

a) Una forma trivial de demostrar que sería para A enviar los detalles de su prueba a B y dejar que B realice la prueba. b) Pero supongamos que A no quiere divulgar nada sobre la prueba realizada. Entonces A aún podría convencer a B usando el siguiente protocolo.

Va como: B toma una lata de bebida de cada marca y elige aleatoriamente una lata, vierte un poco de ella (todo en privado) y se la entrega a A. A luego prueba la muestra y le dice a B a qué marca pertenece la muestra. Repiten este procedimiento varias veces. Si A responde correctamente cada vez, entonces B aceptará la afirmación de que las bebidas no son idénticas.

En este protocolo, en primer lugar, si las bebidas son diferentes y A tiene una prueba confiable para distinguirlas, A siempre puede convencer a B. Por otra parte, si las bebidas de ambas latas son idénticas, entonces A No puedo distinguirlos.

    
respondido por el TarunSh 01.05.2015 - 12:38
fuente

Lea otras preguntas en las etiquetas