# Récords en logaritmos discretos

Los récords en logaritmos discretos son los mejores resultados obtenidos hasta la fecha en la resolución del problema del logaritmo discreto, consistente en encontrar soluciones de x para la ecuación g$^x$ = h, dados dos elementos g y h pertenecientes a un grupo cíclico finito G. La dificultad de resolver el problema es la base de la seguridad de numerosos sistemas criptográficos, entre ellos el protocolo Diffie-Hellman, el cifrado ElGamal, el Algoritmo de Firma Digital (DSA), o la criptografía de curvas elípticas. La elección más habitual de G utilizada en esos algoritmos incluye el grupo multiplicativo de enteros módulo p, el grupo multiplicativo de un cuerpo finito, y el conjunto de puntos de una curva elíptica sobre un cuerpo finito.

## Enteros módulo p

El 18 de junio de 2005, Antoine Joux y Reynald Lercier anunciaron la computación de un logaritmo discreto módulo un número primo fuerte de 130 dígitos (431 bits) en tres semanas, utilizando para ello un ordenador HP AlphaServer GS1280 con 16 procesadores a 1.15 GHz ejecutando un algoritmo de criba general del cuerpo de números (GNFS).
El 5 de febrero de 2007, fue superado con el anuncio de Thorsten Kleinjung de la computación de un logaritmo discreto módulo un número primo fuerte de 160 dígitos (530 bits), usando de nuevo la criba general del cuerpo de números. La mayor parte de la computación fue realizada utilizando tiempo muerto de CPU en varios ordenadores de un clúster de computación en paralelo.

## Cuerpos finitos

El récord actual (a fecha de 2013) en un cuerpo finito de característica 2 fue anunciado por Antoine Joux el 21 de mayo de 2013. Su equipo fue capaz de computar logaritmos discretos en el cuerpo de 2$^{6168}$ = (2$^{257}$)$^{24}$ elementos usando para ello menos de 550 horas de CPU. Esta computación fue realizada utilizando el mismo algoritmo de cálculo empleado en la computación reciente del cuerpo con 2$^{4080}$ elementos.
Los récords anteriores en cuerpos finitios de característica 2 fueron anunciados por:
* Robert Granger, Faruk Göloğlu, Gary McGuire, y Jens Zumbragel el 11 de abril 2013. La nueva computación trataba con el cuerpo de 2$^{6120}$ elementos y demoró 749,5 horas de CPU.
* Antoine Joux el 22 de marzo de 2013. Utilizó el mismo algoritmo para cuerpos de característica pequeña que en la anterior computación del cuerpo de 2$^{1778}$ elementos. Se computó en el cuerpo con 2$^{4080}$ elementos, representado como una extensión de grado 255 del cuerpo con 2$^{16}$ elementos, utilizando para ello menos de 14100 horas de CPU.
* Robert Granger, Faruk Göloğlu, Gary McGuire, y Jens Zumbragel el 19 de febrero de 2013. Utilizaron una nueva variante de la criba general del cuerpo de números con un cuerpo base de tamaño medio, para cuerpos binarios, para computar un logaritmo discreto en un cuerpo de 2$^{1971}$ elementos. Para poder usar un cuerpo base de tamaño medio representaron el cuerpo como una extensión de grado 73 del cuerpo de 2$^{27}$ elementos. La computación demoró 3132 horas de CPU en un clúster SGI Altix ICE 8200EX utilizando procesadores de 6 núcleos Intel (Westmere) Xeon E5650.
* Antoine Joux el 11 de febrero de 2013. Utilizaba un nuevo algoritmo para cuerpos de característica pequeña. Se computó en un cuerpo de 2$^{1778}$ elementos, representedo como una extensión de grado 127 del cuerpo con 2$^{14}$ elementos. El cómputo se realizó en menos de 220 horas de CPU.
El récord actual (a fecha de 2013) para un cuerpo finito de característica 2 de grado primo fue anunciado por el grupo CARAMEL el 6 de abril de 2013. Emplearon la criba general del cuerpo de números para computar un logaritmo discreto en una cuerpo de 2$^{809}$ elementos. El récord anterior en un cuerpo finito de característica 2 de grado primo fue anunciado por Antoine Joux y Reynald Lercier el 23 de septiembre de 2005. Emplearon la criba general del cuerpo de números para computar un logaritmo discreto en un cuerpo de 2$^{613}$ elementos. El cómputo demoró 17 días en cuatro nodos de 16 procesadores, a 1.3 GHz cada uno, del súper-ordenador Teranova, basado en el Itanium 2.
El récord actual (a fecha de 2012) para un cuerpo de característica 3 fue anunciado por una asociación entre Fujitsu, NICT y el equipo de la Universidad de Kyushu, que computaron un logaritmo discreto en el cuerpo de 3$^{6·97}$ elementos, de 923 bits de tamaño, empleando una variante de la criba general del cuerpo de números, superando así el récord anterior en el cuerpo de 3$^{6·71}$ elementos de 676 bits por un amplio margen.
Respecto a cuerpos de característica de tamaño "moderado", computaciones notables realizadas en 2005 incluyen aquella sobre el cuerpo de 65537$^{25}$ elementos (401 bits), anunciada el 24 de octubre de 2005, y la del cuerpo de 370801$^{30}$ elementos (556 bits), anunciada el 9 de noviembre de 2005. El récord actual (a fecha de 2013) para un cuerpo finito de característica "moderada" fue anunciada el 6 de enero de 2013. El equipo empleo una nueva variante de la criba general del cuerpo de números para el caso de primos medios para computar un logaritmo discreto en un cuerpo de 33341353$^{57}$ elementos (un cuerpo finito de 1425 bits). Se había empleado la misma técnica unas semanas antes para computar un logaritmo discreto en un cuerpo de 33553771$^{47}$ elementos (un cuerpo finito de 1175 bits).

