COM-401 / 8 credits

Teacher: Vaudenay Serge

Language: English


Summary

This course introduces the basics of cryptography. We review several types of cryptographic primitives, when it is safe to use them and how to select the appropriate security parameters. We detail how they work and sketch how they can be implemented.

Content

  1. Ancient cryptography: Vigenère, Enigma, Vernam cipher, Shannon theory
  2. Diffie-Hellman cryptography: algebra, Diffie-Hellman, ElGamal
  3. RSA cryptography: number theory, RSA, factoring
  4. Elliptic curve cryptography: elliptic curves over a finite field, ECDH, ECIES, pairing
  5. Symmetric encryption: block ciphers, stream ciphers, exhaustive search
  6. Integrity and authentication: hashing, MAC, birthday paradox
  7. Public-key cryptography: cryptosystem, digital signature, post-quantum cryptography
  8. Trust establishment: password-based cryptography, secure communication, trust setups
  9. Case studies: WiFI, bitcoin, mobile telephony, WhatsApp, EMV, Bluetooth, biometric passport, TLS

Keywords

cryptography, encryption, secure communication

Learning Prerequisites

Required courses

MATH-310 Algebra

MATH-232 Probability and statistics for IC

CS-250 Algorithms I

 

Recommended courses

COM-301 Computer security and privacy

Important concepts to start the course

  • Mathematical reasoning
  • Probabilities
  • Algebra, arithmetics
  • Algorithmics

Learning Outcomes

By the end of the course, the student must be able to:

  • Choose the appropriate cryptographic primitive in a security infrastructure
  • Judge the strength of existing standards
  • Assess / Evaluate the security based on key length
  • Implement algorithms manipulating big numbers and use number theory
  • Use algebra and probability theory to analyze cryptographic algorithms
  • Identify the techniques to secure the communication and establish trust

Teaching methods

ex-cathedra

Expected student activities

  • active participation during the course
  • take notes during the course
  • do the exercises during the exercise sessions
  • complete the regular tests and homework
  • read the material from the course
  • self-train using the provided material
  • do the midterm exam and final exam

Assessment methods

Mandatory continuous evaluation:

  • homework (30%)
  • regular graded tests (30%)
  • midterm exam (40%)

Final exam averaged (same weight) with the contiuous evaluation, but with final grade between final_exam-1 and final_exam+1.

Supervision

Forum Yes
Others Lecturers and assistants are available upon appointment.

Resources

Bibliography

  • Communication security: an introduction to cryptography. Serge Vaudenay. Springer 2004.
  • A computational introduction to number theory and algebra. Victor Shoup. Cambridge University Press 2005.

Ressources en bibliothèque

Websites

Moodle Link

Videos

Prerequisite for

  • Advanced cryptography (COM-501)
  • Student seminar: security protocols and applications (COM-506)

In the programs

  • Semester: Fall
  • Exam form: Written (winter session)
  • Subject examined: Cryptography and security
  • Courses: 4 Hour(s) per week x 14 weeks
  • Exercises: 2 Hour(s) per week x 14 weeks
  • Type: mandatory
  • Semester: Fall
  • Exam form: Written (winter session)
  • Subject examined: Cryptography and security
  • Courses: 4 Hour(s) per week x 14 weeks
  • Exercises: 2 Hour(s) per week x 14 weeks
  • Type: mandatory
  • Semester: Fall
  • Exam form: Written (winter session)
  • Subject examined: Cryptography and security
  • Courses: 4 Hour(s) per week x 14 weeks
  • Exercises: 2 Hour(s) per week x 14 weeks
  • Type: mandatory
  • Semester: Fall
  • Exam form: Written (winter session)
  • Subject examined: Cryptography and security
  • Courses: 4 Hour(s) per week x 14 weeks
  • Exercises: 2 Hour(s) per week x 14 weeks
  • Type: mandatory
  • Semester: Fall
  • Exam form: Written (winter session)
  • Subject examined: Cryptography and security
  • Courses: 4 Hour(s) per week x 14 weeks
  • Exercises: 2 Hour(s) per week x 14 weeks
  • Type: mandatory
  • Semester: Fall
  • Exam form: Written (winter session)
  • Subject examined: Cryptography and security
  • Courses: 4 Hour(s) per week x 14 weeks
  • Exercises: 2 Hour(s) per week x 14 weeks
  • Type: mandatory
  • Semester: Fall
  • Exam form: Written (winter session)
  • Subject examined: Cryptography and security
  • Courses: 4 Hour(s) per week x 14 weeks
  • Exercises: 2 Hour(s) per week x 14 weeks
  • Type: optional
  • Semester: Fall
  • Exam form: Written (winter session)
  • Subject examined: Cryptography and security
  • Courses: 4 Hour(s) per week x 14 weeks
  • Exercises: 2 Hour(s) per week x 14 weeks
  • Type: optional
  • Semester: Fall
  • Exam form: Written (winter session)
  • Subject examined: Cryptography and security
  • Courses: 4 Hour(s) per week x 14 weeks
  • Exercises: 2 Hour(s) per week x 14 weeks
  • Type: optional
  • Semester: Fall
  • Exam form: Written (winter session)
  • Subject examined: Cryptography and security
  • Courses: 4 Hour(s) per week x 14 weeks
  • Exercises: 2 Hour(s) per week x 14 weeks
  • Type: optional
  • Semester: Fall
  • Exam form: Written (winter session)
  • Subject examined: Cryptography and security
  • Courses: 4 Hour(s) per week x 14 weeks
  • Exercises: 2 Hour(s) per week x 14 weeks
  • Type: optional
  • Semester: Fall
  • Exam form: Written (winter session)
  • Subject examined: Cryptography and security
  • Courses: 4 Hour(s) per week x 14 weeks
  • Exercises: 2 Hour(s) per week x 14 weeks
  • Type: optional
  • Semester: Fall
  • Exam form: Written (winter session)
  • Subject examined: Cryptography and security
  • Courses: 4 Hour(s) per week x 14 weeks
  • Exercises: 2 Hour(s) per week x 14 weeks
  • Type: optional
  • Exam form: Written (winter session)
  • Subject examined: Cryptography and security
  • Courses: 4 Hour(s) per week x 14 weeks
  • Exercises: 2 Hour(s) per week x 14 weeks
  • Type: optional
  • Semester: Fall
  • Exam form: Written (winter session)
  • Subject examined: Cryptography and security
  • Courses: 4 Hour(s) per week x 14 weeks
  • Exercises: 2 Hour(s) per week x 14 weeks
  • Type: optional
  • Semester: Fall
  • Exam form: Written (winter session)
  • Subject examined: Cryptography and security
  • Courses: 4 Hour(s) per week x 14 weeks
  • Exercises: 2 Hour(s) per week x 14 weeks
  • Type: optional
  • Semester: Fall
  • Exam form: Written (winter session)
  • Subject examined: Cryptography and security
  • Courses: 4 Hour(s) per week x 14 weeks
  • Exercises: 2 Hour(s) per week x 14 weeks
  • Type: optional

Reference week

Wednesday, 8h - 10h: Lecture ELA1

Thursday, 10h - 12h: Lecture INJ218

Friday, 9h - 11h: Exercise, TP CM1

Related courses

Results from graphsearch.epfl.ch.