The Zodiac ciphers occupy a unique place in the history of cryptography because they are not abstract puzzles or literary inventions.
They are directly connected to a real series of murders committed in Northern California in the late 1960s. The anonymous sender, who called himself the Zodiac, mailed several encrypted messages to newspapers, using the ciphers both to taunt the public and to assert responsibility for the killings.
Unlike most historical ciphers, these messages were part of an active criminal investigation. Their successful or unsuccessful decryption had immediate consequences: it influenced public fear, police strategy, and media coverage. For this reason, the Zodiac ciphers are studied not only as cryptographic artifacts, but also as documents situated at the intersection of mathematics, psychology, and criminal history.
The so-called Zodiac ciphers are a small set of encrypted messages sent by an unidentified serial killer,
known as the Zodiac, to newspapers in Northern California between 1969 and 1970.
By convention, each cipher is named after its length in symbols. Four main ciphers are generally attributed to the Zodiac:
The 408-character cipher (Called "Z408")
July 1969, ✅ SolvedThe 340-character cipher (Called "Z340")
November 1969, ✅ SolvedThe 13-character cipher (Called "Z13")
April 1970, ❌ UnsolvedThe 32-character cipher (Called "Z32")
June 1970, ❌ Unsolved
In this post, we'll look at the first one - Z408. In late July 1969, the Zodiac mailed three nearly identical cipher texts to different newspapers. Each letter contained one third of a 408-symbol message (137-symbols each) and a demand that the cipher be printed.
[[I2]] [[L1]] [[I1]] [[K1]] [[E2]] [[K1]] [[I3]] [[L2]] [[L1]] [[I4]] [[N1]] [[G1]] [[P1]] [[E1]] [[O1]] [[P1]] [[L2]]
[[E3]] [[B1]] [[E4]] [[C1]] [[A1]] [[U1]] [[S1]] [[E5]] [[I2]] [[T1]] [[I1]] [[S2]] [[S3]] [[O4]] [[M1]] [[U1]] [[C1]]
[[H2]] [[F2]] [[U1]] [[N2]] [[I3]] [[T2]] [[I4]] [[A4]] [[M1]] [[O3]] [[R1]] [[E6]] [[F1]] [[U1]] [[N3]] [[T3]] [[H1]]
[[A2]] [[N4]] [[K1]] [[I2]] [[L3]] [[L2]] [[I1]] [[N1]] [[G1]] [[W1]] [[I3]] [[L1]] [[D2]] [[G1]] [[A3]] [[M1]] [[E7]]
[[I4]] [[N2]] [[T4]] [[H2]] [[E2]] [[F2]] [[O2]] [[R2]] [[R3]] [[E1]] [[S1]] [[T1]] [[B1]] [[E3]] [[C1]] [[S4]] [[U1]]
[[S2]] [[E4]] [[M1]] [[A1]] [[N3]] [[I2]] [[S3]] [[T2]] [[H1]] [[E5]] [[M1]] [[O1]] [[S4]] [[T3]] [[D1]] [[A2]] [[N4]]
[[G1]] [[E6]] [[R1]] [[O4]] [[U1]] [[E7]] [[A3]] [[N1]] [[S4]] [[M1]] [[A1]] [[L2]] [[O3]] [[F1]] [[A2]] [[L3]] [[L2]]
[[T4]] [[O2]] [[K1]] [[I1]] [[L3]] [[L2]] [[S2]] [[O1]] [[M1]] [[E7]] [[T1]] [[H2]] [[I3]] [[N2]] [[G1]] [[G1]] [[I4]]
First part of Z408 send to Vallejo Times Herald
[[V1]] [[E2]] [[S3]] [[M1]] [[E1]] [[T2]] [[H1]] [[E3]] [[M1]] [[O4]] [[S4]] [[T3]] [[T4]] [[H2]] [[R2]] [[I2]] [[L3]]
[[L2]] [[I1]] [[N3]] [[G1]] [[E4]] [[X1]] [[P1]] [[E5]] [[R3]] [[E6]] [[N4]] [[C1]] [[E7]] [[I3]] [[T1]] [[I4]] [[S1]]
[[E2]] [[V1]] [[E1]] [[N1]] [[B1]] [[E3]] [[T2]] [[T3]] [[E4]] [[R1]] [[T4]] [[H1]] [[A3]] [[N2]] [[G1]] [[E5]] [[T1]]
[[T2]] [[I2]] [[N3]] [[G1]] [[Y1]] [[O3]] [[U1]] [[R2]] [[R3]] [[O2]] [[C1]] [[K1]] [[S2]] [[O1]] [[F2]] [[F1]] [[W1]]
[[I1]] [[T3]] [[H2]] [[S4]] [[G1]] [[I3]] [[R1]] [[L1]] [[T4]] [[H1]] [[E6]] [[B1]] [[E7]] [[S3]] [[T1]] [[P1]] [[A1]]
[[R2]] [[T2]] [[O4]] [[F2]] [[I4]] [[T3]] [[I2]] [[S4]] [[T4]] [[H2]] [[A3]] [[E6]] [[W1]] [[H1]] [[E2]] [[N4]] [[I1]]
[[D1]] [[I3]] [[E1]] [[I4]] [[W1]] [[I2]] [[L3]] [[L2]] [[B1]] [[E3]] [[R3]] [[E4]] [[B1]] [[O3]] [[R1]] [[N1]] [[I1]]
[[N2]] [[P1]] [[A2]] [[R2]] [[A3]] [[D2]] [[I3]] [[C1]] [[E5]] [[A4]] [[N3]] [[D1]] [[A1]] [[L1]] [[L1]] [[T2]] [[H2]]
Second part of Z408 send to San Francisco Examiner
[[E6]] [[I4]] [[H1]] [[A2]] [[V1]] [[E7]] [[K1]] [[I2]] [[L1]] [[L1]] [[E2]] [[D2]] [[W1]] [[I1]] [[L3]] [[L2]] [[B1]]
[[E1]] [[C1]] [[O1]] [[M1]] [[E3]] [[M1]] [[Y1]] [[S1]] [[L3]] [[S4]] [[V1]] [[E4]] [[S2]] [[I2]] [[W1]] [[I2]] [[L2]]
[[L1]] [[N1]] [[O3]] [[T3]] [[G1]] [[I3]] [[V1]] [[E4]] [[Y1]] [[O2]] [[U1]] [[M1]] [[Y1]] [[N2]] [[A2]] [[M1]] [[E3]]
[[B1]] [[E2]] [[C1]] [[A1]] [[U1]] [[S3]] [[E7]] [[Y1]] [[O3]] [[U1]] [[W1]] [[I2]] [[L1]] [[L3]] [[T4]] [[R1]] [[Y1]]
[[T1]] [[O4]] [[S1]] [[L2]] [[O1]] [[I2]] [[D1]] [[O1]] [[W1]] [[N3]] [[O2]] [[R3]] [[A4]] [[T4]] [[O4]] [[P1]] [[M1]]
[[Y1]] [[C1]] [[O2]] [[L3]] [[L3]] [[E5]] [[C1]] [[T3]] [[I1]] [[N1]] [[G1]] [[O1]] [[F1]] [[S1]] [[L1]] [[A1]] [[V1]]
[[E2]] [[S2]] [[F2]] [[O3]] [[R1]] [[M1]] [[Y1]] [[S4]] [[F2]] [[T2]] [[E4]] [[R2]] [[L2]] [[I1]] [[F1]] [[E3]] [[E5]]
[[B1]] [[E7]] [[O1]] [[R2]] [[I2]] [[E3]] [[T2]] [[E5]] [[M1]] [[E7]] [[T1]] [[H2]] [[H1]] [[P1]] [[I3]] [[T2]] [[I4]]
Third part of Z408 send to San Francisco Chronicle
Although the case itself belongs to criminal history, we have the ciphers become objects of long-term interest in cryptography, codebreaking, and recreational mathematics.
Short Statistics
If you look at the cipher and count the number of different symbols you get the number 54.
[[E2]] [[E3]] [[E4]] [[E5]] [[E6]] [[E7]] [[F1]] [[F2]] [[G1]]
[[H1]] [[H2]] [[I1]] [[I2]] [[I3]] [[I4]] [[K1]] [[L1]] [[L2]]
[[L3]] [[M1]] [[N1]] [[N2]] [[N3]] [[N4]] [[O1]] [[O2]] [[O3]]
[[O4]] [[P1]] [[R1]] [[R2]] [[R3]] [[S1]] [[S2]] [[S3]] [[S4]]
[[T1]] [[T2]] [[T3]] [[T4]] [[U1]] [[V1]] [[W1]] [[X1]] [[Y1]]
So clearly it is not a monoalphabetic substitution cipher, since in that case there would only be 26 symbols. It is a homophonic substitution cipher. This means that one plaintext letter is mapped to a set of ciphertext letters. Homophonic substitution is like giving the letter 'E' seven different disguises, making frequency analysis more difficult.
Don't confuse this with a Vigenère cipher. A Vigenère cipher is a type of homophonic cipher involving position-dependent substitution, but not all homophonic ciphers are Vigenère ciphers. A homophonic cipher is much more flexible. The size of the set of cipher symbols associated with one plaintext character depends on its frequency – the more frequent the character appears in a language such as English, for example, the larger the set gets. This flattens the frequency distribution and neglects known attacks. You will see what this actually looks like later.
If you look at all the symbols involved, you cannot know at first glance if those symbols cover the whole alphabet. Even though the cipher contains 408 symbols, some letters in the plaintext may not be represented.
Below you can see the frequencies of each cipher symbol.
[[E2]] = 08; [[E3]] = 09; [[E4]] = 08; [[E5]] = 08; [[E6]] = 06; [[E7]] = 09; [[F1]] = 05; [[F2]] = 06; [[G1]] = 12
[[H1]] = 08; [[H2]] = 08; [[I1]] = 11; [[I2]] = 14; [[I3]] = 10; [[I4]] = 09; [[K1]] = 06; [[L1]] = 11; [[L2]] = 12
[[L3]] = 10; [[M1]] = 16; [[N1]] = 07; [[N2]] = 06; [[N3]] = 06; [[N4]] = 04; [[O1]] = 09; [[O2]] = 06; [[O3]] = 07
[[O4]] = 06; [[P1]] = 07; [[R1]] = 07; [[R2]] = 07; [[R3]] = 05; [[S1]] = 06; [[S2]] = 06; [[S3]] = 05; [[S4]] = 08
[[T1]] = 08; [[T2]] = 10; [[T3]] = 08; [[T4]] = 08; [[U1]] = 10; [[V1]] = 08; [[W1]] = 08; [[X1]] = 01; [[Y1]] = 08
If you just number from 1 to 54 and plot it, you get the diagram on the right. If you look at the ciphersymbol bigrams you find that the bigrams that occur each at least three times are:
[[L2]] [[I1]] = 3; [[I2]] [[L3]] = 3; [[O3]] [[R1]] = 3; [[N1]] [[G1]] = 3; [[I2]] [[L1]] = 3;
Decryption, Cipheralphabet and Mistakes
The decryption is known since many years and Z408 has been solved by the two schoolteachers Donald Gene Harden and Bettye June Harden on August 8th 1969. I will not give a tutorial about how to decrypt it, since there are many out there.
ILIKEKILLINGPEOPL [[I2]] [[L1]] [[I1]] [[K1]] [[E2]] [[K1]] [[I3]] [[L2]] [[L1]] [[I4]] [[N1]] [[G1]] [[P1]] [[E1]] [[O1]] [[P1]] [[L2]] EBECAUSEITISSOMUC [[E3]] [[B1]] [[E4]] [[C1]] [[A1]] [[U1]] [[S1]] [[E5]] [[I2]] [[T1]] [[I1]] [[S2]] [[S3]] [[O4]] [[M1]] [[U1]] [[C1]] HFUNITISMOREFUNTH [[H2]] [[F2]] [[U1]] [[N2]] [[I3]] [[T2]] [[I4]] [[A4]] [[M1]] [[O3]] [[R1]] [[E6]] [[F1]] [[U1]] [[N3]] [[T3]] [[H1]] ANKILLINGWILDGAME [[A2]] [[N4]] [[K1]] [[I2]] [[L3]] [[L2]] [[I1]] [[N1]] [[G1]] [[W1]] [[I3]] [[L1]] [[D2]] [[G1]] [[A3]] [[M1]] [[E7]] INTHEFORRESTBECAU [[I4]] [[N2]] [[T4]] [[H2]] [[E2]] [[F2]] [[O2]] [[R2]] [[R3]] [[E1]] [[S1]] [[T1]] [[B1]] [[E3]] [[C1]] [[S4]] [[U1]] SEMANISTHEMOSTDAN [[S2]] [[E4]] [[M1]] [[A1]] [[N3]] [[I2]] [[S3]] [[T2]] [[H1]] [[E5]] [[M1]] [[O1]] [[S4]] [[T3]] [[D1]] [[A2]] [[N4]] GEROUSANIMALOFALL [[G1]] [[E6]] [[R1]] [[O4]] [[U1]] [[E7]] [[A3]] [[N1]] [[S4]] [[M1]] [[A1]] [[L2]] [[O3]] [[F1]] [[A2]] [[L3]] [[L2]] TOKILLSOMETHINGGI [[T4]] [[O2]] [[K1]] [[I1]] [[L3]] [[L2]] [[S2]] [[O1]] [[M1]] [[E7]] [[T1]] [[H2]] [[I3]] [[N2]] [[G1]] [[G1]] [[I4]]
VESMETHEMOSTTHRIL [[V1]] [[E2]] [[S3]] [[M1]] [[E1]] [[T2]] [[H1]] [[E3]] [[M1]] [[O4]] [[S4]] [[T3]] [[T4]] [[H2]] [[R2]] [[I2]] [[L3]] LINGEXPERENCEITIS [[L2]] [[I1]] [[N3]] [[G1]] [[E4]] [[X1]] [[P1]] [[E5]] [[R3]] [[E6]] [[N4]] [[C1]] [[E7]] [[I3]] [[T1]] [[I4]] [[S1]] EVENBETTERTHENGET [[E2]] [[V1]] [[E1]] [[N1]] [[B1]] [[E3]] [[T2]] [[T3]] [[E4]] [[R1]] [[T4]] [[H1]] [[A3]] [[N2]] [[G1]] [[E5]] [[T1]] TINGYOURROCKSOFFW [[T2]] [[I2]] [[N3]] [[G1]] [[Y1]] [[O3]] [[U1]] [[R2]] [[R3]] [[O2]] [[C1]] [[K1]] [[S2]] [[O1]] [[F2]] [[F1]] [[W1]] ITHAGIRLTHEBESTPA [[I1]] [[T3]] [[H2]] [[S4]] [[G1]] [[I3]] [[R1]] [[L1]] [[T4]] [[H1]] [[E6]] [[B1]] [[E7]] [[S3]] [[T1]] [[P1]] [[A1]] RTOFITISTHATWHENI [[R2]] [[T2]] [[O4]] [[F2]] [[I4]] [[T3]] [[I2]] [[S4]] [[T4]] [[H2]] [[A3]] [[E6]] [[W1]] [[H1]] [[E2]] [[N4]] [[I1]] DIEIWILLBEREBORNI [[D1]] [[I3]] [[E1]] [[I4]] [[W1]] [[I2]] [[L3]] [[L2]] [[B1]] [[E3]] [[R3]] [[E4]] [[B1]] [[O3]] [[R1]] [[N1]] [[I1]] NPARADICEANDALLTH [[N2]] [[P1]] [[A2]] [[R2]] [[A3]] [[D2]] [[I3]] [[C1]] [[E5]] [[A4]] [[N3]] [[D1]] [[A1]] [[L1]] [[L1]] [[T2]] [[H2]]
EIHAVEKILLEDWILLB [[E6]] [[I4]] [[H1]] [[A2]] [[V1]] [[E7]] [[K1]] [[I2]] [[L1]] [[L1]] [[E2]] [[D2]] [[W1]] [[I1]] [[L3]] [[L2]] [[B1]] ECOMEMYSLAVESIWIL [[E1]] [[C1]] [[O1]] [[M1]] [[E3]] [[M1]] [[Y1]] [[S1]] [[L3]] [[S4]] [[V1]] [[E4]] [[S2]] [[I2]] [[W1]] [[I2]] [[L2]] ECOMEMYSLAVESIWIL [[L1]] [[N1]] [[O3]] [[T3]] [[G1]] [[I3]] [[V1]] [[E4]] [[Y1]] [[O2]] [[U1]] [[M1]] [[Y1]] [[N2]] [[A2]] [[M1]] [[E3]] BECAUSEYOUWILLTRY [[B1]] [[E2]] [[C1]] [[A1]] [[U1]] [[S3]] [[E7]] [[Y1]] [[O3]] [[U1]] [[W1]] [[I2]] [[L1]] [[L3]] [[T4]] [[R1]] [[Y1]] TOSLOWDOWNORSTOPM [[T1]] [[O4]] [[S1]] [[L2]] [[O1]] [[I2]] [[D1]] [[O1]] [[W1]] [[N3]] [[O2]] [[R3]] [[A4]] [[T4]] [[O4]] [[P1]] [[M1]] YCOLLECTINGOFSLAV [[Y1]] [[C1]] [[O2]] [[L3]] [[L3]] [[E5]] [[C1]] [[T3]] [[I1]] [[N1]] [[G1]] [[O1]] [[F1]] [[S1]] [[L1]] [[A1]] [[V1]] ESFORMYAFTERLIFEE [[E2]] [[S2]] [[F2]] [[O3]] [[R1]] [[M1]] [[Y1]] [[S4]] [[F2]] [[T2]] [[E4]] [[R2]] [[L2]] [[I1]] [[F1]] [[E3]] [[E5]] BEORIETEMETHHPITI [[B1]] [[E7]] [[O1]] [[R2]] [[I2]] [[E3]] [[T2]] [[E5]] [[M1]] [[E7]] [[T1]] [[H2]] [[H1]] [[P1]] [[I3]] [[T2]] [[I4]]
Again, more easy to read:
There is an extra letter 'r' in "forrest" and he left out the letter 'i' in "experence".
To build the cipheralphabet we just take every ciphersymbol and look to what plaintext letter it maps.
A: [[A1]] [[A2]] [[A3]] [[S4]] B: [[B1]] C: [[C1]] D: [[D1]] E: [[E1]] [[E2]] [[E3]] [[E4]] [[E5]] [[E6]] [[E7]] F: [[F1]] [[F2]] G: [[G1]] H: [[H1]] [[H2]] I: [[I1]] [[I2]] [[I3]] [[I4]] J: K: [[K1]] L: [[L1]] [[L2]] [[L3]] M: [[M1]] N: [[N1]] [[N2]] [[N3]] [[N4]] O: [[O1]] [[O2]] [[O3]] [[O4]] P: [[P1]] Q: S: [[S1]] [[S2]] [[S3]] [[A4]] T: [[T1]] [[T2]] [[T3]] [[T4]] U: [[U1]] V: [[V1]] W: [[W1]] X: [[X1]] Y: [[Y1]] Z:
There are some inconsistencies. For example the ciphersymbol [[S4]] is sometimes decrypted to an 'A', to an 'S' and even once to a 'I'.
The last 18 characters
The last eighteen characters of Z408 do not decrypt to readable english.
A lot of classic ciphers end with a signature, a taunt, or nulls (padding) rather than meaningful text. In this case perhaps he ran out of message and needed to fill the grid such that each message contains the same number of ciphersymbols. The end of Z408 is exactly where Zodiac could ensure that nobody gets a perfect solve, which fits the personality profile of someone who wanted attention and control. “Almost solvable” is a classic trolling pattern and the people keep speculating about this mysterious ending.
The cipher alphabet - Why this?
A real breakthrough would be to find a deterministic rule behind the cipher alphabet — not just a mapping, but the method used to produce it. If the Zodiac followed a repeatable construction procedure (a diagram, a keyword table, a book cipher fragment, a stencil, etc.), then the same procedure could constrain the search space for Z13 and Z32, where brute-force approaches explode combinatorially. If we can reverse-engineer how the symbol sets were assigned — not merely what they decrypt to — then the remaining unsolved ciphers stop being isolated mysteries and become test cases of a single underlying design. Until then, every proposed solution for Z13 or Z32 floats untethered: plausible on the surface, but impossible to validate.

Comments
Post a Comment