From gms2w@cs.virginia.edu Thu Dec 6 13:34:39 2001 Date: Fri, 30 Nov 2001 12:55:52 -0500 (EST) From: Geoffrey Melvin Stoker To: David Evans Subject: Re: Expedition . . . Dave, Hi. Well, I stumbled around a bit at first just trying to get a handle on the search space and how the Jefferson Wheel worked, then of course there were several little programs I wrote that did various comparisons and substitutions, but didn't get me very far. Then it occurred to me to make use of your wheel hint (you gave us the wheels, just not the order) and search for specific words that I figured would be in the cypher text. I chose to use 'THE' for several obvious reasons. So, by now the cypher text was in lines of 36 characters and I started with the first three columns and looked for matches between any lines. I took the top several matches per 3-letter group, say YTP, NYR, etc, and found the various wheel orderings that would spell 'THE' somewhere around the spindle when YTP (or whatever) was aligned. I had numbered the wheels, so I had a list of 3 ints like 3 17 35 and 19 22 8. I sorted this list, eliminated the singletons and concentrated on those with multiple matches. In some places the correlation was very strong and the wheel order was simple. ex: Columns 0,1,2 would yield many copies of 18 26 22 and columns 1,2,3 would produce multiple instances of 26 22 8. Thus, it was relatively simple to pick wheels for given positions. In one or two spots it got 'dry', but shortly thereafter strong correlations picked up again. Once I had the wheel order I read in the cypher text, aligned the wheels properly, printed out the entire wheel, picked the row# that was plaintext and it was written to a file. I used C to write separate programs to find initial matches, print potential wheel orderings, and do the last part. I imported files into Excel to sort wheel orderings and find matches. The code is not very well written (cough) or documented and has various names like evans, evans1, evans2, etc. I can send it to you if you really want it, though it may make me feel a bit sheepish. :) There is another technique that a colleague of mine suggested after I'd shown him your challenge and what I'd done that I think would solve the challenge without knowledge of the wheels. I told him he should do it and he said he might, but it's a bit complex to code and it's always a lot easier to talk about ideas rather than to find the time to implement. That's it! Let me know what you think and if you have any questions. I'd be interested to know if you had a technique in mind for the problem. Geoff On Fri, 30 Nov 2001, David Evans wrote: > > Hi Geoff, > > Wow! Indeed it is...you're the first one to solve it. > > I don't think the points will do you much good now, but if you can send me > an explanation of how you solved it and any code you used, I'll send you a > Jefferson cup (sorry, I don't know anywhere to find a proper Jefferson > wheel!) > > Best, > > --- Dave > > On Fri, 30 Nov 2001, Geoffrey Melvin Stoker wrote: > > > Dave, > > > > "Expedition to the Pacific, Instructions to Captain Lewis . . . " > > > > Hi. Greetings from Brussels. Got interested in your Jefferson > > Wheel Cipher challenge a couple weeks ago and decided to give it a go. It > > was very interesting to think about and quite fun to stumble forward with > > different techniques. Just wanted you to know I had worked on it so you > > could put my 100 points on account in case the Army ever lets me return to > > UVA some day. :) > > Hope the semester finishes well for you. > > > > Take care, > > Geoff > > > > > > > > > >