About the Key Space
A secret key, also known as a symmetric key, enciphering function E in which encryption and decryption use the same key K transforms a plaintext P into a ciphertext C. Similarly, this encryption transformation can be inverted by the decryption function D as illustrated in Figure 1.5.
FIGURE 1.5 Symmetric key encryption and decryption
The strength of modern secret key encryption methods rests in the secrecy of the encryption key, not in the algorithm being used. Breaking such cryptographic systems, therefore, can be achieved using the process of exhaustive searches over the key space. A key space is the set of all possible key values that a particular enciphering algorithm admits. A transposition example over the English alphabet when thought of as an arbitrary permutation over the alphabet set will consist of 26! Keys, each corresponding to one permutation. While further constraining the permutation method to one that simply maps each letter in the alphabet to one which is at a fixed number of positions to its right (with a wrap around), and by enciphering each letter at a time (block length = 1), the key space narrows down to the much smaller set of 26 elements containing the integers {1,2,3,...,26}. Adding further complexity to this simple permutation transformation by making the block length equal to 3, and mapping each (p1p2p3) block into (e1e2e3) where each letter has its own mapping to a letter at a fixed position to its right, yields a key space with a size of (26!)3.
Most common secret key cryptographic systems use fixed-size keys that are randomly generated. These systems can certainly be exposed to the exhaustive search of the key space. A necessary, although not sufficient, condition for any cryptographic system to be secure is that the key space be large enough to preclude exhaustive search attacks. Ironically, a speedy performance of any such enciphering methods will aid in the brute force, exhaustive, search attack.