This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Towards a conjecture on a special class of matrices over commutative rings of characteristic 2

Baofeng Wu wubaofeng@iie.ac.cn Institute of Information Engineering, Chinese Academy of Sciences,
Beijing 100085, China
State Key Laboratory of Cryptology, P. O. Box 5159,
Beijing 100878, China
School of Cybersecurity, University of Chinese Academy of Sciences,
Beijing 100049, China
Abstract

In this paper, we prove the conjecture posed by Keller and Rosemarin at Eurocrypt 2021 on the nullity of a matrix polynomial of a block matrix with Hadamard type blocks over commutative rings of characteristic 2. Therefore, it confirms the conjectural optimal bound on the dimension of invariant subspace of the Starkad cipher using the HADES design strategy. Moreover, we reveal the algebraic structure formed by Hadamard matrices over commutative rings from the perspectives of group algebra and polynomial algebra. An interesting relation between block-Hadamard matrices and Hadamard-block matrices is obtained as well.

keywords:
Hadamard matrix, Block matrix, Characteristic polynomial, Cayley–Hamilton theorem, Group algebra.

1 Introduction

At Eurocrypt 2021, Keller and Rosemarin posed the following conjecture in [8] (an initial version appeared on ePrint in Feb. 2020 111See https://eprint.iacr.org/eprint-bin/versions.pl?entry=2020/179), in their study of the resistance of the HADES design against invariant subspace attacks.

Conjecture 1 (See [8, Conjecture 1] ).

Let k,sk,s\in\mathbb{N}. Let RR be a commutative ring with characteristic 2, and let MM be an s×ss\times s block matrix over RR, each of whose blocks is a 2k×2k2^{k}\times 2^{k} special matrix. Denote the blocks of MM by {Mi,j}i,j=1s\{M_{i,j}\}_{i,j=1}^{s}. Let M′′Rs×sM^{\prime\prime}\in R^{s\times s} be defined by Mi,j′′=λ(Mi,j)M^{\prime\prime}_{i,j}=\lambda(M_{i,j}), where λ(Mi,j)\lambda(M_{i,j}) is the unique eigenvalue of the special matrix Mi,jM_{i,j}. Denote by q(x)=fM′′(x)q(x)=f_{M^{\prime\prime}}(x) the characteristic polynomial of M′′M^{\prime\prime}. Then q(M)2=0q(M)^{2}=0.

In Conjecture 1, a 2k×2k2^{k}\times 2^{k} special matrix over a commutative ring222All rings considered in this paper are assumed to be unital ones. RR is defined recursively in the manner that

M=(ABBA),M=\begin{pmatrix}A&B\\ B&A\end{pmatrix},

where AA and BB are both 2k1×2k12^{k-1}\times 2^{k-1} special matrices over RR (see [8, Definition 1]). Note that when R=𝔽2nR=\mathbb{F}_{2^{n}} is a finite field, a special matrix is just the so-called Finite-Field-Hadamard (FFHadamard) matrix definied in [9]. Since when Char(R)=2\hbox{\rm{Char}}(R)=2 such special matrices share similar properties with the classical {±1}\{\pm 1\}-valued Hadamard matrices, in the following we also call them Hadamard matrices over RR. See Section 2 for some known properties of Hadamard matrices and their applications.

Backgrounds on Conjecture 1

In recent years, one trend in the development of symmetric cryptography is to design specific symmetric ciphers for applications in advanced cryptographic protocals such as MPC, FHE and ZK. These ciphers are often known as arithmetization-oriented ciphers. Different from the design of classical symmetric ciphers, the main goal in the design of arithmetization-oriented ciphers is to reduce the complexity of their arithmetic circuit implementations. Therefore, most of the known designs adapt different structures with classical structures such as Feistel and SPN. The HADES design strategy provides a good approach to design such new symmetric cipher structures.

The HADES design strategy [5] combines the classical SPN structure with the partial-SPN (PSPN) structure [2]. Recall that in a PSPN structure, the S-box is only applied to a part of the state of each round. A HADES structure includes two layers of full SPN rounds at the head and tail of a cipher, and a middle layer of PSPN rounds. Obviously, this kind of design can reduce the number of S-boxes used in a cipher compared with classical SPN sturcture, and thus admits low arithmetic complexity. But on the other hand, since in the PSPN layer part of the input data remains unchanged through the S-box layer of each round, ciphers using the HADES structure may suffer from truncated differential attacks such as invariant subspace attacks. The designers will face new challenges in the design of linear diffusion layers of such ciphers, while in the classical design, MDS matrices are often enough.

In 2019, Grassi et al. [3] announced their designs of two families of arithmetization-oriented hash functions, Starkad and Poesidon, aimed at applications in practical ZK proof systems. Both ciphers use the HADES structure in the design of their underlining permutations, while the difference lies in the input data supported: the permutation for Starkad supports inputs from a finite field 𝔽2n\mathbb{F}_{2^{n}} whereas in the case of Poesidon the finite field is 𝔽p\mathbb{F}_{p} for odd prime pp. In the design of their linear diffusion layers of the round functions, both ciphers use MDS matrices of the Cauchy type, in the constructions of which 2t2t pairwise distinct elements {xi,yi,1it}\{x_{i},~{}y_{i},~{}1\leq i\leq t\} from the underling finite fields are needed. Specifically, for the Cauchy matrix used in Starkad, yi=xi+ry_{i}=x_{i}+r for any 1it1\leq i\leq t where rr is a chosen constant. Another special structure of their round functions is that, only one S-box is used in each round of the PSPN layer. This may admit infinite long invariant subspace trials for the PSPN layer, and further result in successful attacks on the ciphers.

An invariant subspace trial of the PSPN layer means a collection of differential trials in which the S-box in each round will never be active. Assume the matrix in the linear diffusion layer of the round function is MM. We consider

U={x𝔽qt(Mx)1=0for any0},U=\left\{x\in\mathbb{F}_{q}^{t}\mid(M^{\ell}\cdot x)_{1}=0~{}\text{for~{}any}~{}\ell\geq 0\right\},

where 𝔽q\mathbb{F}_{q} is the underling field and (x)1(x)_{1} represents the first component of x𝔽qtx\in\mathbb{F}_{q}^{t}. Note that UU is a vector subspace of 𝔽qt\mathbb{F}_{q}^{t} and in the cases of Starkad and Poesidon, it promises all the infinite long invariant subspace trials. We call UU the invariant subspace of the corresponding cipher. If UU has a high dimension, one may perform attacks on the ciphers combining some other techniques such as algebraic attacks. It is easy to derive dimUt\dim U\geq t-\ell if \ell satisfies M=i=01ciMiM^{\ell}=\sum_{i=0}^{\ell-1}c_{i}M^{i} for some ci𝔽q,0i1c_{i}\in\mathbb{F}_{q},~{}0\leq i\leq\ell-1. Therefore, to get the lower bound of dimU\dim U, one needs to compute degree of the minimal polynomial of MM. This is easy for an instance of MM, but may be quite difficult for a generic construction of MM such as the classes of Cauchy matrices used in Starkad and Poesidon.

Keller and Rosemarin [8] performed a generic successful attack on the Starkad cipher by proving

dimUt(k+1)s\dim U\geq t-(k+1)s (1)

for any t×tt\times t Cauchy-type MDS matrix MM used in Starkad, where t=2kst=2^{k}s. It is a great observation in their attack that this special construction of Cauchy matrix in Starkad can be viewed as an s×ss\times s block matrix with 2k×2k2^{k}\times 2^{k} Hadamard-type blocks over 𝔽2n\mathbb{F}_{2^{n}}. The bound (1) was obtained by proving that q(M)k+1=0q(M)^{k+1}=0, where q(x)q(x) is the characteristic polynomial of M′′M^{\prime\prime} as defined in Conjecture 1. As discussed before, dimension of UU depends on the smallest power \ell such that MM^{\ell} can be represented as 𝔽2n\mathbb{F}_{2^{n}}-linear combinations of lower powers of MM. The nullity of q(M)k+1q(M)^{k+1} admits (k+1)s\ell\leq(k+1)s since degq(x)k+1=(k+1)s\deg q(x)^{k+1}=(k+1)s. Therefore, to improve the lower bound for dimU\dim U, one approach is to prove lower nullity degree of q(M)q(M) such as q(M)2=0q(M)^{2}=0 which will improve the lower bound to t2st-2s. This was left as an open problem in [8] and is where Conjecture 1 comes from.

Our work

In this paper, we give an affirmative answer to the open problem given in [8] by proving Conjecture 1. It turns out that the main argument leads to the proof is incredibly simple, as long as we have found the key point. The proof relies heavily on the algebraic properties of Hadamard matrices over commutative rings of characteristic 2. Therefore, we further study the algebraic structure of the set formed by all such special matrices. We can characterize this algebraic structure by the tool of group algebra and further by multivariate polynomial residue ring. These characterizations can help us to get simpler or even one-sentence proof for the main result q(M)k+1=0q(M)^{k+1}=0 obtained in [8]. We also give a relationship between block-Hadamard matrices (i.e., Hadamard-type block matrices or in other words, Hadamard matrices over a matrix ring) and Hadamard-block matrices (i.e., block matrices with Hadamard-type blocks or in other words, matrices over the ring of Hadamard matrices). This will admits a variant of the result implied by Conjecture 1.

We remark that in the published version (see [4]) of [3], the Starkad cipher is droped partially due to the attacks in [8]. So the goal of this paper is not to improve attacks on Starkad. On one hand, Conjecture 1 is indeed a theoretic problem arising from cryptanalysis of symmetric primitives, and a proof can fill the gap in the theory; on the other hand, by studying Conjecture 1, we can reveal deeper properties of Hadamard matrices, which should be help in future designs of symmetric ciphers applying such matrices.

Outline

The rest of the paper is arranged as follows. In Section 2, we recall some known properties of Hadamard matrices over commutative rings of characteristic 2. In Section 3 we give proof of Conjecture 1 and some discussions will follow in Section 4. In Section 5 we characterize algebraic structure of the set of all Hadamard matrices. In Section 6 we talk about the relationship between block-Hadamard matrices and Hadamard-block matrices. Conclusions and further discussions will be given in Section 7.

2 Known properties of Hadamard matrices

Hadamard matrices over a commutative ring RR have many nice properties. For example, the set of all 2k×2k2^{k}\times 2^{k} Hadamard matrices, k(R)\mathcal{H}_{k}(R), forms a commutative ring (see [8, Proposition 1]), and since it is naturally an RR-module, it forms a commutative RR-algebra. We further characterize structure of this algebra in Section 5 to help understanding properties of Hadamard matrices deeper.

It is easy to observe that any Hk(R)H\in\mathcal{H}_{k}(R) is determined by its first row, say, (a0,a1,,a2k1)R2k(a_{0},a_{1},\ldots,a_{2^{k}-1})\in R^{2^{k}}, from the recursive definition of a Hadamard matrix. By induction on kk, one can prove that each element of HH can be determined by

Hi,j=aij,0i,j2k1.H_{i,j}=a_{i\oplus j},~{}0\leq i,j\leq 2^{k}-1. (2)

Note here that we index the rows and columns of HH starting from 0, and \oplus is the exclusive-or operation of integers, in the sense of distinguishing them with binary vectors in 𝔽2k\mathbb{F}^{k}_{2} through 2-adic expansions. From this explicit representation of Hadamard matrices, one can derive all properties of them presented in [8] in the case Char(R)=2\hbox{\rm{Char}}(R)=2, in a slightly different but more direct manner. We summarize some of them in the following proposition.

Proposition 2.1.

Let RR be a commutative ring of characteristic 2 and H,H1,H2k(R)H,H_{1},H_{2}\in\mathcal{H}_{k}(R) where kk\in\mathbb{N}. Let det()\hbox{\rm{det}}(\cdot) and λ()\lambda(\cdot) denote the determinant and an eigenvalue of any matrix over a commutative ring. Then we have

  1. 1.

    HH has a unique eigenvalue, namely, λ(H)=i=02k1ai\lambda(H)=\sum_{i=0}^{2^{k}-1}a_{i}, where (a0,a1,,(a_{0},a_{1},\ldots, a2k1)a_{2^{k}-1}) is the 1st row of HH;

  2. 2.

    H2=λ(H)2I2kH^{2}=\lambda(H)^{2}I_{2^{k}}, where I2kI_{2^{k}} is the identity matrix;

  3. 3.

    det(H1+H2)=det(H1)+det(H2)\hbox{\rm{det}}(H_{1}+H_{2})=\hbox{\rm{det}}(H_{1})+\hbox{\rm{det}}(H_{2});

  4. 4.

    λ(H1+H2)=λ(H1)+λ(H2)\lambda(H_{1}+H_{2})=\lambda(H_{1})+\lambda(H_{2}), λ(H1H2)=λ(H1)λ(H2)\lambda(H_{1}H_{2})=\lambda(H_{1})\lambda(H_{2}).

From an algebraic point of view, Proposition 2.1 says that the two maps

det:k(R)Randλ:k(R)R\hbox{\rm{det}}:\;\mathcal{H}_{k}(R)\longrightarrow R~{}\text{and}~{}\lambda:\;\mathcal{H}_{k}(R)\longrightarrow R

are both homomorphisms of rings.

Let RR be a commutative ring with characteristic 2 and denote by s×s(k(R))\mathscr{M}_{s\times s}(\mathcal{H}_{k}(R)) and s×s(R)\mathscr{M}_{s\times s}(R) the k(R)\mathcal{H}_{k}(R)- and RR-algebra of s×ss\times s matrices over k(R)\mathcal{H}_{k}(R) and RR, respectively. The homomorphism λ:k(R)R\lambda:\;\mathcal{H}_{k}(R)\longrightarrow R extends naturally to an RR-algebraic homomorphism

λ¯:s×s(k(R))s×s(R),(Mi,j)(λ(Mi,j)).\bar{\lambda}:\;\mathscr{M}_{s\times s}(\mathcal{H}_{k}(R))\longrightarrow\mathscr{M}_{s\times s}(R),~{}\left(M_{i,j}\right)\longmapsto\left(\lambda(M_{i,j})\right).

Similarly, the homomorphism det extends to det¯\overline{\hbox{\rm{det}}} over matrix algebras in this manner. For the purpose of clearity, let Det denote the classical determinalt map for s×ss\times s matrices over commutative rings, which is a homomorphism between multiplicative monoids of rings. Then Proposition 2.1 also implies that the diagrams for multiplicative monoids of algebras (rings)

s×s(k(R))\textstyle{\mathscr{M}_{s\times s}(\mathcal{H}_{k}(R))\ignorespaces\ignorespaces\ignorespaces\ignorespaces\ignorespaces\ignorespaces\ignorespaces\ignorespaces}Detλ¯\scriptstyle{\bar{\lambda}}k(R)\textstyle{\mathcal{H}_{k}(R)\ignorespaces\ignorespaces\ignorespaces\ignorespaces}λ\scriptstyle{\lambda}s×s(R)\textstyle{\mathscr{M}_{s\times s}(R)\ignorespaces\ignorespaces\ignorespaces\ignorespaces}DetR\textstyle{R}

and

s×s(k(R))\textstyle{\mathscr{M}_{s\times s}(\mathcal{H}_{k}(R))\ignorespaces\ignorespaces\ignorespaces\ignorespaces\ignorespaces\ignorespaces\ignorespaces\ignorespaces}Detdet¯\scriptstyle{\overline{\hbox{\rm{det}}}}k(R)\textstyle{\mathcal{H}_{k}(R)\ignorespaces\ignorespaces\ignorespaces\ignorespaces}dets×s(R)\textstyle{\mathscr{M}_{s\times s}(R)\ignorespaces\ignorespaces\ignorespaces\ignorespaces}DetR\textstyle{R}

are both commutative (see also [8, Proposition 8]).

In fact, when R=𝔽2nR=\mathbb{F}_{2^{n}} is a finite field, properties of Hadmard matrices over RR, namely, the FFHadmard matrices, appear in the literature before [8]. They behave as a good source of involutory MDS matrices which are friendly in the design of linear diffusion layers for classical symmetric ciphers. We refer to [10, 1, 9, 6] for some previous work related to them. In addition, when R=R=\mathbb{R} is the real field, we recall another interesting source of Hadmard matrices over RR in cryptography. Let XX be a random variable over 𝔽2k\mathbb{F}_{2}^{k} with probability distribution (x0,x1,,x2k1)(x_{0},x_{1},\ldots,x_{2^{k}-1}), that is, Pr(X=i)=xi\Pr(X=i)=x_{i} for any 0i2k10\leq i\leq 2^{k}-1 distinguished with a binary vector in 𝔽2k\mathbb{F}_{2}^{k} by 2-adic expansion. Let XX^{\prime} be a random variable over 𝔽2k\mathbb{F}_{2}^{k} which is independent with XX with probability distribution (x0,x1,,x2k1)(x_{0}^{\prime},x_{1}^{\prime},\ldots,x_{2^{k}-1}^{\prime}). Then the probability distribution (y0,y1,,y2k1)(y_{0},y_{1},\ldots,y_{2^{k}-1}) of the random variable Y=XXY=X\oplus X^{\prime} can be determined by

(y0,y1,,y2k1)=(x0,x1,,x2k1)T,(y_{0},y_{1},\ldots,y_{2^{k}-1})=(x_{0}^{\prime},x_{1}^{\prime},\ldots,x_{2^{k}-1}^{\prime})\cdot T_{\oplus},

where TT_{\oplus} is just the Hadamard matrix determined by the first row (x0,x1,,(x_{0},x_{1},\ldots, x2k1)x_{2^{k}-1}), namely, (T)i,j=xij(T_{\oplus})_{i,j}=x_{i\oplus j}, 0i,j2k10\leq i,j\leq 2^{k}-1. This result is useful in truncated differential attacks of symmetric ciphers; see [7].

3 Proof of Conjecture 1

In this part we explain how to prove Conjecture 1. It turns out that the main argument leads to the proof is very simple.

For a generic s×ss\times s matrix A=(aij)A=(a_{ij}) over a commutative ring, it is clear from the definition of determinant that Det(A)\hbox{\rm{Det}}(A) is a multivariate polynomial in the entries {aij}\{a_{ij}\}. Assume fA(x)=det(xIsA)=xs+i=1sfixsif_{A}(x)=\hbox{\rm{det}}(xI_{s}-A)=x^{s}+\sum_{i=1}^{s}f_{i}x^{s-i} is the characteristic polynomial of AA. We are then clear that fkf_{k} is a multivariate polynomial in the entries {aij}\{a_{ij}\} for any 1ks1\leq k\leq s. In fact, it is well known fs=(1)sDet(A)f_{s}=(-1)^{s}\hbox{\rm{Det}}(A). A not-so-well-known result is that for 1ks1\leq k\leq s,

fk=(1)ktr(kA),f_{k}=(-1)^{k}\hbox{\rm{tr}}\left({\bigwedge}^{k}A\right),

where tr(kA)\hbox{\rm{tr}}(\wedge^{k}A) is the trace of the kk-th exterior power of the endmorphism induced by AA, which can be computed as the sum of all principle minors of AA of size kk. Since each minor of AA is the determinant of a sub-matrix, of course a multivariate polynomial in the entries of AA, hence fkf_{k} is also a multivariate polynomial in the entries of AA for any 1ks1\leq k\leq s.

Let RR be a commutative ring with characteristic 2, and let MM and M′′M^{\prime\prime} be the matrices in Conjecture 1. Instead of a block matrix, we view MM as a matrix over the commutative ring k(R)\mathcal{H}_{k}(R). Assume the characteristic polynomial of MM and M′′M^{\prime\prime} are Q(x)=i=0sQixiQ(x)=\sum_{i=0}^{s}Q_{i}x^{i} and q(x)=i=0sqixiq(x)=\sum_{i=0}^{s}q_{i}x^{i}, respectively. Note that Qik(R)Q_{i}\in\mathcal{H}_{k}(R) while qiRq_{i}\in R, 0is0\leq i\leq s. From the above discussion, QiQ_{i} and qiq_{i} can be computed by evaluating the same multivariate polynomial in the corresponding entries of MM and M′′M^{\prime\prime}, respectively. Since λ:k(R)R\lambda:\;\mathcal{H}_{k}(R)\longrightarrow R is a homomorphism, we are clear that λ(Qi)=qi\lambda(Q_{i})=q_{i}. From Proposition 2.1 (2), we also have Qi2=λ(Qi)2id=qi2idQ_{i}^{2}=\lambda(Q_{i})^{2}\cdot id=q_{i}^{2}\cdot id, where idid is the identity element of k(R)\mathcal{H}_{k}(R), namely, I2kI_{2^{k}}.

By Cayley–Hamilton theorem for matrices over commutative rings, we know that Q(M)=0Q(M)=0, and of course Q(M)2=0Q(M)^{2}=0. Since the ring k(R)\mathcal{H}_{k}(R) also has characteristic 2, we have

0=Q(M)2=i=0sQi2M2i=i=0s(qi2id)M2i=i=0sqi2M2i=q(M)2.0=Q(M)^{2}=\sum_{i=0}^{s}Q_{i}^{2}M^{2i}=\sum_{i=0}^{s}(q_{i}^{2}\cdot id)M^{2i}=\sum_{i=0}^{s}q_{i}^{2}M^{2i}=q(M)^{2}.

This completes the proof.

4 Further discussions on Conjecture 1

The proof of Conjecture 1 answers the second open problem in [8], that is, the lower bound of dimension of the invariant subspace UU defined for the t×tt\times t Cauchy-type MDS matrix MM used in the design of the Starkad cipher can be improved to t2st-2s where t=2kst=2^{k}\cdot s.

A natural following question is whether this bound can be further improved. We should note first that the bound t2st-2s is a general one, not depending on the ring RR and the shapes of these Hadamard blocks of MM. Of course when these blocks are of certain special types, e.g., scalar matrices, the bound t2st-2s can be improved to, e.g., tst-s. However, this is not the case for the Cauchy matrix used in Starkad.

Another natural question is whether the characteristic polynomial q(x)q(x) in Conjecture 1 can be replaced by minimal polynomial, which may has a degree less than ss. More precisely, if the minimal polynomials of M′′M^{\prime\prime} is ϕ(x)\phi(x), shall we have ϕ(M)2=0\phi(M)^{2}=0? First, it should be noted that in this case the method for proving Conjecture 1 in Section 3 will not work, since coefficients of minimal polynomial of a matrix have no direct and explicit relations with its entries. Second, when RR is a generic commutative ring, the minimal polynomial of a matrix over RR may not be unique. Actually, minimal polynomial of a matrix AA over RR is defined as the least degree polynomials in the annihilating ideal of AA in R[x]R[x], which may not be a principle ideal. Even the minimal polynomial is unique, ϕ(M)2=0\phi(M)^{2}=0 does not always hold. Indeed, one can quickly observe that, for example, when M′′=0M^{\prime\prime}=0, its minimal polynomial is ϕ(x)=x\phi(x)=x, however, one cannot obtain M2=0M^{2}=0 for any MM whose blocks all have eigenvalue 0.

But on the contrary, if we can find the minimal polynomial Φ(x)=i=0sΦixik(R)[x]\Phi(x)=\sum_{i=0}^{s}\Phi_{i}x^{i}\in\mathcal{H}_{k}(R)[x] of MM, that is Φ(M)=0\Phi(M)=0, then we can obtain ϕ(M)2=0\phi(M)^{2}=0 where ϕ(x)=i=0sϕixi\phi(x)=\sum_{i=0}^{s}\phi_{i}x^{i} with ϕi=λ(Φi)\phi_{i}=\lambda(\Phi_{i}). This will improve the lower bound of dimU\dim U to t2degΦ(x)t-2\cdot\deg\Phi(x). However, for generic s×ss\times s matrices over commutative rings, the best general upper bound for the degrees of their minimal polynomials one can get is ss. So in this sense, the bound t2st-2s for a generic MM is optimal. When MM is considered in some special classes of matrices over k(R)\mathcal{H}_{k}(R), e.g., circulant matrices, Vandermonde matrices, or Hadamard matrices we consider, this bound can possibly be improved.

As for Conjecture 1, it seems hard to directly prove it through evaluating q(M)2q(M)^{2}. It has already been observed in [8] that q(M)q(M) lies in the kernel of the homomorphism λ¯\bar{\lambda}, that is, all blocks of q(M)q(M) have eigenvalue 0. However, as mentioned above, we cannot obtain M~2=0\tilde{M}^{2}=0 for any M~kerλ¯\tilde{M}\in\hbox{\rm{ker}}\bar{\lambda} in general. Besides, we can see that if q(M)2=0q(M)^{2}=0, then for any M~kerλ¯\tilde{M}\in\hbox{\rm{ker}}\bar{\lambda}, we have

q(M+M~)2=0.q(M+\tilde{M})^{2}=0.

But this does not mean if g(M)=0g(M)=0 for certain g(x)R[x]g(x)\in R[x], then we have g(M+M~)=0g(M+\tilde{M})=0 for any M~kerλ¯\tilde{M}\in\hbox{\rm{ker}}\bar{\lambda}. Indeed, any Ms×s(k(R))M\in\mathscr{M}_{s\times s}(\mathcal{H}_{k}(R)) can be factorized into

M=M′′I2k+M~M=M^{\prime\prime}\otimes I_{2^{k}}+\tilde{M}

for a unique M~kerλ¯\tilde{M}\in\hbox{\rm{ker}}\bar{\lambda}. Obviously, for any g(x)R[x]g(x)\in R[x] with g(M′′)=0g(M^{\prime\prime})=0 (e.g., g(x)=q(x)g(x)=q(x), the characteristic polynomial of M′′M^{\prime\prime}), we have

g(M′′I2k)=g(M′′)I2k=0.g(M^{\prime\prime}\otimes I_{2^{k}})=g(M^{\prime\prime})\otimes I_{2^{k}}=0.

But this does not promise g(M)=0g(M)=0 for any M~kerλ¯\tilde{M}\in\hbox{\rm{ker}}\bar{\lambda}.

Another interesting corollary of the proved Conjecture 1 is, if Mkerλ¯{M}\in\hbox{\rm{ker}}\bar{\lambda}, then we have M2s=0M^{2s}=0 (not depending on kk which determines the size of each block) since the characteristic polynomial of M′′=0M^{\prime\prime}=0 is xsx^{s}. Recall that in [8] it was proved Mk+1=0M^{k+1}=0, an equality depending on kk. The power k+1k+1 comes from [8, Proposition 7], namely, any k+1k+1 elements of k(R)\mathcal{H}_{k}(R) all having eigenvalue 0 will multiply to 0. The result M2s=0M^{2s}=0 implies more complicated relations between elements of k(R)\mathcal{H}_{k}(R) having eigenvalue 0, which seems not easy to directly reveal. In the next section we will further discuss the set of all such elements.

5 Structure of the algebra k(R)\mathcal{H}_{k}(R)

To further understand properties of Hadamard matrices over a commutative ring RR (not necessarily with characteristic 2), in this part, we give characterizations of the structure of the algebra formed by them, namely, the RR-algebra k(R)\mathcal{H}_{k}(R).

Let G=(𝔽2k,)G=(\mathbb{F}_{2}^{k},\oplus), the additive group of the vector space 𝔽2k\mathbb{F}_{2}^{k}. We denote the identity of GG by ee, i.e., e=(0,0,,0)e=(0,0,\ldots,0). Let R[G]R[G] be the group ring (algebra) generated by GG over RR. Elements of R[G]R[G] are all of the form a=gGagga=\sum_{g\in G}a_{g}g where agRa_{g}\in R for any gGg\in G, that is, formal linear combinations of elements of GG over RR. Multiplication of two elements aa and bb are defined in a convolutional manner, that is,

(gGagg)(gGbgg)=g,hGagbh(gh)=gG(hGagbgh)g.\left(\sum_{g\in G}a_{g}g\right)\left(\sum_{g\in G}b_{g}g\right)=\sum_{g,h\in G}a_{g}b_{h}(g\oplus h)=\sum_{g\in G}\left(\sum_{h\in G}a_{g}b_{g\oplus h}\right)g. (3)

We have the following theorem.

Theorem 5.2.
k(R)R[G].\mathcal{H}_{k}(R)\cong R[G].
Proof 1.

For two Hadamard matrices AA and BB in k(R)\mathcal{H}_{k}(R), assume their first rows are (a0,a1,,a2k1)R2k(a_{0},a_{1},\ldots,a_{2^{k}-1})\in R^{2^{k}} and (b0,b1,,b2k1)R2k(b_{0},b_{1},\ldots,b_{2^{k}-1})\in R^{2^{k}}, respectively. Then we know from (2) that

A=(aij)i,j=02k1,B=(bij)i,j=02k1.A=\left(a_{i\oplus j}\right)_{i,j=0}^{2^{k}-1},~{}~{}B=\left(b_{i\oplus j}\right)_{i,j=0}^{2^{k}-1}.

Let C=AB=(cij)C=AB=(c_{ij}). Then we have

cij=k=02k1aikbkj=k=02k1aikbkj=k=02k1akbkij,c_{ij}=\sum_{k=0}^{2^{k}-1}a_{ik}b_{kj}=\sum_{k=0}^{2^{k}-1}a_{i\oplus k}b_{k\oplus j}=\sum_{k=0}^{2^{k}-1}a_{k}b_{k\oplus i\oplus j},

which means CC is a Hadamard matrix with first row (k=02k1akbkj0j2k1)(\sum_{k=0}^{2^{k}-1}a_{k}b_{k\oplus j}\mid 0\leq j\leq 2^{k}-1). Therefore, the map

k(R)R[G],(aij)j=02k1abin(j)bin(j)\mathcal{H}_{k}(R)\longrightarrow R[G],~{}~{}(a_{i\oplus j})\longmapsto\sum_{j=0}^{2^{k}-1}a_{{\rm bin}(j)}{\rm bin}(j)

implies the isomorphism between k(R)\mathcal{H}_{k}(R) and R[G]R[G] according to (3), where

bin:2kG,j=l=0k1jl2k1l(j0,j1,,jk1),{\rm bin}:~{}\mathbb{Z}_{2^{k}}\longrightarrow G,~{}~{}j=\sum_{l=0}^{k-1}j_{l}2^{k-1-l}\longmapsto(j_{0},j_{1},\ldots,j_{k-1}),

represents the 2-adic expansion of integers. \Box

R[G]R[G] is an algebra over RR with dimension 2k2^{k}, and a basis is {ggG}\{g\mid g\in G\}. Note that all these basis elements are idempotent in R[G]R[G]. Elements of R[G]R[G] can also be distinguished with functions from GG to RR. In this sense, R[G]R[G] is isomorphic to the RR-representation of GG. Since G=𝔽2kG=\mathbb{F}_{2}^{\oplus k}, the kk-fold direct sum of 𝔽2\mathbb{F}_{2}, we also have

k(R)R[G]R[𝔽2]k1(R)k.\mathcal{H}_{k}(R)\cong R[G]\cong R[\mathbb{F}_{2}]^{\otimes k}\cong\mathcal{H}_{1}(R)^{\otimes k}. (4)

Here k\otimes k denotes kk-fold tensor product of an RR-algebra. This tensor decomposition of k(R)\mathcal{H}_{k}(R) can also be made explicit. Let {ei0ik1}\{e_{i}\mid 0\leq i\leq k-1\} be the standard basis of GG over 𝔽2\mathbb{F}_{2}, i.e., eie_{i} has ii-th component 1 and all other components 0 (0ik10\leq i\leq k-1). Then any gG\{e}g\in G\backslash\{e\} can be represented as g=ei1ei2eisg=e_{i_{1}}\oplus e_{i_{2}}\oplus\cdots\oplus e_{i_{s}} for certain 0i1<i2<<isk10\leq i_{1}<i_{2}<\cdots<i_{s}\leq k-1. It is easy to check that the Hadamard matrix corresponding to this gg under the isomorphism in Theorem 5.2, which is actually a permutation matrix, can be decomposed into

I2I2J2i12I2I2J2i22J2is2I2(kterms in total),I_{2}\otimes\cdots\otimes I_{2}\otimes\stackrel{{\scriptstyle i_{1}}}{{J_{2}}}\otimes I_{2}\otimes\cdots\otimes I_{2}\otimes\stackrel{{\scriptstyle i_{2}}}{{J_{2}}}\otimes\cdots\otimes\stackrel{{\scriptstyle i_{s}}}{{J_{2}}}\otimes\cdots\otimes I_{2}~{}({k~{}\text{terms~{}in~{}total}}),

where

I2=(1001),J2=(0110).I_{2}=\begin{pmatrix}1&0\\ 0&1\end{pmatrix},~{}~{}J_{2}=\begin{pmatrix}0&1\\ 1&0\end{pmatrix}.

Besides, the Hadamard matrix corresponding to ee is obviously I2k=I2kI_{2^{k}}=I_{2}^{\otimes k}. Note that I2I_{2} and J2J_{2} form the basis of 1(R)\mathcal{H}_{1}(R) and J22=I2J_{2}^{2}=I_{2}. Therefore, under the conversion that J20=I2J_{2}^{0}=I_{2}, the isomorphism (4) implies that any 2k×2k2^{k}\times 2^{k} Hadamard matrix over RR can be decomposed into a polynomial-like form, that is,

A=i=02k1aiJ2i,aiR,A=\sum_{i=0}^{2^{k}-1}a_{i}J_{2}^{i},~{}~{}a_{i}\in R, (5)

where

J2i:=J2i0J2i1J2ik1,fori=l=0k1il2k1l.J_{2}^{i}:=J_{2}^{i_{0}}\otimes J_{2}^{i_{1}}\otimes\cdots\otimes J_{2}^{i_{k-1}},~{}\text{for}~{}i=\sum_{l=0}^{k-1}i_{l}2^{k-1-l}.

From properties of Kronecker products of matrices, we have

J2iJ2j=(J2i0J2j0)(J2ik1J2jk1)=J2ij.J_{2}^{i}\cdot J_{2}^{j}=(J_{2}^{i_{0}}\cdot J_{2}^{j_{0}})\otimes\cdots\otimes(J_{2}^{i_{k-1}}\cdot J_{2}^{j_{k-1}})=J_{2}^{i\oplus j}.

Hence this polynomial-like representation for Hadamard matrices indeed induces an isomorphism between k(R)\mathcal{H}_{k}(R) and a polynomial algebra. In this sense, k(R)\mathcal{H}_{k}(R) is also a Clifford algebra over RR.

Theorem 5.3.
k(R)R[x1,x2,,xk]/(x121,,xk21).\mathcal{H}_{k}(R)\cong R[x_{1},x_{2},\ldots,x_{k}]/(x_{1}^{2}-1,\ldots,x_{k}^{2}-1).
Proof 2.

Under the decomposition (5) of a Hadamard matrix AA, we distinguish it with a multivariate polynomial i=02k1aiXi\sum_{i=0}^{2^{k}-1}a_{i}X^{i} where Xi:=x1i0x2i1xkik1X^{i}:=x_{1}^{i_{0}}x_{2}^{i_{1}}\cdots x_{{k}}^{{i_{k-1}}} for i=l=0k1il2k1li=\sum_{l=0}^{k-1}i_{l}2^{k-1-l}. It is direct to check this indeed admits the desired isomorphism. \Box

Recall that for any group ring, we can define the augmentation map, that is,

ϵ:R[G]R,gGagggGag.\epsilon:~{}R[G]\longrightarrow R,~{}~{}\sum_{g\in G}a_{g}g\longmapsto\sum_{g\in G}a_{g}.

The kernel II of ϵ\epsilon is called the augmentation ideal of R[G]R[G]. It is easy to prove that, as a sub-algebra of R[G]R[G], II has dimension 2k12^{k}-1 with a basis {gegG\{e}}\{g-e\mid g\in G\backslash\{e\}\}.

In the following, we assume Char(R)=2\hbox{\rm{Char}}(R)=2. From Proposition 2.1 we know that, by distinguishing a Hadamard matrix over RR with an element in R[G]R[G], its image under ϵ\epsilon is just the eigenvalue. Therefore, all elements in II are nilpotent. When the ring RR has no nilpotent elements, the ideal II is just the nilradical of R[G]R[G], i.e., intersection of all prime ideals of R[G]R[G]. Specifically, when RR is a field, we know that R[G]R[G] is an Artinian algebra (finite dimensional algebras over fields are Artinian), so II is simultaneously the nilradical and Jacobson radical of R[G]R[G]. In fact, II is the unique maximal ideal of R[G]R[G] since it has a dimension 2k12^{k}-1 and thus R[G]R[G] is a local ring.

The nilpotency degree of an ideal is defined to be the smallest power that will make it vanish. For the ideal II we talk about, its nilpotency degree can be determined.

Theorem 5.4.

Assume Char(R)=2\hbox{\rm{Char}}(R)=2 and II is the augmentation ideal of the group ring R[G]R[G]. Then the nilpotency degree of II is k+1k+1.

Proof 3.

We prove Ik+1=(0)I^{k+1}=(0) while Ik(0)I^{k}\neq(0). As II is an RR-algebra, we need only to prove that any k+1k+1 basis elements multiply to 0 while there exist kk basis elements that cannot.

Let {ei0ik1}\{e_{i}\mid 0\leq i\leq k-1\} be the standard basis of GG over 𝔽2\mathbb{F}_{2}. Then {ei+e0ik1}\{e_{i}+e\mid 0\leq i\leq k-1\} are kk basis elements of II. Note that

i=0k1(ei+e)=c0,c1,,ck1𝔽2i=0k1ciei=gGg0\prod_{i=0}^{k-1}(e_{i}+e)=\sum_{c_{0},c_{1},\ldots,c_{k-1}\in\mathbb{F}_{2}}\bigoplus_{i=0}^{k-1}c_{i}e_{i}=\sum_{g\in G}g\neq 0

in R[G]R[G].

On the other hand, let {gi+egiG,0ik}\{g_{i}+e\mid g_{i}\in G,~{}0\leq i\leq k\} be any k+1k+1 basis elements of II. We can assume they are pairwise distinct, since otherwise they will multiply to 0 naturally. Then

i=0k(gi+e)=c0,c1,,ck𝔽2i=0kcigi.\prod_{i=0}^{k}(g_{i}+e)=\sum_{c_{0},c_{1},\ldots,c_{k}\in\mathbb{F}_{2}}\bigoplus_{i=0}^{k}c_{i}g_{i}.

Note that this sum iterates over all 𝔽2\mathbb{F}_{2}-linear combination of {gi0ik}\{g_{i}\mid 0\leq i\leq k\}. As {gi0ik}\{g_{i}\mid 0\leq i\leq k\} must be linearly dependent over 𝔽2\mathbb{F}_{2}, each term turns out to appear 2r2^{r} times in the sum (in fact, r=krank 𝔽2{gi0ik}r=k-\hbox{\rm{rank\,}}_{\mathbb{F}_{2}}\{g_{i}\mid 0\leq i\leq k\}). Therefore, the sum vanishes since Char(R[G])=2\hbox{\rm{Char}}(R[G])=2.\Box

Theorem 5.4 indicates that any k+1k+1 elements of II multiply to 0, which coincides with [8, Proposition 7]. Considering Theorem 5.3, the proof of Theorem 5.4 can become more simpler or in some sense obvious. In fact, it is easy to observe that, under the isomorphisms in Theorem 5.2 and Theorem 5.3, the augmentation ideal II of R[G]R[G] is isomorphic to the ideal

I=(x11,x21,,xk1)I^{\prime}=(x_{1}-1,x_{2}-1,\ldots,x_{k}-1)

of the polynomial algebra R[x1,x2,,xk]/(x121,,xk21)R[x_{1},x_{2},\ldots,x_{k}]/(x_{1}^{2}-1,\ldots,x_{k}^{2}-1). Note that Ik+1I^{\prime k+1} is generated by

(xi11)(xi21)(xik+11),1i1,i2,,ik+1k,(x_{i_{1}}-1)(x_{i_{2}}-1)\cdots(x_{i_{k+1}}-1),~{}1\leq i_{1},i_{2},\ldots,i_{k+1}\leq k,

which are all 0. This is because any (k+1)(k+1)-term multiplication of kk elements must contain duplicate terms, killing itself modulo xi21x_{i}^{2}-1 for some 1ik1\leq i\leq k. Therefore, after establishing the isomorphisms in Theorem 5.2 and Theorem 5.3, one can obtain a one-sentence proof of [8, Proposition 7].

6 Block-Hadamard matrices and Hadamard-block matrices

Let RR be any unital ring (not necessarily commutative). We can also define Hadamard matrices over RR like in (2) for a given vector of lenth 2k2^{k} over RR. Then it is direct to check the set of all such matrices, also denoted by k(R)\mathcal{H}_{k}(R), forms a ring. Note that k(R)\mathcal{H}_{k}(R) is not commutative if RR is not. Specially, if RR is the matrix ring, we call a Hadamard matrix over RR a block-Hadamard matrix. Indeed, it can be viewed as a block matrix of the Hadamard type. On the other hand, like in Conjecture 1 we can also consider block matrices whose blocks are all of Hadamard type, and we call them Hadamard-block matrices.

Now assume RR is a commutative ring. Then the sets of all 2ks×2ks2^{k}s\times 2^{k}s block-Hadamard matrices and Hadamard-block matrices over RR admit the algebras k(s×s(R))\mathcal{H}_{k}(\mathscr{M}_{s\times s}(R)) and s×s(k(R))\mathscr{M}_{s\times s}(\mathcal{H}_{k}(R)), respectively. Note here that neither of the two algebras is commutative. We have the following theorem.

Theorem 6.5.
s×s(k(R))k(s×s(R)).\mathscr{M}_{s\times s}(\mathcal{H}_{k}(R))\cong\mathcal{H}_{k}(\mathscr{M}_{s\times s}(R)).
Proof 4.

Let MM be an s×ss\times s block matrix whose blocks Mu,vM_{u,v}, 0u,vs10\leq u,v\leq s-1, are all 2k×2k2^{k}\times 2^{k} Hadamard matrices over RR. We call Mu,M_{u,\bullet}, 0us10\leq u\leq s-1, a block row of MM and respectively, M,vM_{\bullet,v}, 0vs10\leq v\leq s-1, a block column. Note that Mu,M_{u,\bullet} contains 2k2^{k} rows and M,vM_{\bullet,v} contains 2k2^{k} columns. Now we perform row and column permutations to MM to arrange it to be a 2k×2k2^{k}\times 2^{k} block matrix M~\tilde{M} with s×ss\times s blocks. Firstly, move the 0-th row of each block row Mu,M_{u,\bullet} to the top of the matrix keeping their ordering, which will form a new block row M0,M_{0,\bullet}^{\prime} containing ss rows; secondly, move the 1-st row of each block row Mu,M_{u,\bullet} to the rows under M0,M_{0,\bullet}^{\prime} keeping their ordering, which will form a new block row M1,M_{1,\bullet}^{\prime} containing ss rows. Repeat this process to form the new block row Mi,M_{i,\bullet}^{\prime} by moving the ii-th row of each Mu,M_{u,\bullet} for any 2i2k12\leq i\leq 2^{k}-1. At last we get a matrix MM^{\prime} from MM. Then, we perform column permutations to block columns M,vM_{\bullet,v}^{\prime} (containing 2k2^{k} columns each) of MM^{\prime} in the same manner as we have done for rows of MM. Finally, we obtain the matrix M~\tilde{M} which can be viewed as a 2k×2k2^{k}\times 2^{k} block matrix with s×ss\times s blocks. Assume all the row permutations of MM is stored in a permutation matrix PP. Then it is clear that

M~=PMPτ=PMP1.\tilde{M}=P\cdot M\cdot P^{\tau}=P\cdot M\cdot P^{-1}.

To make the structure of M~\tilde{M} more clear, we assume each Hadamard-type block Mu,vM_{u,v} of MM is determined by its 0-th row ((auv)0,(auv)1,,(auv)2k1)\left((a_{uv})_{0},(a_{uv})_{1},\ldots,(a_{uv})_{2^{k}-1}\right), 0u,vs10\leq u,v\leq s-1. Then from the above process to derive M~\tilde{M}, one can figure out that the 0-th block row of M~\tilde{M} contains 2k2^{k} blocks of size s×ss\times s, say, A0A_{0}, A1A_{1}, \ldots, A2k1A_{2^{k}-1}, such that

Ai=((auv)i)u,v=0s1,0i2k1,A_{i}=\left((a_{uv})_{i}\right)_{u,v=0}^{s-1},~{}~{}0\leq i\leq 2^{k}-1,

and all the other block rows of M~\tilde{M} are determined by the 0-th block row in the manner that M~i,j=Aij\tilde{M}_{i,j}=A_{i\oplus j}, 0i,j2k10\leq i,j\leq 2^{k}-1. This means M~\tilde{M} is a block-Hadamard matrix. Therefore, the map MM~M\mapsto\tilde{M} can establish the isomorphism between s×s(k(R))\mathscr{M}_{s\times s}(\mathcal{H}_{k}(R)) and k(s×s(R))\mathcal{H}_{k}(\mathscr{M}_{s\times s}(R)). \Box

From Theorem 6.5 and the proved Conjecture 1, we have the following interesting result.

Corollary 6.6.

Let RR be a commutative ring with characteristic 2, and let Hk(s×s(R))H\in\mathcal{H}_{k}(\mathscr{M}_{s\times s}(R)) with first row (H0,H1,,H2k1)s×s(R)2k(H_{0},H_{1},\ldots,H_{2^{k}-1})\in\mathscr{M}_{s\times s}(R)^{2^{k}}. Denote by q(x)q(x) the characteristic polynomial of i=02k1Hi\sum_{i=0}^{2^{k}-1}H_{i}. Then

q(H)2=0.{q(H)^{2}=0}.
Proof 5.

Let PP be the permutation matrix defined in the proof of Theorem 6.5. Then we know that HH corresponds to a matrix Ms×s(k(R))M\in\mathscr{M}_{s\times s}(\mathcal{H}_{k}(R)) in the manner that

M=P1HP.M=P^{-1}\cdot H\cdot P.

From the proof of Theorem 6.5 we can see that (i=02k1Hi)u,v=λ(Mu,v)(\sum_{i=0}^{2^{k}-1}H_{i})_{u,v}=\lambda(M_{u,v}), the eigenvalue of Mu,vM_{u,v} for any 0u,vs10\leq u,v\leq s-1. This means i=02k1Hi\sum_{i=0}^{2^{k}-1}H_{i} just equals M′′M^{\prime\prime} as defined in Conjecture 1, and as a result, q(x)q(x) is the characteristic polynomial of M′′M^{\prime\prime}. According to the proved Conjecture 1, we have

q(M)2=q(P1HP)2=P1q(H)2P=0,q(M)^{2}=q(P^{-1}HP)^{2}=P^{-1}\cdot q(H)^{2}\cdot P=0,

which implies q(H)2=0.{q(H)^{2}=0}. \Box

7 Conclusion and further work

In this paper, we prove the conjecture posed by Keller and Rosemarin at Eurocrypt 2021 1 and thus give an affirmative answer to their open problem on an improved lower bound for dimension of invariant subspace of the Starkad cipher. We further study the set formed by all Hadamard matrices over commutative rings and reveal its algebraic structure from the perspectives of group algebra and polynomial algebra. It turns out that these characterizations can help us to understand properties of Hadamard matrices deeper and easier. In particular, the group algebra approach can promise generalizations of Hadamard matrices by considering other Abelian groups GG instead of (𝔽2k,)(\mathbb{F}_{2}^{k},\oplus), which have potential applications in the designs of linear diffusion layers for classical and arithmetization-oriented symmetric ciphers. We will study this topic in a further work.

References

  • [1] P. Barreto, V. Rijmen, The Anubis block cipher, NESSIE Algorithm Submission, 2000. http://cryptonessie.org
  • [2] B. Gerard, V. Grosso, M. Naya-Plasencia, et al., Block ciphers that are easier to mask: How far can we go? In: G. Bertoni, J. Coron (eds.) Cryptographic Hardware and Embedded Systems – CHES 2013, LNCS, vol. 8086, pp. 383–399, Springer, 2013. https://doi.org/10.1007/978-3-642-40349-1_22
  • [3] L. Grassi, D. Kales, D. Khovratovich, et al., Starkad and poseidon: new hash functions for zero knowledge proof systems, IACR Cryptol. ePrint Arch. 2019/458 (2019). https://eprint.iacr.org/2019/458
  • [4] L. Grassi, D. Kales, D. Khovratovich, et al., Poseidon: A New Hash Function for Zero-Knowledge Proof Systems, In: USENIX Security Symposium, pp. 519–-535, USENIX Association, 2021.
  • [5] L. Grassi, R. Lüftenegger, C. Rechberger, et al., On a generalization of substitution-permutation networks: the HADES design strategy, In: A. Canteaut, Y. Ishai (eds.) EUROCRYPT 2020., LNCS, vol. 12106, pp. 674–-704, Springer, Cham, 2020. https://doi.org/10.1007/978-3-030-45724-223
  • [6] K. Gupta, I. Ghosh Ray, On Constructions of Involutory MDS Matrices, in: A. Youssef, A. Nitaj, A. Hassanien (eds), Progress in Cryptology -– AFRICACRYPT 2013. LNCS, vol 7918, Springer, Berlin, Heidelberg, 2013. https://doi.org/10.1007/978-3-642-38553-7_3
  • [7] S. Hou, B. Wu, S. Wang, et al., Truncated Differential Attacks On Symmetric Primitives With Linear Key Schedule: WARP And Orthros, The Computer Journal 67(4), 1483–-1500 (2024). https://doi.org/10.1093/comjnl/bxad075
  • [8] N. Keller, A. Rosemarin, Mind the Middle Layer: The HADES Design Strategy Revisited. In: A. Canteaut, FX. Standaert (eds) Advances in Cryptology –- EUROCRYPT 2021, LNCS, vol. 12697, Springer, Cham, 2021. https://doi.org/10.1007/978-3-030-77886-6_2
  • [9] M. Sajadieh, M. Dakhilalian, H. Mala, et al., On construction of involutory MDS matrices from Vandermonde Matrices in GF(2q)GF(2^{q}), Des. Codes Cryptogr. 64, 287–-308 (2012). https://doi.org/10.1007/s10623-011-9578-x
  • [10] A. Youssef, S. Mister, S. Tavares, On the Design of Linear Transformations for Substitution Permutation Encryption Networks, in: Workshop on Selected Areas in Cryptography, SAC 1997, pp. 40–-48, 1997.