0Pricing
Cryptology Academy · Lección

Números primos y factorización

Aprenda por qué los números primos son la base de la criptografía de clave pública.

Números primos y factorización es una lección gratuita de Cryptology Academy en CoddyKit. Esta es la lección 3 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Cryptology Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Cryptology Academy incluye 4 lecciones en total.

Bienvenida

Los números primos solo son divisibles entre 1 y ellos mismos. Son los átomos de la multiplicación y la base de RSA, Diffie-Hellman y muchos otros sistemas criptográficos.

Definición y ejemplos

Primos: 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, ... Un número es primo si sus únicos divisores positivos son 1 y él mismo. Por convenio, 1 NO es primo.

Teorema fundamental de la aritmética

Todo entero > 1 puede factorizarse en números primos de una única forma (salvo el orden). 60 = 2² × 3 × 5. Esta unicidad es lo que permite que funcione la criptografía basada en la factorización.

División por prueba

def is_prime(n): if n < 2: return False for i in range(2, int(n**0.5)+1): if n % i == 0: return False return True Solo es necesario comprobar hasta √n: si no se encuentra ningún factor por debajo de √n, n es primo.

Criba de Eratóstenes

Para encontrar todos los primos hasta N: comience con una lista de números del 2 al N. Tache los múltiplos de 2, después los de 3, luego los de 5, etc. Los números restantes son primos. Se ejecuta en O(N log log N).

Pruebas de primalidad: Miller-Rabin

Para números grandes (2048 bits), la división por prueba es demasiado lenta. Miller-Rabin es una prueba probabilística: ejecútela 40 veces y la probabilidad de error será < 4^(-40).

Factorización de enteros

Dado n = p × q, encontrar p y q es el problema de la factorización de enteros. Si n tiene 2048 bits, los mejores algoritmos conocidos requieren 2^112 operaciones, algo actualmente inviable.

Por qué RSA utiliza dos primos grandes

El módulo RSA es n = p × q. Conocer n, pero no p ni q, dificulta calcular la clave privada. La seguridad depende por completo de la dificultad de factorizar n.

Generación de primos grandes

from sympy import randprime p = randprime(2**1023, 2**1024) # random 1024-bit prime Estrategia: genere un número impar aleatorio, compruébelo con Miller-Rabin y repita hasta obtener un número primo.

Primos seguros y primos fuertes

Un primo seguro es p = 2q+1, donde q también es primo. Los primos seguros resisten ciertos ataques contra DH. En ocasiones RSA utiliza primos fuertes para prevenir el ataque p-1 de Pollard.

Brechas entre primos e infinitud

Euclides demostró en el año 300 a. C. que existen infinitos números primos. La conjetura de los primos gemelos (existen infinitamente muchos primos p y p+2) todavía no se ha demostrado. Nunca nos quedaremos sin primos para la criptografía.

Comprobación rápida

¿Por qué RSA utiliza números primos grandes?

Recapitulación

Comprende los números primos y la factorización. A continuación aplicaremos la función phi de Euler y el GCD, las últimas herramientas matemáticas necesarias antes de estudiar RSA.

Preguntas frecuentes

¿La lección «Números primos y factorización» es gratis?

Sí — el texto completo de «Números primos y factorización» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Cryptology Academy, actualiza a CoddyKit PRO. El curso de Cryptology Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Números primos y factorización»?

Aprenda por qué los números primos son la base de la criptografía de clave pública. Practicas Cryptology Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Cryptology Academy?

No se requiere experiencia previa. Cryptology Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 3 de 4.

¿Cuánto tiempo toma la lección «Números primos y factorización»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Cryptology Academy?

Sí. Cada lección de Cryptology Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Fundamentos del sistema binario y hexadecimal
  2. Fundamentos de la aritmética modular
  3. Números primos y factorización
  4. MCD, función phi de Euler e introducción a la teoría de números
← Volver a Cryptology Academy