ABSTRACT
Substitution ciphers encrypt text by substituting one character
for another. In this case, the key is the user-defined substitution
mapping for the characters contained in the plaintext space.
Cryptanalysis, or code breaking, occurs when Oscar attempts to
recover plaintext sent over an open channel without knowledge of
2.1 it was determined that a substitution cipher whose plaintext
and ciphertext spaces are the English alphabet has a key space
of size 26! ≈ 4 × 1026. One method of performing cryptanalysis on a substitution cipher (or any cryptosystem) is to try all
possible mappings (or keys) to see if the decrypted text is intelli-
gible. This method is referred to as the Brute Force or Exhaustive
Key Search method. Although this method is inefficient, Exhaus-
tive Key Search does provide an upper bound for the complexity,
time, and resources required to attack a system. Unfortunately (or
fortunately, for Oscar), other attacks may exist that reduce these
parameters, making Oscar’s job significantly easier. Moreover,
these attacks may not always be based in mathematical analysis.
Social engineering attacks are often cheaper and easier solutions
versus more traditional cryptanalysis, achieving the same results
through bribery, trickery, etc. [74, 276].