Cryptography, as done in this century, is heavily mathematical. But it also has roots in what is computationally feasible.
This unique textbook text balances the theorems of mathematics against the feasibility of computation. Cryptography is something one actually “does”, not a mathematical game one proves theorems about. There is deep math; there are some theorems that must be proved; and there is a need to recognize the brilliant work done by those who focus on theory. But at the level of an undergraduate course, the emphasis should be first on knowing and understanding the algorithms and how to implement them, and also to be aware that the algorithms must be implemented carefully to avoid the “easy” ways to break the cryptography. This text covers the algorithmic foundations and is complemented by core mathematics and arithmetic.