Next Article in Journal
Computational Offloading of Service Workflow in Mobile Edge Computing
Previous Article in Journal
Sustainable Mobility as a Service: Framework and Transport System Models
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

More Constructions of Light MDS Transforms Based on Known MDS Circulant Matrices

Science and Technology on Communication Security Laboratory, Institute of Southwestern Communication, Chengdu 610041, China
*
Author to whom correspondence should be addressed.
Information 2022, 13(7), 347; https://doi.org/10.3390/info13070347
Submission received: 12 June 2022 / Revised: 14 July 2022 / Accepted: 14 July 2022 / Published: 18 July 2022

Abstract

:
Maximum distance separable (MDS) codes have the maximum branch number in cryptography, and they are generally used in diffusion layers of symmetric ciphers. The diffusion layer of the Advanced Encryption Standard (AES) uses the circulant MDS matrix with the row element of { 2 ; 3 ; 1 ; 1 } in F 2 8 . It is the simplest MDS matrix in   F 2 n 4 , recorded as A = C i r c ( 2 ; 3 ; 1 ; 1 ) . In this paper, we study the more extensive MDS constructions of A in F 2 n 4 . By transforming the element multiplication operation in the finite field into the bit-level operation, we propose a multivariable operation definition based on simple operations, such as cyclic shift, shift, and XOR. We apply this multivariable operation to more lightweight MDS constructions of A and discuss the classification of the MDS clusters. We also give an example of the MDS cluster of A . Without changing the structure, elements, and the implementation cost of the known MDS matrix, the number of existing MDS transformations is expanded to n 2 / 2 times that of its original. The constructions in this paper provide rich component materials for the design of lightweight cryptographic algorithms.

1. Introduction

The design of modern cryptographic algorithms generally follows the principles of confusion and diffusion [1]. Diffusion layers are critical components of symmetric ciphers. It is an important means to achieve complex relationships between plaintexts and ciphertexts. By using the diffusion layer, each bit of the plaintext will affect multiple bits of the ciphertext, thus ensuring the security of the cryptographic algorithm. Maximum distance separable (MDS) codes have the maximum number of branches, so they are often used in cryptography to construct optimal diffusion layers of block ciphers, stream ciphers, and hash algorithms. For instance, the diffusion layer of the Advanced Encryption Standard (AES [2]) uses the simplest MDS matrix over F 2 4 n , which is a circulant MDS matrix with a row element of { 2 ; 3 ; 1 ; 1 } in F 2 8   , recorded as A = C i r c ( 2 ; 3 ; 1 ; 1 ) . The diffusion layer of SM4 [3] uses the MDS transformation based on a 32-bit rotational-XOR operation. In cryptographic literature, numerous papers [4,5,6,7,8,9,10,11,12,13,14,15,16,17] have studied various aspects of MDS diffusion layers, including their structure, from mathematical viewpoints on rings and fields, as well as minimizing their implementation costs in software and/or hardware applications. For example, Mirzaee et al. [12] placed lightweight multiplication on MDS matrices in fields; Xiang et al. [14,15] proposed MDS matrices as the best implementations produced by various algorithms up to now and [16,17] provided some nonlinear MDS diffusion layers.
Currently, for known MDS matrices on F 2 n   , the operations and quantities are limited by irreducible polynomials in the finite field. In order to obtain more MDS diffusion layers from MDS matrices on fields, it is necessary to change the matrix form or component element, such by as replacing specific elements of the matrix with different primitive elements in the finite field so as to construct different MDS transformations [18]. For these simple MDS matrices, the manner by which to construct many more, and more extensive, MDS transformations, without changing their forms, component elements, and implementation costs, is of particular significance for the enrichment of the cognition of MDS and the improving of the adaptability of MDS diffusion layers.
This paper studies the more extensive MDS construction that is based on the circulant MDS matrix C i r c ( 2 ; 3 ; 1 ; 1 ) (abbreviated as A ). With the aid of introducing a parametric map, defined by transforming the multiplication operation of A elements in F 2 n   into bitwise multivariable operation with cyclic shift and XOR, we extend the operation of matrix A to obtain more 4 × 4 MDS diffusion layers. We use the definition of the multivariable parametric map to obtain more MDS constructions based on A , and we propose the connection between MDS clusters and the equivalence classification. Then, examples of the MDS cluster based on A over F 2 8 4 are given. All such MDS constructions proposed in this paper have equally low-cost implementations, and the number of MDS is expanded to n 2 / 2 times that of the original construction. These constructions we proposed can be widely applied to the design of lightweight cryptographic algorithms which is for the purpose of constraining resources, such as IoTs and wireless communication environments.
This article is organized as follows: In Section 2, we give preliminary notations and definitions. Section 3 provides theoretical conclusions and examples for more extensive MDS constructions of A , and Section 4 is devoted to the conclusion.

