Foundations of Symmetric Cryptography
This chapter presents theoretical foundations of symmetric-key cryptography, or secret-key cryptography. The currently most widely used symmetric algorithms are given. It starts with the concept of a Feistel network which constitutes an important design p
- PDF / 547,604 Bytes
- 42 Pages / 441 x 666 pts Page_size
- 4 Downloads / 258 Views
Foundations of Symmetric Cryptography
This chapter presents theoretical foundations of symmetric-key cryptography, or secret-key cryptography. The currently most widely used symmetric algorithms are given. It starts with the concept of a Feistel network which constitutes an important design principle underlying many advanced symmetric encryption schemes. Among the most well-known symmetric-key ciphers are DES (Data Encryption Standard) and its official successor AES (Advanced Encryption Standard), followed by several others also well known and also often used in practice such as IDEA (International Data Encryption Algorithm) or the RC (Rivest Cipher) family of algorithms.
3.1 Idea of Symmetric Cryptography As indicated in Chap. 1, symmetric-key cryptography uses the same key for encryption and decryption, or the decryption key can easily be computed from the encryption key, and the other way round. Usually, symmetric-key ciphers are very fast. Their main disadvantage is that a secret key must be agreed or transferred securely between two parties before they can start communicating with such a cipher. It always requires an earlier-established secure method of key exchange. In the traditional framework this used to be arranged via special couriers. In the computerized world, however, there is always a serious threat that the secret key could be intercepted by an unauthorized party. (In this book for simplicity such an unauthorized party is called an intruder, or adversary.) Since every symmetric cipher’s security is based on the security of its keys, the keys must be kept secret. Compromising a key in such ciphers enables anyone who has the key to decrypt all the communication cryptograms. Also in future, as long as communication is required to remain secret, the key must be kept secret. Figure 3.1 illustrates the idea of symmetric cryptography. C. Ko´scielny et al., Modern Cryptography Primer, DOI 10.1007/978-3-642-41386-5_3, © Springer-Verlag Berlin Heidelberg 2013
77
78
3
Foundations of Symmetric Cryptography
Fig. 3.1 Encryption and decryption with the same key
3.1.1 The Feistel Network Many of the currently used symmetric algorithms apply some modifications of the so-called Feistel network, i.e., an encryption algorithm introduced by Horst Feistel and published by IBM at the beginning of the 1970s.1 The Feistel network is a block algorithm which takes as an input blocks of an arbitrary even length. A given block is divided into halves, left and right, denoted by L and R respectively. During the encryption process a function fS , dependent on the key S is applied. It returns a pair of transformed halves, L and R , as a result. Proper encryption consists of two substitutions: 1. L := R. 2. R := L XOR fS (R). In the first substitution we replace the left half with the value of the right half, while in the second substitution first we apply the function fS to the right half and then the obtained value along with the left half are processed by the XOR operation. The course of the Feistel algorithm is de
Data Loading...