Chris Spackman's NeoCities Page

Cryptanalysis: Breaking Ciphers

The traditional cryptography pages show how to use ciphers — how to encrypt and decrypt messages. These pages show the other side: how to break them. This is cryptanalysis, and it is at least as old as the ciphers themselves.

The techniques here come from a long tradition of practical codebreaking. Parker Hitt's 1916 Manual for the Solution of Military Ciphers — the first American military cryptanalysis textbook — laid out many of these methods in clear, practical terms. William Friedman later formalized them mathematically. But the core idea is simple: every cipher leaks information, and a careful analyst can exploit those leaks.

The Attacker's Toolkit

Every attack starts with a question: what kind of cipher am I looking at? The answer determines which tools to use.

The Pages

  1. Breaking Substitution Ciphers — frequency analysis, pattern recognition, and an interactive solver where you build a letter mapping to decode the message one letter at a time.
  2. Breaking the Vigenère Cipher — a guided 5-step attack: detect the cipher type with the IC, find the key length with Kasiski, split into columns, break each column, and recover the plaintext.
  3. Breaking Transposition Ciphers — brute-force rail fence breaking and columnar transposition column-reordering using digraph frequency scoring.

Section Glossary — definitions of terms used on these pages.

How to Use These Pages

The best way to use these pages is alongside the cipher pages. Go to a cipher page, encrypt a message, then come back here and try to break it. When you see how the attack works against a cipher you understand, the techniques make much more sense.

Each page also has pre-loaded challenge texts if you just want to practice breaking things.

Hitt's Approach

Parker Hitt wrote his Manual for field officers who needed to break enemy messages quickly and correctly. He filled it with worked examples and practical advice. These pages follow that spirit: less theory, more doing. For the mathematical foundations, see the Friedman page.

Disclaimer: these pages are educational demos provided as-is, with no warranty of any kind. The author is not responsible for any consequences arising from their use.

Send comments and bug reports to chris@chrisspackman.com.

Version 0.1 — Last updated: 2026-02-26

This page is Copyright © 2025 – 2026 Chris Spackman <chris@chrisspackman.com>.
This web site developed entirely on GNU/Linux with Free / Open Source Software.

This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.

Creative Commons License