Códigos y Criptografía

Sección de Computación del Departamento de Eléctrica

CINVESTAV

Primavera 2007 - Profesor: Francisco Rodríguez Henríquez

francisco@cs.cinvestav.mx


Tarea #2

Fecha de entrega:  A la medianoche del viernes 6 de julio 2007

Calificación: Implementación en C: Problema 0 40 puntos, problemas 1,2 y 3 60 puntos cada uno.

Otras implementaciones: Problema 0 30 puntos, problemas 1,2 y 3, 35 puntos cada uno.
Asignaciones:

Lourdes, Yahir: Implementar en C, Problema 1.
Rodrigo, Fernando, Uriel: Implementar en C, problema 2
Carlos, Luis: Implementar en C, Problema 3.
Miriam, Jesús: Implementar en Maple problemas 1 y 2.
Nidia, Daniel:  Implementar en MatLab problemas 1 y 3.
Adriana, Arturo: Implementar en Maple Problemas 2 y 3.


Problema 0: Implemente el algoritmo AES en los modos de operación (ECB, CBC) descritos en la Wikipedia. El algoritmo deberá ser codificado en MatLab, Maple o C/C++ (ver asignaciones). Para validar su programa utilice por lo menos 5 de los vectores de prueba incluidos en el archivo test_vector adjunto. Demuestre además que su implementación es capaz de cifrar y descifrar correctamente las imágenes adjuntas: Frida y Reptiles

Problema 1: Implemente AES en el modo de operación propuesto por Halevi y Rogaway. Encuentre el valor del texo cifrado si se utilizan como llave de cifrado, tweak y de texto en claro los  valores almacenados en el archivo vt_modos.
Problema 2:  Implemente AES en el modo de operación HCTR propuesto por Wang et al. Encuentre el valor del texo cifrado si se utilizan como llave de cifrado, tweak y de texto en claro los  valores almacenados en el archivo vt_modos.
Problema 3;  Implemente AES en el modo de operación HCH propuesto por Chakraborty y Sarkar. Encuentre el valor del texo cifrado si se utilizan como llave de cifrado, tweak y de texto en claro los  valores almacenados en el archivo vt_modos.

 La tarea deberá entregarse cifrada usando el programa PGP.