ABSTRACT

This chapter mainly introduces the coding theory and code-based cryptography. It discusses basics of linear codes. Coding theory originated from digital communication systems, where data are easily corrupted by noise during transmission. The Hamming codes are a kind of (binary) linear error-correcting (block) codes that are able to correct one error and able to detect up to two errors. Goppa codes are one of the most important code classes in code-based cryptography because they resist all critical attacks so far. Code-based cryptography has been based on hard problems that arise from coding theory. Generalized Reed-Solomon codes are a generalization of Reed-Solomon codes. Cyclic codes are attractive in achieving a good error-correction capability. A general coding-theoretical model assumes that a sequence of symbols called message is transmitted over a noisy channel and the received message is likely to become corrupted with a non-zero probability.