Abstract: This undergraduate textbook presents a fascinating review of cryptography and cryptanalysis across history, providing engaging examples illustrating the use of cryptographic algorithms in different historical periods, and the various methods used for breaking such secret messages.