Créditos ECTS Créditos ECTS: 6
Horas ECTS Criterios/Memorias Trabajo del Alumno/a ECTS: 99 Horas de Tutorías: 3 Clase Expositiva: 24 Clase Interactiva: 24 Total: 150
Lenguas de uso Castellano, Gallego
Tipo: Materia Ordinaria Grado RD 1393/2007 - 822/2021
Departamentos: Matemáticas
Áreas: Álgebra
Centro Facultad de Matemáticas
Convocatoria: Primer semestre
Docencia: Con docencia
Matrícula: Matriculable
Conocer algunas de las aplicaciones más importantes de las matemáticas a las TIC, en particular a la transmisión precisa y segura de la información.
Manejar las nociones y métodos básicos de la teoría de códigos correctores de errores y de la criptografía y también los algoritmos fundamentales de estas disciplinas.
Conocer las familias de códigos más importantes y algunas de sus aplicaciones más interesantes (transmisiones a larga distancia, discos compactos, etc.).
Comprender la noción de seguridad para esquemas criptográficos y también algunos de los más importantes ataques criptoanalíticos y las técnicas utilizadas para rechazarlos.
Manejar implementaciones en SageMath de algunos de los algoritmos más importantes de la teoría de códigos y de la criptografía.
1. Introducción a la teoría de códigos. (4 h. expositivas)
Ideas básicas sobre la teoría de códigos. Algunos ejemplos: códigos de barras, ISBN, NIF ...
2. Códigos detectores y correctores de errores. (5 h. expositivas)
Canales ruidosos. Reglas de decisión. Distancia de Hamming y descodificación por distancia mínima. Códigos perfectos. El problema principal de la teoría de códigos.
3. Códigos lineales. (5 h. expositivas.)
Matrices generatrices y de control. Descodificación para códigos lineales. Descodificación por síndrome.
4. Tipos especiales de códigos lineales. (5 h. expositivas)
Códigos de Hamming. Códigos de Golay. Códigos de Reed-Muller. Algunas aplicaciones (telefonía, transmisiones desde sondas espaciales, etc.). Introducción a los códigos cíclicos. Los códigos que se usan en un CD.
5. Introducción a la criptografía. (5 h. expositivas)
Criptografía, criptología y criptoanálisis. Criptosistemas clásicos y su criptoanálisis. La cifra de Vigenère y el índice de coincidencia.
6. Seguridad criptográfica. (5 h. expositivas)
Seguridad incondicional. El cuaderno de uso único. Introducción a la complejidad computacional. Seguridad computacional.
7. Criptosistemas de bloques. (4 h. expositivas)
El "Advanced Encryption Standard" (AES). Los modos de operación. Autenticación por medio de MAC's.
8. Teoría algorítmica de números y criptografía de clave pública. (7 h. expositivas)
Algoritmos básicos. Primalidad, factorización y logaritmos discretos. Funciones de dirección única. El intercambio de Diffie-Hellman. El criptosistema RSA. Firmas digitales.
Bibliografía básica
W. Trappe and L.C. Washington, Introduction to Cryptography with Coding Theory, Prentice-Hall, 2002.
J.L. Gómez Pardo, Introduction to Cryptography with Maple, Springer, 2013.
Bibliografía complementaria
G.V. Bard, SageMath for Undergraduates, disponible en http://www.gregorybard.com/SAGE.html
J.A. Buchmann, Introduction to Cryptography, Second Edition, Springer, 2004.
J.L. Gómez Pardo, C. Gómez-Rodríguez, The Advanced Encryption Standard and its modes of operation, disponible en http://www.maplesoft.com/applications/app_center_view.aspx?AID=2286.
J.L. Gómez Pardo, Linear Codes and Syndrome Decoding, disponible en https://www.maplesoft.com/applications/view.aspx?SID=154536
J. Hoffstein, J. Pipher, J.H. Silverman, An Introduction to Mathematical Cryptography, 2nd Edition, Springer, New York, 2014.
R. Lidl, G. Pilz, Applied Abstract Algebra, 2nd Ed., Springer, 1998.
S. Roman, Coding and Information Theory, Springer, 1992.
Contribuir a alcanzar las competencias generales, específicas y transversales recogidas en la Memoria del Título de Grado en Matemáticas de la USC y, en especial, las siguientes:
- Comunicación escrita y oral de conocimientos, métodos e ideas generales relacionadas con las matemáticas y las TIC (CG4).
- Utilizar herramientas de búsqueda de recursos bibliográficos sobre los temas de la asignatura, incluyendo el acceso por Internet. Manejar dichos recursos en diferentes idiomas y, especialmente, en inglés (CT1, CT5).
- Utilizar programas informáticos para resolver problemas e implementar algoritmos (CE8, CE9).
- Comprender el papel de las matemáticas como una herramienta de gran aplicabilidad (CG2).
Competencias específicas de la asignatura:
- Familiarizarse con los códigos básicos de identificación: NIF, ISBN, códigos de barras ...
- Conocer los principios generales usados en el diseño de "buenos códigos".
- Manejar los códigos lineales por medio del cálculo de matrices generatrices, matrices de control, distancia mínima, etc.
- Construír la tabla estándar, realizar la descodificación por síndrome y utilizar los procedemientos específicos de descodificación para códigos de Hamming y de Golay.
- Saber criptoanalizar sistemas clásicos: substituciones monoalfabéticas, criptosistema de Vigenére y criptosistema de Hill.
- Conocer en detalle el funcionamiento del AES y sus modos de operación, utilizando diversas implementaciones existentes.
- Manejar los algoritmos básicos necesarios para la implementación de RSA, en particular, el algoritmo de Euclides y la exponenciación binaria.
- Comprender la importancia de los esquemas de autenticación y firma digital y sus aplicaciones (DNI electrónco, etc.).
- Saber utilizar SageMath para explorar algunos de los algoritmos mas importantes de la teoría de códigos y de la criptografía. En particular, algunos de los códigos más importantes y su descodificación, experimentos sobre la distribución de los números primos, test de Miller-Rabin, etc.
Se seguirán las indicaciones metodológicas generales que figuran en la Memoria del Título de Grado en Matemáticas de la USC.
La docencia se impartirá en clases de pizarra, clases con ordenador y tutorías con y sin ordenador, además de tutorías en grupos muy reducidos.
En las clases, se presentarán los contenidos esenciales de la materia, se resolverán problemas y se propondrán las actividades que los estudiantes deberán realizar para la evaluación continua: resolución de problemas, elaboración de trabajos, ... (competencias CB3, CB4, CG1, CG2, CG4, CG5, CT1, CT5). En las clases y tutorías con ordenador se utilizará fundamentalmente SageMath como herramienta de trabajo (competencias CE8 y CE9).
En todos los escenarios previstos habrá dos cursos en línea, uno en el campus virtual de la USC y otro en CoCalc. El primero, con materiales y recursos relacionados con las clases expositivas, también servirá para canalizar las comunicaciones, las propuestas y entregas de tareas, así como la realización de pruebas de autoevaluación y evaluación continua, tanto individual como grupal. El segundo se utilizará para compartir prácticas y proyectos, supervisar y asistir a clases interactivas y tutorías, así como para realizar pruebas de evaluación en ordenador.
Escenario 1: normalidad adaptada
La enseñanza será, esencialmente, presencial, siempre de acuerdo con la fórmula definida por la Facultad de Matemáticas y se dará la opción de seguir las clases interactivas de laboratorio en línea, a través de una combinación MS Teams y CoCalc. Las tutorías y la comunicación con el alumnado pueden ser presenciales o virtuales. En el caso virtual, pueden ser asíncronos, a través de los foros del curso virtual o por correo electrónico, o síncronos, a través de la plataforma MS Teams.
Escenario 2: distanciamiento
La enseñanza expositiva será, presencial y virtual según la fórmula de convivencia de ambas modalidades que define la Facultad de Matemáticas. La enseñanza virtual síncrona se realizará a través de la plataforma Microsoft Teams y la enseñanza asíncrona a través del Campus Virtual. Las clases interactivas de laboratorio serán en línea, a través de MS Teams y CoCalc, con la opción de formar un grupo presencial. La comunicación con el alumnado se realizará a través de los foros del curso virtual, correo electrónico o mediante la plataforma Microsoft Teams.
Escenario 3: cierre de instalaciones
La enseñanza será completamente virtual, incluyendo tutorías. Habrá enseñanza síncrona a través de la plataforma Microsof Teams, con soporte de CoCalc para las clases interactivas de laboratorio, y enseñanza asíncrona con Moodle (utilizando material que complementa la enseñanza sincrónica) a través del Campus Virtual. La comunicación con el alumnado se realizará a través de los foros del curso virtual, correo electrónico o mediante la plataforma MS Teams.
Para el cálculo de la calificación final (F) se tendrá en cuenta la evaluación continua (C) y la calificación del examen final (E) y se aplicará la siguiente fórmula:
F = 0.40 * C + 0.60 * E
Para la evaluación continua se tendrá en cuenta la participación en las clases expositivas e interactivas de laboratorio y en las tutorías, además de las tareas y pruebas desarrolladas a lo largo del curso: una entrega de problemas con control de autoría, una práctica en ordenador y una prueba telemática, por cada una de las dos partes del temario. La evaluación continua también se tendrá en cuenta para la segunda oportunidad con el mismo peso en la calificación general.
El examen final tendrá dos partes: una redacción de teoría y problemas (2/3 de la nota) y otra con computadora (1/3 de la nota) y será necesario alcanzar un mínimo del 40% en cada parte y tener F >= 5 para aprobar la asignatura.
En los escenarios 2 y 3, ambos serán telemáticos.
El examen final evaluará las competencias incluidas en el informe del Grado, con especial atención a CG4, CG5, CT1 y CT5. CB3, CB4, CG2, CG4, CG5, CT1, CT5, CE8 y CE9 serán evaluados en la evaluación continua. La calificación de "no presentado" se otorgará a los estudiantes que hagan ninguna de las partes del examen final.
Siguiendo las directrices establecidas en la Memoria del Título de Grado en Matemáticas de la USC, el tiempo que el estudiante deberá dedicar a la preparación de la materia consiste en:
+ 58 horas de trabajo presencial:
- 42 horas en clases expositivas.
- 14 horas en clases interactivas de laboratorio.
- 2 horas en tutorías en grupos muy reducidos.
+ 90 horas de trabajo personal que comprenden las siguientes actividades:
- Estudio autónomo: 50 horas.
- Elaboración de trabajos y resolución de problemas: 20 horas.
- Trabajos con ordenador: 15 horas.
- Búsqueda de documentación: 5 horas.
Las asignaturas que se aconseja haber cursado previamente son: Linguaxe matemática, conxuntos e números; Álxebra lineal e multilineal; Estruturas alxébricas.
En general, es aconsejable tener asimilados los conocimientos matemáticos incluidos en las asignaturas del primer curso de la Titulación.
Se recomienda la asistencia y la participación activa en las clases y tutorías programadas, complementadas con el trabajo diario para asimilar los conceptos de la materia y realizar las actividades (problemas, trabajos) que se irán proponiendo periódicamente.
De acuerdo con las "Directrices para el desarrollo de una enseñanza presencial segura, Curso 2020-2021" de la Universidad de Santiago de Compostela, se incluyen las adaptaciones correspondientes a las secciones de metodología de enseñanza y sistema de evaluación previstas para los escenarios 2 y 3:
Plan de contingencia
Metodología de enseñanza
Escenario 2: distanciamiento
La enseñanza expositiva será, presencial y virtual según la fórmula de convivencia de ambas modalidades que define la Facultad de Matemáticas. La enseñanza virtual síncrona se realizará a través de la plataforma Microsoft Teams y la enseñanza asíncrona a través del Campus Virtual. Las clases interactivas de laboratorio serán en línea, a través de MS Teams y CoCalc, con la opción de formar un grupo presencial. La comunicación con el alumnado se realizará a través de los foros del curso virtual, correo electrónico o mediante la plataforma Microsoft Teams.
Escenario 3: cierre de instalaciones
La enseñanza será completamente virtual, incluyendo tutorías. Habrá enseñanza síncrona a través de la plataforma Microsof Teams, con soporte de CoCalc para las clases interactivas de laboratorio, y enseñanza asíncrona con Moodle (utilizando material que complementa la enseñanza sincrónica) a través del Campus Virtual. La comunicación con el alumnado se realizará a través de los foros del curso virtual, correo electrónico o mediante la plataforma MS Teams.
Sistema de evsaluación
Escenario 2 (distanciamiento) y Escenario 3 (cierre de instalaciones)
Para el cálculo de la calificación final (F) se tendrán en cuenta la evaluación continua (C) y la calificación del examen final (E) y se aplicará la siguiente fórmula:
F = 0.40 * C + 0.60 * E.
Para la evaluación continua se tendrá en cuenta la participación en las clases expositivas e interactivas de laboratorio y en los tutoriales, además de las tareas y pruebas desarrolladas a lo largo del curso: una entrega de problemas con el control de autoría, una práctica con computadora y una prueba para cada uno de las dos partes del tema, todas ellas telemáticas. La evaluación continua también se tendrá en cuenta en la segunda oportunidad con el mismo peso en la calificación general.
El examen final tendrá dos partes, ambas telemáticas: una de teoría y problemas a través del CV (2/3 de la calificación) y otra de computadora a través de CoCalc (1/3 de la calificación).
Felipe Gago Couso
Coordinador/a- Departamento
- Matemáticas
- Área
- Álgebra
- Teléfono
- 881813140
- Correo electrónico
- felipe.gago [at] usc.es
- Categoría
- Profesor/a: Titular de Universidad
Maria Pilar Paez Guillan
- Departamento
- Matemáticas
- Área
- Álgebra
- Correo electrónico
- pilar.paez [at] usc.es
- Categoría
- Predoutoral Ministerio
Lunes | |||
---|---|---|---|
17:00-18:00 | Grupo /CLE_01 | Gallego | Aula 08 |
18:00-19:00 | Grupo /CLIL_01 | Castellano, Gallego | 5060-Aula virtual |
Miércoles | |||
17:00-18:00 | Grupo /CLIL_02 | Gallego, Castellano | 5060-Aula virtual |
18:00-19:00 | Grupo /CLE_01 | Gallego | Aula 09 |
Jueves | |||
16:00-17:00 | Grupo /CLIL_03 | Gallego, Castellano | 5060-Aula virtual |
17:00-18:00 | Grupo /CLE_01 | Gallego | Aula 07 |
14.01.2021 10:00-14:00 | Grupo /CLE_01 | Aula 02 |
14.01.2021 10:00-14:00 | Grupo /CLE_01 | Aula 03 |
14.01.2021 10:00-14:00 | Grupo /CLE_01 | Aula 06 |
25.06.2021 10:00-14:00 | Grupo /CLE_01 | Aula 06 |
25.06.2021 10:00-14:00 | Grupo /CLE_01 | Aula de informática 2 |
25.06.2021 10:00-14:00 | Grupo /CLE_01 | Aula de informática 3 |
25.06.2021 10:00-14:00 | Grupo /CLE_01 | Aula Magna Ramón María Aller Ulloa |