In the conclusions section of the first chapter, I classify five attributes of cipher systems that contribute to their strength, by adding convolution, alternation, and indirection to Shannon's confusion and diffusion.
In the conclusions section of this chapter, I attempt to classify the cipher systems themselves, based on the different constructions they use.
Can cryptanalytic techniques also be usefully categorized?
One basic technique involves trying every possible key until one has found the right one. Sometimes, this technique is usable, for example, in cracking DES, or in attempting to crack a route transposition.
Sometimes, straight logical deduction can be used when deciphering a message. Factoring the modulus to crack RSA is an example of this, and so is the technique of symmetry of position, which can be used against sliding-alphabet Vigenère.
Collecting information about messages can sometimes be a cryptanalytic technique in itself; in breaking a simple substitution, collecting letter and contact frequencies directs one to the appropriate possibilities to try.
The kappa test allows one to align parts of messages enciphered with the same part of a keystream, which allows them to be read without any knowledge of the actual key which may have been used to generate the keystream. This combines collecting information, and switching from trying possibilities for the key itself to looking at the key in a transformed form or at consequences of the key.
But to my mind the most common and fundamental cryptanalytic technique is to find ways to replace a brute-force search on the key as a whole with brute-force searches on parts of the key.
Thus, in breaking a monalphabetic substitution cipher, one can test the possibility that a certain letter stands for E separately from all the possibilities of what the other letters may stand for. The Bombe tested different rotor positions, and all the rotor orders also had to be tried, but it was designed so that the plugboard settings could be found separately. Differential cryptanalysis, when applied to DES, tests for the consequences of individual bits of the key; when applied to a cipher with a fancier key schedule, it tests for portions of the subkeys.
Table of Contents