Algebraic Geometry in Coding Theory and Cryptography by Harald Niederreiter & Chaoping Xing