Códigos y Criptografía

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

CINVESTAV

Primavera 2006 - Profesor: Francisco Rodríguez Henríquez
http://delta.cs.cinvestav.mx/~francisco/cripto2006/cripto06.html



Objetivo General

Estudiar algunos de los principales métodos, algoritmos, técnicas y herramientas necesarias para la implementación de aplicaciones criptográficas y de seguridad de datos. El contenido del curso está orientado a la resolución eficiente del problema de cómo establecer una comunicación segura entre dos o más entidades de manera tal que se garantice un alto grado de confidencialidad,integridad y auntenticidad en los datos y documentos intercambiados. El contenido del curso incluye el estudio de diversos aspectos teóricos relacionados con los algoritmos y esquemas criptográficos, así como la aplicación de dichas técnicas para resolver problemas prácticos en el envío de datos y comunicación de manera segura.



Temas Principales


Libros de texto

W. Trappe & L. C. Washington. Introduction to Cryptography with Coding Theory, Prentice-Hall, 2002. ISBN: 0-13-061814-4 .

Bruce Schneier. Applied Cryptography: Protocols, Algorithms, and Source Code in C, Second Edition, John Wiley & Sons, 1996 ISBN 0-471-11709-9.

Francisco Rodríguez-Henríquez, Nazar A. Saqib, Arturo Díaz Pérez and
Cetin K. Koc, "Cryptographic Algorithms on Reconfigurable Hardware",  Springer-Verlag (to appear in late summer 2006), 250 pages, ISBN:
0387338837.



Información Relevante

Tareas


Exámenes Parciales



Proyectos


Notas de la clase
  1. Introducción (1/2), Introducción (2/2)
  2. Conceptos Generales.
  3. Conferencia Premio Turing 2002
  4. Criptosistemas Clásicos
  5. Algunos Ejemplos en Maple: Subst; Hill;RSA Simple
  6. Algoritmo DES. Implementaciones de DES en: Maple y Hardware reconfigurable.
  7. Tutorial de DES en Flash.
  8. Modos de operación.
  9. Algoritmo AES, Tutorial en Flash, Trucos de implementación
  10. Introducción a Criptografía de llave pública.
  11. Estándar PKCS#1.
  12. Estándar DSA FIPS-186
  13. Introducción a criptografía de curvas elípticas. ejemplo pequeño, laboratorio de Maple.
  14. Estándar P1363, Curvas recomendadas por NIST.


Información sobre el libro de texto Principal


Libros y material de Referencia
  1. Handbook of Applied Cryptography, Menezes, Oorschot, Vanstone. CRC Press, New York, fifth edition (2001). Portal Internet del libro.

  2. The Art of Computing Programming, Donald E Knuth, Addison-Wesley, Boston, third edition (2001). Portal Internet del Libro.

  3. The Design of Rijndael, Joan Daemen, Vincent Rijmen, Springer, Heidelberg, 2002. Portal Internet del Libro.

  4. Guide to Elliptic Curve Cryptography, D. Hankerson, A. Menezes, S. Vanstone, Springer-Verlag, 2004. ISBN 0-387-95273-X

  5. Cryptographic Hardware and Embedded Systems, International Workshop, CHES0'99, CHES'2000, CHES'2001, Çetin Koç and Christof Paar (Eds.), Lecture Notes in Computer Science, Springer, Heidelberg, 1999, 2000, 2001. Portadas e ISBNs.

  6. Elementary Number Theory and its applications, Fourth Edition, K. Rosen, AT&T Bell Laboratories, 2000. Portal Internet del libro

  7. Jorge Ramió Aguirre, Seguridad Informática y Criptografía, Tercera edición v 3.1 - 3 de marzo de 2003, disponible en: http://www.criptored.upm.es



Otros enlaces relevantes


Calendario


Semana Día Material Actividades
1 9 y 11 de mayo Introducción y conceptos generales Leer capítulos 1 y 2 del libro de texto
2 16 y 18 de mayo Criptosistemas Clásicos Tarea # 1
3 23 y 25 de mayo DES, algoritmo, modos de operación  
4 30 de mayo, 1 de junio DES implementaciones en FPGA y en Maple Entrega tarea #1
5 6 y 8 de junio AES algoritmo, modos de operación Propuestas de Proyectos
6 13 y 15 de junio AES implementaciones en FPGAs y en Maple.
Tarea #2 
7 20 y 22 de junio Modos de Operación
8 27, 29 de junio, 1 de julio
Cripto. de llave pública RSA, PKCS  
9 4, 6 y 8 de julio DSA, Primer Examen parcial Entrega tarea #2 
10 11 y 13 de julio  Criptografía de curvas elípticas  
11 18, 20 y 22 de julio Criptografía de curvas elípticas Tarea #3
12 25 y 27 de julio Asesorías para proyectos
13 1 y 3 de agosto Asesorías para proyectos Entrega tarea #3
14 8 y 10 de agosto de agosto Asesorías para proyectos Avance de Proyecto [tarea #4] 
15 29, 31  de agosto Presentaciones Segundo Examen parcial  Entrega y presentación de proyectos