There are excellent technical treatises on cryptography, along with a number of popular books.
In this book I am trying to ﬁnd a middle ground, a “gentle” introduction to selected topics in
cryptography without avoiding the mathematics. The material is aimed at undergraduate computer science students, but I hope it will be accessible and of interest to many others. The idea
is to cover a limited number of topics carefully, with clear explanations, sample calculations,
and illustrative Java implementations.