In
cryptography
Cryptography, or cryptology (from "hidden, secret"; and ''graphein'', "to write", or ''-logy, -logia'', "study", respectively), is the practice and study of techniques for secure communication in the presence of Adversary (cryptography), ...
, a round or round function is a basic transformation that is repeated (
iterated) multiple times inside the algorithm. Splitting a large algorithmic function into rounds simplifies both implementation and
cryptanalysis
Cryptanalysis (from the Greek ''kryptós'', "hidden", and ''analýein'', "to analyze") refers to the process of analyzing information systems in order to understand hidden aspects of the systems. Cryptanalysis is used to breach cryptographic se ...
.
For example, encryption using an oversimplified three-round cipher can be written as
, where is the
ciphertext
In cryptography, ciphertext or cyphertext is the result of encryption performed on plaintext using an algorithm, called a cipher. Ciphertext is also known as encrypted or encoded information because it contains a form of the original plaintext ...
and is the
plaintext. Typically, rounds
are implemented using the same function, parameterized by the round constant and, for
block ciphers, the ''round key'' from the
key schedule
In cryptography, the so-called product ciphers are a certain kind of cipher, where the (de-)ciphering of data is typically done as an iteration of '' rounds''. The setup for each round is generally the same, except for round-specific fixed va ...
. Parameterization is essential to reduce the self-similarity of the cipher, which could lead to
slide attacks.
Increasing the number of rounds "almost always" protects against
differential and
linear cryptanalysis
In cryptography, linear cryptanalysis is a general form of cryptanalysis based on finding affine
Affine may describe any of various topics concerned with connections or affinities.
It may refer to:
* Affine, a Affinity_(law)#Terminology, relat ...
, as for these tools the effort grows exponentially with the number of rounds. However, increasing the number of rounds does not ''always'' make weak ciphers into strong ones, as some attacks do not depend on the number of rounds.
The idea of an
iterative cipher using repeated application of simple
non-commutating operations producing
diffusion and confusion goes as far back as 1945, to the then-secret version of
C. E. Shannon's work "
Communication Theory of Secrecy Systems";
Shannon was inspired by mixing transformations used in the field of
dynamical systems theory
Dynamical systems theory is an area of mathematics used to describe the behavior of complex systems, complex dynamical systems, usually by employing differential equations by nature of the ergodic theory, ergodicity of dynamic systems. When differ ...
(cf.
horseshoe map). Most of the modern ciphers use
iterative design with number of rounds usually chosen between 8 and 32 (with 64 and even 80 used in
cryptographic hash
A cryptographic hash function (CHF) is a hash algorithm (a map of an arbitrary binary string to a binary string with a fixed size of n bits) that has special properties desirable for a cryptographic application:
* the probability of a particu ...
es).
For some
Feistel-like cipher descriptions, notably that of the
RC5, a term "half-round" is used to define the transformation of part of the data (a distinguishing feature of the Feistel design). This operation corresponds to a full round in traditional descriptions of Feistel ciphers (like
DES).
Round constants
Inserting round-dependent constants into the encryption process breaks the symmetry between rounds and thus thwarts the most obvious slide attacks. The technique is a standard feature of most modern block ciphers. However, a poor choice of round constants or unintended interrelations between the constants and other cipher components could still allow slide attacks (e.g., attacking the initial version of the
format-preserving encryption mode FF3).
Many
lightweight ciphers utilize very simple key scheduling: the round keys come from adding the
round constants to the
encryption key
A key in cryptography is a piece of information, usually a string of numbers or letters that are stored in a file, which, when processed through a cryptographic algorithm, can encode or decode cryptographic data. Based on the used method, the key ...
. A poor choice of round constants in this case might make the cipher vulnerable to
invariant attack
Invariant and invariance may refer to:
Computer science
* Invariant (computer science), an expression whose value doesn't change during program execution
** Loop invariant, a property of a program loop that is true before (and after) each iterati ...
s; ciphers broken this way include
SCREAM and
Midori64.
Optimization
Daemen and
Rijmen assert that one of the goals of optimizing the cipher is reducing the overall workload, the product of the round complexity and the number of rounds. There are two approaches to address this goal:
* local optimization improves the worst-case behavior of a single round (two rounds for Feistel ciphers);
*
global optimization
Global optimization is a branch of operations research, applied mathematics, and numerical analysis that attempts to find the global minimum or maximum of a function or a set of functions on a given set. It is usually described as a minimization ...
optimizes the worst-case behavior of more than one round, allowing the use of less sophisticated components.
Reduced-round ciphers
Cryptanalysis
Cryptanalysis (from the Greek ''kryptós'', "hidden", and ''analýein'', "to analyze") refers to the process of analyzing information systems in order to understand hidden aspects of the systems. Cryptanalysis is used to breach cryptographic se ...
techniques include the use of versions of ciphers with fewer rounds than specified by their designers. Since a single round is usually cryptographically weak, many attacks that fail to work against the full version of ciphers will work on such ''reduced-round'' variants. The result of such attack provides valuable information about the strength of the algorithm, a typical break of the full cipher starts out as a success against a reduced-round one.
Sateesan et al. propose using the reduced-round versions of lightweight hashes and ciphers as
non-cryptographic hash functions.
References
Sources
*
*
*
*
*
*
*
*
*
* {{cite journal , last = Schneier , first = Bruce , author-link = Bruce Schneier , title = A Self-Study Course in Block-Cipher Cryptanalysis , journal = Cryptologia , volume = 24 , issue = 1 , pages = 18–34 , date = January 2000 , url = http://www.madchat.fr/crypto/codebreakers/cryptanalysis.pdf , doi = 10.1080/0161-110091888754 , s2cid = 53307028
Cryptographic primitives