RSA en C
Implementación matemática de RSA en C usando GMP.
Tecnologías utilizadas
- C
- GMP
- Criptografía
Laboratorio visual
Prueba criptografica
RSA / GMP
m^e mod n -> c -> c^d mod nPrimos base
p = 61 / q = 53
Modulo publico
n = 3233
Clave publica
e = 17
Clave privada
d = 2753
65 == pow(pow(65, e, n), d, n) Contexto y problema
Implementar criptografía asimétrica desde fundamentos matemáticos en C, controlando precisión de enteros grandes y seguridad en memoria.
Enfoque y solución
Se desarrolló un módulo RSA en C usando GMP para generación de claves, cifrado y descifrado con exponenciación modular eficiente.
Laboratorio interactivo
Simulador RSA
Demostración operativa de generación de claves, cifrado y descifrado con enteros pequeños para visualizar el flujo matemático completo.
Generación de claves
A partir de `p` y `q` se calcula `n`, luego `phi(n)`, y finalmente el inverso modular de `e` para obtener `d`.
Cifrado
El mensaje se cifra con la clave pública usando exponenciación modular rápida.
Descifrado
La clave privada recupera el mensaje original dentro del mismo dominio modular.
Validación
La demostración confirma que el mensaje original y el descifrado coinciden bajo la configuración actual.
Esta simulación usa números acotados para fines pedagógicos. El proyecto real en C se apoya en GMP para trabajar con enteros grandes.
El algoritmo
La demostración interactiva del flujo RSA aparece antes de este contenido para separar la evidencia operativa del detalle narrativo.
En el caso de estudio completo, la implementación en C se apoya en GMP para trabajar con enteros grandes, mientras que la simulación visual usa números pequeños para hacer trazable cada paso del algoritmo.
El valor técnico de este proyecto está en conectar la matemática, la implementación y la posibilidad de verificar el comportamiento de cifrado y descifrado en una interfaz controlada.
Resultados y aprendizaje
Se obtuvo una implementación funcional de RSA con pruebas de cifrado/descifrado y una base sólida para demostraciones interactivas.