2. Notations and Definitions

The binary digit 0 or 1 is called “1 bit” or “bit”. Without losing generality, we specify that the most significant bit of data is always on the far left of its binary digits, and the lowest significant bit of data is always on the rightmost of its binary digits.
Let F 2 n be the finite field with 2 n elements and F 2 n be the n -dimensional linear space over F 2 . We denote the multiplication in F 2 n by · and the addition in F 2 n by . The operation “ < < < t ” represents the left cyclic shift for t bits, and “&” denotes bitwise and operation. x | t   denotes the t -th bit of x . “ × ” is the ordinary multiplication function.
For any X = ( x 0 , x 1 , , x n 1 ) F 2 n m   , the weight (denoted by wt ( X ) ) of X over F 2 n is defined as
wt ( X ) = | { i : 1 i m , x i 0 } | .
Let F be a map on F 2 n m . The branch number (denoted by Br n ( F ) , or Br ( F ) ) of F over F 2 n is defined as
Br n ( F ) = min X , Y F 2 n m ,   X Y { wt ( X Y ) + wt ( F ( X ) F ( Y ) ) } .
Definition 1.
Let F be a map on F 2 n m . F is called MDS (over F 2 n ) if B r ( F ) = m + 1 .
In this paper, we investigate the 4 × 4 circulant MDS matrix C i r c ( 2 ; 3 ; 1 ; 1 ) used in the diffusion layer of AES, which is an MDS transformation with the simplest matrix form on F 2 8 4 . Its implementation cost is less than 92 XOR logic gates [14]. The circulant MDS matrix C i r c ( 2 ; 3 ; 1 ; 1 ) on F 2 n 4 is denoted as A .
A = [ 2 3 1 2 1 1 3 1 1 1 3 1 2 3 1 2 ]
Let X = ( x 0 , x 1 , , x 3 ) F 2 n 4 be the input, and   Y = ( y 0 , y 1 , , y 3 ) F 2 n 4 be the output; then, the operation of A is expressed as follows:
[ y 0 y 1 y 2 y 3 ] = [ 2 3 1 2 1 1 3 1 1 1 3 1 2 3 1 2 ] [ x 0 x 1 x 2 x 3 ]
that is,
y 0 = 2 · x 0 3 · x 1 1 · x 2 1 · x 3
y 1 = 1 · x 0 2 · x 1 3 · x 2 1 · x 3
y 2 = 1 · x 0 1 · x 1 2 · x 2 3 · x 3
y 3 = 3 · x 0 1 · x 1 1 · x 2 2 · x 3
where both x i and y i are n -bit, and 3 · x i = 2 · x i x i , i { 0 ,   1 ,   2 ,   3 } .
According to the general understanding, the operations of matrix A are multiplication and addition in F 2 n . For a map f on F 2 n up to the choice of the monic irreducible polynomial of degree n , the double multiplication on F 2 n recorded as x t i m e f ( x ) = 2 · x has a representation as follows:
Lemma 1.
Suppose that f = x n + a 0 x n 1 + a 1 x n 1 + + a n 2 x + 1 is a monic irreducible polynomial of degree n , where a i F 2 ,   i = 0 , 1 , , n 2 . Let a n 1 = 0 , and the corresponding coeffcient ( a 0 ,   a 1 ,   , a n 1   ) is denoted as α in F 2 n . Then,
x t i m e f ( x ) = ( x < < < 1 ) ( ( x < < < 1 ) | n 1 × α ) ,   x F 2 n .
According to Equation (1), the operation of matrix A can be written in the following Equation (2), with a left cyclic shift and XOR operations based on a parameter α .
Let z 0 = x 0 x 1 , z 1 = x 1 x 2 , z 2 = x 2 x 3 , z 3 = x 3 x 0 ; then, the operation of A is also expressed as follows:
y 0 = ( z 0 < < < 1 ) x 1 x 2 x 3 ( ( z 0 < < < 1 ) | n 1 × α ) y 1 = ( z 1 < < < 1 ) x 2 x 3 x 0 ( ( z 1 < < < 1 ) | n 1 × α ) y 2 = ( z 2 < < < 1 ) x 3 x 0 x 1 ( ( z 2 < < < 1 ) | n 1 × α ) y 3 = ( z 3 < < < 1 ) x 0 x 1 x 2 ( ( z 3 < < < 1 ) | n 1 × α )
Whether the operation in Equation (2) is an MDS transformation depends on α .
Definition 2.
The data α F 2 n is called the MDS-generating element of A on F 2 n 4 , or for short, the MDS-generating element of A , if α makes Equation (2) into an MDS transformation.
Obviously, the n -bit data ( a 0 ,   a 1 ,   ,   a n 2   , 0 ) corresponding to every monic irreducible polynomial x n + a 0 x n 1 + a 1 x n 1 + + a n 2 x + 1 in F 2 n is the MDS-generating element of A . It can be predicted that the number of MDS-generating elements of A is not less than the number of monic irreducible polynomials of degree n , which is indeed the case, as shown in Example 1.
Since the MDS-generating elements of A can be obtained according to the operations form of Equation (2), which is no longer limited to irreducible polynomials of degree n in F 2 n , it is necessary to redefine x t i m e f ( x ) = 2 · x , that is, to define the x t i m e α ( x ) operation for parameter α in F 2 n as follows:
x t i m e α ( x ) = ( x < < < 1 ) ( ( x < < < 1 ) | n 1 × α )
Next, we show how to generate more MDS transformations using each MDS-generating element of A .
Let   h i , j ( α ) :   × × F 2 n F 2 n be a parametric function with two parameter variables ( i , j ) about the input α F 2 n   . We parametrically extend the operation rule of the x t i m e α ( x ) of Equation (3) and introduce x t i m e h i , j α ( x ) .
Definition 3.
Let t = ( x < < < i ) and t n 1 j = ( x < < < i ) | n 1 j , x = ( x 0 x 1 x n 1 ) F 2 n . x t i m e h i , j α ( x ) is defined as
  x t i m e h i , j α ( x ) = ( x < < < i ) ( ( x < < < i ) | n 1 j × h i , j ( α ) )
