Score:0

Block Ciphers using Matrix Representation of quasigroups

us flag

This paper says that, each quasigroup of order 4 can be represented in matrix form using the following equation, \begin{equation} x \ast y \equiv m^T +Ax^T +By^T +CA\cdot x^T \circ CB\cdot y^T \end{equation} where, $A = \begin{bmatrix} a_{11} & a_{12}\\ a_{21} & a_{22} \end{bmatrix}, \begin{bmatrix} b_{11} & b_{12}\\ b_{21} & b_{22} \end{bmatrix}$ are non-singluar Boolean matrices and $m = [m_1, m_2]$ is a Boolean vector. Note that we also need to consider the boolean representation of the elements $x$ and $y$ for the equation to make sense. Now, since we are dealing with boolean representations of the elements, I interpreted all the operations in the above equation as boolean operations '+', '.' and $'\circ'$ is a dot product which would mean operating the corresponding elements of the matrices using '$\cdot$'. Again, as per this, any arbitrary non-singular matrices A, B, a boolean vector m and some particular C, we obtain corresponding quasigroups of order 4. Since this representation has been used in the design of efficient block ciphers so I hoped to be able to use them in cryptographic primitives. As an experiment, I considered, $m=[0, 0]$, $A=\begin{bmatrix} 1 & 1\\ 1 & 0 \end{bmatrix}, B=\begin{bmatrix} 1 & 0\\ 0 & 1 \end{bmatrix} $. $C= \begin{bmatrix} 1 & 1\\ 1 & 1\end{bmatrix}$ (this matrix has been specified in the paper to obtain quadratic quasigroups of order 4). Now we wish to generate a Latin square for the quasigroup $Q$ having elements, $\{0, 1, 2, 3\}$. Using the equation and the boolean representations of the elements, $(0 \equiv 00, 1 \equiv 01, 2 \equiv 10, 3 \equiv 11)$ we perform the following operations: $0 \ast 0 = (0, 0) \ast (0, 0) = \begin{bmatrix} 0 \\ 0 \end{bmatrix} + \begin{bmatrix} 1 & 1\\ 1 & 0 \end{bmatrix} \begin{bmatrix} 0\\ 0 \end{bmatrix} + \begin{bmatrix} 1 & 0\\ 0 & 1 \end{bmatrix} \begin{bmatrix} 0\\ 0 \end{bmatrix} + \begin{bmatrix} 1 & 1\\ 1 & 1\end{bmatrix} \begin{bmatrix} 1 & 1\\ 1 & 0 \end{bmatrix} \cdot \begin{bmatrix} 0\\ 0 \end{bmatrix} \circ \begin{bmatrix} 1 & 1\\ 1 & 1\end{bmatrix} \begin{bmatrix} 1 & 0\\ 0 & 1 \end{bmatrix} \cdot \begin{bmatrix} 0\\ 0 \end{bmatrix} = [0 \; 0]^T$ $0 \ast 1 = (0, 0) \ast (0, 1) = \begin{bmatrix} 0 \\ 0 \end{bmatrix} + \begin{bmatrix} 1 & 1\\ 1 & 0 \end{bmatrix} \begin{bmatrix} 0\\ 0 \end{bmatrix} + \begin{bmatrix} 1 & 0\\ 0 & 1 \end{bmatrix} \begin{bmatrix} 0\\ 1 \end{bmatrix} + \begin{bmatrix} 1 & 1\\ 1 & 1\end{bmatrix} \begin{bmatrix} 1 & 1\\ 1 & 0 \end{bmatrix} \cdot \begin{bmatrix} 0\\ 0 \end{bmatrix} \circ \begin{bmatrix} 1 & 1\\ 1 & 1\end{bmatrix} \begin{bmatrix} 1 & 0\\ 0 & 1 \end{bmatrix} \cdot \begin{bmatrix} 0\\ 1 \end{bmatrix} = [0\; 1]^T$

Similarly, $0 \ast 2 = [1 \;0]^T and, 0 \ast 3 = [1 \;1]^T.$ Next,

$1 \ast 0 = [1 \; 0]^T$;

$1 \ast 1 = [1 \; 1]^T$;

$1 \ast 2 = [1 \; 1]^T$

We know that no element can be repeated within a row or a column of a Latin square. But in the example above, the row corresponding to the element 1 will have repeated elements because, $1 \ast 1 = 1 \ast 2$. Could there thus be some ambiguity in my interpretation or the implementation of the matrix operations? Please help me identify my mistake here. Also, any alternative interpretation of the operations is appreciated. P.S. I had asked the same question in Mathematics Stack Exchange but got no response so I am reposting this in the hope that the cryptographic community might be able to show me a way.

mangohost

Post an answer

Most people don’t grasp that asking a lot of questions unlocks learning and improves interpersonal bonding. In Alison’s studies, for example, though people could accurately recall how many questions had been asked in their conversations, they didn’t intuit the link between questions and liking. Across four studies, in which participants were engaged in conversations themselves or read transcripts of others’ conversations, people tended not to realize that question asking would influence—or had influenced—the level of amity between the conversationalists.