# A1: Scavenger Hunt <img src="camel_orange.png" height="40" width="40"><img src="camel_black.png" height="40" width="40"><img src="camel_black.png" height="40" width="40"> **Deadline:** Friday, 03/02/19, 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 as words, and we use only uppercase letters. In addition, for simplicity, the phrases used to derive keys only contain uppercase letters, whitespace, and numbers. 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 Discourse.** That would ruin the scavenger hunt for everyone. Good luck! :) ### Clue 0 This is the number of your favorite CS class at Cornell &#x1f609; ### Clue 1 ``` BJLPSJZWZKXILPTRRCZRJDTSHSAFSAQQIDMIAXVHMPAPPTESDCUQZIRIUXQVRQUAUEYXNYRCBBMDJCIPDCMTKPQIZQWSSXZNCROYQQNXFLBYWVCNIDVW ``` ### Clue 2 ``` PBOHOOTJDJXQRRVSLVZQJBPTDDFYMJRTORFOTBKHRUCBKBRULFDPXOVBEAESJIGVPTVTOAYVELPFZFFVSRFBLFFVYFVHXS ``` ### Clue 3 ``` DHEZQWGYEYPEYGIWUVWQIRWGKYTORWUVWQIRWRVPHVRREHVPWTOYFWZOVFHYK ``` ### Clue 4 ``` ZIMFZXWQCFZGAFQQTKTXWACJTHDUVYXGKUIVBBAMVZKYWVSJDLKPMMKBSKNXHDXRRKPJAZAWTSAKKVEZUMHKHUJLKFYMYHKN ``` ### Clue 5 ``` LLDGBFOPMJYDKCTVXJBXANCDFKWUJUIQGGLCCQZIVTLTRGVQEOQDHTYCYGFNQH ``` ### Clue 6 ``` GIMKVBWJHOLQIHLLNNQLBDLXLRELEACZCWVKSMZCBWVHJIUSNHI ``` ### Clue 7 ``` UZBBNPHXZNXHUNRHNLMIJNMXPNYMJZNQZBVCZQNMYNZMIONIBWZNBHIMYCHXNMXPNCXIBWPZNYOZANCXNTHWGNQWLACQQCHX ```