The 408-symbol-long Zodiac Killer cipher (‘Z408’) was cracked by Donald and Bettye Harden in 1969 while the next 340-symbol-long Zodiac Killer cipher (‘Z340’) arrived not long after: ever since then, there has been a widespread presumption among researchers that the later cipher would just be a more complicated version of the earlier cipher (e.g. perhaps transposed in some way).

The Z340 certainly resembles Z408, insofar as the cipher shapes employed in both were very similar, and that certainly lends support to the widely-held presumption that Z340 uses the same kind of ‘pure’ homophonic cipher system. But is that the whole story? Personally, I’m not so sure…

Unusual Aspects of the Z340

It has long been pointed out that the Z340 cipher sports a number of idiosyncratic features that are not present in the earlier Z408 cipher. For example, the FBI’s Dan Olson pointed out a few years ago that:

* Statistical tests indicate a higher level of randomness by row, than by column. This indicates that the cipher is written horizontally and rules out any transposition patterns that are not strictly horizontal.

* Lines 1-3 and 11-13 contain a distinct higher level of randomness than lines 4-6 and 14-16. This appears to be intentional and indicates that lines 1-3 and 11-13 contain valid ciphertext whereas lines 4-6 and 14-16 may be fake.

* Because of the vertical symmetry of the statistical observations, the message may have been written, then split into two equal size parts and placed top over bottom.

These suggest that something odd might be going on though inside the cipher: in this respect, the Z340 cipher resembles the Voynich Manuscript’s frustrating ‘Voynichese’, which looks straightforward on the surface but which turns out to have many behavioural features which are not seen in other known ciphers.

I’d also add that row #10 starts and ends with ‘-‘, which looks somewhat artificial – though it could just be random, it may also have some kind of meta-significance for the interpretation of the overall cryptogram (e.g. “CUT HERE”).

Finally, I’d add that Z340’s final (20th) line looks very much as if it contains a mangled ZODIAK signature, which – if correct – would probably make sense as 50% crypto padding, and 50% flipping the bird at the FBI. 😉

Anyway, given that the message contains 20 lines of 17 symbols (20 x 17 = 340) and we can see similar artefacts in rows 1-3 and 11-13, then it seems likely to me that there was some kind of major coding break after row #10.

Consequently, I’ve long wondered whether the two halves of Z340 (let’s call them ‘Z170-A’ and ‘Z170-B’) used a different set of cipher-symbol-to-plaintext-letter assignments to each other: in which case, the sensible way to make progress would be to try to solve each half separately. Even so, we would still need to eke out some additional assistance (or meta-assistance) from the texts to make progress, because the odds are so heavily stacked against us.

Yet there’s another feature of the Z340 cipher which struck me a while back but which I haven’t got round to blogging about until now. It’s all to do with doubled shapes, and the story starts with the Z408 ciphertext…

Z408’s doubled letters

To construct Z408, the Zodiac Killer used 7 shapes for { E }, 4 shapes each for { T, A, O, I, N, S }, 3 shapes each for { R, L }, 2 shapes each for { D, F, H }, and 1 shape each for the rest (probably): this yields a grand total of 54-ish cipher shapes to encipher 26 plaintext letters.

Given that the instance count curve for the English alphabet is often described as “ETAOINSHRDLU…”, this tiered arrangement makes sense (as I recall, various researchers have tried to use the homophone allocation to infer which popular cryptography manual the Zodiac Killer specifically relied upon, but I don’t remember if there was a definitive answer to that question).

However, one particular letter caused him a lot of practical problems for Z408: the letter L. Even though this has a relatively small frequency count (compared to, say, the letter E), the particular text he enciphered included numerous ‘LL’ pairs. That is kind of what you get if you want to say the word ‘KILL’ all the time: the words with a double-L are KILLING, KILLING, ALL, KILL, THRILLING, WILL, ALL, KILLED, WILL, WILL, WILL, and COLLECTING.

(As an aside, I’ve often wondered whether the multiple repetitions of the word “WILL” might possibly imply that the Zodiac Killer’s first name was indeed “WILL” / William. The subconscious is a funny ‘wild animal’ in that way.)

