*** Welcome to piglix ***

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 a finite field K is an MDS matrix if it is the transformation matrix of a linear 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. a linear code that reaches the Singleton 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×n submatrix obtained by removing m rows from is non-singular. This is also equivalent to the following: all the sub-determinants of the matrix A are non-null. 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.


...
Wikipedia

...