Skip to main content

Unit information: Cryptography A in 2015/16

Please note: you are viewing unit and programme information for a past academic year. Please see the current academic year for up to date information.

Unit name Cryptography A
Unit code COMS30002
Credit points 10
Level of study H/6
Teaching block(s) Teaching Block 1 (weeks 1 - 12)
Unit director Dr. Stam
Open unit status Not open

COMS20002 or a comparable background in discrete mathematics



School/department Department of Computer Science
Faculty Faculty of Engineering

Description including Unit Aims

This unit builds on the foundations layed in Cryptography A where the basic primitives for authentication and secrecy have been introduced. This follow-up course deals with more advanced topics, specific to modern cryptographic research. The broad range of topics range from foundational questions (what are minimal, sufficient conditions for cryptography to even exist?) to practical ones (how to design and analyze e-voting systems).

A common view of cryptography is that it only focuses on schemes for encryption; this unit aims to introduce an extended remit of advanced techniques and primitives that allow cryptographic solutions to numerous real-world problems.

The syllabus will include aspects of (but is not limited to):

  • Foundations and primitives: pseudo-random generators, functions and permutations, hard-core bits; hash function preimage and collision resistance.
  • Interactive 2 Party Protocols: Security models and applications of commitment schemes and sigma protocols (zero-knowledge).
  • Digital signatures: One-time signatures, signatures based on sigma protocols (Fiat-Shamir heuristic), and blind signatures.
  • Multi-party primitives, protocols, and use cases: Shamir secret sharing, generic multi-party computation; e-cash and e-voting.

Intended Learning Outcomes

On successful completion of this unit you will be able to:

  • Describe and evaluate complex cryptographic constructions based on simpler primitives, using attacks and security reductions as appropriate
  • Frame the security needs of real-world applications from a cryptographic perspective
  • Summarize and put into context the latest scientific advances in the field.

Teaching Information

20 hours of lectures (2 hours per week), 10 hours of (supervised, but non-taught) problem classes (1 hour per week).

Assessment Information

30% via a coursework assignment, 70% via examination

Reading and References

J. Katz and Y. Lindell. Introduction to Modern Cryptography. Chapman & Hall/CRC, 2011. ISBN: 1584885513.