Columnar Transposition

#1 First, identify rectangle sizes - a message length of 100 characters meant that likely choices would be 4x25, 5x20, 10x10, 20x5, and 25x4. First attempt with rectangle size 5x20 seemed promising but too restrictive, so a quick check with size 10x10 was made, and the thing that jumped out was the first line - "combine" seemed a logical anagram for the first word since there was only one space on the line. Once c,m,b,i,n,e,* were in shuffled in place, it was clear that the o above the k was the "combine" o since it was unlikely that a word ended in "ri". Also, letters below were forming into egg, sesame, etc... After that, the cipher was pretty much done. opbmni*eocihe*ggw*kr*es*se maet a**lastlio*rp*pee pdnomota*s*ni *e*haptsto*l*dhclinayt*rhtriof**nitusem* combine*po rk*egg*whi te*sesame* oil*salt*a nd*pepper* into*a*smo oth*paste* and*chill* for*thirty *minutes** "combine pork egg white sesame oil salt and pepperinto*a*smooth*paste*and chill for thirty minutes" ------------------------------------------------------------------------- #2 Methodology: It was given to us that the cipher was a transposition. I used the program given to us, coltrans.c, which can be used to manipulate the ciphertext. According to the program, the ciphertext was 100 characters long. I picked the least extreme of the possible rectangle dimensions, 10 x 10. The asterisks confused me at first; I thought they might have been missing characters that we had to fill in, but then I concluded they just represented space between words. I began by looking at the first line. I was lucky enough to see scraps of the first word, "combine" in the first row, so I permuted columns until the word was formed. But the text was still a little messed up in the other rows. Then I noticed that there were two o's in the first row, so I switched the two columns with o's, and sure enough, the text became complete. Actually, this analysis was not very organized. Usually the first thing to do would be to look for common English couplets like "th" or "er" or something. Fortunately, the initial column "scramble" gave away a lot. _____________________________________________________________________________

Homophonic Ciphers

