4.2 Symmetric cryptosystems
To recap from Chapter 2, Secure Channel and the CIA Triad, confidentiality is achieved using functions fK : ℳ→𝒞 that transform the private information m, also referred to as plaintext, into a scrambled message c = fK(m), referred to as ciphertext. Here, fK is an encryption function. It maps a plaintext m from some larger set ℳ, the plaintext space, to a ciphertext c which, in turn, is an element of some larger set 𝒞, the cipher space.
The functions fK must be bijections, so that we can form the inverse functions, denoted by fK−1, which transform the ciphertexts back to the original plaintexts. The inverse functions are the decryption functions. The bijectivity of the fK also means that ℳ and 𝒞 have the same number of elements.
In order to specify a complete symmetric cryptosystem, we need to define all of its ingredients:
The plaintext space ℳ and the cipher space 𝒞
The keyspace...