next up previous
Next: 6.2 Why Swaps Are Up: 6. Improving Decryption Methods Previous: 6. Improving Decryption Methods

   
6.1 Introduction to ``Hill-Climbing''

Figure 30 summarizes the distances of bigram tables for each key for Figure 29, reorganized as follows. The corners of the ``hexagon'' indicate each key with its corresponding bigram distance nearby. Two keys/corners are connected with a line if each key is obtainable from the other key by swapping two letters.

  
Figure 30: Reformulation of Keys and Distances from Figure 29
\begin{figure}
\begin{center}
\setlength{\unitlength}{1pt}
\fbox{\begin{picture...
...x{$\leftrightarrow$ }\texttt{$'$ l$'$ }}}
\end{picture}}\end{center}\end{figure}

Rather than inspecting each key, here is a modifed approach. Consider trying to reach the best key "lna" from the starting key "aln" by traveling along a ``path'' in Figure 30. One ``path'' is from "aln" to "nla" to "lna", which has the property that from each key we go to its best ``neighboring'' key:

This approach of going to the best neighbor is hill-climbing and is fleshed out in Section 7.1. In the meantime, note the following: Swaps keep coming up! This suggests we should take a closer look at swaps.

Roadmap
Section 3.7 Encipher plaintext $\Rightarrow$ scramble frequencies.
Section 3.7 Decipher ciphertext $\Rightarrow$ unscramble frequencies.
Section 4.2 (Hope) Unscramble frequencies $\Rightarrow$ decipher ciphertext
Section 4.3 Unscramble = Bring ``close'' to intrinsic frequencies
  Approximate intrinsic frequencies with training text
  Assume ciphertext is medium to large so that unscrambled frequencies resemble intrinsic frequencies
Section 4.4 Use the L1 distance to measure ``closeness''; ignore labels.
Section 5.1 Sorting unigram frequencies does not work, but ``almost'' does.
  (Hope) When the frequency table for ciphertext matches the table for training text, read the encryption key off of the labels
Section 5.2 ``Sort bigram frequencies'' is problematic.
Section 5.3 Exhaustive search is too slow; therefore, need an incomplete search.
Section 6.2 Q: How do we perform an effective, incomplete search?
Section 6.1 (Idea) Hill-Climbing: pick the best ``neighbor''
$(\rightarrow)$     Section 6.2 Why swaps are so important, e.g. used to generate ``neighbors''


next up previous
Next: 6.2 Why Swaps Are Up: 6. Improving Decryption Methods Previous: 6. Improving Decryption Methods
Thomas Yan
2000-05-01