What's the general mathematical method to go about solving a substitution cipher?

78 Views Asked by At

Here's a question from a professor's page:

Decipher the following simple-substitution cryptogram, in which every letter of the message is represented by a number.

8 23 9 26 4 16 24 26 25 8 18 22 24 13 22 7 13 22 8 8 18 19 7

Hint: The most frequent letters in English in descending order are: ETAOINSHRDLU

I solved it by brute force, just guessing letters,

"this sentence is backwards", written backwards

but I'm curious to know if there's a mathematical way to go about solving it on paper?

3

There are 3 best solutions below

0
On BEST ANSWER

This particular problem is "out of the box" because it is written backwards. None of the words when solved will appear in a dictionary. Good for you for solving it, but it depends on recognizing that what you found has meaning while another decryption does not.

If it is an honest substitution cipher in English, things are much easier. You can guess a few of the most common letters, substitute them in, and scan your dictionary for words that match the patterns you have found. Then substitute in the letters you find in the new words and the right one will pop out at you. You need to put in some flexibility in case the text has typos or words not in your dictionary. If you take the puzzle from the newspaper, they often play with the letter frequencies. They may carefully not use any E's, for example.

0
On

Judging by the hint, you need to compute the frequencies of various number-codes and try using the frequent-list-letters instead of them, checking yourself on small words to make sure they are ok... No formal way of doing it, I think

0
On

This is a trick question. Following the hint, we should first look for solutions involving ETAOINSHRDLU, and in fact the solution has three E's, a T, two A's, etc., so we will find it this way much faster than guessing randomly. But will we know it when we see it? If we are validating a solution by checking if it is an English sentence, as the hint suggests we do, we will fail to identify it, since it is written backwards. It is hard to imagine a general method that would be able to solve this as a special case; would it have to know that "sdrawkcab" is "backwards" written backwards? What if instead the cryptogram was "the letters of this sentence written in sorted order" with the letters written in sorted order, i.e. "cddeeeeeeeeef..."? If the answer were actually an English sentence the hint would be useful. But it is also such a short string that I would be surprised if there are not many other grammatically-correct assignments.