MA410      Half Unit
Information, Communication and Cryptography

This information is for the 2019/20 session.

Teacher responsible

Prof Jozef Skokan


This course is available on the MSc in Applicable Mathematics and MSc in Operations Research & Analytics. This course is available as an outside option to students on other programmes where regulations permit.


Students should be taking the course MA407 Algorithms and Computation or have taken an equivalent course to provide a basic knowledge of algorithms, and should have experience with proofs and proof techniques used in pure mathematics.

Course content

This course provides an introduction, for students with a mathematical background, to the applications of mathematics in information theory, coding theory, cryptography, and related areas. The course will cover mathematical aspects of the following topics: Noiseless coding, the Kraft-McMillan criterion, optimal coding, entropy, Shannon's first theorem; Noisy channels, capacity, system entropy; Error-correcting codes, decoding rules, bounds, construction and properties of linear and cyclic codes; Structure of natural languages, redundancy, the frequency table, making and breaking cryptosystems, historic examples; Public-key cryptography, complexity issues, the RSA system, authentication schemes, the ElGamal system. Subject to available time we may also cover elliptic curve cryptography and/or cryptocurrencies. 


20 hours of lectures and 10 hours of seminars in the MT. 2 hours of lectures in the ST.

Indicative reading

N L Biggs, Codes, An Introduction to Information, Communication and Cryptography: G A Jones & J M Jones, Information and Coding Theory; C M Goldie & R G E Pinch, Communication Theory; D J A Welsh, Codes and Cryptography; D T Stinson, Cryptography Theory and Practice.


Exam (90%, duration: 2 hours) in the summer exam period.
Coursework (10%) in the MT.

Key facts

Department: Mathematics

Total students 2018/19: 6

Average class size 2018/19: 5

Controlled access 2018/19: No

Value: Half Unit

Guidelines for interpreting course guide information

Personal development skills

  • Self-management
  • Problem solving
  • Application of information skills
  • Communication
  • Application of numeracy skills
  • Specialist skills