HOME

TheInfoList



OR:

An MDS matrix (maximum distance separable) is a matrix representing a function with certain diffusion properties that have useful applications in cryptography. Technically, an m \times n matrix A over a finite field K is an MDS matrix if it is the transformation matrix of a linear transformation f(x) = Ax from K^n to K^m such that no two different (m + n)-tuples of the form (x, f(x)) coincide in n or more components. Equivalently, the set of all (m + n)-tuples (x, f(x)) is an
MDS code In coding theory, the Singleton bound, named after Richard Collom Singleton, is a relatively crude upper bound on the size of an arbitrary block code C with block length n, size M and minimum distance d. It is also known as the Joshibound. proved b ...
, i.e., a linear code that reaches the Singleton bound. Let \tilde A = \begin \mathrm_n \\ \hline \mathrm \end be the matrix obtained by joining the
identity matrix In linear algebra, the identity matrix of size n is the n\times n square matrix with ones on the main diagonal and zeros elsewhere. Terminology and notation The identity matrix is often denoted by I_n, or simply by I if the size is immaterial o ...
\mathrm_n to A. Then a necessary and sufficient condition for a matrix A to be MDS is that every possible n \times n submatrix obtained by removing m rows from \tilde A is non-singular. This is also equivalent to the following: all the sub-determinants of the matrix A are non-zero. Then a binary matrix A (namely over the field with two elements) is never MDS unless it has only one row or only one column with all components 1. Reed–Solomon codes have the MDS property and are frequently used to obtain the MDS matrices used in cryptographic algorithms.
Serge Vaudenay Serge Vaudenay (born 5 April 1968) is a French cryptographer and professor, director of the Communications Systems Section at the École Polytechnique Fédérale de Lausanne Serge Vaudenay entered the École Normale Supérieure in Paris as a '' ...
suggested using MDS matrices in
cryptographic primitive Cryptographic primitives are well-established, low-level cryptographic algorithms that are frequently used to build cryptographic protocols for computer security systems. These routines include, but are not limited to, one-way hash functions and ...
s to produce what he called ''multipermutations'', not-necessarily linear functions with this same property. These functions have what he called ''perfect diffusion'': changing t of the inputs changes at least m - t + 1 of the outputs. He showed how to exploit imperfect diffusion to cryptanalyze functions that are not multipermutations. MDS matrices are used for diffusion in such
block cipher In cryptography, a block cipher is a deterministic algorithm operating on fixed-length groups of bits, called ''blocks''. Block ciphers are specified cryptographic primitive, elementary components in the design of many cryptographic protocols and ...
s as
AES AES may refer to: Businesses and organizations Companies * AES Corporation, an American electricity company * AES Data, former owner of Daisy Systems Holland * AES Eletropaulo, a former Brazilian electricity company * AES Andes, formerly AES Gener ...
, SHARK, Square, Twofish, Anubis,
KHAZAD In cryptography, KHAZAD is a block cipher designed by Paulo S. L. M. Barreto together with Vincent Rijmen, one of the designers of the Advanced Encryption Standard ( Rijndael). KHAZAD is named after Khazad-dûm, the fictional dwarven realm in t ...
, Manta,
Hierocrypt In cryptography, Hierocrypt-L1 and Hierocrypt-3 are block ciphers created by Toshiba in 2000. They were submitted to the NESSIE project, but were not selected. Both algorithms were among the cryptographic techniques recommended for Japanese gover ...
, Kalyna and Camellia, and in the
stream cipher stream cipher is a symmetric key cipher where plaintext digits are combined with a pseudorandom cipher digit stream (keystream). In a stream cipher, each plaintext digit is encrypted one at a time with the corresponding digit of the keystream ...
MUGI In cryptography, MUGI is a pseudorandom number generator (PRNG) designed for use as a stream cipher. It was among the cryptographic techniques recommended for Japanese government use by CRYPTREC in 2003, however, has been dropped to "candidate" ...
and the cryptographic hash function Whirlpool.


References

* * * {{crypto-stub Cryptography