Durham University
Programme and Module Handbook

Undergraduate Programme and Module Handbook 2024-2025

Module COMP3731: CRYPTOGRAPHY

Department: Computer Science

COMP3731: CRYPTOGRAPHY

Type Open Level 3 Credits 20 Availability Available in 2024/2025 Module Cap Location Durham

Prerequisites

  • (COMP1021 Mathematics for Computer Science OR MATH1561 Single Mathematics A OR MATH1071 Linear Algebra I) AND COMP1051 Computational Thinking

Corequisites

  • None

Excluded Combination of Modules

  • MATH3401 Cryptography and Codes III

Aims

  • To understand:
  • the main cryptographic primitives for secret-key and public-key cryptography
  • the main security notions for cryptosystems
  • the main kinds of attacks to protect against when using a cryptosystem
  • the design of cryptographic protocols

Content

  • Introduction to cryptography
  • Secret-key cryptography: DES, AES, modes of operation, and attacks against those systems
  • Public-key cryptography: RSA and attacks against it
  • Discrete-logarithm and Elliptic Curve cryptography and attacks against those
  • Lattice-based cryptography
  • Side-channel attacks
  • Hash functions: constructions, security and applications
  • Signature schemes: constructions, security and application
  • Construction of protocols and proving their security

Learning Outcomes

Subject-specific Knowledge:
  • On completion of the module, students will be able to demonstrate:
  • an understanding of the key features of secret-key and public-key cryptography primitives
  • an understanding of security concerns for cryptography
  • an understanding of the main kind of attacks against cryptosystems
  • an understanding of the key features of cryptographic hash functions
  • an understanding of the key features of digital signature schemes
  • an understanding of the issues faced in designing and assessing the security of cryptographic protocols
Subject-specific Skills:
  • On completion of the module, students will be able to demonstrate:
  • an ability to design and use main cryptography primitives
  • an ability to run different kinds of attacks against cryptosystems
  • an ability to evaluate the efficiency and security of protocols based on hash functions
  • an ability to design various digital signature schemes and to assess their security
Key Skills:
  • On completion of the module, students will be able to demonstrate:
  • an ability to validate the correctness and security of cryptosystems;
  • an ability to conduct some attacks against those cryptosystems.

Modes of Teaching, Learning and Assessment and how these contribute to the learning outcomes of the module

  • Lectures enable the students to learn new material relevant to cryptography.
  • Practical session enable students to practice running complex attacks against symmetric-key cryptosystems.
  • The summative coursework assesses the knowledge and understanding of the cryptosystems and the attacks viewed throughout the course.
  • The examination assesses the knowledge and understanding of the material covered in the lectures.

Teaching Methods and Learning Hours

Activity Number Frequency Duration Total/Hours
lectures 42 2 per week 1 hour 42
practicals 2 1 per term 2 hours 4
preparation and reading 154
Total 200

Summative Assessment

Component: Coursework Component Weighting: 50%
Element Length / duration Element Weighting Resit Opportunity
Assignment 100% No
Component: Examination Component Weighting: 50%
Element Length / duration Element Weighting Resit Opportunity
Examination 2 hours 100% No

Formative Assessment:

Example formative exercises are given during the course.


Attendance at all activities marked with this symbol will be monitored. Students who fail to attend these activities, or to complete the summative or formative assessment specified above, will be subject to the procedures defined in the University's General Regulation V, and may be required to leave the University