Skip to content

Commit

Permalink
блоковый шифр => блочный шифр
Browse files Browse the repository at this point in the history
  • Loading branch information
vlsergey committed Mar 8, 2015
1 parent a844b55 commit a8e682b
Show file tree
Hide file tree
Showing 16 changed files with 44 additions and 44 deletions.
2 changes: 1 addition & 1 deletion AES.tex
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ \section{Стандарт шифрования США AES}\index{шифр!AES|(}

Для повышения криптостойкости и замены стандарта DES был объявлен конкурс на новый стандарт AES (аббревиатура от Advanced Encryption Standard). Победителем конкурса стал шифр Rijndael. Название составлено с использованием первых слогов фамилий его создателей (Rijmen и Daemen). В русскоязычном варианте читается как <<Рэндал>>~\cite{Kiwi:1999}. Шифр был утверждён в качестве стандарта FIPS 197 в ноябре 2001 г. и введён в действие 26 мая 2002 года~\cite{FIPS-PUB-197}.

AES -- это раундовый\index{шифр!раундовый} блоковый\index{шифр!блоковый} шифр с переменной длиной ключа (128, 192 или 256 бит) и фиксированной длиной входного и выходного блоков (128 бит).
AES -- это раундовый\index{шифр!раундовый} блочный\index{шифр!блочный} шифр с переменной длиной ключа (128, 192 или 256 бит) и фиксированной длиной входного и выходного блоков (128 бит).

\subsection[Состояние, ключ шифрования и число раундов]{Состояние, ключ шифрования и число \protect\\ раундов}

Expand Down
8 changes: 4 additions & 4 deletions Block_cipher_modes.tex
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
\section{Режимы работы блоковых шифров}\label{chapter-block-chaining}
\section{Режимы работы блочных шифров}\label{chapter-block-chaining}
\selectlanguage{russian}

Открытый текст $M$, представленный как двоичный файл, перед шифрованием разбивают на части $M_1, M_2, \dots, M_n$, называемые пакетами. Предполагается, что размер в битах каждого пакета существенно превосходит длину блока шифрования, которая равна 64 бит для российского стандарта и 128 -- для американского стандарта AES.
Expand All @@ -14,7 +14,7 @@ \section{Режимы работы блоковых шифров}\label{chapter-

Для шифрования всего открытого текста $M$ и, следовательно, всех пакетов используется один и тот же \emph{сеансовый} ключ шифрования $K$. Процедуру передачи одного пакета будем называть \emph{сеансом}.

Существует несколько режимов работы блоковых шифров: режим электронной кодовой книги, режим шифрования зацеплённых блоков, режим обратной связи, режим шифрованной обратной связи, режим счётчика. Рассмотрим особенности каждого из этих режимов.
Существует несколько режимов работы блочных шифров: режим электронной кодовой книги, режим шифрования зацеплённых блоков, режим обратной связи, режим шифрованной обратной связи, режим счётчика. Рассмотрим особенности каждого из этих режимов.


\subsection{Электронная кодовая книга}
Expand All @@ -29,7 +29,7 @@ \subsection{Электронная кодовая книга}

Шифрование в режиме электронной кодовой книги не использует сцепление блоков и синхропосылку\index{синхропосылка} (вектор инициализации)\index{вектор инициализации}. Поэтому для данного режима применима атака на различение сообщений, так как два одинаковых блока или два одинаковых открытых текста шифруются идентично.

На рис.~\ref{fig:ecb-demo} приведён пример шифрования графического файла морской звезды в формате BMP, 24 бит цветности на пиксель (рис.~\ref{fig:starfish}), блоковым шифром AES с длиной ключа 128 бит в режиме электронной кодовой книги (рис.~\ref{fig:starfish-aes-128-ecb}). В начале зашифрованного файла был восстановлен стандартный заголовок формата BMP. Как видно, в зашифрованном файле изображение все равно различимо.
На рис.~\ref{fig:ecb-demo} приведён пример шифрования графического файла морской звезды в формате BMP, 24 бит цветности на пиксель (рис.~\ref{fig:starfish}), блочным шифром AES с длиной ключа 128 бит в режиме электронной кодовой книги (рис.~\ref{fig:starfish-aes-128-ecb}). В начале зашифрованного файла был восстановлен стандартный заголовок формата BMP. Как видно, в зашифрованном файле изображение все равно различимо.
\begin{figure}[!ht]
\centering
\subfloat[Исходный рисунок]{\label{fig:starfish} \includegraphics[width=0.45\textwidth]{pic/starfish}}
Expand All @@ -39,7 +39,7 @@ \subsection{Электронная кодовая книга}
\end{figure}
BMP файл в данном случае содержит в самом начале стандартный заголовок (ширина, высота, количество цветов), и далее идёт массив 24-битовых значений цвета пикселей, взятых построчно сверху вниз. В массиве много последовательностей нулевых байт, так как пиксели белого фона кодируются 3 нулевыми байтами. В AES размер блока равен 16 байт, и, значит, каждые $\frac{16}{3}$ подряд идущих пикселей белого фона шифруются одинаково, позволяя различить изображение в зашифрованном файле.

%На рис.~\ref{fig:ecb-demo} приведён пример шифрования графического файла логотипа Википедии в формате BMP, 24 бит цветности на пиксель (рис.~\ref{fig:wikilogo}), блоковым шифром AES с длиной ключа 128 бит в режиме электронной кодовой книги (рис.~\ref{fig:wikilogo-aes-128-ecb}). В начале зашифрованного файла был восстановлен стандартный заголовок BMP формата. Как видно, на зашифрованном рисунке возможно даже прочитать надпись.
%На рис.~\ref{fig:ecb-demo} приведён пример шифрования графического файла логотипа Википедии в формате BMP, 24 бит цветности на пиксель (рис.~\ref{fig:wikilogo}), блочным шифром AES с длиной ключа 128 бит в режиме электронной кодовой книги (рис.~\ref{fig:wikilogo-aes-128-ecb}). В начале зашифрованного файла был восстановлен стандартный заголовок BMP формата. Как видно, на зашифрованном рисунке возможно даже прочитать надпись.
%\begin{figure}[!ht]
% \centering
% \subfloat[Исходный рисунок]{\label{fig:wikilogo}\includegraphics[width=0.45\textwidth]{pic/wikilogo}}
Expand Down
6 changes: 3 additions & 3 deletions Feistel_cipher.tex
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
\section{Ячейка Фейстеля}
\selectlanguage{russian}

Одним из основных методов построения современных блоковых шифров является ячейка \textbf{Фейстеля} (Feistel), изображённая на рисунке~\ref{fig:Feistel}. Главная особенность шифрования с ячейкой Фейстеля состоит в том, что обратимость шифрования (т.~е. расшифрование) не зависит от обратимости преобразования $F$ внутри ячейки. Широкое применение ячеек Фейстеля в шифрах 1970--90-х годов вызвано бурным развитием персональных компьютеров. Шифрование выполняется \textbf{раундами}, на каждом раунде выполняется одно и то же преобразование ячейки Фейстеля, но с разными ключами. Общее количество раундов 16--32.
Одним из основных методов построения современных блочных шифров является ячейка \textbf{Фейстеля} (Feistel), изображённая на рисунке~\ref{fig:Feistel}. Главная особенность шифрования с ячейкой Фейстеля состоит в том, что обратимость шифрования (т.~е. расшифрование) не зависит от обратимости преобразования $F$ внутри ячейки. Широкое применение ячеек Фейстеля в шифрах 1970--90-х годов вызвано бурным развитием персональных компьютеров. Шифрование выполняется \textbf{раундами}, на каждом раунде выполняется одно и то же преобразование ячейки Фейстеля, но с разными ключами. Общее количество раундов 16--32.

\begin{figure}[!ht]
\centering
Expand Down Expand Up @@ -44,7 +44,7 @@ \section{Ячейка Фейстеля}
Как видно из приведённых соотношений, пара величин -- содержимое регистра и первый ключ $X, K_{1}$ -- влияет на все позиции шифрованного текста. Полностью разрушается статистическая структура исходного текста за счёт преобразований, вызывающих \emph{лавинный эффект}\index{лавинный эффект}. \textbf{Лавинный эффект} -- это распространение <<влияния>> одного бита открытого текста (или ключа) на все остальные биты шифруемого блока за определённое количество раундов.
%Для ячеек Фейстеля это количество равно 2.

Одной из характеристик блокового шифра является число раундов, за которое достигается полная диффузия (конфузия) -- зависимость всех битов выхода (входа) от всех битов входа (выхода). Вход -- это открытый текст и ключ.
Одной из характеристик блочного шифра является число раундов, за которое достигается полная диффузия (конфузия) -- зависимость всех битов выхода (входа) от всех битов входа (выхода). Вход -- это открытый текст и ключ.

Криптостойкость ячейки Фейстеля подтверждается тем фактом, что не существует примеров её взлома (в случае шифра DES взлом был сделан полным перебором 56-битового ключа, а не взломом самой криптосистемы; например, российский стандарт ГОСТ 28147-89 на ячейке Фейстеля с 256-битовым ключом не взломан).

Expand All @@ -62,7 +62,7 @@ \section{Ячейка Фейстеля}
\]
Как показали эти операции, вычислительная сложность устройства расшифрования ячейки Фейстеля такая же, как сложность устройства шифрования.

Раундовые блоковые шифры должны обеспечивать \emph{диффузию}, при которой каждый бит входа и ключа влияет на все биты выхода, и \emph{конфузию}, при которой каждый бит выхода нелинейно зависит от всех битов входа и ключа.
Раундовые блочные шифры должны обеспечивать \emph{диффузию}, при которой каждый бит входа и ключа влияет на все биты выхода, и \emph{конфузию}, при которой каждый бит выхода нелинейно зависит от всех битов входа и ключа.

Основные свойства, которыми должна обладать функция $F$:
\begin{itemize}
Expand Down
4 changes: 2 additions & 2 deletions Feistel_cipher_without_s_blocks.tex
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ \subsection{Схема Фейстеля без s-блоков}

\subsubsection[Схема Фейстеля в ГОСТ 28147-89 без $s$-блоков]{Схема Фейстеля в~ГОСТ~28147-89 без~$s$-блоков}

В отличие от устаревшего алгоритма DES, блоковый шифр ГОСТ без $s$-блоков намного сложнее для взлома, так как для него нельзя записать систему линейных уравнений:
В отличие от устаревшего алгоритма DES, блочный шифр ГОСТ без $s$-блоков намного сложнее для взлома, так как для него нельзя записать систему линейных уравнений:
\[
\begin{array}{l}
L_1 = R_0, \\
Expand All @@ -26,4 +26,4 @@ \subsection{Схема Фейстеля без s-блоков}
\end{array}
\]

Операция $\boxplus$ нелинейна по XOR. Например, только на трёх операциях $\oplus$, $\boxplus$ и $\lll f(R_i)$ без использования $s$-блоков построен блоковый шифр RC5, который по состоянию на 2010 г. не был взломан.
Операция $\boxplus$ нелинейна по XOR. Например, только на трёх операциях $\oplus$, $\boxplus$ и $\lll f(R_i)$ без использования $s$-блоков построен блочный шифр RC5, который по состоянию на 2010 г. не был взломан.
2 changes: 1 addition & 1 deletion GOST_R_34.11-94.tex
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ \section{Российский стандарт хэш-функции ГОСТ Р
S = s_4 ~\|~ s_3 ~\|~ s_2 ~\|~ s_1, \\
s_i = E_{K_i}( h_i), ~ i = 1, 2, 3, 4, \\
\end{array} \]
где $E_{K_i}( h_i)$ -- криптографическое преобразование 64-битового блока $h_i$ стандарта блокового шифрования ГОСТ 28147-89 с помощью ключа шифрования $K_i$.
где $E_{K_i}( h_i)$ -- криптографическое преобразование 64-битового блока $h_i$ стандарта блочного шифрования ГОСТ 28147-89 с помощью ключа шифрования $K_i$.

Вычисление ключей $K_i$ производится через вспомогательные функции:
\[ \begin{array}{c}
Expand Down
Loading

0 comments on commit a8e682b

Please sign in to comment.