I was unable to quite match your statistic and I included a high count, uniformly distributed, not apparently cyclic symbol in all of the 400 messages. I was in the ballpark with a few but not quite there.
It is strange, in various ways the 340 displays nearly mythical properties.
Something else.
I came up with a hypothetical scenario just to show that a clean shift of a secondary period is possible without overly disturbing the main period. Imagine that in the following image it shows a bigram repeat map with the orange squares being the start position of each period 30 bigram repeat and the red squares the end. Now the only thing that needs to be done to shift period 30 to 29 is remove one of the columns between the bigram repeats. As little as 5 symbols could do it given that the bigram regionality condition is met. Another version of this would be to format the cipher in 30 columns and remove a column then, which will always results in a shift but it diminishes the main period somewhat.
I’m not saying that these things were done in that way but I’m showing it like this to help imagine how it is possible.
I like the little picture. Could be, I suppose. The distortion zone in each row caused by the skip would be 28 columns wide, so it seems like that would create a lot of period 14 bigrams in the zone with the same symbols as period 15 bigrams elsewhere. It seems like that would decrease the period 15 repeats quite a bit. I checked and found only a few of these in the area of the pivots.
I may take a few days to think about stuff before resuming my work. To think about what to do next and get inspired with a new or old idea.
It seems like that would decrease the period 15 repeats quite a bit.
I tried it with the 408. With 30 columns, removing one column did in all cases shift the secondary period from 30 to 29 but left period 15 quite diminished (33 repeats highest). And with 60 columns in no case shifted the secondary period from 30 to 29. Meh.
It seems like that would decrease the period 15 repeats quite a bit.
I tried it with the 408. With 30 columns, removing one column did in all cases shift the secondary period from 30 to 29 but left period 15 quite diminished (33 repeats highest). And with 60 columns in no case shifted the secondary period from 30 to 29. Meh.
After taking a few days off I feel refreshed. I have an idea for a simple new experiment, which I am getting all set up for. I will be back with results in probably a couple to a few days.
Sounds good smokie.
I want to move forward with the 340 in 2017 and more strongly rule out some of the schemes we have explored before. A big one here is nulls (added or skipped symbols) with a periodical transposition. I’m making progress with hill climbing transposition and I solved a cipher with 5 skipped symbols quite easily. I’m inviting everyone to work together on such like we have done before. We define the problem and then test ciphers are created which we try to solve.
An even more pressing matter for me is that when assuming transposition, then what periodical transposition are we actually looking at? Period, skytale, columnar transposition, diagonal transposition, 2-dimensional period variations (magic square), Mr lowe’s column/row shifts, anything else? Is it possible to differentiate between these? Perhaps that’s the main problem here.
I also want to make ngrams from the languages that are in the wortschatz library. I will most likely prioritize on this. And then there is one project that for now will be kept undisclosed, regard this as a silly teaser until there are some good results.
Today I also tried to assume that the periodical peak in the 340 is not transposition but something else. I thought of a periodical encoding scheme that is more likely to designate a set of symbols to each position individually (this sounds good for prime phobia) but not have come up with such a thing yet. But given that the encoding is from left-to-right, top-to-bottom it seems strange to fit in because of the bias toward period 15/mirrored/flipped orientations.
Hi Jarlve
I want to move forward with the 340 in 2017 and more strongly rule out some of the schemes we have explored before. …..
…. I’m inviting everyone to work together on such like we have done before. We define the problem and then test ciphers are created which we try to solve.
I think the same. Ruling out specific ideas should constantly reduce our search space. When I published my python library I hoped that some people would like to get the source and experiment a bit with it. Until now only one person has cloned my repository. I have written so many tests which did not lead to a solution and so I have a huge list of ideas which can be ruled out. All of them are contained in the source code and are documented.
Some months ago I have tried to document everything here in the forum but I think the best way to do that is by working together on one project and use a version control system (I use „git“, maybe you know it). So everyone could implement new ideas and we would always have a history of what happened in the past. My project should be convenient and intuitive enough so that people without knowledge of Python but some experience in programming at all can implement own ideas very fast. If my project for server based solving is finished we could easily pass all the test results automatically to a solver. Since my server can use different solvers it would also be possible to implement your fantastic AZDecrypt into it.
I know that everybody has its own tools, but maybe some of you give it a try and check my project. Just send me a PM with your E-Mail and I will invite you so that you can clone the repository. It would be so great to have one place where all ideas are shared and documented.
The project is hosted at bitbucket.org. They offer free wiki and issue tracker. Could be useful too…
Here is a summary:
# ------------------------------------------------------------------ # - Manipulating/transposition stuff. Just uncomment to run a test - # ------------------------------------------------------------------ # #manipulation.create_unmodified(investigator, original_cipher_340) #manipulation.create_odd_before_even(investigator, original_cipher_340) #manipulation.create_even_before_odd(investigator, original_cipher_340) #manipulation.create_undo_odd_before_even(investigator, original_cipher_340) #manipulation.create_undo_even_before_odd(investigator, original_cipher_340) #manipulation.create_split_primes(investigator, original_cipher_340) #manipulation.create_undo_primes(investigator, original_cipher_340) #manipulation.create_z_patterns(investigator, original_cipher_340) #manipulation.create_inverted_z_patterns(investigator, original_cipher_340) #manipulation.create_dan_olsons_assumption_extended(investigator, original_cipher_340) #manipulation.create_columnar_rearrangement_by_indices(investigator, original_cipher_340) #manipulation.create_simplified_columnar_rearrangement_by_keywords(investigator, original_cipher_340) #manipulation.create_skip_letters(investigator, original_cipher_340) #manipulation.create_skip_letters_pixel_pattern(investigator, original_cipher_340) #manipulation.create_horizontal_snake_with_resize_patterns(investigator, original_cipher_340) #manipulation.create_remove_filler_chunks(investigator, original_cipher_340) #manipulation.create_columnar_rearrangement_by_keywords(investigator, original_cipher_340) #manipulation.create_period_n_vertical_read(investigator, original_cipher_340) #manipulation.create_period_19_experiments(investigator, original_cipher_340) #manipulation.create_shift_rows(investigator, original_cipher_340) #manipulation.create_undo_diagonal_writing(investigator, original_cipher_340) #manipulation.create_permute_halves_ud(investigator, original_cipher_340) #manipulation.create_permute_halves_lr(investigator, original_cipher_340) #manipulation.create_single_cube_transpositions_by_keywords(investigator, original_cipher_340) #manipulation.create_pixel_images_resized_width(original_cipher_340) #manipulation.create_pixel_images_period_n(original_cipher_340) #manipulation.create_period_19_zigzag(investigator, original_cipher_340) #manipulation.create_reading_ttb_ltr_stripes(investigator, original_cipher_340) #manipulation.create_blockwise_horizontal_snake_patterns(investigator, original_cipher_340) #manipulation.create_columnar_transpositions_by_chunks(investigator, original_cipher_340) # ---------------------------------------------------------------------------------- # - CAUTION !!!! HEAVY PAYLOAD. Those functions may create 100.000 files and more! - # ---------------------------------------------------------------------------------- # #manipulation.create_permute_quadrants(investigator, original_cipher_340) #manipulation.create_shuffled_chunks(investigator, original_cipher_340) #manipulation.create_permute_stripes(investigator, original_cipher_340) #manipulation.create_skip_symbols(investigator, original_cipher_340) #manipulation.create_remove_filler_columns_and_rows(investigator, original_cipher_340) # ------------------------------------------------- # - Analyzing stuff. Just uncomment to run a test - # ------------------------------------------------- # #analyzing.analyze_polybios_bigrams(investigator) #analyzing.analyze_symbol_distributions(original_cipher_340) #analyzing.analyze_letter_distances(original_cipher_340) #analyzing.analyze_letter_patterns_z408(investigator, original_cipher_408) #analyzing.analyze_letter_patterns_z340(investigator, original_cipher_340) #analyzing.analyze_caesar_substitution(investigator, original_cipher_340) #analyzing.analyze_box_markers(original_cipher_340) #analyzing.analyze_parts_without_symbol_repeats(original_cipher_340) #analyzing.analyze_filler_section_408(original_cipher_408) #analyzing.analyze_statistics_symbol_repeats_in_rows(original_cipher_340) #analyzing.analyze_period_19_and_15_shuffled(original_cipher_340)
It would be so great to have one place where all ideas are shared and documented.
To me this forum is such a place and is just fine. Looking forward to all your progress though!
Did not meant to leave the forum or stop posting here. Did not meant to share ideas elsewhere. Just have all source for implementing the ideas on one place
I want to move forward with the 340 in 2017 and more strongly rule out some of the schemes we have explored before. A big one here is nulls (added or skipped symbols) with a periodical transposition. I’m making progress with hill climbing transposition and I solved a cipher with 5 skipped symbols quite easily. I’m inviting everyone to work together on such like we have done before. We define the problem and then test ciphers are created which we try to solve. An even more pressing matter for me is that when assuming transposition, then what periodical transposition are we actually looking at? Period, skytale, columnar transposition, diagonal transposition, 2-dimensional period variations (magic square), Mr lowe’s column/row shifts, anything else? Is it possible to differentiate between these? Perhaps that’s the main problem here.
Sounds good Jarlve – I will try to help where I can. I’m hoping to present everyone’s progress at this year’s crypto symposium (it’s in October). Even if there’s no solution yet, you have all found good clues in the cipher that I hope to expose to a wider codebreaking audience.
My other goal this year is described here: viewtopic.php?p=50359#p50359
I hope to build a cipher identification network that will attempt to distinguish ciphers of various types. I’m working from this list at the moment: http://www.cryptogram.org/resources/cipher-types
If the network is successful with the ACA types then I can start adding other types to the list. I’m curious how such a network would classify Z340 (and other unsolved ciphers), especially when all the test ciphers we’ve been collecting here on the forums are included in the training set for the network. Other classification techniques are out there, such as bion’s cipher ID test ( http://bionsgadgets.appspot.com/gadget_ … ended.html) and bion’s neural network ( http://bionsgadgets.appspot.com/gadget_ … ction.html), so there is some really useful work to build from. And the back issues of the ACA periodical are filled with many test ciphers to include in these experiments.
Even if the network fails to classify Z340 (it’s very likely that it won’t classify it), it will serve two purposes: 1) It will be a foundation for adding new cipher types to try to auto-identify them (for instance, the novel transposition schemes you are exploring), and 2) I will have generated a lot of statistics about all the cipher types that could be meaningful to compare to the stats of Z340 and other unknown ciphers.
The various ad hoc measurements we’ve come up with will also help me with this project, because they might help to distinguish other cipher types.
Did not meant to leave the forum or stop posting here. Just have all source on one place
That feeling is what motivated me to make http://zodiackillerciphers.com/wiki/ind … servations
I’ve also been trying to keep the list of relevant research papers up to date: http://zodiackillerciphers.com/wiki/ind … rch_papers
Almost forgot about my list of software tools: http://zodiackillerciphers.com/wiki/ind … ware_Tools Shall I add yours to the list?
Did not meant to leave the forum or stop posting here. Did not meant to share ideas elsewhere. Just have all source for implementing the ideas on one place
![]()
Ok, could share some stuff like some of my measurements and then you could add them.
Sounds good Jarlve – I will try to help where I can. I’m hoping to present everyone’s progress at this year’s crypto symposium (it’s in October). Even if there’s no solution yet, you have all found good clues in the cipher that I hope to expose to a wider codebreaking audience.
Nice to hear you may talk again at this year’s crypto symposium.
My other goal this year is described here: http://www.zodiackillersite.com/viewtop … 359#p50359
I hope it could help with figuring out types of periodical transposition.
The various ad hoc measurements we’ve come up with will also help me with this project, because they might help to distinguish other cipher types.
I have a few new things that you may find useful. I’ll make a topic about it.
Did not meant to leave the forum or stop posting here. Just have all source on one place
That feeling is what motivated me to make http://zodiackillerciphers.com/wiki/ind … servations
I’ve also been trying to keep the list of relevant research papers up to date: http://zodiackillerciphers.com/wiki/ind … rch_papers
Almost forgot about my list of software tools: http://zodiackillerciphers.com/wiki/ind … ware_Tools Shall I add yours to the list?
Nice updates to your wiki and thanks for adding AZdecrypt with it. By the way, my initial observation of the period 15/19 bigrams peak was prior to the one you listed. It is in viewtopic.php?f=81&t=2158&start=20 third post from the bottom.
I’ve looked at bigrams at a distance for the 340 and found some unusual peaks (for my system) at distances of 15, 19 and 29.
The various ad hoc measurements we’ve come up with will also help me with this project, because they might help to distinguish other cipher types.
I have a few new things that you may find useful. I’ll make a topic about it.
Okay here’s something you may like. And Largo, feel free to add it your project. Largo, also, if you want to discuss solver related things at moments go ahead. I will be happy to pitch in.
It’s an alternative to bigram repeats for gauging plaintext direction. It does not use repeats directly. I’ve called it symmetry shift but that may not be a good name. My idea was that in language you have bigrams like "IN" that are very common, but its reversed counterpart "NI" may be less common. The same with words, language information is not palindromic by default. So the algorithm basicly scans for each symbol in the cipher all symbols that come before it and all symbols that come after it and then finds the difference. A larger difference should then be more indicative of plaintext direction.
For the 340, it shows spikes at period 19 and 57. And after mirroring or flipping period 15 and 260. Here’s my current implementation.
function m_symmetryshift(array()as integer,byval l as integer,byval s as integer)as double 'array() is cipher numbered by appearance 1 to 63 for example 'l is the length of the cipher 's are the unique symbols dim as integer i,j dim as double a,score dim as double sym(s,s) for i=1 to l for j=1 to i-1 'before sym(array(j),array(i))+=((l-1)/(i-j)) next j for j=i+1 to l 'after sym(array(i),array(j))+=((l-1)/(j-i)) next j next i for i=1 to s for j=i+1 to s a=abs(sym(i,j)-sym(j,i)) if a>1 then score+=a*a next j next i return score/(l*l) end function
Here’s something interesting, removing columns from the 408 and roughly match the length of the 340 will result in similar cycle scores than the 340. If random columns are selected then the cipher will also most likely become unsolvable. doranchak could you please link your collection of encoding stats for this cipher (it’s the 408 with 4 random columns removed in a 24 by 17 grid). I wonder if L3 cycles match up with the 340.
9P/Z/UBkO=pX=BWV+ GYF6HP@K!qeMY^UIk 7qTNQYD)S(/9#POAU %fRlqE^LMZdrpFHW eY@+qGD9K)6qX5zS( RNIYlO8qGBTQ#BLdP #B@XqHM^RRkcZKqI) Wq85LMr9BPR+j=6N (EUHkZcpOVW5+L)l^ R6HIDR_Trde/@JQP 5M8RUt%)NVEH=GrI! k58LMlNA)ZPzUpA9# BVW+VtOP^=SrlUe67 zG%%IMk)cE/9%%ZfP #BVeXqWq_#8+@9A9B %O5RUc_dYq_^qWZeG YKE_TA9%#t_H!FB9z ADd7L!=_ed#6e5PO RQFGcZ@JTtq8JI+BP QW6VXrWI6qEHM)UIk