25. Coding theory for cryptography
Introduces linear codes, generator and parity-check matrices, Hamming distance, syndromes, decoding, and the hardness of random-code decoding. Small exercises encode messages, inject errors, and recover valid codewords.