diff options
| author | Andrew Guschin <guschin.drew@gmail.com> | 2022-12-14 01:34:52 +0400 |
|---|---|---|
| committer | Andrew Guschin <guschin.drew@gmail.com> | 2022-12-14 01:37:56 +0400 |
| commit | d07c4227e4be97220a6f944c6d49161cadd438db (patch) | |
| tree | bb6a697eb3e1d40690422aa923a848fc9edc4360 /cryptography/lectures/lecture15.tex | |
| parent | b57eb3b8db24a95d1d908bd5de4d2e1b5988c26a (diff) | |
Добавлены рисунки в 14 и 15 лекциях
Diffstat (limited to 'cryptography/lectures/lecture15.tex')
| -rw-r--r-- | cryptography/lectures/lecture15.tex | 49 |
1 files changed, 34 insertions, 15 deletions
diff --git a/cryptography/lectures/lecture15.tex b/cryptography/lectures/lecture15.tex index f7c93bf..ad5785e 100644 --- a/cryptography/lectures/lecture15.tex +++ b/cryptography/lectures/lecture15.tex @@ -35,11 +35,12 @@ $S_0 = 0, S_1 = 1, \dots S_{255} = 255$. k_{255}$. Счётчик $j$ устанавливается в 0. После этого производятся следующие действия: -% TODO: оформить алгоритм -for i = 0 to 255 - j = (j + k_i + S_i) \pmod{256} - переставить $S_i$ и $S_j$. - +\begin{algorithm} + \For {$i = 0$ \to 255} { + $j = (j + k_i + S_i) \pmod{256}$\; + Переставить $S_i$ и $S_j$\; + } +\end{algorithm} \subsection{Методы анализа поточных шифров} @@ -121,8 +122,11 @@ for i = 0 to 255 \paragraph{Сеть Фейстеля.} Для построения алгоритмов часто используется \emph{Сеть Фейстеля} (см. рисунок). - -% TODO: Рисунок 1 (везде индексы i) +\begin{figure}[H] + \centering + \includegraphics[width=0.8\textwidth]{lecture15/feistel} + \caption{Сеть Фейстеля} +\end{figure} Преобразование, реализуемое сетью Фейстеля в $i$-м цикле шифрования имеет вид \begin{equation*} @@ -164,8 +168,11 @@ RC5. Обработка данных сводится в основном к заменам и перестановкам зависящим от ключа $k_i$ (см. рисунок). - -% TODO: Рисунок 2 +\begin{figure}[H] + \centering + \includegraphics[width=0.6\textwidth]{lecture15/sp} + \caption{SP-сеть} +\end{figure} SP-сети являются гораздо менее распространёнными, чем сети Фейстеля. На их базе, например, основаны алгоритмы шифрования Serpent, SAFER+. @@ -203,9 +210,21 @@ S-боксы делятся на линейные и нелинейные. В л В нелинейном S-боксе нельзя задать линейные соотношения для каждого выхода. -Пример S-бокса представлен на рисунке, где первый бит входа определяет строку, -два следующих бита входа определяют столбец. - -Два бита на выходе --- это значение на пересечении выбранных строки и столбца. - -% TODO: Рисунок 3 +Пример S-бокса представлен в таблице, где первый бит входа определяет строку, +два следующих бита входа определяют столбец. Два бита на выходе --- это значение +на пересечении выбранных строки и столбца. +\begin{table}[H] + \centering + \begin{tabular}{|c|c|c|c|c|} + \cline{2-5} + \multicolumn{1}{c|}{} & + \textbf{00} & \textbf{01} & \textbf{10} & \textbf{11} \\ \hline + \textbf{0} & 00 & 01 & 10 & 11 \\ \hline + \textbf{1} & 00 & 01 & 10 & 11 \\ \hline + \end{tabular} + \caption{Пример S-блока} +\end{table} + +\begin{example} + Вход --- 110; Выход --- 11. +\end{example} |