Applied Cryptography

Advanced Course in WS 2014/15

Credits:6 ETCS
Our Team: Dr. Aniket Kate, Tim Ruffing
Lecture:Friday 14:15 to 16:00, E1 7 (MMCI) room 323
Tutorial:Monday 16:15 to 18:00, E1 7 (MMCI) room 323
Instruction Language: English
Contact Email: appliedcrypto14 (at) mmci (dot) uni-saarland (dot) de


There is a large gap between theory and practice of cryptography today. In this lecture, we will address some of pressing issues with cryptography in real life. We will start our discussion with theoretical cryptographic basics, visit cryptographic protocols, and finish by engineering and analyzing real-world cryptographic instantiations. In particular, we will focus on the following topics:

1. Number Theory and Cryptography

  • Number theory basics
  • Finite fields and Discrete Logarithm-based Assumptions
  • Elliptic Curve Cryptography
  • Bilinear Pairings
  • Integer factorization and RSA Assumption

2. Cryptographic Primitives

  • Cryptographic Commitments
  • Encryptions and Digital Signatures
  • Identity-based and Attribute-based Cryptography
  • Predicate Encryptions
  • Pseudo-random functions, permutations, and generators

3. Real-World Cryptographic Applications

  • Bitcoin and E-cash
  • Password authentication
  • PGP
  • Tor and Censorship Resistance

4. Cryptographic Engineering

Registration and Prerequisites

Students should register for the course through the HISPOS system. In addition, we will be using Piazza to publish lecture notes and assignments as well as for class discussion. A link to register for the course in Piazza will be available soon. Please let us now if you face any problem with registration.

Note that this will be an advanced course and we expect some background in cryptography and security. It would be ideal if you have done a cryptography, security, and/or number theory at Saarland University or during your previous studies somewhere else. Motivated students without this background are also welcome to the course. However, we would expect some more spirited efforts from you.

Course Structure

The course specially focuses on mathematical and implementation/engineering aspects of cryptography, and puts less emphasis on formal and complexity theoretic aspects. The lectures will not follow any specific textbook; however, the following books (available in the library) can be ideal for background as well as further reading.

We will follow a combination of slides and blackboard teaching during the lectures.

Course Requirements and Grading

Along with lectures, you are expected to participate in problem solving tutorial sessions. There will be a mid-term quiz and a final examination.There will also be three implementation projects that you are supposed to complete.
Final exam: 45%
Mid-term quiz: 10%
Projects: 45%