Adventures in Cryptoanalysis

Due: 9am Tuesday Sept 24

General Instructions. Students are required to work in groups of 2 or 3 for this assignment. An assignment submitted on behalf of a "group" having only one student will receive a grade of F. All members of the group are responsible for understanding the entire assignment.

No late assignments will be accepted.

Academic Integrity. Collaboration between groups is prohibited and will be treated as a serious violation of the University's academic integrity code.

The Assignment. Choose and submit a solution for only one of the following cipher-breaking exercises. If what you submit contains the solution for more than one of the exercises, then only the first one will be graded.

Each exercise gives enciphered English text and a hint about the encryption algorithm that was used. Your task:

  1. Develop or find on the web (software) tools to facilitate deciphering the message and obtain the plaintext.
  2. Use those tools and recover plaintext.
  3. [Optional--fun but virtually no impact on your grade]: Impress the graders with the breadth of your knowledge by giving the exact source and author of the plaintext.

Grading. The exercises below appear in increasing order of difficulty--the first is the easiest and the last is the most difficult. Which (single) exercise you submit determines your grade on this assignment. (Try as many of the exercises as you like, but hand-in only one.)

U (Unsatisfactory) Submitted work is not indicative of a "good faith" attempt to solve any exercise.
B- Submitted work is indicative of a "good faith" attempt to solve one of the exercises.
B The correct plaintext for exercise 1 was derived, and the manner in which it was derived is cryptoanalytically justified (i.e., guessing is not good enough) and adequately documented.
B+ The correct plaintext for exercise 2 was derived, and the manner in which it was derived is cryptoanalytically justified (i.e., guessing is not good enough) and adequately documented.
A The correct plaintext for exercise 3 was derived, and the manner in which it was derived is cryptoanalytically justified (i.e., guessing is not good enough) and adequately documented.

Note, your letter grade could be increased or decreased by one-half step (i.e., + or -) based on the justification you give and the clarity of your write-up.

Exercise 1

The text was enciphered using a monoalphabetic substitution cipher. Blank spaces were first deleted and then inserted at convenient locations; punctuation has been deleted.

7liqi ftvmz g7lt7 r3gl7 trij3 4oqzf r3vlm zg7lt 7kqiv vi5lt q5zr7 
lioth 1vzm7 lio3g ftjiv 7lt7v 435pr 5iq7l iozt7 7liyl t5hz8 it447 
lifty mqz8t 8iq3h t7lzv iftji v7liy lt5vu pii0i 5oi7f iir7l igqtr 
37imz q73m3 ht73z rvzm7 lilio q35iv vlqpr 1tr5q imzqi 53r7l ifiv7 
iq4yo qii0i rzfrz 7l3rg ftvgz 3rg7z v7zk7 li8ix hik77 liv7z rivlz 
qivzm vhz74 tr5vi jir83 4iv5z fr7zv 7tqoz tq5 

Exercise 2

The text was enciphered using a polyalphabetic substitution cipher, where the key length is 4. Blank spaces were first deleted and then inserted at convenient locations; punctuation has been deleted.
yvov7 ddckp dlwrg c0uzc tdonq puhen lmvzd jeg8m vdumr u8uen jjjbo 
s3p6n 3pwct h8uwx im7jw 17d65 ypuct d6ael iueno 1krl1 zxohy vogtp 
w188w sydjl 0x8hp h5hwl r17gw 5fx81 ztoue tdnzu 8lunt uwx4k 38d3e 
xgnyv ov7h2 hkp3h yvo6j t8m7x rh8hu nj8dj q1oct d4kz8 6ctpu 1wn6j 
frdge 8rhs1 pverg 3e8rh khiee nwuet dnzu8 7wjoc tddj8 vgcet 8h3t6 
renrk 3bdkk 15h3a gct85 hexdn megne xrh8h unj8b k1d8u ez67w 8gogp 
dn3xl jeduu wxwm7 8lmvp uv37t lkh4k zirk3 ujmzd uc3hu 6tujh yvdcy 
voaeu j7eag 7kb6j qd8ct donqp uhenw kvzbe 8hunj 8phzy 8ug8r hmppk 
ypzuw xim7j w6jl6 cnu53 tdgsm h4neg  

Exercise 3

The text was enciphered using a polyalphabetic substitution cipher. Blank spaces were first deleted and then inserted at convenient locations; punctuation has been deleted.
ce1km cwc2j 26sak wer28 66bo5 vpx78 l2cy3 7bug8 82smo nei2s exd6x 
3nqrr cefu8 zqswn 6qjog pfsum 3lhrk msgkv 6p0l5 ax2mw zq8qj mjxd6 
x3nq1 joaj1 mxd6e d6arj zehc5 158h6 7rkte 42nmt i9i8u msoae khqjn 
gvwh8 95a4v m111a vj1ue d8afh bbo6k 27r1m a5vo1 onead 6qxol 4nsur 
jzem5 8tjmy duibb 6ed1b bm6xh hbxg8 w6oic 2lehs 6u59x 2n8t2 vpfuu 
udm5 

Submission Procedure. Create a file containing your solution. Call this file xxxxx0, where xxxxx is the result of concatenating your team's Cornell network id's listed in alphabetical order. (E.g., For the group consisting of abc1, xyz3, www25, the identifier abc1www25xyz3 should replace xxxxx.) Then copy this file to the following folder:

\\Goose\courses\cs513-fa02\proj01.submit

Don't be disturbed by warnings informing you that the file cannot be accessed after it has been copied.

Should you wish to revise your submission after you have copied it to our folder, then simply correct the it and copy the (entire) revised version---but this time use the name xxxxx1. Revisions to that should be named xxxxx2, and so on. We will grade only the largest-numbered file of a series.

What to Hand In. Not only should you submit plaintext but also submit documentation to justify your solution. This documentation should describe the strategy you employed, show the details for each of the steps of that strategy, show listings for any programs you wrote, give url's for any tools you discovered on the web and used, show the output of these programs, and show how you transformed that output into your solution.

Needless to say, you may find it easiest if the "file" that you submit is, in fact, a directory. If you do submit a directory, then make sure it contains a README file that describes what other files the grader should read and in what order they should be read.