Criptografia_y_Computacion
Criptografia_y_Computacion copied to clipboard
Prácticas de la asignatura Criptografía y Computación - Grado en Ingeniería Informática (UGR)
Criptografia_y_Computacion
Prácticas de la asignatura Criptografía y Computación - Grado en Ingeniería Informática (UGR)
Práctica 1 - Aritmética Modular
Implementación de las siguientes operaciones matemáticas:
-
Máximo común divisor usando el Algoritmo extendido de Euclides,
-
Inverso
.
-
Exponencial
.
- Comprobar si un número dado es primo o no usando el método de Miller-Rabin.
-
Logaritmo usando el algoritmo Paso enano, Paso gigante
-
Cálculo de raíces cuadradas
usando el símbolo de Jacobi y el Teorema Chino de los Restos.
-
Factorización de un número usando el Método de Fermat y el Algoritmo
de Pollard.
- Comparación de la implementación hecha con funciones de SAGEmath.
Práctica 2 - Secuencias Pseudo-Aleatorias
Implementación de:
- Postulados de Golomb.
- LFSR y análisis del período de la secuencia obtenida según la semilla utilizada.
- NLFSR.
- Generador de Geffe e implementación de un cifrado en flujo. Esto incluye pasar un mensaje String a binario.
- Algoritmo de Berlekamp-Massey.
Práctica 3 - Funciones de un sólo sentido
Implementación de:
- Criptosistema basado en el problema de la mochila (knapsack).
- Cálculo de elementos primitivos.
- Cálculo de p y q dados n y f(x).
- Construcción de Merkle-Damgård para implementar una función resumen.
- Cálculo de una llave privada RSA dada la llave pública.
- Método alternativo para encontrar p y q.
- Sistema de firma digital DSS y RSA.