where 0 i n 1 ,   0 j n 1 .
Now we use the   x t i m e h i , j α ( x ) operation defined in Equation (4) to replace the 2 · x operation in A . Then, we obtain Equation (5), which is parametric with 3 parameter variables, ( i , j , α ) × × F 2 n for A , denoted by A h i , j α .
Let the input be X = ( x 0 , x 1 , x 2 , x 3 ) F 2 n 4 , and the output be   Y = ( y 0 , y 1 , y 2 , y 3 ) F 2 n 4 ; let
z 0 = x 0 x 1 ,   z 1 = x 1 x 2 ,   z 2 = x 2 x 3 ,   z 3 = x 3 x 0 .
Then, Y = A h i , j α ( X ) is defined as follows:
y 0 = ( z 0 < < < i ) x 1 x 2 x 3 ( ( z 0 < < < i ) | n 1 j × h i , j ( α ) ) y 1 = ( z 1 < < < i ) x 2 x 3 x 0 ( ( z 1 < < < i ) | n 1 j × h i , j ( α ) ) y 2 = ( z 2 < < < i ) x 3 x 0 x 1 ( ( z 2 < < < i ) | n 1 j × h i , j ( α ) ) y 3 = ( z 3 < < < i ) x 0 x 1 x 2 ( ( z 3 < < < i ) | n 1 j × h i , j ( α ) )
According to the definition of A h i , j α , set ( i , j ) = ( 1 , 0 ) , h 1 , 0 ( α ) = α , then A h 1 , 0 α is the operation of A in Equation (2). Note that the MDS diffusion layer of AES is the operation of A in F 2 8 with the irreducible polynomial f = 0 × 11 b , that is, h 1 , 0 ( α ) = 0 x 1 a in Equation (5).
In this paper, let h 1 , 0 ( α ) be an identity transformation of α .

3. Extended Constructions and Theoretical Aspects of the Known MDS

