A Course in Number Theory and Cryptography by Neal I. Koblitz & Ann Hibner Koblitz