- Membership
- MAA Press
- Meetings
- Competitions
- Community
- Programs
- Students
- High School Teachers
- Faculty and Departments
- Underrepresented Groups
- MAA Awards
- MAA Grants

- News
- About MAA

Publisher:

Chapman & Hall/CRC

Publication Date:

2012

Number of Pages:

541

Format:

Hardcover

Series:

Discrete Mathematics and Its Applications

Price:

79.95

ISBN:

9781439872413

Category:

Textbook

[Reviewed by , on ]

Mark Hunacek

09/23/2012

As a subject, cryptology is a natural choice for an upper-level course for mathematics majors: it is interesting, useful, reasonably accessible to undergraduates, and provides an excellent illustration of the utility of other subjects that the student may have seen, such as linear and abstract algebra and number theory. However, it is not only math majors who are interested in cryptology; there is something about secret codes and ciphers which most people, including those with little or no training in mathematics, seem to find inherently fascinating. I still remember my enjoyment of short stories such as Poe’s *The Gold Bug* and Doyle’s *The Adventure of the Dancing Men*, read long before I started studying mathematics seriously. So, why not offer a course in the subject for non-majors, say as a general mathematics course offered to help fulfill a mathematics graduation requirement?

The present book is the authors’ nomination as a text for such a course. Klima, as the co-author of *The Mathematics of Voting and Elections: A Hands-On Approach*, has some experience with making interesting mathematics accessible to non-major undergraduates, and this most recent book does so nicely. The prerequisites are modest (no college-level mathematics is assumed), but a fair amount of interesting material is covered.

Starting with an introductory chapter which provides an overview of why one would want to study cryptology, and which defines some basic terms (including often-confused terms *cryptography*, *cryptanalysis* and *cryptology*; the first refers to making secret codes, the second refers to breaking codes, and the third encompasses the first two), the authors proceed through such topics as substitution, transposition, shift, and affine ciphers, as well as the Alberti, Vigenère, Hill, RSA, and ElGamal ciphers. There are also chapters on the AES (Advanced Encryption Standard) and message authentication. The necessary mathematical background for these topics — chiefly elementary number theory (particularly modular arithmetic), matrices, basic combinatorics and probability — is developed from scratch as needed.

All told, the authors have done an admirable job of balancing the competing goals of producing a text that can be read by people with limited mathematics background, but at the same time is maintained at a college level. This is not “cryptology for dummies”, watered down to the point of uselessness, but is instead a book that, though accessible, requires an appropriate amount of effort and thought on the part of the reader.

Klima and Sigmon’s concern with the likely lack of mathematical sophistication of the readership manifests itself in several ways. First, there is the selection of topics. Many books that are intended for an audience of majors (including Hoffstein, Pipher and Silverman’s *An Introduction to Mathematical Cryptography*, Garrett’s *Making and Breaking Codes*, and Trappe and Washington’s *Introduction to Cryptography with Coding Theory*), include chapters on more advanced topics, such as elliptic curves, lattice methods or quantum cryptography; this book does not. Also, the exercises in this book, though plentiful, do not call for the production of proofs. Instead, they involve computation or, on occasion, the production of a brief essay based on some outside reading. (Solutions to some, but not all, of the exercises, appear in an Appendix of about 35 pages.) Likewise, there are very few theorems that are formally stated as such in the text, and those that are, are accompanied not by formal proofs but by illustrative examples.

Several other distinctive features of the book should be explicitly mentioned. One, referred to in the title of the text, is the use of “Maplets”. These are essentially applets for Maple, and their use allows a student to make use of Maple without having to learn Maple syntax. These Maplets were produced using written Maple code, but since the authors produced them, the students don’t have to; they can just use the end product, which are windows into which they type information and click on buttons, thereby deriving the benefits of Maple without having to learn how to use it. These Maplets appear frequently throughout the book, but when they do, they appear in separate sections that are entirely independent of the rest of the book and, thus, can be skipped if an instructor does not want to use this technology. There are plenty of other worked out examples in the book that do not require anything more sophisticated than a calculator to follow.

Another noteworthy feature is a chapter discussing some historically interesting examples of ciphers from World War II: the Enigma machine and Navajo code. Following an unusually detailed multi-page description of how an Enigma machine worked (actually, two specific examples of Enigma machines are discussed) and the introduction of some background combinatorial principles, there is a section discussing the cryptanalysis of the Enigma; references are also given to both non-fictional and fictional works involving the machine, including the book *Enigma* by Robert Harris (and the subsequent movie of the same name based on it).

This is followed by a section on the Navajo code talkers used by the Americans in the Pacific during the war. These were Navajo servicemen who used their native language (described as “oral, very complex and virtually unknown to everyone outside the Navajo nation”) as a code. Because some words (like “Captain”) had no counterpart in the Navajo language, a literal English translation (“two silver bars”) was used instead; the Navajo code word for this is “besh-legai-nah-kih”. Because of these added phrases, as well as the fact that some uncommon words had to be translated a letter at a time using an encoded phonetic alphabet, the Navajo code consisted of approximately 800 words by the end of the war, and the code talkers had to know all these words by memory. (The Nicolas Cage movie *Windtalkers* is about the use of this code, and is mentioned briefly in an exercise in the text.) I can’t help but feel that many students would find this information very interesting.

