Baby-step giant-step

En teoría de grupos, el algoritmo baby-step giant-step es un método para calcular el logaritmo discreto de un elemento en un grupo. Es un algoritmo genérico, es decir que funciona para cualquier grupo, siempre que conozcamos el orden del mismo. El problema del logaritmo discreto es de fundamental importancia para el área de la criptografía asimétrica. Muchos de los sistemas criptográficos más utilizados se basan en el supuesto de que el logaritmo discreto es extremadamente difícil de calcular. From Wikipedia, the free encyclopedia

En teoría de grupos, el algoritmo baby-step giant-step (también conocido como algoritmo de Shanks[1]) es un método para calcular el logaritmo discreto de un elemento en un grupo. Es un algoritmo genérico, es decir que funciona para cualquier grupo, siempre que conozcamos el orden del mismo (o una buena cota para él).

El problema del logaritmo discreto es de fundamental importancia para el área de la criptografía asimétrica . Muchos de los sistemas criptográficos más utilizados (por ejemplo el cifrado ElGamal) se basan en el supuesto de que el logaritmo discreto es extremadamente difícil de calcular.

Sea un grupo G con orden k, g un elemento de G, h en el subgrupo generado por g. La salida del algoritmo será un x<k tal que gx=h.

  1. Sea , donde indica la función techo.
  2. Calcular . Armar y ordenar la lista .
  3. Calcular hasta encontrar que sea igual a algún de la lista L.
  4. Si entonces la salida del algoritmo será .

Explicación

Ejemplo

Referencias

Related Articles

Wikiwand AI