Crypto 101 is an introductory course on cryptography intended to help programmers understand encryption in order to write better code. It is currently available in a DRM-free PDF with EPUB and Mobi also listed on the website. Crypto 101 uses Python for exercises which can run on OS X, Windows, and Linux.
The book is available now in its pre-release form with a Creative Commons – Attribution-Noncommercial license. It is being written as an open-source project using github. The 252 page book, written by Laurens Van Houtven, is almost entirely complete at this point. It stems from an extension of a presentation given at PyCon 2013.
The book covers SSL/TLS, ciphers, hashing, public key encryption, and many other common systems. The book has the goal of bringing the concepts to an application level.
This book hopes to be a bridge: to teach everyday programmers from any field or specialization to understand just enough cryptography to do their jobs, or maybe just satisfy their appetite.
The book is available for download from https://www.crypto101.io/ or you can see the project on Github.