# A1: Scavenger Hunt 

**Deadline:** Thursday, 09/21/17, 11:59 pm; no late submissions accepted
*This scavenger hunt may be done as individuals or as pairs. If you pair up
with someone, you **may not** share your Enigma solution code (or snippets
or pseudocode or hints, etc.) with them. This entire scavenger hunt
is a karma problem.*
A cryptographic *key* is a secret used to encrypt or decrypt messages.
For the Enigma machine, the key is its initial configuration: reflectors,
rotors, and plugboard. Instead of having to remember a complicated
configuration, it would be easier if users of the Enigma could remember
a short phrase, and the configuration would be derived programmatically
from that phrase. We have programmed a [key generator](keygen.ml),
which does just that. The function `Keygen.config : string ->
Enigma.config` generates an Enigma configuration from any string.
To build the file you need to link the `qcheck` package.
Each of the clues below, except the first, is encrypted with a key
derived by `Keygen.config` from a phrase. Your task is to figure out
the phrase for each clue, and to decrypt the clue. Since the Enigma
machine supports only the letters 'A'..'Z', we follow a couple
conventions in forming plaintext messages: instead of spaces we use the
letter 'X', we spell out numbers and punctuation as words, and we use
only uppercase letters. But that is only for the plaintexts—the
phrases used to derive keys can be any OCaml strings, and as usual those
strings are case sensitive, may contain spaces, may contain numbers, etc.
When you are done decrypting all the clues, submit a PDF to the "A1:
Scavenger Hunt" assignment on [CMS][cms]. Your submission should
contain the phrase and plaintext for each clue, as well as anything else
the plaintext might ask you to include.
[cms]: https://cms.csuglab.cornell.edu/
**There will be no hints on the clues or their phrases.** But if you
can't figure out how to run the key generator, you are free to ask for help.
**Do not post hints on Piazza.** That would ruin the scavenger hunt for
everyone.
Good luck! :)
### Clue 0
A phrase that appears at the end of every lecture.
### Clue 1
```
IXKEWTRJBTGYKQKWGHAMADVNOGTVYQGSYZYJANWHIEQSPZLTTSZIRZOMBRMCDMBYYPGRVADJNWPWZOFWBHVQXCKIHUFOZGJHGPWNRNIMMKBTJVOKYIHIZLZLUKWEQA
```
### Clue 2
```
VAATONBOTDUYWKFNKPLAODESSNNAKXFNTIECB
```
### Clue 3
```
CJPVNERYPYQPYROEHTENOXERWYGBXEHTENOXEXTQJTXXPJTQEGBYZEVBTZJYW
```
### Clue 4
```
YVAOBRHXWFKZPXBFNMNJUGWFRGUDADFBJVURVJAETPVGMFKBBQFIHFDXVZCEJDDKXIABZHHBMCMXDQHLAKSQPJYCQQYSNWKOXHRLQMOGGWMOVZTAGZHAFNVAHACYVZXINELRUR
```
### Clue 5
```
EZGLOQYNQYWBQIBCYQNCQZSIINCCU
```
### Clue 6
```
MUALGTKYUGPHHBDQFRCHHLPEEFXYBRNWPTSLDNHWLENAMR
```
### Clue 7
```
BUGGTQAFUTFABTLATWOVJTOFQTXOJUTHUGNYUHTOXTUOVSTVGEUTGAVOXYAFTOFQTYFVGEQUTXSURTYFTIAEMTHEWRYHHYAF
```