Criptografía y Teoría de Números
Una aplicación de teoría de números orientada al cifrado y descifrado de información con el algoritmo RSA.
Detalles de la Unidad
Actividad 1: Conceptos Matemáticos
Objetivo: El alumno comprenderá los conceptos básicos de teoría de números para el cifrado moderno.
Modalidad: Trabajo en equipos de 5 personas.
Entregable (Producto): Infografía conceptual.
Recursos: Libro de texto base: Johnsonbaugh, R. (2005). Matemáticas Discretas (6ª edición). Pearson.
Indicaciones paso a paso
-
Recuperación de saberes previos: Responder por escrito a las siguientes preguntas a partir de sus conocimientos previos:
- ¿Qué son los números enteros?
- ¿Qué es un número primo?
- ¿Qué es el mínimo común múltiplo?
- ¿Qué es el máximo común divisor?
- Lectura colaborativa: En equipo, realizar de forma colaborativa la lectura de la sección 5.1 del libro de texto base, enfocada en divisores y números enteros. Anotar las dudas teóricas.
- Discusión grupal: Comentar en plenaria grupal guiada por el profesor las dudas surgidas y establecer las ideas clave sobre algoritmos enteros.
- Diseño de Infografía: Realizar como tarea grupal una infografía que resuma los conceptos principales, propiedades y fórmulas clave explicadas en las secciones 5.1, 5.2 y 5.3 del libro de texto.
Actividad 2: Desarrollo del Proyecto
Objetivo: El alumno aplicará los conceptos básicos de teoría de números en la programación de un algoritmo de criptografía moderno.
Modalidad: Trabajo en equipos de 5 personas.
Entregable (Producto): Reporte de investigación escrito y código fuente del programa.
Recursos: ChatGPT (u otra IAG de referencia).
Indicaciones paso a paso
-
IA como recurso inicial de referencia: Realizar consultas a ChatGPT para comprender la base teórica del algoritmo RSA. Tomar notas de la interacción (preguntas y respuestas).
Ejemplos de consultas recomendadas: - "Explica brevemente el funcionamiento del algoritmo RSA."
- "¿Qué conceptos previos necesito para entender el algoritmo RSA?"
- "¿En qué lenguaje de programación me conviene implementar este algoritmo?" - Investigación en fuentes académicas: Validar y profundizar en la teoría del Algoritmo RSA recurriendo a fuentes académicas confiables. El uso de la IA es únicamente orientativo para el inicio.
-
Programando el algoritmo RSA: Implementar el sistema criptográfico de llave pública RSA en el lenguaje de programación que prefieran. Debe permitir cifrar y descifrar una cadena de texto.
Ejemplo de salida en consola del programa:
Mensaje original: Hola mundo
Claves generadas (p, q): 61, 53
Llave pública (e, n): 17, 3233
Llave privada (d, n): 2753, 3233
Mensaje cifrado: 3000, 1047, 1698, 2038, 1421...
Mensaje descifrado: Hola mundo
Actividad de Aprendizaje Sugerida
Selecciona dos números primos pequeños, genera la base matemática del cifrado RSA y encripta un mensaje numérico.