1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
|
% Лекция 6 (10.10.22)
\begin{table}[H]
\centering
\begin{tabular}{l}
палец $\to$ ЕПЦЛА \\
волна $\to$ НВАЛО \\
Ключ: 41532 \\
\end{tabular}
\end{table}
Если предположить, что две конкретные буквы в одном из сообщений идут одна
за другой в открытом тексте, то буквы, стоящие на тех же местах в каждом из
остальных сообщений, соединяются подобным же образом. Значит, они могут служить
проверкой правильности первого предположения.
К каждому из указанных двухбуквенных сочетаний можно добавить третью букву для
образования триграммы и так далее. Если располагать не менее чем 4 сообщениями
одинаковой длины, то можно с уверенностью гарантировать их вскрытие подобным
образом.
Если ключ зашифрования совпадает с ключом расшифрования, то такие шифры называют
\emph{симметричными}, иначе --- \emph{асимметричными}.
\subsection{Шифры простой замены}
\subsubsection{Шифр замены}
\emph{Шифр замены} --- шифр, при котором фрагменты открытого текста (отдельные
буквы или группы букв) заменяются некоторыми их эквивалентами в криптограмме.
Определим модель $\Sigma_A = (X, K, Y, E, D)$ произвольного шифра замены.
Будем считать, что открытые и шифрованные тексты являются словами в алфавитах A
и B соответственно. $X \subset A^*, \, Y \subset B^*, \, |A| = n, \, |B| = m$.
Перед зашифрованием открытый текст предварительно представляется в виде
последовательностей подслов, называемых \emph{шифровеличинами} (слова из
$A^*$).
При зашифровании шифрвеличины заменяются некоторыми их эквивалентами в
шифртексте, которые называются \emph{шифробозначениями} (слова из $B^*$).
Пусть
$U = (u_1, \dots, u_N)$ --- множество возможных шифрвеличин.
$V = (v_1, \dots, v_M)$ --- множество возможных шифробозначений.
При этом $N \geq n, \, M \geq m, \, M \geq N$.
Для определения правила зашифрования $E_k(x)$ в общем случае понадобится ряд
обозначений и понятие \emph{распределителя}, который, по сути, и будет выбирать
в каждом такте шифрования замену соответствующей шифровеличине.
Поскольку $M \geq N$, множество $V$ можно представить в виде объединения $V =
\bigcup_{i = 1}^{N} V^{(i)}$ непересекающихся непустых подмножеств $V^{(i)}$.
Рассмотрим произвольное семейство, состоящее из $r$ таких разбиений множества
$V$: $$V = \bigcup_{i = 1}^{N} V^{(i)}_\alpha, \, \alpha = \overline{1, r}, \,
r \in N,$$ и соответствующее семейство биекций: $$\varphi_\alpha : U \to \set{
V^{(1)}_\alpha, \dots, V^{(N)}_\alpha},$$ для которых $\varphi_\alpha (u_i) =
V^{(i)}_\alpha, \, i = \overline{1, N}$.
Рассмотрим также произвольное отображение $\psi : K \times \N \to \N^*_r$,
где $\N^*_r = \set{1, 2, \dots, r}$, такое, что для любых $k \in K, \, l \in
\N$ $$\psi(k, l) = a^{(k)}_1 \dots a^{(k)}_l, \, a^{(k)}_j \in \N^*_r, \, j =
\overline{1, l}$$
Последовательность $\psi(k, l)$ называется \emph{распределителем}, отвечающим
данным значениям $k \in K,\, l \in \N$.
Теперь можно определить правило зашифрования произвольного шифра замены. Пусть
$$x \in X, x = x_1 \dots x_l, x_i \in U, i = \overline{1, l}, k \in K, \quad
\psi(k, l) = a^{(k)}_1 \dots a^{(k)}_l$$
%% NOTE: Ручная нумерация формулы
Тогда $E_k(x) = y$, где $y = y_1 \dots y_l, y_j \in \varphi_{\alpha^{(k)}}(x_j),
j = \overline{1, l} \quad (1)$.
В качестве $y_j$ можно выбрать любой элемент множества
$\varphi_{\alpha^{(k)}}(x_j)$.
Всякий раз при шифровании этот выбор можно производить случайно, например, с
помощью некоторого \emph{рандомизатора} типа игровой рулетки.
Для однозначных шифров замены, у которых правило дешифрования $E_k(x)$ является
однозначной функцией, например, шифр гаммирования, справедливо свойство
\begin{equation*}
\forall \alpha, i : |V^{(i)}_\alpha| = 1
\end{equation*}
Для многозначных шифров замены, например, шифров пропорциональной замены:
\begin{equation*}
\exists \alpha, i : |V^{(i)}_\alpha| > 1
\end{equation*}
Далее будем заниматься в основном изучением однозначных замен, получивших
наибольшее практическое применение.
Итак, далее $M = N$ и $\varphi_\alpha(u_i) = v^{(i)}_\alpha, i = \overline{1,
M}$.
%% NOTE: Ручная нумерация формулы
Для шифра однозначной замены определение правила зашифрования можно
уточнить в формуле (1): включение следует заменить равенством $$y_j =
\varphi_{\alpha_j^{(k)}} (x_j), j = \overline{1, l} \quad (1')$$
Если для некоторого числа $q \in \N$ выполняются включения $v_i \in B^q, i
= \overline{1, N}$, то соответствующий шифр замены называется \emph{шифром
равнозначной замены}, в противном случае --- \emph{шифром разнозначной замены}.
В подавляющем большинстве случаев используются шифры замены, для которых $U \in
A^p$ для некоторого $p \in \mathbb{N}$.
При $p = 1$ говорят о \emph{поточных шифрах замены}, при $p > 1$ --- о
\emph{блочных шифрах замены}.
В случае $r = 1$ шифр замены называют \emph{одноалфавитным шифром замены} или
\emph{шифром простой замены}. В противном случае --- \emph{многоалфавитным
шифром замены}.
\subsubsection{Шифры простой замены}
Одноалфавитные однозначные замены называются \emph{шифрами простой замены}.
Введём шифр простой замены в алфавите $A$.
Пусть $X = Y = \bigcup_{i = 1}^L A^i, \, K \subseteq S(A)$, где $S(A)$ ---
симметрическая группа подстановок множества $A$.
Для любого ключа $k \in K$, открытого текста $x = (x_1, \dots, x_l)$ и
шифрованного текста $y = (y_1, \dots, y_l)$ правила зашифрования и расшифрования
шифра простой замены в алфавите $A$ определяются формулами:
\begin{align*}
E_k(x) &= (k(x_1), \dots, k(x_l)), \\
D_k(x) &= (k^{-1}(y_1), \dots, k^{-1}(y_l)),
\end{align*}
где $k^{-1}$ --- подстановка, обратная к $k$.
Например, в рассказе Артура Конана Дойля "Пляшущие человечки", бандит Аб Слени
использовал шифр, где заменялись схематическими человеческими фигурками в разных
позах, при этом каждая поза этих человечков является отдельной буквой.
\subsubsection{Лозунговый шифр}
При этом методе осуществляется посимвольная замена букв открытого текста на
буквы шифроалфавита, который совпадает с алфавитом открытых текстов. В первой
строке шифровальной таблицы записывается алфавит языка открытых текстов.
Во второй, начиная с некоторого места записывается лозунг (пароль). Затем
на оставшихся местах второй строки, начиная с места, следующего за паролем,
записывается полный алфавит с пропуском тех букв, которые встречаются в пароле.
Закончив движение по строке, возвращаемся в её начало, процесс продолжается.
\emph{TODO: ПРИМЕР}
\subsubsection{Шифр простой неравнозначной замены}
\emph{TODO: ПРИМЕР}
%% NOTE: http://elibrary.sgu.ru/uch_lit/622.pdf
Пример --- шифр Марк (пример с шифротекстом взят из учебника В.~Н.~Салия).
\begin{table}[H]
\centering
\begin{tabular}{c|cccccccccc}
& 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 0 \\ \hline
& с & е & н & о & в & а & л & & & \\
8 & б & г & д & ж & з & и & й & к & м & п \\
9 & р & т & у & ф & х & ц & ч & ш & щ & ъ \\
0 & ы & ь & э & ю & я & \cdot & / & & & \\
\end{tabular}
\end{table}
Буквы, стоящие во второй строке таблицы при шифровании заменяются стоящими над
ними, остальные буквы --- двузначными числами <<строка-столбец>>.
Косая черта --- знак начала и окончания числового массива в открытом тексте
(цифры при шифровании сохраняются).
\begin{itemize}
\item \textbf{Шифротекст}: 07607 89605 19380 91938 28650 12956 78689 28818 68893
\item \textbf{Расшифровка}: маясупругивыехалимексику
\end{itemize}
\subsubsection{Анализ шифров простой замены}
\paragraph{}
Методы вскрытия шифра простой однобуквенной замены основаны на том, что с
точностью до переобозначений частотные характеристики $m$-грамм криптограммы и
открытого текста одинаковы.
При этом используются частотные характеристики предполагаемого открытого текста,
полученные с учётом <<характера переписки>>.
|