[JoGu]

Cryptology

III.5 Cryptanalysis of Bitblock Ciphers

a7Hzq .#5r<
kÜ\as TâÆK$
ûj(Ö2 ñw%h:
Úk{4R f~`z8
¤˜Æ+Ô „&¢Dø

Contents

  1. The idea of linear cryptanalysis [PDF]
  2. Example A: a one-round cipher [PDF]
  3. Approximation table, correlation matrix, and linear spectrum of a Boolean map [PDF]
  4. Example B: a two-round cipher [PDF]
  5. Linear paths [PDF]
  6. Parallel arrangement of S-boxes [PDF]
  7. Mini-Lucifer [PDF]
  8. Systematic search for linear relations [PDF]
  9. The idea of differential cryptanalysis [PDF]

Here is the complete Section III.5 (with small gaps) as a PDF file.


Overview

For cryptanalyzing bitblock ciphers we know some basic approaches:

  1. exhaustion = brute-force searching the complete key space
  2. algebraic attack, see Chapter 2
  3. Statistical attacks against hidden linearity:
    1. linear cryptanalysis (MATSUI/YAMAGISHI EUROCRYPT 92), the main subject of this section
    2. differential cryptanalysis (MURPHY, SHAMIR, BIHAM 1990)
    3. generalizations and mixtures of (a) and (b)

Differential cryptanalysis was known at IBM and NSA already in 1974 when designing DES. In contrast apparently linear cryptanalysis—though conceptually simpler—was unknown to the designers of DES. Accordingly the resistance of DES against linear cryptanalysis is suboptimal. However an important design criterion was:

SHAMIR soon found (CRYPTO 85) »linear approximations« for the S-boxes whose probability is higher than by pure chance. However it took another 7 years until MATSUI succeeded with turning this observation into a systematic attack method.

In the following years many people developed generalizations and combinations of linear and differential cryptanalysis:

All these attacks—including linear and differential cryptanalysis—hardly break a cipher in the sense of classical cryptanalysis. They usually assume lots of known plaintexts, much more than an attacker could gather in a realistic scenario. Therefore a more adequate term is »analysis« instead of »attack«. The analyses make sense for finding measures for some partial aspects of security of bitblock ciphers. They measure security for example by the number of known plaintext blocks needed for the attack. If a cipher resists an attacker even with exaggerated assumptions on her capabilities, then we feel safe to trust it in real life.

Should we take an attack with 243 known plaintext blocks seriously? For an answer see the FAQ.

Here we see cryptanalysis from the »legal« facet: It isn't used for eavesdropping, but is an important tool for the construction of strong ciphers.

Given an SP-network the analysis starts with the nonlinear components of the single rounds, in particular with the S-boxes. The next step is extending the potential attack over several rounds. This shows how the cost of the attack grows with the number of rounds. In this way we find criteria for the number of rounds for which the cipher is »secure«—at least from this special attack.

By the way we should never forget that the attack always relates to a certain algebraic structure; in most cases to the structure of the plaintext space as a vector space over F2. Of course a similar attack could relate to another structure. A seemingly complex map could look simple if considered with the structure as cyclic group Z/2nZ in mind—or even with »exotic« structures invented for the analysis of this single map. In the following however we only consider the structure as a vector space over F2, the structure that is best understood.


Security Criteria for Bitblock Ciphers

To escape attacks bitblock ciphers, or their round maps, or their S-boxes, should fulfill some requirements.

For background theory see the mathematical appendix D.

Some of these criteria are compatible with each other, some criteria contradict other ones. Therefore the design of a bitblock cipher requires a balance between different criteria. Instead of optimizing a map for a single criterion the designer should aim at a uniformly high level for all criteria.

Cipher designers usually decide the conflict between balance and nonlinearity in favour of balance. But there is no really convincing reason for this—the psychological reason seems to be that statistical attacks that use the nonuniform distribution of the output of non-balanced maps are easier to understand and therefore taken more seriously. The trade-off for nonlinearity is then handled by increasing the number of rounds.

In this section we freely use the notations and results from the mathematical appendices A to E—often without explicit reference.


Author: Klaus Pommerening, 2000-Apr-11; last change: 2015-Nov-18.