In order to determine whether   A h i , j α generates an MDS transformation of A on F 2 n 4 , we have Theorem 1.
Theorem 1.
Let ( i , j , α ) × × F 2 n , where 0 i ,   j < n . If i is an even number, then   A h i , j α cannot generate an MDS.
Proof of Theorem 1.
According to the definition of Y = A h i , j α ( X ) , let X = ( x 0 , x 1 , x 2 , x 3 ) F 2 n 4 ,   Y = ( y 0 , y 1 , y 2 , y 3 ) F 2 n 4 , and x 0 0 , x 1 , x 2 , x 3 = 0 . Suppose that ( x 0 < < < i ) | n 1 j = 0 ; then, we have
y 0 = ( x 0 < < < i ) ,   y 1 = x 0 ,   y 2 = x 0 ,   y 3 = x 0     ( x 0 < < < i ) .
For y 3 , while i is an even number, if we can find some x 0 0 satisfying x 0     ( x 0 < < < i ) = 0 , then B r ( A h i , j α ) 4 . According to Definition 1, we know that A h i , j α cannot generate an MDS.
Let x 0 = ( x 0 , 0 , x 0 , 1 , , x 0 , n 1 ) F 2 n , ( x 0 < < < i ) = ( x 0 , i , x 0 , i + 1 , , x 0 , n 1 , x 0 , 0 , , x 0 , i 1 ) , we have
x 0     ( x 0 < < < i ) = ( x 0 , 0 , x 0 , 1 ,   ,   x 0 , n 1 i , x 0 , n i ,   x 0 , n i + 1 , , x 0 , n 1 ) ( x 0 , i , x 0 , i + 1 , , x 0 , n 1 ,   x 0 , 0 ,     x 0 , 1 , , x 0 , i 1 ) .
Now, we define the following permutation (denoted by P ) constructed by the corresponding bits’ n positions of the binary sequence of the rightmost operand in the operation shown above.
P :   ( 0 ,   1 ,   , n 1 )   ( i ,   i + 1 ,   ,   n 1 ,   0 ,   1 ,   ,   i 1 )
Because i is an even number, for P there exist two or more permutable subgroups with element x 0 , σ x 0 , l , in which the subscripts σ and l mean that x 0 , σ and x 0 , l belong to different subgroups, respectively.
Suppose ( x 0 < < < i ) | n 1 j = x 0 , l = 0 . For P , we choose the permutable subgroup which contains element x 0 , l and another permutable subgroup with element x 0 , σ x 0 , l . Let us investigate the following two cases:
(1) If l = 2 k and x 0 , 2 t + 1 = x 0 , σ , 0 k n / 2 , 0 t n 2 1 ,
(2) If l = 2 k + 1 and x 0 , 2 t = x 0 , σ , 0 k n 2 1 , 0 t n / 2 .
Since x 0 , l = 0 , if  x 0 , 2 t + 1 = x 0 , σ = 1 , or x 0 , 2 t = x 0 , σ = 1 , and let the other bits be 0, then x 0 0 , and we have y 3 = x 0     ( x 0 < < < i ) = 0 . □
According to the proof of Theorem 1, if i is an odd number, then the permutable subgroups of P degenerate into a full permutation which contains all elements ( x 0 , 0 , x 0 , 1 , , x 0 , n 1 ) . In this case, if x 0     ( x 0 < < < i ) = 0 , then we can derive that x 0 , i = x 0 , l = 0 , or x 0 , i = x 0 , l = 1 , where i = 0 ,   1 ,   ,   n 1 . Then, we have Corollary 1.
Corollary 1.
Let i be an odd number. If x 0 F 2 n and w t ( x ) n , then x     ( x < < < i ) 0 .
Lemma 1.
Let i = 2 k + 1 , 0 k n 2 1 , 0 j n 1 in h i , j ( α ) . If h i , j ( α ) makes   A h i , j α an MDS, for the input x 0 F 2 n 0 l n 1 , let
t 0 = ( x < < < i ) ( ( x < < < i ) | n 1 j l × ( h i , j ( α ) < < < l ) )
t 1 = x     ( x < < < i ) ( ( x < < < i ) | n 1 j l × ( h i , j ( α ) < < < l ) ) ,
then t 0 0 and t 1 0 .
Proof of Lemma 1.
Let β = h i , j ( α ) , where i is an odd number; then, we have Equation (6), x 0 .
t 0 = ( x < < < i ) ( ( x < < < i ) | n 1 j l × ( β < < < l ) ) t 1 = x     ( x < < < i ) ( ( x < < < i ) | n 1 j l × ( β < < < l ) )
According to Corollary 1, we know x     ( x < < < i ) 0 if ( x < < < i ) | n 1 j l = 0 . Then, we just need to prove Equation (7) if ( x < < < i ) | n 1 j l 0 .
t 0 = ( x < < < i )   (   β < < < l ) 0 t 1 = x     ( x < < < i )   (   β < < < l ) 0
Note that A h i , j α is an MDS; if ( x < < < i ) | n 1 j 0 , then ( x < < < i )   β 0 and x     ( x < < < i )   β 0 . So, we have Equation (8).
t 0 < < < l = ( x < < < i + l )   (   β < < < l ) 0 t 1 < < < l = ( x < < < l )     ( x < < < i + l )   (   β < < < l ) 0
Let w = ( x < < < l ) 0 , based on Equation (8), we can obtain Equation (9) if ( w < < < i ) | n 1 j 0 (that is ( x < < < i ) | n 1 j l 0 ).
t 0 = t 0 < < < l = ( w < < < i )   (   β < < < l ) 0 t 1 = t 1 < < < l = w     ( w < < < i )   (   β < < < l ) 0
In Equation (9), we can replace the input x with w.
Now, we have t 0 0 and t 1 0 . □
According to Lemma 1, we have Theorem 2.
Theorem 2.
Let i = 2 k + 1 , 0 k n 2 1 , 0 j n 1 in h i , j ( α ) . If h i , j ( α ) makes A h i , j α an MDS, for any 0 l n 1 , assign h i ,   ( j + l ) m o d   n ( α ) = ( h i , j ( α ) < < < l ) , then A h i , ( j + l ) m o d   n α is an MDS.
Next, we give the construction of composite permutation φ based on the constructed permutation ϑ and inverse permutation ϑ 1 , and the transformational relations between   h i 0 , j ( α ) and   h i 1 , j ( α ) .
Theorem 3.
Let i e = 2 k e + 1 , 0 k e n 2 1 ,  0 j n 1 in h i e , j ( α ) with  e { 0 , 1 } . If each of h i e , j ( α ) makes A h i e , j α an MDS, respectively, then there exists a map φ : F 2 n   F 2 n satisfying   h i 1 , j ( α ) = φ (   h i 0 , j ( α ) ) .
Proof of Theorem 3.
Now, we construct a map ϑ on F 2 n : for every α and τ α = ϑ (   h i 0 , 0 ( α ) ) , let parameters ( i , j , h i , j ( α ) ) : = ( i 1 , 0 , τ α ) be related to Equation (5), which makes B r ( A h i 1 , 0 τ α ) = 5 hold, and conversely, for every α and σ α = ϑ 1 (   h i 1 , 0 ( α ) ) , let parameters ( i , j , h i , j ( α ) ) : = ( i 0 , 0 , σ α ) be related to Equation (5) which makes B r ( A h i 0 , 0 σ α ) = 5 hold.
Suppose h i k , 0 ( α ) = ( t 0 , t 1 , , t n 1 ) F 2 n with k { 0 , 1 } ; next, we construct a kind of map P i k : F 2 n   F 2 n n ; this means
( t 0 , t 1 , , t n 1 )     ( 1 × i k × t 0 , ( 2 × i k ) m o d   n ) × t 1 , , ( ( n 1 ) × i k ) m o d   n × t n 2 ,   0 )
Then, we use P i k to define the following permutation ϑ ( F 2 n F 2 n ) and its inverse permutation ϑ 1 ( F 2 n F 2 n ) about data elements in F 2 n :
(a) Let the binary digits of h i 0 , 0 ( α ) be the n-bit input element of P i 0 , the positions of the data in the sequence 1 : = ( 1 × i 1 , ( 2 × i 1 ) m o d   n ) ,   , ( ( n 1 ) × i 1 ) m o d   n ) ,   0 ) , which is the same with all non-zero data mapped from P i 0 to F n marked as 1; the other positions are marked as 0, then we can obtain an n-bit position identification value about 1 , denoted by τ α F 2 n , and define ϑ ( h i 0 , 0 ( α ) ) = τ α ;
(b) Let the binary digits of h i 1 , 0 ( α ) be the n -bit input element of   P i 1 , the positions of the data in the sequence 0 : = ( 1 × i 0 , ( 2 × i 0 ) m o d   n ) ,   , ( ( n 1 ) × i 0 ) m o d   n ) ,   0 ) which is the same with all non-zero data mapped from P i 1 to F n marked as 1; the other positions are marked as 0; then we can obtain an n -bit position identification value for 0 , denoted by σ α F 2 n , and define ϑ 1 ( h i 1 , 0 ( α ) ) = σ α .
For all the 0 j n 1 , by combining the permutation ϑ constructed above with the left cyclic shift operation of Theorem 2, the composite transformation φ from ϑ and “ < < < ” is obtained, and we have Theorem 3. □
Theorem 3 is the crucial theorem of the current paper. In the latter part, we provide some concrete instances based upon Theorem 3. By combining Theorem 2 and Theorem 3, we obtain Theorem 4.
Theorem 4.
For every parameter of each group ( i , j   ) × , i = 2 k + 1 , 0 k n 2 1 , 0 j n 1 , there exists a mapping h i , j :   F 2 n F 2 n , which maps each generating element α F 2 n one by one to h i , j ( α ) F 2 n   , such that A h i , j α is an MDS.
According to the previous conclusions, for every given parameter group ( i , j ) : = ( I , J ) , A h i , j α traverses all MDS-generating elements to make the MDS cluster partition of A , and we can obtain the MDS cluster { A h i = I , j = J α } of A . For every given parameter group ( i , α ) : = ( I , V ) . A h i , j α traverses all 0 j n 1 values to make the MDS cluster partition of A , and we can obtain the MDS cluster { A h i = I , j α = V } of A . Regarding the qualities, we have Proposition 1.
Proposition 1.
Let i = 2 k + 1 , 0 k n 2 1 , 0 j n 1 , and α be an MDS-generating element of A in F 2 n . For all α , the parameter variable ( i , j ) generates an MDS equivalence class division of A .
We know that the number of n -order monic irreducible polynomials is ( n ) =   1 n d | n μ ( d ) 2 n d , n 1 , and μ ( n ) is an Mertens function. On the basis of Theorem 4, we have Corollary 2.
Corollary 2.
According to the number of all possible values of i and j , the number of the MDS (denoted by M ( n ) ) constructed by A h i , j α of A in F 2 n satisfies M ( n ) n   2 d | n μ ( d ) 2 n d , where n 2 . Then, the number of existing MDSs is expanded to n 2 / 2 times that of the original.
Note that the number of the monic irreducible polynomials of degree 8 defined in F 2 8 is equal to 30 by the formula N ( n ) . According to computer searching, there are 36 generating elements of A in F 2 n , which shows that Equations (2) and (5), defined by the bit-level operation, expand the operational connotation of A in F 2 n .
According to the MDS-generating elements of A in F 2 8 , by Theorem 4, we obtain that the total number of MDSs constructed by the operation A h i , j α of A in F 2 8 is 1152 (= 4 × 8 × 36).
Example 1.
All 36 MDS-generating elements { h 1 , 0 ( α ) } of A in F 2 8 are listed below.
0x04, 0x16, 0x1a, 0x1c, 0x2a, 0x2c, 0x38, 0x3e, 0x40, 0x4c, 0x54, 0x5e,
0x62, 0x64, 0x68, 0x70, 0x76, 0x7a, 0x86, 0x8a, 0x8c, 0x9e, 0xa2, 0xa8,
0xb0, 0xba, 0xbc, 0xc2, 0xce, 0xd0, 0xd6, 0xdc, 0xe6, 0xf2, 0xf4, 0xf8.
Once we determine the generating elements of A in F 2 n , for all operation A h i , j α of A in F 2 n , by Theorem 2 and Theorem 3, we can obtain the transformational relations between clusters of { h i , j ( α ) } , and derive the total number of MDSs from A .
Example 2.
Based on the 36 data points { h 1 , 0 ( α ) } in Example 1, respectively, we can obtain the derived 36 data points { h 3 , 0 ( α ) } in F 2 8 , as shown below:
0x40, 0x58, 0x1a, 0x52, 0x8a, 0xc2, 0x92, 0xda, 0x04, 0x46, 0x54, 0x5e,
0x8c, 0xc4, 0x86, 0x94, 0xdc, 0x9e, 0x68, 0x2a, 0x62, 0x7a, 0xa8, 0xa2,
0xb0, 0xba, 0xf2, 0x2c, 0x6e, 0x34, 0x7c, 0x76, 0xec, 0xbc, 0xf4, 0xb6.
Regarding the map ϑ definition of Theorem 3, one could verify the correctness of the derived data set shown in Example 2. Then, we show the verification process for the first 2 elements in Example 1, and the other cases are similar.
  • For the first element h 1 , 0 ( α ) = 0 x 04 in Example 1, let its binary bits ( 0   0   0   0   0   1   0   0 ) be the input of map P i 0 ; then, the output is ( 0   0   0   0   0   6   0   0 ) . For 1 : = ( 3   6   1   4   7   2   5   0 ) , the same with all non-zero data (only “6”) mapped from P i 0 to F 8 are marked as 1, the other positions are marked as 0; then, we can obtain the n-bit position identification value ( 0   1   0   0   0   0   0   0 ) as h 3 , 0 ( 0 x 04 ) = ϑ ( h 1 , 0 ( 0 x 04 ) ) = 0 x 40 .
  • For the second element h 1 , 0 ( α ) = 0 x 16 in Example 1, let its binary bits ( 0   0   0   1   0   1   1   0 ) be the input of map P i 0 ; then, the output is ( 0   0   0   4   0   6   7   0 ) . For 1 : = ( 3   6   1   4   7   2   5   0 ) , the same with all non-zero data “4, 6, 7” mapped from P i 0 to F 8 are marked as 1; the other positions are marked as 0. Then, we can obtain the n-bit position identification value ( 0   1   0   1   1   0   0   0 ) as h 3 , 0 ( 0 x 16 ) = ϑ ( h 1 , 0 ( 0 x 16 ) ) = 0 × 58 .

