|
CURSO 2007-2008
TRABAJO II de CRIPTOLOGÍA
Última actualización: 7-mayo-08.
TRABAJOS:
OBJETIVOS:
- Aprender a implementar cifrados modernos, en particular, el cifrado
de Vernam y cifrados basados en RSA.
- Usar la teoría de números vista en clase para implementar
correctamente los cifrados anteriores.
- Criptoanalizar en ciertos casos sencillos el criptosistema RSA.
- Redactar una memoria del trabajo con claridad de pensamiento y en
correcto español.
EVALUACIÓN:
- Valoraré los razonamientos, su justificación y exposición.
Es importante comprobar que los parámetros de los criptosistemas
verifican las condiciones dadas en los teoremas vistos en clase.
- Valoraré la correción de los algoritmos.
- Valoraré el estilo de programación, esto es, concisión,
limpieza del código, facilidad de lectura y estructuración.
- Valoraré la redacción de la memoria en cuanto a claridad,
concisión así como a síntesis de la información.
Quitaré puntos a las memorias vacías de contenido y de
lectura farragosa.
- Igual que en el trabajo anterior, quitaré puntos por las faltas
de ortografía y, en especial, por las memorias escritas en formato
sms.
DESCRIPCIÓN:
- Implementar un criptosistema de Vernam. Las características
del mismo son las siguientes:
- El sistema aceptará una cadena de caracteres de longitud
desconocida.
- Los caracteres de la cadena pertenecerán al juego completo
de caracteres del castellano, esto es, incluirán minúsculas,
mayúsculas, letras acentuadas, ñ, diéresis
y todos los signos de puntuación, incluidos los espacios.
- El programa ha de devolver la secuencia aleatoria usada en el
cifrado así como el criptograma.
- Implementar un criptosistema RSA.
- Justificar la elección de todos los parámetros del
criptosistema y probar que son correctos.
- Describir todos los detalles de implementación del RSA.
- El criptosistema recibirá un texto claro de longitud variable
en las condiciones del apartado anterior.
- La implementación incluirá la función de
cifrado y la de descifrado. En los procesos de cifrado y descifrado,
se contabilizarán los tiempos.
- Implementar uno de los siguientes criptosistemas, según os
toque:
- Sistema de firma digital basado en RSA.
- Los mensajes en claro tendrán el mismo formato que
en los casos anteriores.
- El programa tendrá que producir un criptograma y una
rúbrica.
- Tendréis que descifrar el criptograma y recuperar la
rúbrica y mostrar que funciona.
- Poniéndoos en el papel de un espía, modificaréis
el criptograma y probaréis que la rúbrica detecta
la alteración del mensaje.
- Criptosistema de ElGamal.
- Los mensajes en claro tendrán el mismo formato que
en los casos anteriores.
- Justificar la elección de los parámetros del
criptosistema.
- El criptosistema recibirá un texto claro de longitud
variable, que se intentará que no sea mayor que los posibles
módulos del criptosistema, y habrá de cifrarlo
y descifrarlo. Igual que en el caso anterior, se contabilizarán
los tiempos.
- Criptoanalizar cifrados con RSA.
Asignación de trabajos:
|
David Baquero
|
|
Rubén Carrasco y José Manuel
Gallo
|
|
Virginia Martín, Mario Hidalgo y Yang
Yong
|
|
Daniel Herrero y Alberto Jiménez
|
|
Alfonso Roa y Salif
|
|
|
|
|