Current Students

COMPGA03 - Introduction to Cryptography

This database contains 2017-18 versions of the syllabuses. For current versions please see here.

Code COMPGA03 (also taught as COMP3063 and COMPM063)
Year MSc
Prerequisites N/A
Term 1
Taught By Emiliano De Cristofaro (100%)
Aims For many centuries the goal of cryptography was the protection of privacy of communications. Computers, digital communication and in particular the internet have brought an abundance of new security goals. Examples are: anonymity, authenticity, non-repudiation, authorized wiretapping (called law enforcement), and traceability. To each need corresponds security mechanisms to achieve it. The goal of the course is to make students familiar with such techniques and some of the foundations of these methods. In particular students will be confronted with a range of security objectives, different levels of security that can be achieved and some available cryptographic techniques that can be used.
Learning Outcomes Students start learning how to think from an adversarial viewpoint. The goal is to become familiar with basic techniques to protect data in computer and communication environments against several different varieties of fraud.


Classical cyphers
Cryptanalysis of classical ciphers
Probability theory
Perfect security

Block cyphers
Block cipher modes of operation

Private-key encryption
Chosen plaintext attacks
Randomised encryption
Chosen cyphertext attacks

Message authentication codes
Private-key authentication
Pseudorandom functions
CCA-secure private-key encryption

Hash functions
Pre-image resistance
2nd pre-image resistance
Collision freeness

Key distribution

Key distribution centres
Modular arithmetic and group theory
Diffie-Hellman key exchange

Public-key Distribution

EIGamal encryption
Cramer-Shoup encryption
Discrete logarithm problem

Digital Signatures

RSA signatures
RSA-FDH and RSA-PSS signatures
DSA signatures
X.509 certificates
Certification paths

Method of Instruction

Tutor-led class sessions, problem-solving sessions and private study


The module has the following assessments:

  • Written Examination (2.5 hours) (65%)
  • Coursework Section (3 or 4 Exercise Assignments) (35%)

To pass this module, students must:

  • Obtain a mark of at least 50% for the module overall.




Reading list available via the UCL Library catalogue.