Jump to content

Puzzle Encryption Methods


VeryLost

Recommended Posts

I'm a software author by profession and passion, so I tend to view a lot of problems in terms of how to solve them with a computer program. Last night I was looking at some of the local puzzle caches, one of which has a long string of text encoded in some way, which has to be solved to locate the cache.

 

My first thought was that it might be using a Caesar-cipher, or rotation encryption. The hints on the cache listings use the most common form of this, called ROT13 because it shifts or rotates individual letters by 13 places. A becomes N, B becomes O, and so on. The nice thing about ROT13 is that since 13 is half of 26 - the number of letters in the alphabet - the exact same algorithm can be used to both encode and decode a message.

 

Other rotate values are possible, of course. Using ROT7 for example, A becomes H, B becomes I, etc. I thought that the cache puzzle in question might be using something like this, so I wrote a program to allow me to rotate any given text by any value from 0 to 25. As luck would have it, while my ugly little program works fine, the cache puzzle isn't using Caesar-cipher. I'm ready if I ever find one that does, though!

 

My next thought was that it might be using a substitution cipher, in which a given character is replaced by some other arbitrary letter. A might become Q, and B might become F, etc. This approach doesn't really lend itself to simple algorithmic solutions, but a computer program can be written to help, at least.

 

For starters, certain letters tend to crop up more than others. E occurs in English text more often than Q, for example. So, by counting how many times an encoded character occurs in a cache puzzle and comparing it to the frequency graph of normal text, you can sort of zero in on likely substitutions. I wrote this first part last night - counting how many times each letter appears in a given bit of text. Next is to write a routine that helps the human user do the tedious bit of decoding work, which is actually trying various letter substitutions in real time.

 

I also thought of another method that a cache hider might employ. I'm sure there's a formal name for it, but until I find it I'm calling it 'numeric reduction'. That is, each letter has a numeric value, such as A = 1, B = 2, etc. By adding together the numeric values of the letters in a word, each word can represent a single numeric digit. So, BEACHED = 2513854; add those digits together and they equal 28. Add those together, they equal 10, which finally equals 1. Using this method, a clever cache hider could encode a set of coordinates in an English sentence.

 

What other methods have you seen used in puzzle caches that might lend themselves to partial or complete algorithmic solutions? Who knows, I may turn my ugly little program into something more widely useful.

Edited by VeryLost
Link to comment

Playfair Cipher,

Vigenere Cipher

Enigma Code

Offset substitution code using a keyword

 

And the monoalphabetic cipher

 

Thanks for interesting starting points for further research. Are you aware of any of these being used in geocache clues? That's the domain I'm primarily interested in targetting, and some of these would likely push a difficulty rating over the five-star limit :rolleyes:

 

The monoalphabetic appears to be what I'm referring to as a substitution cipher.

Edited by VeryLost
Link to comment

Playfair Cipher,

Vigenere Cipher

Enigma Code

Offset substitution code using a keyword

 

And the monoalphabetic cipher

 

Thanks for interesting starting points for further research. Are you aware of any of these being used in geocache clues? That's the domain I'm primarily interested in targetting, and some of these would likely push a difficulty rating over the five-star limit :rolleyes:

 

The monoalphabetic appears to be what I'm referring to as a substitution cipher.

 

I know of caches using the Playfair and Vigienere ciphers. Plus Beale ciphers (which are not character substitutions). Being multialphabetic, Vigienere does not easily fall to frequency analysis, at least not unless there's a fair amount of ciphertext and the key length can be established. I've also seen "non-standard" ROTxx rotations used on caches, sometimes using several different offsets within different sections of the same ciphertext. I have even heard of DES ciphers being used, but I haven't personally seen one.

 

I would recommend Simon Singh's "The Code Book" for a thorough discussion of encryption and decryption techniques for classical ciphers plus some info on newer ones. Your library probably has a copy, but it's an excellent resource to have on your bookshelf when considering strategies for puzzle caches.

 

Martin Gardner has also written a book on codes and ciphers, but I'm going to leave you to find that one on your own. There are some neat techniques in there that I haven't seen used elsewhere yet and I want to spring them on hapless puzzle cache addicts without giving them much time to prepare and research.

Link to comment

Playfair Cipher: Playfair's Extreme Geocacher Test

 

Vigenere Cipher: Vigenere's Right to Bear Arms (Now sadly archived)

 

Pictograph Substitution Cipher: The Dancing Men. These are basically letter subsitutions, they just don't look like it.

 

But don't limit yourself to alphabetic encryptions. Since coordinates are already number strings they lend themselves readily to numeric encryption. I've seen coordinates expressed as ASCII code, binary, octal and hexadecimal, as well as number strings that require mathematical functions be performed before the coordinates are revealed.

 

Morse code has been popular, but is a little obvious, but I've also seen hiders apply a rotational or substitution code to text before converting it to morse code.

 

Physical manipulations are among my favorites. One is a ribbon with a long list of numbers that has to be wrapped around a container of a specific size before the correct numbers line up. Rotating wheels are a variation on this; they are just random numbers until aligned just so. Another is a sliding tile puzzle that reveals the coodinates when solved.

 

Finally, there's more traditional puzzles pressed into service as cache clues. Crossword puzzles, anacrostics, word searches and word jumbles have all been done, but recently sudoku puzzles have gotten very popular.

 