The idea of writing a cryptography book for a non-major audience is not a new one; about ten years ago, for example, Thomas Barr wrote *An Invitation to Cryptology*, also intended for a general college audience. That book is still in print, according to the publisher’s webpage, and is in some ways comparable in tone and choice of topics to the Klima and Sigmon book, though there are some differences. The latter book appeared to me to be pitched at a somewhat higher level than Barr’s text, with topics developed in more depth. The use of Maplets is certainly another distinguishing feature, as is the detailed description of the Enigma machine (which is mentioned briefly, as part of a more general historical discussion, in the Barr text) and Navajo code talkers. In some ways, as well, the Barr text is starting to show its age. For example, it spends about ten pages discussing the Data Encryption Standard (DES), which was a U.S. Federal Information Processing Standard for encryption and was used extensively here in the United States and abroad, but which, after successful ways of attacking it were developed, was, at about the same time as the Barr text was being published, superseded by the Advanced Encryption Standard (AES), which is currently still in use and which is discussed at some length in this text.

This is a book that not only meets but exceeds its goal of being a suitable text for a course in cryptology for non-majors. It is highly recommended for anybody teaching such a course, and it certainly belongs in any good university library.

Mark Hunacek (mhunacek@iastate.edu) teaches mathematics at Iowa State University.

**Introduction to Cryptology**Basic Terminology

Cryptology in Practice

Why Study Cryptology?

**Substitution Ciphers **Keyword Substitution Ciphers

A Maplet for Substitution Ciphers

Cryptanalysis of Substitution Ciphers

A Maplet for Cryptanalysis of Substitution Ciphers

Playfair Ciphers

A Maplet for Playfair Ciphers

**Transposition Ciphers **Columnar Transposition Ciphers

A Maplet for Transposition Ciphers

Cryptanalysis of Transposition Ciphers

Maplets for Cryptanalysis of Transposition Ciphers

ADFGX and ADFGVX Ciphers

A Maplet for ADFGX and ADFGVX Ciphers

**The Enigma Machine and Navajo Code**The Enigma Cipher Machine

A Maplet for the Enigma Cipher Machine

Combinatorics

Cryptanalysis of the Enigma Cipher Machine

The Navajo Code

A Maplet for the Navajo Code

**Shift and Affine Ciphers **Modular Arithmetic

A Maplet for Modular Reduction

Shift Ciphers

A Maplet for Shift Ciphers

Cryptanalysis of Shift Ciphers

A Maplet for Cryptanalysis of Shift Ciphers

Affine Ciphers

A Maplet for Affine Ciphers

Cryptanalysis of Affine Ciphers

A Maplet for Cryptanalysis of Affine Ciphers

**Alberti and Vigenère Ciphers **Alberti Ciphers

A Maplet for Alberti Ciphers

Vigenère Ciphers

A Maplet for Vigenère Keyword Ciphers

Probability

The Friedman Test

A Maplet for the Friedman Test

The Kasiski Test

A Maplet for the Kasiski Test

Cryptanalysis of Vigenère Keyword Ciphers

A Maplet for Cryptanalysis of Vigenère Keyword Ciphers

**Hill Ciphers **Matrices

A Maplet for Matrix Multiplication

Hill Ciphers

A Maplet for Hill Ciphers

Cryptanalysis of Hill Ciphers

A Maplet for Cryptanalysis of Hill Ciphers

**RSA Ciphers **Introduction to Public-Key Ciphers

Introduction to RSA Ciphers

The Euclidean Algorithm

Maplets for the Euclidean Algorithm

Modular Exponentiation

A Maplet for Modular Exponentiation

ASCII

RSA Ciphers

Maplets for RSA Ciphers

Cryptanalysis of RSA Ciphers

A Maplet for Cryptanalysis of RSA Ciphers

Primality Testing

Integer Factorization

The RSA Factoring Challenges

**ElGamal Ciphers **The Diffie–Hellman Key Exchange

Maplets for the Diffie–Hellman Key Exchange

Discrete Logarithms

A Maplet for Discrete Logarithms

ElGamal Ciphers

Maplets for ElGamal Ciphers

Cryptanalysis of ElGamal Ciphers

A Maplet for Cryptanalysis of ElGamal Ciphers

**The Advanced Encryption Standard **Representations of Numbers

A Maplet for Base Conversions

Stream Ciphers

A Maplet for Stream Ciphers

AES Preliminaries

AES Encryption

AES Decryption

A Maplet for AES Ciphers

AES Security

**Message Authentication **RSA Signatures

Hash Functions

RSA Signatures with Hashing

Maplets for RSA Signatures

The Man-in-the-Middle Attack

A Maplet for the Man-in-the-Middle Attack

Public-Key Infrastructures

Maplets for X.509 Certificates

**Bibliography **

**Hints or Answers to Selected Exercises **

**Index**

- Log in to post comments