After some more experiments with constructing ciphers similar to Z340, I've realized that there is one more common assumption that can be thrown out of the window because it is incorrect. The one about reading Z340 by rows, and not columns. It is based on the fact that there are much fewer repeats in the rows, vs columns, as WebToy
clearly shows (see "Repeated symbols by row" stat). The mistake here is that, yes, the low repeat counts by rows tells us that the *cipher* was constructed by rows, and likely left to right as well. However, and this is the key, it tell us nothing about how the *plaintext* (i.e. the original message) was written into the rows/columns before it was encrypted.
Here's an example.
I submit to you the following cipher:
- Code: Select all
K+bGHTm8qIC9DR4Q0
15jEOAS2pZ6Wa3iBo
UjCfN9JT4L+esK7HP
rRnhVQAIFJSWGMKfD
Hldce+U0b8iBI+TV1
2CEg563mOa40fJr1d
s2NbFsXh9R3WUj4V+
++cmSGmK+0HY1m2qm
3D4TPIiEd0QFWjeJa
piOK1gRUHLSmfIo2J
skKh3VAPMe7gNHG+4
01Q8qI2W++BJnUDbV
KW5chUfO3EdCFr9jH
67GT48+plZrVLWcAU
V0I+dJ12eB3Wf4506
78aCMKH19A2UV+ec5
WqNI++JLB6CU3M7uK
4Hsi89XPQVspADoNO
I0L56j+7+Y+85fRkM
P+NJl6K1BUH0r5+0n
Looking at
WebToy stats, you'll see that it is very much like Z340. It has very little repeats in the rows, and plenty of repeats column-wise. In fact, I managed to get the first 5 rows without repeats, and the first 2 rows combined have 0 repeats (evident if you put the cipher in
34-symbol rows). It has almost the same number repeated bigrams as Z340, and it even has one repeated 3-gram (vs. 2 in Z340). I've even mimicked the '+' symbol being twice as frequent as the next most frequent symbol, which plays no role in making my point, but I just wanted to make this cipher very much like Z340 in all respects.
And here's the kicker - I can even tell you that it's the exact beginning of Z408, that we all know so well, truncated at 340 characters, encoded using a straight homophonic substitution, and yet trying to crack this cipher using ZDK/AZD will yield absolutely no result for one simple reason.
Because before I encrypted it, I have transposed the plaintext like this:
- Code: Select all
INCOIHWTBIAAOHEREETGORAHEBDTLCEGAY
LGAMSAIHESNMKITIRVHYFLRAIOIHLOSIMO
IPUUMNLECTGAINHLEEAOFTTEWRCEEMIVEU
KESCOKDFAHELLGELNNNUWHOWINEIDEWEBW
EOEHRIGOUEROLGMICBGRIEFHLISHWMIYEI
KPIFELARSMTFSIONEEERTBIELNNAIYLOCL
ILTUFLMREOUAOVAGITTOHETNBPDVLSLUAL
LEINUIEEMAELMETETTTCASIIEAAELLNMUT
LBSINNISATALESTXIEIKGTADRRLKBAOYSR
IESTTGNTNDNTTMHPSRNSIPTIEALIEVTNEY
If you don't see it, start reading the first letters of each row, then the second letters, and so on.
There you go. We have another cipher that has the same stats as Z340, and yet it is clearly written vertically, top to bottom. I could've written it diagonally, if I wanted to. Or using any other number of "routes" or columnar transpositions. You just have to *encrypt* it horizontally, left to right, after you are done "transposing" the plaintext.
Which simply means that we cannot rule out that Z340 was written "vertically", or that columnar transpositions were used, etc.. I.e. this part of FBI's analysis can be crossed out as well: "This indicates that the cipher is written horizontally and rules out any transposition patterns that are not strictly horizontal." Maybe that's why Z340 hasn't been cracked yet - nobody tried applying "transposition patters that are not strictly horizontal"?
I might be embarrassing myself here, of course, since I'm not a professional cryptographer, so please do point out any flaws in my reasoning above. :)