Boolean Functions and their Cryptographic Criteria
The product of any two distinct rows or columns of
𝐻 is zero. Hadamard matrix is often defined
recursively by:
𝐻𝑛−1 𝐻𝑛−1
𝐻𝑛 = ( ) , 𝐻𝑜 = (1)
𝐻𝑛−1 −𝐻𝑛−1
For example:
1 1 1 1
1 1
𝐻1 = ( ), 𝐻2 = ( 1 −1 1 −1) etc.
1 −1 1 1 1 1
1 −1 1 −1
2𝑛 × 2𝑛 matrices 𝐻𝑖 are also called Sylvester-Hadamard matrices. Hadamard matrix can also be
described as a Kronecker product: 𝐻𝑛 = 𝐻1 ⊗ 𝐻𝑛−1 , where the Kronecker product is defined as
follows:
𝑎11 𝐵 ⋯ 𝑎1𝑛 𝐵
𝐴⊗B=( ⋮ ⋱ ⋮ ),
𝑎𝑚1 ⋯ 𝑎 𝑚𝑛 𝐵
where 𝐴 is a 𝑚 × 𝑛 matrix. It is important to note, that Kronecker product is not commutative,
although it is associative and distributive.
Now the Fourier transform of function 𝑓 can be described through a Sylvester-Hadamard function as
follows: 𝐹𝑓 = 𝑓𝐻𝑛 . Inverse of that is similarly 𝑓 = 2 −𝑛 𝐹𝑓 𝐻𝑛 .
8
4. Correlation immunity and algebraic immunity
4.1 Cross-correlation and autocorrelation
Definition 4.1. The following function is called the cross-correla...