After examining the history of cryptography—code making—we combine ideas from the theory of prime numbers and modular arithmetic to develop an extremely important application: "public" key cryptography.