Here we go:
(By the way ... I am using my own transposition with a different mapping of the symbols)
Obvious basics:Download the generated ciphers:
https://www.dropbox.com/sh/kgqfanvm221gbry/AABs8Yy50fVmkbXVZt7GV-WJa?dl=0Download the generated plus patterns:
https://www.dropbox.com/sh/rumkwdd2cep2hto/AACD-McJa620YMgW4WYbf6c1a?dl=0Rotated the cipher in steps of 90 degrees (flipped / not flipped). There is a total of 8 different permutations.
Example (flip horizontally + rotated 90 degrees):
- Code: Select all
Original Rearranged
ABC LIFC
DEF KHEB
GHI ADGJ
JKL
Odd/Even and prime related transpositions:Download the generated ciphers:
https://www.dropbox.com/sh/ffuwhkc9lz4al1b/AADC46Jm4ELenxw2ZgFnDOdEa?dl=0Download the generated plus patterns:
https://www.dropbox.com/sh/bhu0r8g10egwani/AAAjhCh9gsp6IdHKFOdJC8zia?dl=0Odd before even / even before oddUses all letters on odd positions as first half of the rearranged cipher. Letters on even positions represents the second half. Same for even before odd
Example (odd before even):
- Code: Select all
Original Rearranged
ABABA AAAAA
BABAB BBBBB
Undoing odd before even / even before oddAssuming that the first half of the cipher text represents all the letters on odd positions in the clear text. Second half represents the even positions. Same for even before odd
Example (odd before even):
- Code: Select all
Original Rearranged
AAAAA ABABA
BBBBB BABAB
Primes first / primes lastTake all letters at prime positions and use them as the first part of the rearranged cipher. Then take all letters on non prime positions and use them as the second part of the rearranged cipher. Same for the other direction
Example (primes first):
- Code: Select all
Original Rearranged
ABCDE BCEGA
FGHIJ DFHIJ
Undoing primes first / primes lastAssuming that the first part of the cipher text represents all the letters on prime positions in the clear text. Second half represents the letters at non-prime positions. Same for the other direction
Example (primes first):
- Code: Select all
Original Rearranged
ABCDE EABFC
FGHIJ GDHIJ
Primes only / non-primes onlyUse only letters which are at prime positions. Same for non-prime positions
Example (non-primes only):
- Code: Select all
Original Rearranged
ABCDE ADFHI
FGHIJ J
Shapes and patterns:Download the generated ciphers:
https://www.dropbox.com/sh/p5pm5foeoa9hx4l/AADNoLOpYhFE8Ega_olXRxgna?dl=0Download the generated plus patterns:
https://www.dropbox.com/sh/e97kv1q0b0b19fw/AABzRvAOukcH3RHGdWWehMA0a?dl=0Z-PatternsMaybe Zodiac liked the letter Z so much that he created a pattern to mask valid letters and filler in the cipher text. Imagine a big Z which is put onto the cipher. All letters which are covered by the Z-shape are valid letters, the other ones are filler. The example shows a Z-Pattern with a bar size of four lines. The width of the slash is 6 (calculated by the algorithm automatically). Each letter from z340 which corresponds to a 1 is put into the rearranged cipher. All letters which are corresponding to a 0 are skipped.
In this approach I used Z-Patterns with bar sizes from 3 to 8.
Example:
- Code: Select all
11111111111111111
11111111111111111
11111111111111111
11111111111111111
00000000000111111
00000000001111110
00000000011111100
00000000111111000
00000001111110000
00000011111100000
00000111111000000
00001111110000000
00011111100000000
00111111000000000
01111110000000000
11111100000000000
11111111111111111
11111111111111111
11111111111111111
11111111111111111
Z-Patterns invertedSame like the approach above. This time the masks are inverted.
Example:
- Code: Select all
00000000000000000
00000000000000000
00000000000000000
00000000000000000
11111111111000000
11111111110000001
11111111100000011
11111111000000111
11111110000001111
11111100000011111
11111000000111111
11110000001111111
11100000011111111
11000000111111111
10000001111111111
00000011111111111
00000000000000000
00000000000000000
00000000000000000
00000000000000000
Horizontal stripes:Download the generated ciphers:
https://www.dropbox.com/sh/cc78clahj8k5kie/AADKK2tqgerDaWeRvhyoOdRaa?dl=0Download the generated plus patterns:
https://www.dropbox.com/sh/yo8g378adqpbjza/AAC_xLilnjbuF9jc46A-6V1Ha?dl=0Dan Olson's assumptionDan Olson from FBI assumed that the lower half of the cipher should be placed to the right hand side of the upper one. I’ve extended his approach by applying rotation and/or flipping to both halves. The opposite direction (upper half placed to the right hand side of the lower one) was also tried. There is a total of 32 permutations.
Example:
- Code: Select all
Original Rearranged
AAA AAACCC
BBB BBBDDD
CCC
DDD
Permutation of horizontal stripesI assume that Zodiac maybe wrote the plaintext in a
17*20 grid, cut it into pieces and stick it together in a different order before applying the homophonic substitution. If he cut it into horizontal stripes (each with the same height) then the most likely sizes would be five stripes with
17*4, four stripes with
17*5 or two stripes
17*10.
The stripes are rearrangend in any possible order and are flipped or rotated. So each stripe can be used unmodified, flipped horizontally, flipped vertically or rotated by 180 degrees. This means that there a four possible variations of each stripe. When cutting the cipher into two, four or five stripes we have a total of
129056 permutations
(2! * 4 * 4) + (4! * 4 * 4 * 4 * 4) + (5! * 4 * 4 * 4 * 4 * 4).
No plus patters where created.
Example:
Columnar transpositions:Download the generated ciphers:
https://www.dropbox.com/sh/cxfuvs23edfj3np/AAC7RDNL088hNMZ8V-r6lwsoa?dl=0Download the generated plus patterns:
https://www.dropbox.com/sh/i5aiie1t76g07o3/AAC2j8l6uZz2SF1axTuEQJVBa?dl=0Rearrange columns by indicesMaybe Z rearranged the columns in some way. This approach is based on a list of indices which represents the new order of the columns. The following orders have been tested by now. The most of them represents some kind of patterns.
Tested by now:
- Code: Select all
2, 1, 0, 5, 4, 3, 8, 7, 6, 11, 10, 9, 14, 13, 12, 16, 15
3, 2, 1, 0, 7, 6, 5, 4, 11, 10, 9, 8, 15, 14, 13, 12, 16
4, 3, 2, 1, 0, 9, 8, 7, 6, 5, 14, 13, 12, 11, 10, 16, 15
5, 4, 3, 2, 1, 0, 11, 10, 9, 8, 7, 6, 16, 15, 14, 13, 12
0, 16, 1, 15, 2, 14, 3, 13, 4, 12, 5, 11, 6, 10, 7, 9, 8
16, 0, 15, 1, 14, 2, 13, 3, 12, 4, 11, 5, 10, 6, 9, 7, 8
2, 1, 0, 3, 4, 5, 8, 7, 6, 9, 10, 11, 14, 13, 12, 15, 16
0, 1, 2, 5, 4, 3, 6, 7, 8, 11, 10, 9, 12, 13, 14, 16, 15
0, 9, 1, 10, 2, 11, 3, 12, 4, 13, 5, 14, 6, 15, 7, 16, 8
9, 0, 10, 1, 11, 2, 12, 3, 13, 4, 14, 5, 15, 6, 16, 7, 8
8, 9, 7, 10, 6, 11, 5, 12, 4, 13, 3, 14, 2, 15, 1, 16, 0
9, 8, 10, 7, 11, 6, 12, 5, 13, 4, 14, 3, 15, 2, 16, 1, 0
Example (only a 8*2 „cipher“ to keep the example simple):
- Code: Select all
Original Order Rearranged
ABCDEFGH 52617034 FCGBHADE
IJKLMNOP NKOJPILM
Rearrange columns by keywordsSame approach like above but using keywords instead of indices. This is a simplified version of an usual columnar transposition cipher. Only a few keywords have been tested by now.
Tested by now:
- Code: Select all
MOSTDANGEROUSGAME
MOATDANGEROUSGAME
BEORIETEMETHHPITI
EBEORIETEMETHHPIT
ILIKEKILLINGPEOPL
IAMARTHURLEEALLEN
LEIGHLEIGHLEIGHLE
PARADICEANDSLAVES
PARADISEANDSLAVES
SLAVESANDPARADICE
SLAVESANDPARADISE
TOSHITOSHITOSHITO
ZODIACZODIACZODIA
BYFIREBYROPEBYGUN
GUNGUNGUNGUNGUNGU
ROPEROPEROPEROPER
FIREFIREFIREFIREF
KNIFEKNIFEKNIFEKN
Example (only a 8*2 „cipher“ to keep the example simple):
Keyword: Rolling
Alphabetical order of keyword: 7634251
- Code: Select all
Original Keyword Rearranged
ROCKING ROLLING GNCKOIR
GUITARS SRITUAG
Skipping letters, rows or columns:
Download the generated ciphers:
https://www.dropbox.com/sh/e2ch7v50v4bzl6m/AADnEpwdyBok-GlHOL20zL3sa?dl=0Download the generated plus patters:
https://www.dropbox.com/sh/tce7ixudy3ynuco/AADU23XHMRCdznpqc9fZBIoXa?dl=0TODO: Upload 75264 permutations (ciphers) of skipping column test
TODO: Upload 162220 permutations (ciphers) of skipping symbols test
Skipping each Nth letterAssuming that Z used some letters as useless filler to confuse people. This approach removes each Nth letter from the cipher where N reaches from 3 to 20 (starting by letter 0 or letter N)
Example:
- Code: Select all
Assumed original plaintext: Spiked with fillers: Result:
ILIKECHILLING #ILI#KEC#HIL#LIN#G ILIKECHILLING
Skipping chunks of lettersSame as above but skipping two or more letters. Filler lengths from 2 to 5 letters and valid text length from 2 to 20 are tested (152 permutations)
Example:
- Code: Select all
Assumed original plaintext: Spiked with fillers: Result:
ILIKEGRILLING ###ILIK###KEGR###ILLI###NG ILIKEGRILLING
(Resulting file would be named „remove_filler_chunks_lf_3_lv_4_filler_first.txt“. „lf“ means „length filler“, „lv“ means „length valid letters“)
Skipping columns (different reading directions)This approach assumes that at least one column is a filler which containts gibberish. The number of omitted columns ranges from 1 to 5 and all permutations are tested. The „cleaned“ cipher is rotated/flipped so that all possible reading directions are taken into account.
I have also tested variations which assume that the cipher was rotated 90 degrees before the columns (respective rows) were skipped. The number of permutations is higher since now the binomian coefficient is [20, 5] instead of [17, 5].
This test created 75264 different ciphers which were tried to solve by AZDecrypt. No solution was found
Skipping cipher symbolsMaybe some cipher symbols are used as fillers. To reduce the amount of possible permutations this test only removes symbols which occur at least 4 times (45 symbols total). I have tested from 1-4 filler symbols. This makes a total amount of 164.220 permutations.
Way transpositions:Download the generated ciphers:
https://www.dropbox.com/sh/tfz6tlq9tem63th/AAABORf3ydHjx0_xAT4lvo2ja?dl=0Download the generated plus patters:
https://www.dropbox.com/sh/hjhykvdfzewyogy/AAA4p90cNKjYlkXPEPnUEPH5a?dl=0Snake routeThis approach untransposes the cipher using snake routes. All 8 possible variations are generated
Example (Snake beginns bottom left):
- Code: Select all
Cipher: Rearranged
ABCDE UPKFA
FGHIJ BGLQV
KLMNO WRMHC
PQRST DINSX
UVWXY YTOJE