En un artículo titulado "Sobre la negabilidad en la cadena de referencia común y el modelo aleatorio de Oracle", Rafael Pass escribe:
Observamos que al probar la seguridad de acuerdo con la definición estándar de conocimiento cero en el modelo RO [Random Oracle], el simulador tiene dos ventajas sobre un simulador de modelo simple, a saber,
- El simulador puede ver en qué valores las partes consultan el oráculo.
- El simulador puede responder a estas consultas de la forma que elija, siempre y cuando las respuestas "se vean" bien.
La primera técnica, a saber, la capacidad de "monitorear" las consultas a la RO, es muy común en todos los trabajos que se refieren al concepto de conocimiento cero en el modelo de RO.
Ahora, considere la definición de conocimiento negro de caja negra ( PPT significa máquina de Turing probabilística y de tiempo polinomial ):
S ∀ V ∗ ∀ x ∈ L ∀ r un simulador PPT , tal que (posiblemente engañando) verificador PPT , entrada común , y randomness , los siguientes son indistinguibles:
- la vista de mientras interactúa con el probador en la entrada y usa la aleatoriedad ; P x r
- la salida de en las entradas y , cuando se da acceso de recuadro negro para . x r S V ∗
Aquí, quiero exhibir un verificador de trampa , cuyo trabajo es agotar cualquier simulador que intente monitorear las consultas de RO:
Sea el simulador garantizado por el cuantificador existencial en la definición de conocimiento cero de caja negra, y sea un polinomio que limite el tiempo de ejecución de en la entrada . Suponga que intenta monitorear las consultas de al RO.q ( | x | ) S x S V ∗
Ahora, considere una trampa , que primero consulta el RO por veces (en entradas arbitrarias de su elección), y luego actúa arbitrariamente maliciosamente. q ( | x | ) + 1
Obviamente, agota el simulador . Una forma simple de es rechazar ese comportamiento malicioso, pero de esa manera, un distintivo puede distinguir fácilmente la interacción real de la simulada. (Dado que en la interacción real, el probador no puede monitorear las consultas de y, por lo tanto, no lo rechazará por el simple hecho de que consulta demasiado). S P V ′ V ′
¿Cuál es la solución para el problema anterior?
Editar:
Una buena fuente para estudiar ZK en el modelo RO es:
Martin Gagné, A Study of the Random Oracle Model, Ph.D. Tesis, Universidad de California, Davis , 2008, 109 páginas. Disponible en ProQuest: http://gradworks.umi.com/33/36/3336254.html
En particular, proporciona definiciones de ZK de caja negra en el Modelo RO en la sección 3.3 (página 20), atribuido a Yung y Zhao: