Here’s a cipher of unknown type. Two of my ID tests put the correct type on top, but the other test put it fifth on the list. Key search and PH hill-climbing both solved it without a crib. I’ll add a caesar-shifted crib.
My analyzer put the correct type in first place, but my hillclimber was unable to solve it without the crib. I solved it by key searching using the crib. It’s one random sentence from Gutenberg.org, but the last two words are cut off. The crib is: SVXLIGSPHWYR
Here’s a screenshot of two/four square converging key search program. It has a grid for selecting which routes to use in the search. You could just choose all routes, but that makes the program take forever, especially in a tri-square key search where you are searching three keysquares.
The part of the display that took the longest to figure out was combining the giant size checkboxes in the grid with the ordinary sized 6×6 checkbox. That took a lot of searching through the web for information about html and css tags.
My analyzer placed the correct type as number two. My autosolver solved the text very quickly. However, finding the original key was quite difficult. The text is random from Wikipedia; the key consists of two random unconnected words. I found an equivalent pair of words – the first one correct, but the second one incorrect. Combined they condense to the same string as the original pair. If you want to find the exact original keywords, here’s a hint: FIJSVIGSRHIRWEXMSRXLIGSQFMRIHPIRKXLMWRMRIXIIR
Here’s a randomly generated cipher of unknown type. I had a hard time solving it. Within a certain range of periods all my ID tests got the correct type. But this period range was not correct for this cipher! With a different range none of my ID tests put the correct type on top. I tried a lot of different hill-climbing combinations and finally hit on the correct combination. With the correct combination of settings the hill-climber solved it without a crib. I’ll include a caesar-shifted crib.
Here’s a randomly generated Vigenere running key cipher. I solved it without a crib using a key search program and a combination interactive solver and hill-climbing program. Both of these programs used local servers to run. The word search server was listening on port 3000, and the hill-climber was listening on port 8080. The search program ran through a list of about 600,000 words and phrases, looking for a corresponding plaintext that included a word or phrase at least 7 letters long. The key search returned four possibilities, one with a 9 letter phrase and three with 7 letters phrases. Three out of the four results actually occurred in the solution. I filled in the rest of the plaintext by switching back and forth between the hill-climber and the interactive solver.
For a crib I’ll include the (caesar-shifted) phrase whose corresponding plaintext included the 9 letter phrase.
Here’s a randomly generated cipher of unknown type. All my ID tests put the correct type on top. PH hill-climbing solved it without a crib. Key search solved it also. I’ll include a caesar-shifted crib.
My program to identify the primer is dependent on repeated digits at the crib location. Thus it depends on knowing the crib location. The process is to increment every 5-digit primer from 1 to 99999, extend the full primer until the digits cover the crib location, then take the segment of the primer where the crib is located and call that primer2. In the preceding con, the crib is 14 letters long. I test each primer2 first for three-digit triplets and search to see if the corresponding crib letters appear as a sequence in the ct. For example, if the primer2 were 19692055125063, my program would first test the three 5’s. The corresponding crib letters for the 5’s triplet would be MOT for the crip “TOPOFAMOUNTAIN”. If MOT does not appear in the ct, then that primer cannot be correct. If it does, I give the primer a score of 5 points. Then I do the same with 2-digit doubles, like the 1, 6, 9 and 0. Those corresponding crib letters form digraphs. If any of those digraphs don’t appear in the ct, again the primer is rejected. If they do, 1 point is given for each such pair. Once all primers have been tested and a score given to each one that isn’t rejected, those are then ordered by score and decryption attempted with the highest-scoring primers first. The process could be extended to 4- or 5-digit groups, but the crib would have to be quite long in most cases.
In the preceding con, there was only one 4-primer group that outscored the correct group. I tested this method on the same con with a shorter crib (12 letters) without a triplet in the corresponding primer2 and the correct primer appeared in the highest-scoring 200 primers. If the crib were to occur over a sequence without many triplets or doubles, this method would not be effective. If the crib were long enough, one would not need to know its location in advance because there would probably be only one 4-primer group and crib location that would work.
The crib is “TOPOFAMOUNTAIN” located above OOOULOWTNPNIRT, or more accurately, beginning at the 39th letter of the plaintext since the ciphertext letters at that point do not relate to the crib. I wrote a program that identifies the most likely primers given the ct, a crib, and the crib placement, assuming sufficient crib length. For this example my program placed the correct primer tied for 5th most likely along with 39 other primers. As an added hint, the check number at the end is 6.