Current Students

COMPM063 - Introduction to Cryptography

This database contains 2016-17 versions of the syllabuses. For current versions please see here.

CodeCOMPM063 (also taught as COMP3063 and COMPGA03)
Year4
PrerequisitesN/A
Term1
Taught ByEmiliano De Cristofaro (100%)
AimsFor 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 OutcomesStudents 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.

Content

Classical cyphers
Cryptanalysis of classical ciphers
Probability theory
Perfect security

Block cyphers
DES
AES
Block cipher modes of operation

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

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

Hash functions
Integrity
Pre-image resistance
2nd pre-image resistance
Collision freeness
SHA-256
NMAC/HMAC

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

Assessment

The course has the following assessment components:

  • Coursework Section (Three or four Exercise Assignments, 35%);
  • Written Examination (2.5 hours, 65%).

To pass this course, students must:

  • Obtain an overall pass mark of 50% for all components combined;
  • Obtain a minimum mark of 40% in each component worth ≥ 30% of the module as a whole.

Resources

Katz and Lindell, Introduction to Modern Cryptography. SECOND EDITION. Chapman & Hall/ CRC Press, 2014