Рейтинг:0

Блочные шифры, использующие матричное представление квазигрупп

флаг us

Этот В статье говорится, что каждая квазигруппа порядка 4 может быть представлена ​​в матричной форме с помощью следующего уравнения: \begin{equation} x \ast y \equiv m^T +Ax^T +By^T +CA\cdot x^T \circ CB\cdot y^T \end{equation} куда, $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}$ являются невырожденными булевыми матрицами и $м = [м_1, м_2]$ является булевым вектором. Обратите внимание, что нам также необходимо рассмотреть логическое представление элементов $х$ и $у$ чтобы уравнение имело смысл. Теперь, поскольку мы имеем дело с логическими представлениями элементов, я интерпретировал все операции в приведенном выше уравнении как логические операции «+», «.». и $'\circ'$ является скалярным произведением, которое означало бы работу с соответствующими элементами матриц с использованием '$\cdot$'. Опять же, согласно это, любым произвольным невырожденным матрицам A, B, булевому вектору m и некоторому частному C мы получаем соответствующие квазигруппы порядка 4. Поскольку это представление использовалось при разработке эффективных блочных шифров, я надеялся, что смогу использовать их в криптографических примитивах. В качестве эксперимента я подумал, $м=[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}$ (эта матрица задана в статье для получения квадратичных квазигрупп порядка 4). Теперь мы хотим построить латинский квадрат для квазигруппы $Q$ наличие элементов, $\{0, 1, 2, 3\}$. Используя уравнение и логические представления элементов, $(0 экв 00, 1 экв 01, 2 экв 10, 3 экв 11)$ выполняем следующие операции: $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$

Сходным образом, $0 \ast 2 = [1 \;0]^T и, 0 \ast 3 = [1 \;1]^T.$ Следующий,

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

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

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

Мы знаем, что ни один элемент не может повторяться в строке или столбце латинского квадрата. Но в приведенном выше примере строка, соответствующая элементу 1, будет иметь повторяющиеся элементы, потому что $1 \аст 1 = 1 \аст 2$. Могла ли быть некоторая двусмысленность в моей интерпретации или реализации матричных операций? Пожалуйста, помогите мне определить мою ошибку здесь. Кроме того, приветствуется любая альтернативная интерпретация операций. P.S. Я задал тот же вопрос в Mathematics Stack Exchange, но не получил ответа, поэтому я публикую его в надежде, что криптографическое сообщество сможет указать мне путь.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.