Module code: COMM045

Module provider

Computer Science

Module Leader

MANULIS M Dr (Computer Sci)

Number of Credits


ECT Credits



FHEQ Level 7

JACs code


Module cap (Maximum number of students)


Module Availability

Semester 1

Overall student workload

Lecture Hours: 18

Laboratory Hours: 12

Assessment pattern

Assessment type Unit of assessment Weighting
School-timetabled exam/test IN-SEMESTER (INDIVIDUAL) 20%

Alternative Assessment


Prerequisites / Co-requisites


Module overview

The module introduces general concepts of asymmetric (aka. public key) cryptography and covers main algorithms and protocols in this field. The module will introduce mathematical foundations that are essential for the functionality and security of asymmetric cryptographic algorithms and then focus on the security definitions and constructions of concrete algorithms for authentication, confidentiality and integrity. The theoretical part of the module will focus on provable security of asymmetric cryptographic algorithms and introduce the concept of cryptographic reductions. In labs students will learn how to implement and use existing algorithms from asymmetric cryptography.

Module aims

The aim of this module is to equip students with background knowledge and practical experience of modern asymmetric cryptographic algorithms and protocols. The module will explain the underlying theory and show practical application of asymmetric cryptographic algorithms

Learning outcomes

Attributes Developed
Understand cryptographic principles, challenges and goals that arise in the context of public-key cryptography KC
Understand the functionality and security of widely used asymmetric cryptographic algorithms, including their advantages and disadvantages and the underlying mathematical theory KCT
Experience practical application of asymmetric cryptographic algorithms KPT

Attributes Developed

C - Cognitive/analytical

K - Subject knowledge

T - Transferable skills

P - Professional/Practical skills

Module content

Number-theory and modular arithmetic (incl. algorithms for gcd, modular inverse and exponentiation computations, prime numbers, operations in cyclic groups, group order, discrete logarithm problem and algorithms, integer factorization problem and algorithms)
Public-key / asymmetric encryption (incl. schemes such as RSA, ElGamal, Goldwasser-Micali, Rabin, Paillier, homomorphic properties and provable security of public-key encryption (e.g. IND-CPA and IND-CCA security, RSA problem, Diffie-Hellman problems), key lengths)
Digital signatures (incl. schemes such as RSA, ElGamal, Schnorr, DSS, Hash-and-Sign paradigm, one-time signatures (e.g. Lamport, Merkle), provable security of digital signatures (e.g. EUF-CMA security))
Key establishment protocols (incl. key transport/distributions, key exchange/agreement protocols, Diffie-Hellman key exchange, key derivation functions, attacks on key establishment protocols, provable security of key establishment protocols (e.g. AKE-security notion), extensions to multi-party key establishment)
Advanced cryptographic techniques (e.g. signcryption, Shamir’s secret sharing, identification/zero-knowledge protocols)

Methods of Teaching / Learning

The learning and teaching strategy is designed to:

Help students understand the nature of public key cryptography, including main principles, challenges and goals
Explain most significant concepts and algorithms in asymmetric cryptography
Explain security requirements and functionality of asymmetric cryptographic algorithms
Enable students to apply existing asymmetric cryptographic algorithms in practice


The learning and teaching methods include:

Lectures (15 hours) using detailed lecture slides to gauge the students’ understanding
Labs (10 hours) using exercise sheets and their solutions.


Students will be expected to distribute the remaining workload on self-study, preparation for lectures and labs, preparation for the in-semester test and submission of the coursework.

Assessment Strategy

The assessment strategy is designed to provide students with the opportunity to demonstrate that they have achieved the module learning outcomes.

Thus, the summative assessment for this module consists of:

·         An individual in-semester test with a set of questions that students are required to answer.

This addresses LO1 and LO2.

·         An individual coursework with a set of theoretical and practical tasks.

This addresses LO1, LO2 and LO3.


Formative assessment and feedback

Lecture slides are used extensively in the lectures with each lecture consisting of a number of slides explaining the theory and showing the examples. Solutions to lab exercises are explained during the lab session and provided to the students.

Reading list


Please note that the information detailed within this record is accurate at the time of publishing and may be subject to change. This record contains information for the most up to date version of the programme / module for the 2017/8 academic year.