____________________________________________________________________________ 1***** Looks like there may be a spot open for bonus points for cipher #4, the easy version, so I am submitting my answer. No that's not a system clock error, it really is 5:00 AM. I must be nuts. Sorry the text is so big. I am cutting and pasting into UMBC e-mail and it doesn't work too well. I used the frequency and n-gram analyzer as suggested. Then I used the results to substitute letters. I figured the most frequent weren't necessarily E, T, or A, and that it was probably a combo of many in the middle frequencies. Guessing teh first word was "THE", lead to other "THE"'s revealing themselves. I eventually knew I could use frequency analysis on all but E, T, or A, so O, I, R, and S would be at the top somewhere. More later in my write up. Solution: ___________________________________________________________________________ 2****** I solved cipher 4, the hard version, and turned in a hard copy but do not have a grade. Here's my solution again: Cipher 4 "hard" version METHOD I first identified which number appeared by themselves. These would either be 'a' or 'i'. I found 11 by itself and looked for all occurrences of 11. 11 started a few three letter words, so I guessed 11 was 'a' since I could think of many three letter words that start with 'a' but I couldn't think of any that started with 'i'. So I replaced 11 with 'a'. I then identified 404 as 'n' since that would complete the word "and" and in many places "an". I also filled in 68 as 'd'. I then tried identifying another number that formed a one letter word. I substituted 'a' for 73. However, "19 5 19 a 402 402" in the last line didn't make sense. 402 appeared a lot and I figured was a common digram. But, I couldn't think of words that end in "all" whose first character (19) started a two letter word. I switched 73 to 'i' and figured the last line had "we will". By this time words started forming, and I was able to fill in the rest with a little help from the grep program. Andrew ____________________________________________________________________________ 3******** METHOD used tool off of website to get the following, from there tried 'the' as the first word of the cipher and went from there. 30 most frequently occuring numbers: 9023 83 20493 62 456 60 34082 54 23492 52 10375 51 5493 45 27331 41 7493 40 64901 39 2333910 33 432 32 4028 31 35132 31 30482 27 77712 27 31532 26 250111 26 4082 25 11052 25 64091 24 10333 23 4563 23 31533 22 3231 17 29310 15 30 15 732011 14 100573 12 44802 1 30 most frequently occuring digrams: 9023,7493 23 20493,34082 15 2333910,9023 12 5493,4028 11 34082,11052 11 9023,432 11 64091,5493 10 31532,5493 9 34082,27331 9 23492,23492 9 9023,456 9 432,20493 8 10333,27331 8 456,9023 7 9023,34082 7 23492,20493 7 23492,9023 7 77712,5493 7 30482,2333910 6 250111,9023 6 5493,64901 6 30,23492 6 5493,9023 6 456,20493 5 20493,29310 5 64901,456 5 35132,456 5 31533,34082 5 20493,23492 5 64901,27331 5 Used replace.pl from substitution cipher and created a bash script to work with multiple substitution of letters. replace.pl #! /usr/bin/perl -w # perl replace.pl cipherLetter plainLetter < cipherText [ > updatedCipher ] $cipher = shift; # shift first arg into a var $plain = shift; # shift second arg into a var # were in array @ARGV while ($line = <>) { $line =~ s/$cipher /$plain /g; print $line; } bash script #!/bin/sh echo -e "\n\n\n" ./replace.pl 31532 t < Cipher4.txt > tmp1 ./replace.pl 5493 h < tmp1 > tmp2 ./replace.pl 4028 e < tmp2 > tmp1 ./replace.pl 9023 o < tmp1 > tmp2 ./replace.pl 10375 s < tmp2 > tmp1 ./replace.pl 77712 t < tmp1 > tmp2 ./replace.pl 64091 t < tmp2 > tmp1 ./replace.pl 7493 u < tmp1 > tmp2 ./replace.pl 432 w < tmp2 > tmp1 ./replace.pl 11052 g < tmp1 > tmp2 ./replace.pl 2333910 y < tmp2 > tmp1 ./replace.pl 31533 a < tmp1 > tmp2 ./replace.pl 34082 n < tmp2 > tmp1 ./replace.pl 27331 d < tmp1 > tmp2 ./replace.pl 456 r < tmp2 > tmp1 ./replace.pl 35132 e < tmp1 > tmp2 ./replace.pl 23492 l < tmp2 > tmp1 ./replace.pl 10333 e < tmp1 > tmp2 ./replace.pl 30482 m < tmp2 > tmp1 ./replace.pl 20493 i < tmp1 > tmp2 ./replace.pl 732011 c < tmp2 > tmp1 ./replace.pl 64901 e < tmp1 > tmp2 ./replace.pl 4082 a < tmp2 > tmp1 ./replace.pl 250111 f < tmp1 > tmp2 ./replace.pl 29310 v < tmp2 > tmp1 ./replace.pl 4563 a < tmp1 > tmp2 ./replace.pl 100573 k < tmp2 > tmp1 ./replace.pl 30 p < tmp1 > tmp2 ./replace.pl 93 x < tmp2 > tmp1 ./replace.pl 3231 b < tmp1 > tmp2 ./replace.pl 44802 z < tmp2 echo -e "\n\n\n" Chris Spiess ___________________________________________________________________________ 4****** Subject: solution cipher#4 (difficult) Hello Dr. I had this one about just about solved before I had to run off for classes today. Here it is. I started with the initial guess that 412, 412 --> LL Then I built "and". A = {23,34,98} N = {346, 404} D = 68. Then my big break was to guess at LADY, so y = 543. Then "you" became apparent O ={61, 87} U = 76. this gave me "ould" which gave me "should". >From there I was able to build "the", "our" and so forth, lots of other words fell into place as well along the way. Tom Long These things are better than crossword puzzles, Thanks. Here is the plain-text: _______________________________________________________________________