La mística de los números primos

0
540
Por Fernando Molina, CEO de NUBEADO – Expertos en tecnologías web.

En el artículo de hoy, queremos traer al lector, todo lo que rodea el singular mundo de los números primos; y es que su relevancia en nuestro día a día, va mucho más allá de lo que podamos pensar.

Para comenzar y para ponernos en situación, diremos que en diciembre del año 2018, fue descubierto el último número primo de Mersenne que se conoce hasta el sol de hoy; un nuevo hito que traía de nuevo a la actualidad a estos particulares números de formato (2p-1). Concretamente, el número primo encontrado contenía más de 22 millones de dígitos; convirtiéndose en el número 51 de toda la historia, y aunque este hecho pueda parecer que carece de relevancia, hay que recordar al lector que la búsqueda de nuevos números primos lleva siglos siendo una auténtica obsesión para científicos y matemáticos, por su importancia en la aplicación en varios ámbitos prácticos y teóricos.

Cabe decir también, que el proceso que posibilita el descubrimiento de nuevos números primos de Mersenne es especialmente exigente. Para su búsqueda, se precisan procesadores ultra potentes, capaces de soportar cargas de trabajo muy elevadas durante largos periodos de tiempo; y para ello, se han desarrollados programas que verifican la capacidad de los chips de estos procesadores y computadores.

Esta búsqueda permanente de números primos de Mersenne, nos ha permitido también conocer, lo mucho que puede ofrecer la computación distribuida; un sistema que reparte la carga de trabajo de la búsqueda de nuevos números primos entre un ingente número de ordenadores alrededor todo el mundo.

Como curiosidad, diremos que cualquiera que lo desee, puede usar su ordenador para unirse al proyecto de búsqueda a través de un programa llamado Prime95; el cual al ejecutarlo, nos preguntará si queremos unirnos a esta iniciativa o únicamente pasar un “test de estrés” con el que evaluar precisamente la estabilidad de nuestro equipo.

Este proyecto de informática distribuida es uno de los más conocidos en todo el mundo, y aunque originalmente el programa Prime95 se centraba en examinar el rendimiento de la CPU, hace tiempo que se está desarrollando una versión GPGPU que aproveche la enorme potencia bruta de los procesadores de las tarjetas gráficas dedicadas.

Este proyecto que acabamos de mencionar, ha sido el responsable del descubrimiento de varios nuevos números primos de Mersenne, y cuenta actualmente con un unos dos millones de máquinas registradas y un throughput (media de los últimos 30 días) de 946.781 TFLOPs. La cifra es realmente espectacular y podríamos decir que esta “computadora distribuida” en la más potente de todo el mundo, por encima incluso de todos los supercomputadores mundiales.

Tal es la potencia de este supercomputador distribuido, que fue el responsable del descubrimiento del número primo que comentamos al principio del artículo. Concretamente, el descubrimiento vino por parte de uno de los voluntarios de este esfuerzo global que precisamente usaba este algoritmo para poner a prueba sus sistemas en escenarios de estrés computacional. 

¿Y cuáles son las aplicaciones de estos números primos en el mundo real?

La respuesta a esta pregunta es que son varias las posibles aplicaciones, pero por centrarnos en la más importante, diremos que una de las aplicaciones prácticas a día de hoy de estos números primos es el del cifrado RSA; un código que permite recibir un mensaje protegido con un algoritmo que publicará el producto de dos grandes números primos como su “clave pública”, haciendo prácticamente imposible su descifrado con fuerza bruta.

Para que nos hagamos una idea, digamos que si una persona estuviera potencialmente interesada en descifrar un mensaje cifrado RSA, tendría que tratar de adivinar los números primos adecuados con los que se generó la clave pública, algo que como puede imaginar el lector, puede resultar cuanto menos, una tarea laboriosa y compleja. De ahí viene la importancia del descubrimiento de números primos de millones de cifras, dado que cuanto más grandes son los números primos utilizados, más potenciales combinaciones hay para crear la clave pública y más difícil es encontrar esa clave pública.

El secreto del éxito de esta técnica, se debe a que a diferencia de usar para obtener la clave pública el producto de dos números al azar, que daría opción a que hubiera otros números enteros con los que obtener la clave, con el uso de dos números primos desaparece la confusión en la factorización.

Actualmente, el cifrado de las comunicaciones es la principal aplicación de estos números primos de Mersenne, pero no podemos asegurar que no vayan a surgir nuevas aplicaciones de igual relevancia en el futuro. Sólo hay que echar una mirada al pasado para comprobar, cómo otros descubrimientos posteriormente acabaron aplicándose a desarrollos que ni siquiera estaban en mente de sus creadores.