A: Lack of Parallelism
C: Faulty Comparison
D: Misplaced Modifier
F: Inappropriate Shift
G: Comma Splice
H: Stacked Modifiers and Nouns
I: Sentence Fragment
K: Overloaded Sentences
L: Dangling Modifiers
N: Pronoun Case
R: Sequence of Tenses
S: Pronoun Reference
T: Double Negative
U: Stringy Sentences
W: Fused Sentences
And the text of the essay, with errors highlighted in red and IDed in blue. Hints are marked in green.
Spies are in a perpetual conflict with the spied-upon, who hope to protect their secrets central to this effort are the codes and ciphers that aim to prevent unauthorized persons, be they casual eavesdroppers or professional spies, from deciphering a message (Fused Sentences). Therefore, every spy should know something about codes, from Caesar ciphers to the widely available modern high-security public-key cryptographic systems (Stacked Modifiers and Nouns). This article addresses the histories of how codes are broken and code-writing (Lack of Parallelism). In the history of cryptography, spanning roughly 1000 BC–2000 AD, there hasn't never (Double Negative) been a more interesting time to study codes.
Captain Irving Mayfield, the U.S. Navy intelligence officer in Hawaii at the time of the Pearl Harbor attack who tried to penetrate the Japanese code systems (Sentence Fragment). Preventing the attacks would have been a great triumph for the code breakers, but the Japanese would have known that they (Pronoun Reference) had been compromised.
In fact, Mayfield and other Allied cryptographers were successful, and by the end of World War II the Germans couldn't hardly (Double Negative) send a message without the Allies receiving and deciphering it. The continual, almost habitual, easy, nearly unrestricted access (Stacked Modifiers and Nouns) to the plans of the Axis military was a deciding factor in the war. The actions of the commanders was (Agreement) often hampered by the need to keep the Axis from guessing that their codes had been broken, but commanders often gained subtle advantages from their foreknowledge.
Let us now consider some of them and their histories (Pronoun Reference). One of the simplest methods of disguising a message, known as a Caesar cipher (Sentence Fragment). Each letter in the message is shifted by a certain fixed offset, agreed upon in advance with the person to who (Pronoun Case) the message is sent. Thus, this type of cipher can be described exactly by specifying what letter encodes A, if A is encoded by D, then B is encoded by E, and X by A, for example (Comma Splice). Of course, encoded this way (Dangling Modifier), an eavesdropper can easily recover the message by brute force. Because there is only 26 possible Caesar ciphers in English (Agreement), it is an easy task to try them all, even by hand.
Only slightly harder to decipher (Dangling Modifier), we now consider the substitution cipher. People using a substitution cipher choose a mapping by which each occurrence of a given character in her (Agreement) message is replaced by another symbol (often just a different letter). Naturally, that mapping must be shared with the recipient in advance, and the security of the code depends on the assumption that an eavesdropper won't never (Double Negative) know the particular mapping that has been agreed upon. Without the mapping, he can't hardly manage (Double Negative) to read the message. From a numerical standpoint, it is much harder to brute force a substitution cipher, since there is 26! different possible ciphers (Agreement). Even a computer will take billions of years, if we were to ask it to try all the combinations (Sequence of Tenses).
However, simple substitution ciphers, and many similar schemes, can be broken just in minutes (Misplaced Modifier) by the technique of frequency analysis. Frequency analysis relies on the fact that the frequency of English letters in a message are (Agreement) far from random. In a long segment of standard English, it (Pronoun Reference) almost always has the most Es, followed by Ts, and so on. Short samples may not necessarily (Sentence Fragment). Generally, one can then identify the most common symbol in the code as representing the letter E, other techniques can be applied as well, such as common letter groupings (Comma Splice). Spaces provided in the code can be a great aid to someone whom (Pronoun Case) is trying to decipher the code, because common words like 'the' become apparent. Once a few letters have been established and reading them out (Lack of Parallelism), other words can be guessed. It isn't not at all (Double Negative) complicated to figure out the rest of the message. Just by guessing word structures (Sentence Fragment). The success of frequency analysis has completely and utterly (Wordiness) eliminated the possibility of using substitution ciphers for important communications. There are even a number of people for who (Pronoun Case) a substitution cipher is just a fun little puzzle.
The underlying improvement of the 16th century Vigenère cipher is basic and simple in nature (Wordiness): Blaise de Vigenère realized that if different ciphertext symbols could represent the same plaintext character, it would be nearly impossible to break the cipher. His system combined a repeated codeword and a basic Caesar cipher, so you encode each message letter with a cipher that sends A to the corresponding letter of the codeword string (Inappropriate Shift).
The polyalphabetic Vigenère cipher was simple, required a small key (the codeword), and couldn't hardly (Double Negative) be cracked for about 300 years. The weakness of the nigh-impregnable Vigenère polyalphabetic substitution cipher (Stacked Modifiers and Nouns) is the repeating codeword. Groupings that shows up (Agreement) frequently in the cipher text and correspond to the same plaintext tend to be separated by multiples of the codeword length.
Essentially, the repeating codeword allows a cryptanalyst to find patterns in the ciphertext, while those patterns, which are likely to correlate with patterns in the plaintext, can suggest the length of the keyword thus letting the cryptanalyst divide the message into groups encoded with the same Caesar cipher, which are vulnerable to frequency analysis (Overloaded Sentences). Therefore a one-time pad, a codeword key that is as long as the message itself, and a different key for each message (Sentence Fragment). If the pad is composed of truly random numbers, then it is impossible for an eavesdropper to reconstruct the message unless him (Pronoun Case) finds the key some other way. There only (Misplaced Modifier) are two flaws with this method: the key must be large, and the key must be exchanged securely ahead of time.
Complex cryptosystems inherently, by their nature, (Wordiness) are not well suited to manual encryption and decryption, so automated encoders were created. By the end of the war, the Allies were able to read both German and Japanese codes, while our own encryption remained unbroken (Inappropriate Shift).
A form of pseudo-random one-time pad just (Misplaced Modifier) was at the heart of each of the mechanical encryption machines. The Enigma machine, for instance, consisted of a keyboard of switches, rotors and reflectors (in a known initial setting), and displaying on a lightboard (Lack of Parallelism). When an operator pressed a key, one of the lights on its (Pronoun Reference) lightboard would light up, on the basis of the scrambled electrical connection of the rotors. After each keypress, the machine would move the rotors to alter the cipher, by means of a predictable if somewhat complex user-configurable pre-set mechanism (Stacked Modifiers and Nouns).
In the 1970s, the combination of the development of powerful digital computers and the ability to create a shared secret over an insecure communications channel (Sentence Fragment). Bob and Alice compute functions whose final results are the same number, yet it is extremely difficult for Eve, whom (Pronoun Case) listens to their conversation, to calculate that number without knowing the secret numbers chosen by Alice and Bob.
A further development in ciphers was the invention of public-key systems, which are asymmetric ones (Pronoun Reference). Public-key systems works (Agreement) differently from the standard symmetric ciphers we have considered thus far. If Bob wishes to receive secure messages, he generates two related keys using particular functions, after which him (Pronoun Case) publishes one of the two keys (the public key) and keeps the other secret (the private key). Alice, who doesn't want nobody (Double Negative) to be able to read her message to Bob, looks up this published key. She encrypt (Agreement) her message using that key and a special cipher algorithm. That cipher algorithm has been specially designed to work with Bob generating he (Pronoun Case) two keys, so that a message encrypted with one key can only be decrypted with the other key. This system is more complicated (Faulty Comparison) because Alice cannot decrypt her own message to Bob. The public-key paradigm allows Alice and Bob to have secure communications, and don't (Agreement) require any explicit information exchange between them other than their messages.
We can thus see that there has been a great development in cryptography in the past 3000 years, and you now have a number of excellent options for securing communications (Inappropriate Shift). The cryptanalyst or spy is frustrated because while public-key systems are not completely and utterly impossible (Wordiness) to break, most experts consider this event highly unlikely. Modern spies are thus left with methods, which although as old as codes themselves, extending back as long as good written histories tell us, are not as much analytic as subversive, although good knowledge of the structures of codes can help direct these subversive actions (Stringy Sentences). Hopefully this short introduction to the history of codes has helped inspire spies to investigate coding systems if they won't be already familiar with codes (Sequence of Tenses).
2006 MIT Mystery Hunt