Anyway, as a direct result of this, the letter L is used here more often than its normal English stats would suggest: and so the Zodiac Killer had to encipher ‘LL’ 12 times with only three shapes in its tier. To avoid pattern repetitions, he ended up doubling up the enciphered L-shapes a few times, and so the final Z408 ciphertext included a number of doubled L shapes.

The only other doubled letter was ‘G’, which only had a single shape allocated to it, and which appeared doubled only once.

Z340’s Problem With ‘+’

If Z340 (which uses 63 distinct shapes) uses a similar kind of homophonic cipher to the one used in the Z408 cipher (which uses 54 distinct shapes), then I would say it has a very specific problem with whatever is being enciphered by the shape ‘+’.

‘+’ occurs 24 times (7% of the total number of characters, and exactly double that of ‘B’, the second most frequent shape), which by itself largely makes a nonsense of the suggestion that Z340 is a homophonic cipher: anything with that high a frequency count should surely have a whole set of homophones to represent it.

You might wonder whther ‘+’ enciphers a frequent word or syllable, such as ‘THE’ or ‘ING’. However, it appears three times immediately doubled with itself, i.e. ‘++’ (the only other letter that appears doubled is the sequence ‘pp’ that occurs once near the start of row #4).

Even if, as Dave Oranchak did, you do a brute force search for homophone cycles (don’t get me started on what they are, or we’ll be here all night), you don’t find anything that accounts for Z340’s ‘+’ shape.

And yet, as Dave Oranchak points out, Z340 has some strong-looking homophone cycles, such as [l*M] [l*M] [l*M] lM [l*M] [l*M] [l*M], which would seem to imply that Z340 is at heart a homophonic cipher. There are plenty of other measures (many noted by my late friend Glen Claston) that point in the same direction,

Moreover, because the number of shapes used is greater than for the Z408 cipher, you would naturally expect to see more tiers or wider tiers (though 7 shapes for E was already quite a wide tier). So you would naturally expect to see a consequent flattening of the statistics. And yet ‘+’ bucks that trend completely.

How Can We Reconcile These Two?

As a starting point, you might note that ‘M+’ occurs three times in the top half, but not at all in the bottom half. In fact, M is always followed by + in the top half, and never followed by + in the bottom half (where it occurs four times).

It seems to me that the ‘+’ shape makes the top half (Z170-A) easy and the bottom half (Z-170-B) difficult all at the same time. And that’s not something that I personally can comfortably reconcile with the kind of one-size-fits-all pure homophonic solutions most people seem to be looking for, even with confounding transposition stages thrown in: the behaviour of the ‘M+’ pattern would seem to point away from almost all of the transposition variants previously proposed.

Having really, really thought about it, my tentative conclusion is that ‘+’ seems to operate more as a kind of meta-token rather than as a pure token. I mean this in the same general way that certain Voynichese letters seem to me to encipher 15th century shorthand tokens (‘contractio’, etc).

A Suggestion

As I recall, the Hardens found their crib by guessing that the first letter was “I” and then looking for the word “KILL”: the ease of which doubtless made an already angry psychopath even angrier than he already was.

Hence to my mind, the thing he would most likely have been looking to solve when moving from his Z408 cipher system to his Z340 cipher system was how to make that new system impervious to that specific kind of an attack. And the key letter that let him down first time round was the letter ‘L’, specifically in its doubled form.

Consequently, I propose that this was the single technical challenge that spurred the internal changes from Z408 to Z340. And there was one obvious – but admittedly very old-fashioned – trick that he could have used to make doubled letters harder to see.

So here’s my suggestion. Could it be that the Zodiac Killer used ‘+’ as a meta-token to mean “REPEAT THE LAST LETTER“? (‘++’ would then mean a tripled letter, or perhaps something else entirely).

If that’s correct, I would further expect that ‘M’ was one of the homophones for ‘L’, and the [l*M] cycle could very well have been the 3-long homophone loop for ‘L’.

Do you really believe that the Zodiac could write a taunting message to the police without using the four-letter sequence “KILL”? In many ways, that was kind of the whole point.

24 thoughts on “The Z340 Cipher, a dissenting opinion…

  1. ponky on June 15, 2015 at 2:39 pm said:

    This post and the previous have been very good, thanks a lot for providing some great cipher content.

    Is there any reason you think it would have been a repeat character rather than just a null? I don’t know if the Zodiac would have taken direct measures to counteract the specific decryption technique rather than just making the cipher more complicated, and the classic way to do that is with nulls. To me, Zodiac always seemed well-informed rather than smart. I feel if he wanted to disguise his double Ls, he would have just misspelled the words with a single L or avoided the words altogether.

    If + is a repeat code, then my bet for one of the double + instances would be ‘kill lots’.

  2. Lots of interesting stuff to think about!

    Nick, have you been tracking the progress here:

    “Smokie” and “Jarlve” there have been exploring the idea that “+” may have been introduced as a wildcard symbol designed to interrupt the regularity of the cyclic assignment of symbols representing the same plaintext letter. They are running a lot of experiments to try to confirm or reject the hypothesis.

  3. Carmen on June 15, 2015 at 8:55 pm said:

    Hi, Nick. Just a question… have you read the guide by Ryan Garlick “How to know that you haven’t solved the Zodiac-340 cipher”?

    I’d like to mention what he says about seeing words that are not there. For example, almost at the end we see “boy”, then we can figure out the word “dog” or “god”. Sorry I don’t remember the line number.
    It’s clearly a case of pareidolia, as he says. Don’t you think that it could be the case of the word “Zodiak” you mentioned in this post?
    Thank you.

  4. David O: no, I wasn’t aware of that thread at all – but it’s always nice to know when you’re tapping into something a bit zeitgeisty. 🙂

    As to the general issue of whether ‘+’ might be some kind of disruptive null: I originally considered that a fairly likely explanation, but the three repetitions of ‘M+’ in the top half of the Z340 convinced me otherwise. But no doubt you’ll form your own opinion on this before too long. 😉

    Overall, I’m basically convinced that the Zodiac Killer would have felt utterly cheated if he hadn’t been able to use the words KILL and WILL; and I’m pretty sure that if not actually a repeat-the-last-letter meta-token, then ‘+’ is something remarkably similar. 🙂

  5. ponky: as I mentioned to David O in a comment here just now, I think the structuredness of the ‘M+’ repetitions in the top half is a bit of a giveaway that something a little unusual is going on with ‘+’, and very probably something rather non-homophonic and semantic. Hence I don’t currently see ‘+’ as a null; but given that everything to do with the Z340 is a bit of a fluid area, I reserve my inalienable human right to change my mind. 😉

  6. Carmen: it’s a good question (and yes, I’ve read Garlick’s guide). I’m certainly neither the first nor last to comment on the ZODAIK fragment: but I think that the presence of the “Zodiac Killer” signature symbol followed immediately by “ZO[solid delta]AIK” in the bottom right line (the area of ciphertexts that is most often filled with padding) is fairly unlikely to be cryptographically part of the ciphertext itself. It’s not a slam-dunk argument, of course: but still, I’d be more wary about a theory that claimed to be able to read that section than a theory that consciously bracketed it out.

    As a close parallel, more virtual ink has been spilled about the mysterious last few plaintext letters of the Z408 cipher than just about any other single cipher-related technical issue I can think of. And I would agree that pretty much all of that is nothing more than pareidolia. 🙁

  7. I’m currently trying to build a more systematic way to confirm/reject hypotheses by generating test ciphers, since there are so many interesting ideas about the 340’s construction, but no really strong ways to whittle them down.

  8. Dennis S. on June 16, 2015 at 11:22 pm said:

    Hi Nick! Your post here made me wonder what comparing horizontal with vertical randomness in the VMs would tell us, and likewise what looking for homophobe repetition cycles would say.

    How might that help us with the well-known and well-tested “line-as-a-functional-unit” property of the VMs?

    My most recent hypothesis has been that the VMs system is some combination of the substitution and transposition ciphers known in the early XVth century; that might explain the system’s bizarre properties.

  9. Dennis: the only reason we can compare horizontal and vertical properties of the Z340 and Z408 is that they were very plainly written on a grid – we have no such luck lining lines up on the VMs, except the very first character (which, of course, offers the possibility of vertical Neal keys 🙂 ).

    The problem with dealing with transposition ciphers known in the early XVth century is that we have (as far as I know) no more than a paragraph or two extolling their virtues in Alberti (that I quoted in The Curse of the Voynich) but no details (because Alberti thought his own cipher wheel far superior); and a few scrambled words in Filarete and Leonardo (using a kind of Florentine syllable transposition cipher). If you find any reference to anything else at all to do with XVth century transposition cryptography, please let me know!

  10. Charlene on July 2, 2015 at 7:17 pm said:

    June 16, 2015: “since there are so many interesting ideas about the 340’s construction . . . .”

    June 22, 2015: “Most ‘solutions’ I’ve seen amount to little more than creative art projects . . . .”

    But no possibility for any overlap there beyond your vagueness and generalizing… correct, dohranchak?

  11. Could the Zodiac be of German heritage? Clearly an American born person, but seems to be a historian, makes reference to music, and history, and studying german ciphers, I stumbled across this, and noted similar randomness and spacing.

  12. My german friend worked on 340 for over 2 years.
    Ig teg Ton..Thats what he have deciphered. Sadly, he is now 89 and not in good mental health, but was quite a code breaker in his day.
    Ig= until, till, up to. Used to form the terminative case. It can refer to both time and place. It is used by both back and front vowel words.
    Teg A sheep in its second year
    Ton, measure of weight or count. We know how Zodiac was obsessed with counting victims. What does Igtegton mean? Anagram, hidden code? Crazy.

  13. bdid1dr on July 20, 2015 at 9:59 pm said:

    Nick: One ‘+’ = cross Two ‘+’ = double cross (?)

    “cross the line” (?) ‘cross off ‘ (?)

    You might try to see if there might be elements of Morse Code within the Z-code. Or a version of ‘Noughts & Crosses’ (?)

  14. sirius black on July 22, 2015 at 12:33 am said:

    i read the solution somewhere,

    zodiac actually GAVE the solution to the police, but they never figured it out:

    note how it says “paradice” and “slaves”?

    now read the solution to z408, notably this: and this:

    it even contains the same spelling error (paradice)

    the +-es serve as a “grille” cipher, basically meaning they act like holes in a board through which you can see the letters on the z408 cipher, you align parts 2 and 3 of the z408 cipher as shown in the postcard, and the message “I let my eyes forget her sin RH” shows up (with some extra work, as described here:

  15. bdid1dr on August 1, 2015 at 5:43 pm said:

    Nick & friends:
    When the San Francisco Police Detective died before he could solve the mystery of the “Zodiac” killings, his files were transferred to the California State Police Bureau of Criminal Investigations.
    Since quite a long retention period may have finally passed, you may be able to get more information from that agency.
    Another name which may be in the Bureau’s file is Kenny Burns . (The Zodiac files mention the possibility that the ZK may have had an accomplice. Because the first murder scene had multiple motorcycle tracks and skidmarks — indicating at least two motorcycles making those tracks).

  16. Dan Olson pointed out that there is a higher level of randomness by column, than by row in both the 340 and 408.

    1. That this indicates homophonic substitution.
    2. That this also indicates that the cipher is written horizontally and rules out any transposition patterns that are not strictly horizontal.

    Point 1 is correct, but more specifically it indicates sequential homophonic substitution. Where the homophones per letter are picked in a regular order instead of randomly. This causes symbols to spread more evenly throughout the cipher, which in turn increases the chance of rows having no repeating symbols.

    Point 2 is not entirely correct. It only indicates that the plaintext was encoded horizontally but does not tell much what happened to it prior.

    A better way to look at what might be going on with the plaintext in a homophonic substitution cipher – that has a reasonable unique symbol count to cipher length ratio – is by repeated bigram statistics. Which is a well known weakness of substitution.

    The 408 (17 by 20 sample) has 46 bigram repeats in the horizontal direction and only 17 when read in by columns. The 340 has 25 bigram repeats in the horizontal direction and 23 when read in by columns. In the 340 bigram repeats in the horizontal direction are not much higher than what is expected on average (if the positions of its characters would be randomized over and over again). This would then indicate that there is not much sign of a horizontal plaintext sitting beneath the 340.

    Furthermore, it can be noted that when considering bigram repeats at higher periods, there is a peak of 37 repeats at period 19 and a peak of 41 repeats at period 15 (after mirroring the 340). The 41 repeats observation is very rare. It only happens about 1 in 2.000.000 times with randomizations of the cipher. This is a very strong lead towards non-horizontal transposition and thus contrary to what Dan Olson has previously stated.

  17. Jarlve: I think Olson is basically correct, but not necessarily in a helpful (or, rather, ‘non-misleadingful’) way. It suggests that we should be looking for a cipher that is essentially horizontal rather than essentially vertical: while the presence of many symbols suggests a homophonic cipher. But… beyond that very limited inference, his crystal ball should stay cloudy.

    The problem with stats such as bigram repeats at higher periods is that you have to be extremely careful you don’t note a small (random) peak in a sea of noise and conclude that this definitely points to the presence of something big: the history of research into the Zodiac Killer Ciphers is so far largely a history of the study of small random peaks leading nowhere.

    Really, the big issue is one of something far more systematic: my inference is that the Zodiac Killer wasn’t some kind of cryptographic genius, but was rather simply a psychopath who created homebrewed ciphers that were close enough to unbreakable given only a single message to stay out of our reach.

    Re-reading this post, I stand by my conclusions – that + might well be a ‘doubled-letter’ token for half of the Z340, etc. There’s something else going on here that ZKdecrypto really isn’t expecting…

  18. Jarlve on January 1, 2016 at 12:58 pm said:

    Hey Nick (happy newyear),

    The point that I want to get across is that Dan Olson measured the encoding properties of sequential homophonic substitution which do indeed show a strong bias towards the plaintext being encoded horizontally.

    But that this does not tell us much to what could have happened to the plaintext before it was encoded. Bigram repeats are typically less disturbed by any possible direction of encoding.

    And that therefor his statement –

    2. That this also indicates that the cipher is written horizontally and rules out any transposition patterns that are not strictly horizontal.

    – is wrong and should read: this indicates that the cipher is encoded horizontally and does NOT rule out any transposition patterns applied to the plaintext prior. I don’t want to get on anyone’s bad side but it’s misleading to people who are interested in solving the 340.

    The 41 repeats at period 15 with the 340 (mirrored) doesn’t look like a small random peak to me as it occurs only once in 2 million randomizations. It’s possibly the strongest statistical observation that we have for the 340. That being said it’s not my objective to push people into this direction but more so to spread awareness (to plant a seed). It’s an interesting new avenue to consider.

    That being said the “+” symbol is indeed a strange one. Sequential analysis of the homophones shows that its involvement is minimal but given its frequency that may not be abnormal. At morf13’s site we have pondered that it may be a 1:1 substitute or a wildcard or polyalphabetic symbol and your meta symbol hypothesis is another good consideration.

    But if viewing the cipher as having a horizontal predominantly English plaintext. Such a single interruptive symbol is hard to imagine of being the cause of the 340 not being solved in so many years, including the more recent efforts of strong n-gram based substitution solvers.

  19. Jarlve: it would be relatively simple to replace the second letter of each doubled letter in the original (cracked) Zodiac Killer cipher with ‘+’ and see how far ZKdecrypto gets with it.

    It would also be relatively simple to replace each occurrence of ‘+’ in the Z340 with the preceding shape and then put that through ZKdecrypto, I might try that later… 😉

  20. Jarlve on January 2, 2016 at 10:59 am said:


    I just tried that with a 340 character part of the Z408 plaintext encoded with 63 symbols to match the difficulty of the Z340. Since there weren’t enough double letters I improvised by changing “TH” to “T+” until there were 24 “+” symbols. The difficulty of solving it proved to be trivial.

    We (daikon, smokie treats, doranchak, me) did allot of work in this direction over at morf13’s site early 2015. One thing we did was create a new symbol for each “+” symbol occurence (minus 1). This way we were able to solve test ciphers that had 60+ such polyalphabetic symbols.

    Here is a cipher I just made with the Z408 plaintext and the Z340’s “+” symbol superimposed on top of it. The solution of the solver is also included, as you can see it is very readable. This is to show that it is not difficult to solve such a cipher with 24 anyhow interruptions.

    Solution and cipher:

    If you like, you can create a test cipher yourself that meets your demands and I’ll share it with the researchers at morf13’s site and we’ll have a go at it. Thanks for your time.

  21. Jarlve: nice stuff! May I take you up on the offer?

    Generally speaking, I think there is good reason to think that the Z340’s system ‘reboots’ at line 11 with a different set of homophonic assignments (I read the lack of repeats in 1-3 and 11-13 as indicating this), which would make the Z340 actually a two-part cryptogram: sad as it is, I currently see nothing but disappointment for people trying to solve Z340 as a single homogenous block of cipher.

    I’m also very much taken by Dave Oranchak’s [l*M] [l*M] [l*M] lM [l*M] [l*M] [l*M] homophone-like sequence, but remain suspicious about lines #10 and lines #20. 🙂 So, could I possibly ask you to test three specific scenarios for me:-

    Scenario A: Z340, top half, no line #10, homophone cycle [l*M] assumed, + is repeat meta-token, i.e.
    (1) Z340, lines #1 to #9 only
    (2) Replace all occurrences of l * and M with a single token (say, ‘M’)
    (3) Replace all occurrences of ‘+’ with the preceding token


    Scenario B: Z340, top half, no line #10, homophone cycle [l*M] assumed, + is unknown meta-token, i.e.
    (1) Z340, lines #1 to #9 only
    (2) Replace all occurrences of l * and M with a single token (say, ‘M’)
    (3) Replace each occurrence of ‘+’ with a new token unique to that position

    …and finally…

    Scenario C: Z340, top half, no line #10, homophone cycle [l*M] assumed, + is null, i.e.
    (1) Z340, lines #1 to #9 only
    (2) Replace all occurrences of l * and M with a single token (say, ‘M’)
    (3) Completely remove all occurrences of +

    I completely realise that the resulting ciphertext in all three cases isn’t really long enough to stand a huge chance of decryption, but I’m just wondering if we can tell from the results which of these three meta-patterns the + character seems to work best with. Can you please give this a go, and let me know what (if anything) emerges?

  22. Jarlve on January 2, 2016 at 7:06 pm said:


    I’ve tested your scenarios and also made a test cipher 17 by 9 with 63 symbols and some of your words as plaintext (if you don’t mind). There is only one error in the solution, “ciphertext” became “ciphertest”. Since I’ve chosen for a flat distribution of symbols, the test cipher should be harder to solve than an equal part of the Z340.

    Test cipher:

    Scenario A:
    Scenario B:
    Scenario C:

    I don’t believe there is any solution here, strings of readable words appear but that is typical and they don’t make much sense (to me). It can be noted that B and C have a higher score than A but that is due to the increased multiplicity and loosening of constraints (removal of a frequent symbol). All scenarios have been maxed out, it are the highest scores the solver can climb to.

    With sequential homophonic substitution it’s typical for several lines to have no repeats since the homophones spread out more evenly throughout the cipher then when they are randomly picked (this is not a small effect). I created another test cipher 17 by 20 with the Z408 plaintext and 63 symbols, 16 lines have no repeats. Then the exact same plaintext with homophones randomly picked and 0 lines have no repeats. It’s a property of sequential homophonic substitution and the lines that have no repeats can appear anywhere.

    Furthermore, only one symbol of the 1st line is repeated on the 2nd line. But 7 symbols of the 11th line are repeated on the 12th line. Additionally, if both parts have a different encoding then we should find a spike in our relating measurements for each part independently. Smokie treats and I over at morf13’s site have found no such thing. As far as we can see the encoding appears to be continues and sequential but somewhat randomized, it is quite a bit less sequential than the Z408 for some reason.

    One interesting relating observation is that for the Z340 the most frequent length of non repeating sub-strings is 17 and then drops rather sharply.

  23. jarlve: thanks very much indeed for that, lots of food for thought! Of course, it would have been nice if something had dropped out 🙂 , but I wasn’t honestly expecting anything to. 🙁

    Perhaps the most interesting thing for me was just how similar the statistics for the test cipher and the Scenario A cipher proved to be. I suspect that there may well be the glimmerings of a proof in there to the effect that we are definitely looking at a mangled text rather than at a deliberate load of nonsense. I’ll have a further think, there’s a whole heap of small things that’s bugging me about Z340, and I need to try to make testable…

  24. Jarlve on January 3, 2016 at 11:04 am said:

    Okay Nick 🙂

    Thanks for your time and I’m following with interest.

Leave a Reply

Your email address will not be published. Required fields are marked *

Post navigation