School of Computer Science

Module 06-20008 (2010)


Level 4/M

Volker Sorge Semester 1 10 credits
Co-ordinator: Volker Sorge
Reviewer: Marco Cova

The Module Description is a strict subset of this Syllabus Page.


The aims of this module are to:

  • introduce the basic terminology, concepts, and standards of cryptography
  • familiarise students with the main approaches, algorithms, and protocols in modern cryptography
  • explain the principles and underlying mathematical theory of today's cryptographic algorithms
  • provide an understanding of potential weaknesses and problems with ciphers and cryptographic protocols
  • raise awareness of some of the legal and socio-ethical issues surrounding cryptography

Learning Outcomes

On successful completion of this module, the student should be able to:

  • explain the fundamentals of cryptography, such as encryption, digital signatures and secure hashes
  • select appropriate techniques and apply them to solve a given problem
  • design and evaluate security protocols appropriate for a given situation
  • demonstrate an understanding of the mathematical underpinning of cryptography
  • demonstrate an understanding of some legal and socio-ethical issues surrounding cryptography


Teaching methods

3 hours/week lectures/exercise classes


  • Sessional: 1.5 hr examination (80%), continuous assessment (20%).
  • Supplementary: By examination only (100%).

Detailed Syllabus

  1. Overview on Historical Ciphers
  2. Symmetric Ciphers
    • Block Ciphers
    • Stream Ciphers
    • Key Management
  3. Asymmetric Ciphers
    • Diffie-Hellman
    • Public Key Cryptography
    • RSA
    • Cramer Shoup
  4. Signatures, Certificates, Data Integrity
  5. Quantum cryptography

Programmes containing this module