- MDS matrix
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×n matrix A over afinite field K is an MDS matrix if it is thetransformation matrix of alinear transformation f(x)=Ax from Kn to Km 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, i.e. alinear code that reaches theSingleton bound .Let be the matrix obtained by joining the
identity matrix Idn to A.Then a necessary and sufficient condition for a matrix A to be MDS is that every possible n×nsubmatrix obtained by removing m rows from is non-singular.Reed-Solomon code s have the MDS property and are frequently used to obtain the MDS matrices used in cryptographic algorithms.Serge Vaudenay suggested using MDS matrices incryptographic primitive 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 s as AES,SHARK , Square,Twofish , Manta,Hierocrypt , and Camellia, and in thestream cipher MUGI and thecryptographic hash function WHIRLPOOL .References
* cite conference
author = Serge Vaudenay
title = On the Need for Multipermutations: Cryptanalysis of MD4 and SAFER
booktitle = 2nd International Workshop onFast Software Encryption (FSE '94)
pages = pp.286–297
publisher =Springer-Verlag
date =November 16 1994
location =Leuven
url = http://citeseer.ist.psu.edu/vaudenay94need.html
format =PDF /PostScript
accessdate = 2007-03-05
* cite conference
author =Vincent Rijmen ,Joan Daemen ,Bart Preneel , Anton Bosselaers, Erik De Win
title = The Cipher SHARK
booktitle = 3rd International Workshop on Fast Software Encryption (FSE '96)
pages = pp.99–111
publisher = Springer-Verlag
date = February 1996
location =Cambridge
url = http://citeseer.ist.psu.edu/rijmen96cipher.html
format = PDF/PostScript
accessdate = 2007-03-06
* cite paper
author =Bruce Schneier , John Kelsey, Doug Whiting,David Wagner , Chris Hall,Niels Ferguson
title = The Twofish Encryption Algorithm
date =June 15 1998
url = http://www.schneier.com/paper-twofish-paper.html
format = PDF/PostScript
accessdate = 2007-03-04
Wikimedia Foundation. 2010.