## Curvas elípticas

La corporación Certicom ha propuesto una serie de desafíos relacionados con la Criptografía de curva elíptica. El nivel I involucra cuerpos de 109 y 131 bits. El nivel II incluye los de 163, 191, 239 y 359 bits. Se cree que todos los desafíos de nivel II son computacionalmente inviables.
Los desafíos de nivel I que han sido superados son:
* ECC2K-108, consistente en tomar un logaritmo discreto en una curva de Koblitz sobre un cuerpo de 2$^{108}$ elementos. El premio fue otorgado el 4 de abril de 2000 a un grupo de unas 1300 personas, representado por Robert Harley. Utilizaron una paralelización del algoritmo rho de Pollard para logaritmos.
* ECC2-109, que consistía en tomar un logaritmo discreto en una curva sobre un cuerpo de 2$^{109}$ elementos. El 8 de abril de 2004 se otorgó el premio a un grupo de unas 2600 personas representado por Chris Monico. También emplearon una versión paralelizada del algoritmo rho de Pollard para logaritmos, durando el cálculo 17 meses de tiempo real.
* ECCp-109, consistente en tomar un logaritmo discreto en una curva módulo un primo de 109 bits. El premio se otorgó el 15 de abril de 2002 a un grupo de 10308 personas, representado por Chris Monico. De nuevo se empleó una variante paralelizada del algoritmo rho de Pollard para logaritmos, demorando 549 días de tiempo real.
Ninguno de los desafíos de 131 bits (o superiores) han sido superados a fecha de 2010.
En julio de 2009, Joppe W. Bos, Marcelo E. Kaihara, Thorsten Kleinjung, Arjen K. Lenstra y Peter L. Montgomery anunciaron que habían conseguido computar un logaritmo discreto en una curva elíptica módulo un primo de 112 bits. La computación fue realizada mediante un clúster de 200 PlayStation 3 durante 6 meses, empleando la versión paralelizada más común del algoritmo rho de Pollard para logaritmos.