4. Conclusions

The circulant MDS matrix used in the diffusion layer of the AES algorithm is simple and efficient. Based on the known lightweight MDS matrix on F 2 n   4 , by constructing permutation-based parameters, we can obtain a large number of lightweight parametrical MDS transformations, which expands the design idea of MDS from static to dynamic and increases the number of MDSs from a single one to a large batch at one time. The constructions in this paper provide rich component materials for the design of lightweight cryptographic algorithms, which have low-cost implementations for the purpose of constraining resources, such as IoT and wireless communication environments.

Author Contributions

Methodology, J.-B.W.; Writing—review & editing, Y.W. and Y.Z. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported by the National Key R&D Program of China (Program number: No. 2020YFC1522900) and the Sichuan Science and Technology Program (Program numbers: Nos. 2020JDJQ0076 and 2021ZYD0011).

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Informed consent was obtained from all subjects involved in the study.

Data Availability Statement

Not applicable.

Conflicts of Interest

The authors declare that there are no conflict of interest.

References

  1. Shannon, C.E. Communication theory of secrecy systems. Bell Syst. Tech. J. 1949, 28, 656–715. [Google Scholar] [CrossRef]
  2. Daemen, J.; Rijmen, V. The Design of Rijndael: AES. The Advanced Encryption Standard. Information Security and Cryptography; Springer: Berlin/Heidelberg, Germany, 2002. [Google Scholar]
  3. Specification of SMS4, Block Cipher for WLAN Products-SMS4 (In Chinese) [EB/OL]. Available online: https://sca.gov.cn/sca/c100061/201611/1002423/files/330480f731f64e1ea75138211ea0dc27.pdf, (accessed on 18 November 2016).
  4. Cui, T.; Jin, C.; Kong, Z. On compact cauchy matrices for substitution-permutation networks. IEEE Trans. Comput. 2015, 64, 2098–2102. [Google Scholar] [CrossRef]
  5. Gupta, K.C.; Pandey, S.K.; Venkateswarlu, A. Almost involutory recursive MDS diffusion layers. Des. Codes Cryptogr. 2019, 87, 609–626. [Google Scholar] [CrossRef]
  6. Güzel, G.G.; Sakallı, M.T.; Akleylek, S.; Rijmen, V.; Çengellenmi, Ş. A new matrix form to generate all 3 × 3 involutory MDS matrices over. Inf. Processing Lett. 2019, 147, 61–68. [Google Scholar] [CrossRef]
  7. Li, Y.; Wang, M. On the Constructions of Lightweight Circulant Involutory MDS Matrices. In Proceedings of the Fast Software Encryption—23rd International Conference, FSE 2016, LNCS 9783, Bochum, Germany, 20–23 March 2016; Springer: Berlin/Heidelberg, Germany, 2016; Volume 5, pp. 121–139. [Google Scholar]
  8. Liu, M.; Sim, S.M. Lightweight MDS generalized circulant matrices. In Proceedings of the Fast Software Encryption 23rd International Conference. FSE 2016, Bochum, Germany, 20–23 March 2016; pp. 101–120, Revised Selected Papers. [Google Scholar]
  9. Dong, X.; Hu, J. Design and Analysis of Lightweight Linear MDS Transformation. Commun. Technol. 2018, 51, 653–658. [Google Scholar]
  10. Wang, J. The optimal permutation in cryptography based on cyclic-shift linear transform. China Crypt. 2007, c2007, 306–307. [Google Scholar]
  11. Sébastien, D.; Gaëtan, L. MDS Matrices with Lightweight Circuits. IACR Trans. Symmetric Cryptol. 2018, 2018, 48–78. [Google Scholar]
  12. Christof, B.; Thorsten, K.; Gregor, L. Lightweight Multiplication in GF(2n) with Applications to MDS Matrices; CRYPTO 2016. LNCS 9814; Springer: Berlin/Heidelberg, Germany, 2016; pp. 625–653. [Google Scholar]
  13. Shirai, T.; Shibutani, K. Improving Immunity of Feistel Ciphers against Differential Cryptanalysis by Using Multiple MDS Matrices; Roy, B., Meier, W., Eds.; FSE 2014, LNCS 3017; Springer: Berlin/Heidelberg, Germany, 2014; pp. 260–278. [Google Scholar]
  14. Xiang, Z.; Zeng, X.; Lin, D.; Bao, Z.; Zhang, S. Optimizing Implementations of Linear Layers. IACR Trans. Symmetric Cryptol. 2020, 2, 120–145. [Google Scholar] [CrossRef]
  15. Lin, D.; Xiang, Z.; Zeng, X.; Zhang, S. A Framework to Optimize Implementations of Matrices. In Proceedings of the CT-RSA 2021: Cryptographers’ Track at the RSA Conference 2021, San Francisco, CA, USA, 17–20 May 2021; pp. 609–632. [Google Scholar]
  16. Shamsabad, M.R.M.; Dehnavi, S.M.; Rishakani, A.M. Randomized Nonlinear Software oriented MDS Diffusion Layers. Groups Complex. Cryptol. 2019, 11, 123–131. [Google Scholar] [CrossRef]
  17. Shanmsabad, M.R.M.; Dehnavi, S.M. A Family of Nonlinear MDS Diffusion Layers. Groups Complex. Cryptol. 2019, 11, 123–131. [Google Scholar] [CrossRef]
  18. Wu, Y.; Dong, X.-F.; Wang, J.-B.; Zhang, W.-Z. Construction of MDS Matrices Based on the Primitive Elements of the Finite Field. In Proceedings of the 2021 International Conference on Networking and Network Applications (NaNA), Lijiang, China, 29 October 2021—1 November 2021; IEEE: Piscataway Township, NJ, USA, 2021; pp. 485–488. [Google Scholar]
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Wang, J.-B.; Wu, Y.; Zhou, Y. More Constructions of Light MDS Transforms Based on Known MDS Circulant Matrices. Information 2022, 13, 347. https://doi.org/10.3390/info13070347

AMA Style

Wang J-B, Wu Y, Zhou Y. More Constructions of Light MDS Transforms Based on Known MDS Circulant Matrices. Information. 2022; 13(7):347. https://doi.org/10.3390/info13070347

Chicago/Turabian Style

Wang, Jin-Bo, You Wu, and Yu Zhou. 2022. "More Constructions of Light MDS Transforms Based on Known MDS Circulant Matrices" Information 13, no. 7: 347. https://doi.org/10.3390/info13070347

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop