Las Matemáticas del Cifrado Asimétrico (RSA)
¿Qué es?
El cifrado asimétrico no se basa en "esconder" el algoritmo, sino en funciones matemáticas de una sola vía con trampilla (trapdoor one-way functions): operaciones fáciles de calcular en un sentido, pero extremadamente difíciles de revertir a menos que poseas una pieza clave de información — la clave privada. El estándar clásico más representativo es RSA (Rivest, Shamir y Adleman).
¿Para qué sirve entender esto?
Permite ver que la seguridad del cifrado asimétrico no depende de que nadie conozca "el truco" — depende de que ciertos problemas matemáticos son, en la práctica, imposibles de resolver por fuerza bruta con la tecnología actual.
La base matemática
- Aritmética modular: operaciones con residuos (el "reloj" matemático). Si a ≡ b (mod n), significa que a y b dejan el mismo resto al dividirse entre n.
- Factorización de números primos: multiplicar dos números primos grandes p y q es computacionalmente instantáneo, pero deducir p y q conociendo solo su producto requiere un esfuerzo sobrehumano para una computadora moderna.
- Función totiente de Euler (φ): para el producto de dos primos p y q, la cantidad de enteros menores que n que son coprimos con n:
φ(n) = (p − 1)(q − 1)
Forma de uso — generación del par de claves
- Selección de primos: se eligen dos números primos gigantes y secretos, p y q.
- Módulo de cifrado (n): se calcula n = p × q. Este valor se hace público.
- Función totiente: se calcula φ(n) = (p − 1)(q − 1). Este valor se mantiene en secreto.
- Clave pública (e): se elige un entero e coprimo con φ(n) (comúnmente e = 65537). La clave pública es el par (e, n).
- Clave privada (d): se calcula el inverso multiplicativo modular de e respecto a φ(n) — un entero d tal que:
e · d ≡ 1 (mod φ(n))
La clave privada es el par (d, n)
Cifrado y descifrado
Una vez que el mensaje original se convierte en un número m (menor que n):
Cifrado (con la clave pública): c ≡ me (mod n)
Descifrado (con la clave privada): m ≡ cd (mod n)
Gracias al teorema de Euler, elevar el texto cifrado c a la potencia d deshace exactamente la operación de cifrado, devolviendo el mensaje original m — pero solo si se conoce d, y d solo puede calcularse conociendo φ(n), y φ(n) solo puede calcularse conociendo p y q.
Ejemplo: cómo se garantiza la seguridad
- Problema de factorización entera: un atacante conoce la clave pública (e, n). Para descubrir la clave privada d, necesita calcular φ(n), lo cual requiere conocer p y q.
- Inviabilidad por fuerza bruta: si n tiene 2048 o 4096 bits, factorizarlo para encontrar p y q tomaría a las supercomputadoras actuales miles de millones de años.
- Alternativa moderna (curvas elípticas / ECC): en vez de factorización de primos, criptosistemas como ECDSA se basan en el problema del logaritmo discreto en curvas elípticas, logrando el mismo nivel de seguridad con claves mucho más pequeñas y eficientes.
Profundiza en Criptografía (Programa 11) — es para quien quiere ver la matemática real detrás del cifrado asimétrico, no solo el concepto de "clave pública y privada".
El mismo par de claves que cifra y descifra mensajes se usa, de otra forma, para firmar transacciones y probar quién las autorizó — eso es la firma digital.
¿Quieres ir más a fondo?
En el curso completo profundizamos en cada bloque de la Serie Conceptos Clave, con más ejemplos y ejercicios.
Ver el curso — próximamente