## REVIEW: “Making, Breaking Codes: An Introduction to Cryptology”, Paul Garrett

Posted on March 18th, 2011 by p1

Filed under: Book Reviews, Commentary, Encryption | No Comments »

BKMABRCO.RVW 20101128

“Making, Breaking Codes: An Introduction to Cryptology”, Paul Garrett, 2001, 978-0-13-030369-1

%A Paul Garrett Garrett@math.umn.edu Paul.Garrett@acm.org

%C One Lake St., Upper Saddle River, NJ 07458

%D 2001

%G 978-0-13-030369-1 0-13-030369-0

%I Prentice Hall

%O 800-576-3800 416-293-3621 +1-201-236-7139 fax: +1-201-236-7131

%O http://www.amazon.com/exec/obidos/ASIN/0130303690/robsladesinterne

http://www.amazon.co.uk/exec/obidos/ASIN/0130303690/robsladesinte-21

%O http://www.amazon.ca/exec/obidos/ASIN/0130303690/robsladesin03-20

%O Audience a- Tech 2 Writing 1 (see revfaq.htm for explanation)

%P 523 p.

%T “Making, Breaking Codes: An Introduction to Cryptology”

The preface states that this book is intended to address modern ideas in cryptology, with an emphasis on the mathematics involved, particularly number theory. It is seen as a text for a two term course, possibly in cryptology, or possibly in number theory itself. There is a brief introduction, listing terms related to cryptology and some aspects of computing.

Chapter one describes simple substitution ciphers and the one time pad. The relevance to the process of the sections dealing with mathematics is not fully explained (and neither is the affine cipher). Probability is introduced in chapter two, and there is some discussion of the statistics of the English language, and letter frequency attacks on simple ciphers. This simple frequency attack is extended to substitution ciphers with permuted (or scrambled, but still monoalphabetic) ciphers, in chapter three. There is also mention of basic character permutation ciphers and multiple anagramming attacks. Chapter four looks at polyalphabetic ciphers and attacks on expected patterns. More probability theory is added in chapter five.

Chapter six turns to modern symmetric ciphers, providing details of the DES (Data Encryption Standard) as examples of the principles of confusion, diffusion, and avalanche. Divisibility is important not only to the RSA (Rivest-Shamir-Adlemen) algorithm, but, in modular arithmetic, to modern cryptography as a whole, and so gets extensive treatment in chapter seven. The Hill cipher is used, in chapter eight, to demonstrate that simple diffusion is not sufficient protection. Complexity theory is examined, in chapter nine, with a view to determining the work factor (and sometimes practicality) of a given cryptographic algorithm.

Chapter ten turns to public-key, or asymmetric, algorithms, detailing aspects of the RSA and Diffie-Hellman algorithms, along with a number of others. Prime numbers (important to RSA) and their characteristics are examined in chapter eleven, and roots in twelve and thirteen. Multiplicativity, and its weak form, are addressed in fourteen, and quadratic reciprocity (for quick primality estimates) in fifteen. Chapter sixteen notes pseudoprimes, which can complicate the search for keys. Basic group theory, covered in chapter seventeen, relates to Diffie-Hellman and a variety of other algorithms. Diffie-Hellman, along with some abstract algorithms, is reviewed in chapter eighteen. Rings and fields (in groups) are noted in chapter nineteen, and cyclotomic polynomials in twenty.

Chapter twenty-one examines a few pseudo-random number generation algorithms. More group theory is presented in twenty-two. Chapter twenty-three looks at proofs of pseudoprimality. Factorization attacks are addressed in basic (chapter twenty-four), and more sophisticated forms (twenty-five). Finite fields are addressed in chapter twenty-six and discrete logarithms in twenty-seven. Some aspects of elliptic curves are reviewed in chapter twenty-eight. More material on finite fields is presented in chapter twenty-nine.

Despite the title, this is a math textbook. You will need to have, at the very least, a solid introduction to number theory to get the benefit from it. Even at that, the application, and implications, of the mathematical material to cryptology is difficult to follow. The organization probably also works best in a math course: it certainly seems to skip around in a disjointed manner when trying to follow the crypto thread, and apply the math to it. For all its faults, “Applied Cryptography” (cf. BKAPCRYP.RVW) is still far superior in explaining what the math actually does.

copyright, Robert M. Slade 2010 BKMABRCO.RVW 20101128