¿Cuál es el significado de los números primos?

Porque es fácil generar números primos realmente enormes. Y es fácil multiplicar dos primos juntos. Pero es casi imposible que alguien más mire ese gran número y descubra cuáles eran sus dos números primos.

Para dar una idea de lo difícil que es:

Los Laboratorios RSA publicaron varios números muy grandes que habían obtenido multiplicando dos números primos juntos

Lo hicieron de una manera que garantizó que nadie, incluso ellos mismos saben cuáles son los factores, creados usando un aleatorizador de hardware (por lo tanto, sin algoritmo) en una computadora sin conexión a ninguna red, y luego los números extraídos y el disco duro destruido.

Preguntas frecuentes sobre el desafío de factorización de RSA

Anunciaron el desafío en 1991. Y algunos de ellos fueron gradualmente factorizados, pero solo los más pequeños.

Números RSA

Aquí está uno de ellos (RSA-220):

2260138526203405784941654048610197513508038915719776718321197768109445641817966676608593121306582577250631562886676970448070001811149711863002112487928199487482066070131066586646083327982803560379205391980139946496955261

Tiene 220 dígitos

Todavía no se ha factorizado, 23 años después.

Entonces, creemos que factorizar números es difícil. Si bien la multiplicación es fácil, solo toma una fracción de segundo multiplicar dos números de este tamaño en una computadora.

Pero, si alguien inventara una forma fácil y rápida de factorizar grandes números, nuestros sitios web tipo https ya no serían seguros y tendríamos que encontrar un enfoque radicalmente nuevo.

Hasta ahora no hay signos de que eso ocurra por suerte!

Tendríamos que pensar en cambiar a un nuevo sistema si este número alguna vez se tiene en cuenta (RSA-1024)

135066410865995223349603216278805969938881475605667027524485143851526510604859533833940287150571909441798207282164471551373680419703964191743046496589274256239341020864383202110372958725762358509643110564073501508187510676594629205563685529475213500852879416377328533906109750544334999811150056977236890927563

Tiene 309 dígitos decimales .

El factor más grande hasta ahora es de 232 dígitos (RSA-768)

12301866845301177551304949583849627207728535695953347921973224521517264000726365751874520219978646938995647494277406384592519255732630345373154826807917026122142913461670429214311602221240479274737794080665351419597459856902143413

=

33478071698956898786044169848212690817704794983713768568912431388982883793878002287614711652531743087737814467999489

×

36746043666799590428244633799627952632279158164343087642676032283815739666511279233373417143396810270092798736308917

Así que aún nos queda un poco antes de comenzar a pensar en qué reemplazarlo, otros 70 dígitos más o menos.

Me imagino que sucederá eventualmente en las próximas décadas a medida que las computadoras se vuelvan más poderosas, es decir, si lo hacen.

Si sucede, probablemente comenzaría por la noticia de que alguien factorizó un número de 309 dígitos con 1000 estaciones de trabajo trabajando en el problema a tiempo completo durante seis meses, o lo que sea.

Si sucede así, probablemente la mayoría de las personas no necesiten preocuparse demasiado por sus transacciones cotidianas al instante; tendrían que ser un alto perfil o un secreto valioso para tener un valor de 500 años de tiempo de computadora para descifrarlo, pero sería una señal de que necesitamos encontrar un sistema mejor muy pronto probablemente.

Pero, depende de las matemáticas. Si a algún matemático se le ocurriera una idea brillante y novedosa de una nueva forma de ver el problema desde un ángulo sorprendente, ¿podría resolverse? ¿De repente capaz de factorizar grandes números en segundos, casi tan rápido como podemos multiplicarlos? ¿O es intrínsecamente difícil de alguna manera?

Las computadoras cuánticas también podrían facilitar mucho la factorización de grandes números.

Se usan porque es difícil para que las computadoras factoricen un número entero grande en sus factores primos originales , por ejemplo factoricemos 864 a sus factores primos (fuente: factorización entera)


Criptógrafos, multiplique números primos muy grandes y luego tendrá que adivinar qué factores primos tenía originalmente el entero múltiple:

[matemáticas] N = (2 ^ {521} -1) \ veces (2 ^ {607} -1) [/ matemáticas]

Uno de los números primos aquí se usa como clave , por lo que solo el emisor y el receptor lo saben. Entonces, el remitente envía el número [matemática] N [/ matemática] y la clave al receptor , ¡el receptor puede dividir los dos y obtener los datos seguros que son el otro número primo!

Por lo tanto, no existe un algoritmo de tiempo polinómico conocido implementado en una computadora digital que pueda descomponer el número [math] N [/ math] en sus factores primos originales . El hecho de que sea un problema muy difícil (dado que nadie ha podido probar o crear un algoritmo de este tipo) brinda a los criptógrafos cierta confianza para usarlo como base para diseñar plataformas de seguridad.

La respuesta clásica es “Porque están ahí”.

El esfuerzo por encontrar “la X más grande” es una prueba de las habilidades matemáticas (o al menos de programación de computadora) del descubridor, el hardware involucrado y el algoritmo que se utiliza.

Más pragmáticamente, dadas las realidades de la criptografía y las firmas clave, se necesitan números primos cada vez más grandes (o, para ser más precisos … los métodos utilizados para encontrar esos números) para dificultar cada vez más los datos cifrados a medida que las computadoras se vuelven cada vez más poderosas .