Why Frequency Analysis Breaks Substitution Ciphers
Every natural language has a statistical fingerprint. In English, the letter "E" appears in roughly 12.7% of all letters written, "T" around 9.1%, "A" around 8.2%, while "Z", "Q", and "X" barely register. A simple substitution cipher — where each plaintext letter is consistently replaced by one ciphertext letter — preserves this fingerprint perfectly. It just relabels it. Al-Kindi, a 9th-century Arab polymath, is credited with the earliest known description of this technique, and it remained the primary method for breaking substitution ciphers for over a thousand years, right up until modern computing made brute-force and statistical approaches vastly more powerful.
English Letter Frequencies (Approximate)
| Letter | Frequency | Letter | Frequency |
|---|---|---|---|
| E | 12.7% | D | 4.3% |
| T | 9.1% | L | 4.0% |
| A | 8.2% | C | 2.8% |
| O | 7.5% | U | 2.8% |
| I | 7.0% | M | 2.4% |
| N | 6.7% | W | 2.4% |
| S | 6.3% | F | 2.2% |
| H | 6.1% | G | 2.0% |
| R | 6.0% | Y | 2.0% |
What This Technique Can and Can't Break
Frequency analysis works because simple substitution is a one-to-one, static mapping — the same ciphertext letter always means the same plaintext letter, everywhere in the message. Polyalphabetic ciphers like Vigenère defeat basic frequency analysis by rotating through multiple substitution alphabets, which flattens the letter-frequency curve. Modern block and stream ciphers (AES, ChaCha20) don't operate on individual letters at all — they transform blocks of bits through mathematical operations designed specifically so that no statistical pattern survives from plaintext to ciphertext. This is exactly why frequency analysis is a museum-piece technique for modern cryptography, but it's also exactly why it's such a good teaching tool: it makes the core weakness of "simple" encryption viscerally obvious in a way that reading about it never quite does.
Want to test what you find here? Try the Cipher Identifier to guess which classical cipher produced a given ciphertext, or explore Classical Ciphers for hands-on encoding/decoding of Caesar, Vigenère, and others.
