XSL Content
Codes and Cryptography
- Centre
- Faculty of Science and Technology
- Degree
- Bachelor's Degree In Mathematics
- Academic course
- 2024/25
- Academic year
- 4
- No. of credits
- 6
- Languages
- Spanish
- Basque
TeachingToggle Navigation
Study type | Hours of face-to-face teaching | Hours of non classroom-based work by the student |
---|---|---|
Lecture-based | 30 | 45 |
Seminar | 6 | 9 |
Applied classroom-based groups | 9 | 13.5 |
Applied computer-based groups | 15 | 22.5 |
Teaching guideToggle Navigation
AimsToggle Navigation
SPECIFIC COMPETENCES
M09CM01 An ability to understand the idea of coding and a code to detect and correct errors
M09CM02 Knowing how to use syndrome-based correction method.
M09CM03 Knowing how to obtain some linear codes (Hamming codes, BCH codes,...)
M09CM04 An ability to understand the idea of Public Key Cryptography.
M09CM05 An ability to understand RSA and Diffie-Hellman systems.
M09CM06 An ability to understand digital signatures and certificates.
LEARNING OUTCOMES
Knowing how to encode and decode messages using linear codes employing the appropriate method.
Knowing how to calculate the minimum distance of a linear code.
Knowing how to calculate generator and parity-check matrix
Knowing how to encrypt and decrypt messages, using the cryptographic private key and public key systems studied.
TemaryToggle Navigation
1. LINEAR CODES. Introduction. Error-correcting codes: basic definitions. Hamming distance. Equivalent codes. Perfect codes. Linear codes: definition and main properties. Generator and parity-check matrix for linear codes. Encoding with a linear code. Decoding with a linear code. Example of linear codes: Hamming codes.
2. CYCLIC CODES. Definition and construction of cyclic codes. Generator polynomial and generator matrix of a cyclic code. Check polynomial and parity-check matrix of a cyclic code. Encoding and decoding with a cyclic code. Cyclic decodification. Example of cyclic codes: BCH codes.
3. PRIMALITY TESTS. Primality tests: definition and types. Deterministic primality tests. Fermat primality test. Pseudoprime numbers. Miller-Rabin primality test. Strong pseudoprime numbers
4. CRYPTOGRAPHY. Cryptography schemes. Private key cryptography: affine cyphers, Hill cryptosystem, substitution cyphers and DES. Public key cryptography: RSA cryptosistem, ElGamal cryptosystem. Hash functions. Diffie-Hellman key exchange method. Digital signatures.
COMPUTER PRACTICAL
Students will design and implement using Mathematica, computer programs related to the five units of the course.
MethodologyToggle Navigation
Lectures: The master class methodology will be used to develop the theoretical part of the subject.
Classroom practical: Proposed problems related to the theoretical content of each topic will be solved.
Seminar: In these sessions students take on a more active role and must demonstrate the skills acquired to date in the relevant competences. Depending on the session, different activities will be performed, such as doing individual work, solving problems, etc. Attendance is mandatory.
Computer Practical: There will be two-hour biweekly sessions. Attendance is mandatory. In these hours, programs related to the subject matter presented in the lectures will be designed and implemented using the Mathematica symbolic calculation program.
Assessment systemsToggle Navigation
The theoretical-practical competences of the subject will be evaluated through the following tests:
1. Final written exam, with theory, questions and problems on the theoretical contents of the course accounting for 80% of the final mark, to be taken on the date set in the official exam calendar.
2. Computer practical exam to be taken during week 15, for 10% of the final mark.
3. Partial written exam on the course to be taken during weeks 9-10, for 10% of the final mark.
To apply the above percentages it is necessary to have obtained 4 out of 10 on the final exam and to have performed all the computer practical assignments given in class.
Compulsory materialsToggle Navigation
Lecture notes and example, exercise and computer programming sheets
BibliographyToggle Navigation
Basic bibliography
AKRITAS, A.G. Elements of computer algebra with applications, John Wiley and Sons, New York, 1989.
BRESSOUD, D.M. Factorization and primality testing, Springer-Verlag, New York, Iberoamericana, Wilmington, 1989.
HILL, R. A first course in coding theory. Ed. Clarendon Press, 1986.
HOFFSTEIN, J, PIPHER, J, SILVERMAN, J.H. An introduction to mathematical cryptography, Springer Science+Business Media, LLC, 2008.
MUNUERA, J., TENA, J. Codificación de la Información. Universidad de Valladolid, Secretariado de Publicaciones e Intercambio Científico, 1997.
ROMAN, S. Coding and Information Theory, Springer-Verlag, New York, 1992.
STINSON, R. S. Cryptography Theory and Practice, 2nd. ed., Chapman and Hall, Boca Raton, 2002.
In-depth bibliography
KOBLITZ, N. A course in number theory and cryptography. Ed. Springer-Verlag.
MENEZES, A.J., VAN OORSCHOT, P.C., VANSTONE, S.A. Handbook of applied cryptography CRC Press.
SMART, N. Cryptography: an introduction. Ed. McGraw-Hill.
VAN LINT, J.H., VAN DER GEER, G. Introduction to coding theory and algebraic geometry. Ed. Birkhäuser.
VAN LINT, J.H. Introduction to coding theory. Ed. Springer-Verlag.
Journals
GroupsToggle Navigation
01 Teórico (Spanish - Mañana)Show/hide subpages
Weeks | Monday | Tuesday | Wednesday | Thursday | Friday |
---|---|---|---|---|---|
1-15 | 09:30-10:30 | 09:30-10:30 |
01 Seminar-1 (Spanish - Mañana)Show/hide subpages
Weeks | Monday | Tuesday | Wednesday | Thursday | Friday |
---|---|---|---|---|---|
5-15 | 13:00-14:00 |
01 Applied classroom-based groups-1 (Spanish - Mañana)Show/hide subpages
Weeks | Monday | Tuesday | Wednesday | Thursday | Friday |
---|---|---|---|---|---|
1-3 | 13:00-14:00 | ||||
4-14 | 13:00-14:00 |
01 Applied computer-based groups-1 (Spanish - Mañana)Show/hide subpages
Weeks | Monday | Tuesday | Wednesday | Thursday | Friday |
---|---|---|---|---|---|
3-3 | 17:00-18:00 | ||||
3-11 | 15:00-17:00 | ||||
14-15 | 15:00-17:00 |
31 Teórico (Basque - Mañana)Show/hide subpages
Weeks | Monday | Tuesday | Wednesday | Thursday | Friday |
---|---|---|---|---|---|
1-15 | 09:30-10:30 | 09:30-10:30 |
31 Seminar-1 (Basque - Mañana)Show/hide subpages
Weeks | Monday | Tuesday | Wednesday | Thursday | Friday |
---|---|---|---|---|---|
3-3 | 13:00-14:00 | ||||
4-13 | 13:00-14:00 |
31 Applied classroom-based groups-1 (Basque - Mañana)Show/hide subpages
Weeks | Monday | Tuesday | Wednesday | Thursday | Friday |
---|---|---|---|---|---|
1-2 | 13:00-14:00 | ||||
4-14 | 13:00-14:00 | ||||
15-15 | 13:00-14:00 |
31 Applied computer-based groups-1 (Basque - Mañana)Show/hide subpages
Weeks | Monday | Tuesday | Wednesday | Thursday | Friday |
---|---|---|---|---|---|
3-3 | 17:00-18:00 | ||||
3-11 | 15:00-17:00 | ||||
14-15 | 15:00-17:00 |