module specification

MA6030 - Cryptography and Coding Theory (2018/19)

Module specification Module approved to run in 2018/19
Module status DELETED (This module is no longer running)
Module title Cryptography and Coding Theory
Module level Honours (06)
Credit rating for module 30
School School of Computing and Digital Media
Total study hours 300
81 hours Scheduled learning & teaching activities
219 hours Guided independent study
Assessment components
Type Weighting Qualifying mark Description
In-Course Test 20%   Series of Mini Unseen Tests ( Coding Theory)
In-Course Test 30%   Final Unseen Test (Coding Theory) 1.5 hrs
Unseen Examination 20%   Series of Mini Unseen Tests (Cryptography)
In-Course Test 30%   Final Unseen Test (Cryptography) 1.5 hrs
Running in 2018/19 No instances running in the year

Module summary

The module is an introduction to modern ideas in coding and cryptography. It proves the background to the essential techniques and algorithms of cryptography in widespread use today, as well as the essentials of Number Theory underlying them.
Error correcting codes are an important part of the data communications theory and allow a message to be recovered even if errors have been introduced during transmission. The elegant mathematics of finite field theory is introduced to develop multiple error correcting codes with a wide range of communications applications.

Prior learning requirements

Completion of level 5

Module aims

This module aims to equip students with a sound understanding of the concepts of Number Theory and Galois Theory, and their applications in Cryptography and to Error Correcting Codes. It will
• develop students’ understanding of different situations in which cryptography and error correcting codes are used,
• encourage students to develop and analyse algorithms for encryption and decryption, and for encoding and decoding efficient single error correcting codes;
• enable students to appreciate the strength of some results from the Number Theory and their applications in on-line security, of the abstract theory of finite fields for developing efficient multiple error correcting codes.


Number theory:  Chinese Remainder Theorem, Fermat’s Little Theorem and generalisations,
Primality testing, Primitive roots, Discrete logarithms
Theory of fields:  Rings, Polynomials, Fields, Construction of finite fields, GCD algorithm and calculation of inverses. Minimal polynomials.
Cryptography and cryptanalysis: History and Terminology, Symmetric Encryption. Block Cipher Principles. Asymmetric Encryption: RSA public key cryptosystem
Error correcting codes: Linear codes, Hamming and other perfect codes, check and generator matrices,
BCH codes, error locator polynomial, Reed Solomon codes, error evaluator polynomial

Learning and teaching

Students’ learning is directed via face-to-face learning activities centred on lectures and seminars. There is full provision of documents related to the module in electronic format that can be accessed by students all the time. The documents include lecture notes, slides, guidance to further reading and relevant mathematical packages, and exercises and tests.

Learning outcomes

On successful completion of this module, students should be able to:
LO1 Appreciate proofs of theorems in Number Theory and application to cryptography
LO2 Appreciate proofs of theorems in Field Theory  and application to coding theory
LO3 Use appropriate error detecting and error correcting algorithms for a given code;
LO4 Construct and perform arithmetic, including finding inverses, in finite fields GF(p^n);


Assessment strategy

There will be a series of mini tests every 2-3 weeks, allowing students an early opportunity to demonstrate their understanding of basic topics [from LO1, LO2 ,LO3 and LO4] and to receive feedback on them. 2 x 1.5 hour tests will take place at the end of the two major sections of the module (cryptography and coding theory) where students will be tested across the whole of the material studied [LO1,LO2,LO3,LO4].
Students are permitted to bring two sides of handwritten notes to each assignment to aid the consolidation of learning.


W. Stallings; Cryptography and Network Security: Principles and Practice; Prentice Hall.
Paul Garrett; Making, Breaking Codes: An Introduction to Cryptography; Prentice Hall.
J. Holt, J. Jones; Discovering Number Theory; W.H. Freeman and Company.
Pretzel, O; Error Correcting Codes; Oxford University Press.