ELEC6242 Cryptography
Module Overview
This module covers the mathematics, techniques, and applications of modern cryptography. We will look at the history of code making and code breaking, and draw lessons for the future from the mistakes and successes of the past. We will also give a gentle introduction to the mathematics underlying modern cryptosystems.
Aims and Objectives
Learning Outcomes
Knowledge and Understanding
Having successfully completed this module, you will be able to demonstrate knowledge and understanding of:
- The historic struggle between code-makers and code-breakers
- The broad categories of codes and ciphers, and appropriate uses for each
Subject Specific Intellectual and Research Skills
Having successfully completed this module you will be able to:
- Perform simple mathematics appropriate to public-key encryption, and to cryptosystems based on polynomials over the binary numbers
Transferable and Generic Skills
Having successfully completed this module you will be able to:
- Use graduate-level literature to investigate areas of mathematics previously unfamiliar to you
Subject Specific Practical Skills
Having successfully completed this module you will be able to:
- Attack classical ciphers such as Vigenère, and LFSR-based stream ciphers
- Select appropriate ciphers, cipher modes, and protocols for simple applications
Syllabus
Cryptography background - Vocabulary - History - Steganography - Simple codebreaking - Information: confusion and diffusion, entropy - One-time pads and their failures (Venona). Mathematical background - Finite Abelian Groups - Finite Fields. - Groups based on integer multiplication - Discrete logarithms - Groups based on elliptic curve Public and private key cryptography, shared secrets Public key cryptosystems - RSA, ElGamal - Authentication - Signatures - Deniability - Identity-based cryptography Private key cryptosystems Stream ciphers: LFSR, RC4, and later. Block ciphers: Feistel, Rijndael, and later Cryptographic modes: ECB, CBC, GCM. Cryptographic protocols, including TLS. “Random numbers” and their weaknesses Elementary cryptanalysis Weaknesses in implementations Hardware Quantum cryptography
Learning and Teaching
Type | Hours |
---|---|
Revision | 10 |
Preparation for scheduled sessions | 18 |
Wider reading or practice | 50 |
Follow-up work | 18 |
Completion of assessment task | 12 |
Lecture | 36 |
Tutorial | 6 |
Total study time | 150 |
Resources & Reading list
Ross J Anderson (2008). A Guide to Building Dependable Distributed Systems.
Bruce Schneier (1995). Applied Cryptography: Protocols, Algorithms and Source Code in C.
David Kahn (1997). The Codebreakers: The Comprehensive History of Secret Communication from Ancient Times to the Internet.
Assessment
Summative
Method | Percentage contribution |
---|---|
Cryptanalysis Investigation | 20% |
Examination (2 hours) | 80% |
Repeat
Method | Percentage contribution |
---|---|
Examination | 100% |
Referral
Method | Percentage contribution |
---|---|
Examination (2 hours) | 100% |
Repeat Information
Repeat type: Internal & External
Linked modules
Pre-requisites: (ELEC1201 and MATH2047) OR (COMP1202 AND COMP2210) OR COMP6238