BMSTU/03-cpas-lab-01-report.tex

113 lines
5.8 KiB
TeX
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

\documentclass[a4paper,fontsize=14bp]{article}
\input{../common-preamble}
\input{../fancy-listings-preamble}
\input{../bmstu-preamble}
\setcounter{secnumdepth}{0}
\numerationTop
\begin{document}
\thispagestyle{empty}
\makeBMSTUHeader
% ... работе, номер, тема, предмет, ?а, кто
\makeReportTitle{лабораторной}{1}{Криптографические преобразования}{Криптографические протоколы и стандарты}{}{Варфоломеев А.А.}
\newpage
\thispagestyle{empty}
\tableofcontents
\newpage
\pagestyle{fancy}
\section{Цель}
Целью лабораторной работы является освоение преобразований и практика ручного преобразования данных. Вариант \code{П_6}.
\begin{enumerate}
\item посчитать многочлен Жегалкина (алгебраическая нормальная форма для $f_i(x_4, x_3, x_2, x_1)$);
\item найти спектр Уолша-Адамара $\forall f_i$;
\item найти статистическую структуру $\forall f_i$;
\item посчитать вероятность $P_i$ изменения выходного бита при изменении одного входного бита;
\item посчитать среднее число изменяющихся выходных бит при изменении одного входного бита.
\end{enumerate}
\section{Выполнение работы}
\begin{table}[h!]
\centering
\begin{tabular}{|c|c|c|c|c|}
\hline
$X_d$ & $X_h$ & $X_4X_3X_2X_1$ & \code{П_6} & $f_4f_3f_2f_1$\\ [0.5ex]
\hline
0 & 0 & 0 0 0 0 & 8 & 0 1 0 0 \\
1 & 1 & 0 0 0 1 & 14 & 1 1 1 0 \\
2 & 2 & 0 0 1 0 & 2 & 0 0 1 0 \\
3 & 3 & 0 0 1 1 & 5 & 0 1 0 1 \\
4 & 4 & 0 1 0 0 & 6 & 0 1 1 0 \\
5 & 5 & 0 1 0 1 & 9 & 1 0 0 1 \\
6 & 6 & 0 1 1 0 & 1 & 0 0 0 1 \\
7 & 7 & 0 1 1 1 & 12 & 1 1 0 0 \\
8 & 8 & 1 0 0 0 & 15 & 1 1 1 1 \\
9 & 9 & 1 0 0 1 & 4 & 0 1 0 0 \\
10 & A & 1 0 1 0 & 11 & 1 0 1 1 \\
11 & B & 1 0 1 1 & 0 & 0 0 0 0 \\
12 & C & 1 1 0 0 & 13 & 1 1 0 1 \\
13 & D & 1 1 0 1 & 10 & 1 0 1 0 \\
14 & E & 1 1 1 0 & 3 & 0 0 1 1 \\
15 & F & 1 1 1 1 & 7 & 0 1 1 1 \\
\hline
\end{tabular}
\caption{Исходные данные}
\label{table:1}
\end{table}
\subsection{Полином Жегалкина}
Поиск полинома осуществляется последовательным поразрядным поиском каждого элемента, при том, что $a_0$ известен, для $f_4$ равен 0. Например: $f(1,0,0,0) = a_{0000} \oplus a_{1000} = 1$, следовательно $a_{1000} = 1$, $f(0,1,0,0) = a_{0000} \oplus a_{0100} = 0$, следовательно $a_{0100} = 0$, и так далее.
Полином Жегалкина для 4-го разряда будет иметь вид
\[f_4 = x_2 \oplus x_3 \oplus x_1x_3 \oplus x_1x_4 \oplus x_2x_3 \oplus x_2x_4 \oplus x_3x_4,\]
поскольку промежуточные значения a будут иметь следующие значения:
\begin{equation*}
\begin{gathered}
a_{0000} = 1; a_{0001} = 0; a_{0010} = 1; a_{0011} = 0\\
a_{0100} = 1; a_{0101} = 1; a_{0110} = 1; a_{0111} = 0\\
a_{1000} = 0; a_{1001} = 1; a_{1010} = 1; a_{1011} = 0\\
a_{1100} = 1; a_{1101} = 0; a_{1110} = 0; a_{1111} = 0\\
\end{gathered}
\end{equation*}
Полином Жегалкина для 3-го разряда будет иметь вид
\[f_3 = x_1 \oplus x_3 \oplus x_4 \oplus x_1x_4 + x_2x_3 + x_2x_4 + x_3x_4 + x_1x_3x_4 + x_2x_3x_4\]
поскольку промежуточные значения a будут иметь следующие значения:
\begin{equation*}
\begin{gathered}
a_{0000} = 0; a_{0001} = 1; a_{0010} = 0; a_{0011} = 0 \\
a_{0100} = 1; a_{0101} = 0; a_{0110} = 1; a_{0111} = 0 \\
a_{1000} = 1; a_{1001} = 1; a_{1010} = 1; a_{1011} = 0 \\
a_{1100} = 1; a_{1101} = 1; a_{1110} = 1; a_{1111} = 0 \\
\end{gathered}
\end{equation*}
Полином Жегалкина для 2-го разряда будет иметь вид
\[f_2 = x_1 \oplus x_2 \oplus x_3 \oplus x_4 \oplus x_2x_4 \oplus x_1x_2x_3 \oplus x_2x_3x_4\]
поскольку промежуточные значения a будут иметь следующие значения:
\begin{equation*}
\begin{gathered}
a_{0000} = 0; a_{0001} = 1; a_{0010} = 1; a_{0011} = 0 \\
a_{0100} = 1; a_{0101} = 0; a_{0110} = 0; a_{0111} = 1 \\
a_{1000} = 1; a_{1001} = 0; a_{1010} = 1; a_{1011} = 0 \\
a_{1100} = 0; a_{1101} = 0; a_{1110} = 1; a_{1111} = 0 \\
\end{gathered}
\end{equation*}
Полином Жегалкина для 2-го разряда будет иметь вид
\[f_1 = x4 \oplus x1x2 \oplus x1x3 \oplus x1x4 \oplus x2x3 \oplus x1x2x3 \oplus x1x2x4 \oplus x1x3x4 \oplus x2x3x4\]
поскольку промежуточные значения a будут иметь следующие значения:
\begin{equation*}
\begin{gathered}
a_{0000} = 0; a_{0001} = 0; a_{0010} = 0; a_{0011} = 1 \\
a_{0100} = 0; a_{0101} = 1; a_{0110} = 1; a_{0111} = 1 \\
a_{1000} = 1; a_{1001} = 1; a_{1010} = 0; a_{1011} = 1 \\
a_{1100} = 0; a_{1101} = 1; a_{1110} = 1; a_{1111} = 0 \\
\end{gathered}
\end{equation*}
\end{document}