Pseudo-Hadamard transform

The pseudo-Hadamard transform is a reversible transformation of a bit string that provides cryptographic diffusion.

The bit string must be of even length so that it can be split into two bit strings a and b of equal lengths, each of n bits.

To compute the transform for Twofish algorithm, a' and b', from these we use the equations: To reverse this, clearly: On the other hand, the transformation for SAFER+ encryption is as follows: The above equations can be expressed in matrix algebra, by considering a and b as two elements of a vector, and the transform itself as multiplication by a matrix of the form: The inverse can then be derived by inverting the matrix.

However, the matrix can be generalised to higher dimensions, allowing vectors of any power-of-two size to be transformed, using the following recursive rule: For example: This is the Kronecker product of an Arnold Cat Map matrix with a Hadamard matrix.

This cryptography-related article is a stub.