Table of Contents:

# Symmetric-key encryption

§1.5 considers symmetric-key encryption. Public-key encryption is the topic of §1.8.

## Overview of block ciphers and stream ciphers

1.24 Definition Consider an encryption scheme consisting of the sets of encryption and decryption transformations {Ee: e € K) and {Д*: d e 1C}, respectively, where K. is the key space. The encryption scheme is said to be symmetric-key if for each associated encryp- tion/decryption key pair- (e, d), it is computationally “easy” to determine d knowing only e, and to determine e from d.

Since e = d in most practical symmetric-key encryption schemes, the term symmetric- key becomes appropriate. Other terms used in the literature are single-key, one-key,private- key? and conventional encryption. Example 1.25 illustrates the idea of symmetric-key encryption.

1.25 Example (symmetric-key encryption) Let А = {А, В, C,... , X, Y, Z} be the English alphabet. Let M and C be the set of all strings of length five over A. The key e is chosen to be a permutation on A. To encrypt, an English message is broken up into groups each having five letters (with appropriate padding if the length of the message is not a multiple of five) and a permutation e is applied to each letter one at a time. To decrypt, the inverse permutation d = e-1 is applied to each letter of the ciphertext. For instance, suppose that the key e is chosen to be the permutation which maps each letter to the one which is three positions to its right, as shown below

-’Private key is a term also used in quite a different context (see §1.8). The term will be reserved for the latter usage in this book.

A message is encrypted to

A two-party communication using symmetric-key encryption can be described by the block diagram of Figure 1.7, which is Figure 1.6 with the addition of the secure (both con-

Figure 1.7: Two-party communication using encryption, with a secure channel for key exchange. The deception key d can be efficiently computed from the enciyption key e.

fidential and authentic) channel. One of the major issues with symmetric-key systems is to find an efficient method to agree upon and exchange keys securely. This problem is referred to as the key distribution problem (see Chapters 12 and 13).

It is assumed that all parties know the set of encryption/decryptiontransformations (i.e., they all know the enciyption scheme). As has been emphasized several times the only information which should be required to be kept secret is the key d. However, in symmetric-key enciyption, this means that the key e must also be kept secret, as d can be deduced from e. In Figure 1.7 the encryption key e is transported from one entity to the other with the understanding that both can construct the decryption key d.

There are two classes of symmetric-key encryption schemes which are commonly distinguished: block ciphers and stream ciphers.

1.26 Definition A block cipher is an enciyption scheme which breaks up the plaintext messages to be transmitted into strings (called blocks) of a fixed length t over an alphabet A, and encrypts one block at a time.

Most well-known symmetric-key enciyption techniques are block ciphers. A number of examples of these are given in Chapter 7. Two important classes of block ciphers are substitution ciphers and transposition ciphers (§1.5.2). Product ciphers (§1.5.3) combine these. Stream ciphers are considered in §1.5.4, while comments on the key space follow in §1.5.5.