*Cracking Codes with Python* teaches complete beginners how to program in the Python programming language. The book features the source code to several ciphers and hacking programs for these ciphers. The programs include the Caesar cipher, transposition cipher, simple substitution cipher, multiplicative & affine ciphers, Vigenere cipher, and hacking programs for each of these ciphers. The final chapters cover the modern RSA cipher and public key cryptography.

Cracking Codes with Python is the 2nd edition of the previously-titled book, Hacking Secret Ciphers with Python.

- Introduction
- Chapter 1 - Making Paper Cryptography Tools
- Chapter 2 -Programming in the Interactive Shell
- Chapter 3 - Strings and Writing Programs
- Chapter 4 - The Reverse Cipher
- Chapter 5 - The Caesar Cipher
- Chapter 6 - Hacking the Caesar Cipher with Brute-Force
- Chapter 7 - Encrypting with the Transposition Cipher
- Chapter 8 - Decrypting with the Transposition Cipher
- Chapter 9 - Programming a Program to Test Your Program
- Chapter 10 - Encrypting and Decrypting Files
- Chapter 11 - Detecting English Programmatically
- Chapter 12 - Hacking the Transposition Cipher
- Chapter 13 - A Modular Arithmetic Module for the Affine Cipher
- Chapter 14 - Programming the Affine Cipher
- Chapter 15 - Hacking the Affine Cipher
- Chapter 16 - Programming the Simple Substitution Cipher
- Chapter 17 - Hacking the Simple Substitution Cipher
- Chapter 18 - Programming the Vigenere Cipher
- Chapter 19 - Frequency Analysis
- Chapter 20 - Hacking the Vigenere Cipher
- Chapter 21 - The One-Time Pad Cipher
- Chapter 22 - Finding and Generating Prime Numbers
- Chapter 23 - Generating Keys for the Public Key Cipher
- Chapter 24 - Programming the Public Key Cipher