Sorry to ramble. This is a bit of an obsession with me.

Link to comment

Here's a cache I have 4/5 of the way solved.. unfortunately, it's that last 1/5 that's keeping me from the coords... Cipher in a Cipher

 

It uses a number of different ciphers and codes, but one portion of it is double encoded with Vigenere and something else. There are 8 found logs on it, less than that have actually cracked the code though because some people were helping each other.

 

As far as cracking cryptogram type ciphers (caesar, ROT13 etc) there's a web site that will crack them in seconds. I wrote some code to assist with them too, which I've not messed with since finding the web site.

Link to comment
Rupert's Cash Cache took 7 months to solve. I was one of the people trying to solve it. I'd actually just finished reading Singh's "The Code Book" and was getting back into programming at the time it was brought to my attention. I was convinced it was some kind of Vigenere cipher and was at one point deep into writing some code to help me crack it. I had a braindead job at the time that provided for LOTS of free time to peck away at stuff like this. I just loved the mental workout, even if I didn't get enywhere close to actually solving it. <_<
Link to comment

I have even heard of DES ciphers being used, but I haven't personally seen one.

 

Personally, I haven't tackled these myself, but they may be the kind you speak of.

... and with Geowoodstock5 being held in Raleigh, NC next year, get cracking on them and you can add them to your finds when you arrive!

 

The No Longer Patented Public Cache #(7,33)

The No Longer Patented Public Cache #(7,22)

Link to comment

...

I also thought of another method that a cache hider might employ. I'm sure there's a formal name for it, but until I find it I'm calling it 'numeric reduction'. That is, each letter has a numeric value, such as A = 1, B = 2, etc. By adding together the numeric values of the letters in a word, each word can represent a single numeric digit. So, BEACHED = 2513854; add those digits together and they equal 28. Add those together, they equal 10, which finally equals 1. Using this method, a clever cache hider could encode a set of coordinates in an English sentence.

 

That looks evil. I have no idea how you would solve this one once you sum the words up. You'll only have 9 values to deal with. Although I introduced one to the area in early 2002.

 

I found some source code for a swiss army knife cipher tool out there.

Cipher Tool 1.6 I thought I could get it working on Mac OSX, but I spent more time trying to port all the libraries over to Mac, that I sort of lost interest.

I have it cooking on a Linux box and it can crank out a boat load of different ciphers that are tedious to do by hand.

 

About a year ago, New Jersey went cipher happy.

 

Traditional ciphers:

Ivdweby: Xkc-Diyepx (GCM050)

Cipher Cache Alpha (GCNGZE)

Entwood (GCPT7H)

 

Computer based ciphers:

Whose Woods These Are (GC8CDA)

Code Red (GCPD5T)

Are You Crazy? (GCN8EC)

 

Ciphers with a twist:

Quick Brown Fox - 08004 (GCM7B0)

Cipher Cache Delta (GCP88D)

Code Orange (GCPD5P)

M20 (GCR9V3)

Deep Thought 3 - Hail Cæsar! (GCX4GC)

Deep Thought - 011 (GCVG44)

Link to comment

 

Enigma Code

Offset substitution code using a keyword

 

And the monoalphabetic cipher

 

Thanks for interesting starting points for further research. Are you aware of any of these being used in geocache clues? That's the domain I'm primarily interested in targetting, and some of these would likely push a difficulty rating over the five-star limit :laughing:

 

The monoalphabetic appears to be what I'm referring to as a substitution cipher.

 

I have used Playfair Cipher, Vigenere Cipher, and the Offset substitution cipher, using a keyword. I like to combine multiple methods, like the Vigenere cipher, with a Steganography program. I also create variations of ciphers, like a Resistor color code puzzle, where you have to determine the colors, in a unique fashion. I have used HTML, to make puzzles, audio files, and even Owls to make a puzzle.

 

See my profile for my puzzle variations.

Link to comment

My next thought was that it might be using a substitution cipher, in which a given character is replaced by some other arbitrary letter. A might become Q, and B might become F, etc. This approach doesn't really lend itself to simple algorithmic solutions, but a computer program can be written to help, at least.

 

If you're looking for an 'off the shelf' solution, have a look for a program called SCBSolvr, it basically looks for common sequences of three letters in the english language and then looks for repeated similar sequences in your text.

 

For example, if you have GQRxxx in your code, then it probably doesn't translate to PZXxxx, but there is a good chance it might translate to some other three letter sequence like "THRxxx" or "THExxx" or "ENGxxx" etc. It seems to do fairly well if you've got a decent sized cipher to work with, and its amazing the percentage of puzzle caches that fall to this kind of attack (sometimes you have to massage them in to an alphabetic form though). Also includes tools for crib dragging, so for example if I know that a sequence of characters probably translates to "DEGREES" I can look for a string of text where the second, fifth and sixth characters are the same, but the others are all different. Once I've got those, I would then have six out of 26 characters by just knowing one word in the cipher.

 

I frequently run through things like numbers in their written form to pull out solutions. (For example we're at 114 north for just about the whole city, so if I search for ONEONEFOUR or ONEHUNDREDFOURTEEN in the text and find it, I can often get a pretty good idea at the rest of the cipher.

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...