Coding and Cryptography (Cambridge Part II 2016-17 Course)



Frankie Higgs


This course covers topics around the theory of communication, and assumes (a little) knowledge of algebra and probability.

The course consists of three main sections:
1. Noiseless coding:
Decipherable codes, Kraft's inequality, Huffman coding
2. Error control codes:
Noisy channels, error-detecting and error-correcting codes, linear codes including Hamming, Reed-Muller and BCH codes
3. Cryptography
Unicity distance, stream ciphers and LFSRs, public key cryptography including RSA and Rabin-Williams, Diffie-Hellman key exchange, signature schemes (ElGamal scheme)

These cards contain definitions, statements and proofs of theorems from the course.

I wrote these only to aid with remembering facts for the exam - I've provided them here in the hope that they'll be helpful to someone taking an equivalent course in the same position.
They may be of interest to someone who isn't taking a similar course, but since I've not included any of the explanation or motivation that accompanied the theorems, you'll be better off learning the material first from a textbook. The lecturer has recommended Codes and Cryptography by Dominic Welsh, or Communication Theory by Goldie & Pinch.

This may go without saying, but a fellow student has had a little trouble along these lines before: if you are taking a course in this subject, these notes are not a substitute for attending lectures.

A note on the cards: I found the LaTeX renderer used by Mnemosyne to be ugly and difficult to read, so the cards are in fact PNG images rendered from LaTeX. This does mean they are a pain to edit, and may not fit nicely on mobile screens. If anyone would like the source files to render themselves, email [email protected] and I will provide them.


Based on my lecture notes from the Cambridge University part II course "Coding and Cryptography", lectured in Lent term 2017 by Dr. Rachel Camina

As far as I can tell, this course has no official webpage, and no online notes. It's pretty similar to the course given two years earlier by Dr. Carne, which has notes available at
Prof. K├Ârner's notes also cover a lot of the same material:
These cards are based on what was said in lectures, not on any printed notes. One of two of the cards may be based on the 2016-17 example sheets at

Mnemosyne Compatibility: 

  • 2.1+

Card Set File: