Decidir DDH basado en información parcial

8

La suposición decisiva de Diffie-Hellman , o DDH en resumen, es un problema famoso en criptografía. La suposición DDH se mantiene en un grupo cíclico de orden (primo) q , si es para un generador g G , y para aleatoriamente a , b , c \ mathbb {Z} _q $$, los siguientes pares son indistinguibles (para algoritmos probabilísticos de poli-tiempo):(sol,)qsolsoluna,si,C

  • Tipo 1: (sol,soluna,solsi,solunasi)
  • Tipo 2: (sol,soluna,solsi,solC)

Ahora, suponga que es un grupo en el que DDH es difícil, y considere la siguiente pregunta informal :sol

¿Conocemos un algoritmo probabilístico de poli-tiempo (PPT), que obtiene un par Diffie-Hellman, junto con alguna información parcial sobre (por ejemplo, a es impar), y puede generar correctamente si el par de entrada es "Tipo 1" o "Tipo 2" (con probabilidad no despreciable)?unauna

Por información parcial, me refiero a una cadena , de modo que dado z y un par Diffie-Hellman, ningún algoritmo PPT puede calcular a , con una probabilidad no despreciable.zzuna


Es posible formalizar la pregunta anterior. Sin embargo, dado que la cantidad de notación requerida es tediosa, trato de usar una analogía.

Una suposición criptográfica no estándar famosa se llama Conocimiento del exponente (KEA).

Para cualquier adversario A que toma la entrada , g , g un y vuelve ( C , C a ) , existe un "extractor" B , que da las mismas entradas como A retornos c tal que g c = C .qsolsoluna(C,Cuna)UNACsolC=C

Intuitivamente, se afirma que, puesto que el adversario no puede resolver logaritmo discreto para obtener , la única forma de salida un par ( C , C a ) es "saber" el exponente c donde g c = C .una(C,Cuna)CsolC=C

Ahora, yo estoy haciendo una pregunta similar, basado en la DCC (en lugar de registro discreto): para distinguir "tipo 1" y "2" Tipo pares de Diffie-Hellman, debemos "saber" ya sea o b ?unasi

Un poco más formal (pero aún no completamente formal):

Sea un grupo de primer orden q , y sea f ( ) una función arbitraria cuya longitud de salida es polinómica en la longitud de su entrada. Escoja una , b , y c azar de Z q , y dejar que z = f ( un ) . Lanza una moneda y deja que X = a b si el resultado es cara. De lo contrario, sea X = c .(sol,)qF()unasiCZqz=F(una)X=unasiX=C

Para cualquier adversario PPT A que tome datos y decida correctamente entre Tipo 1 y Tipo 2 con probabilidad no despreciable, existe un "extractor" PPT B , que toma la misma entrada que a , las salidas ya sea una o b (con probabilidad no despreciable).(q,sol,soluna,solsi,solX,z)unasi

MS Dousti
fuente
eso es probablemente una respuesta trivial para una persona de cifrado, y no es específico para DDH bien, pero no lo hace Goldreich-Levin le dan un extractor como si el consejo es , donde r es unvectoraleatorio n- bit 0-1, y a y b también se representan comovectores n -bit(r,r,una+r,si(modificación2))rnorteunasinorte
Sasho Nikolov
@ Sasho: Gracias por la sugerencia. Requiero que el extractor funcione para cualquier , no para una específica. En otras palabras, dada cualquier información parcial, si A puede distinguir los pares, B debería poder extraer ...zAsi
MS Dousti
Entonces estoy confundido acerca de lo que significa "información parcial". ¿Por qué no puede ser 1 si y solo si X = a b ? Sonidos inverosímiles que se puede extraer una o b usando éste poco, pero seguramente se puede utilizar para distinguir entre los dos posibles distribuciones de entrada. z1X=abab
Sasho Nikolov
@Sasho: es información parcial sobre un y b , y no puede depender de X . Pero puede que tengas un punto allí. Cambié la pregunta, para que z pueda depender solo de a . zabXza
MS Dousti

Respuestas:

2

Dada la última formulación de su pregunta, esto parece ser imposible. Consideremos el caso en que tenga (familias) de grupos cíclicos y H , en donde GH y tenemos un mapa bilineal e : G × HT . Bajo el supuesto de XDH podemos suponer que DDH es difícil en G y del logaritmo discreto es difícil en H .GHGHe:G×HTGH

Deje ser un generador de G y h sea un generador de H . Luego defina f : Z | G | H como f ( a ) = h a .gGhHf:Z|G|Hf(a)=ha

Ahora dado , podemos determinar fácilmente si X = a b marcando e ( g b , z ) ? = e ( g X , h ) . (También puede verificar de manera similar la corrección de z si lo desea). Sin embargo, parece poco probable que un extractor pueda extraer(g,ga,gb,gX,z=f(a)=ha)X=abe(gb,z)=?e(gX,h)z o b de tal tupla. Extraer b es obviamente equivalente a un registro discreto; si hay un mapa de distorsión de H a G (no puede haber uno en la otra dirección), extraer un equivalente es un registro discreto (en H ).abbHGaH

mikero
fuente
Gran respuesta, gracias! Su respuesta me ayudó a centrarme más en lo que realmente quería: DDH, XDH y similares no proponen que la suposición correspondiente sea difícil para todos los grupos, sino que existen grupos en los que el problema asociado es difícil. Entonces, mi error fue que propuse mi suposición en un grupo general . Tengo que especificar el grupo (por ejemplo, es un subgrupo cíclico de Z p de primer orden q), o exponer la suposición en una forma existencial: existe un grupo ( G , ) , sobre el cual los resultados distintivos en la extracción. ¿Todavía me falta algo? GZp(G,)
MS Dousti