% Лекция 14 (05.12.22)

\subsection{Усложнение ЛРП}

В криптографических приложениях используют различные способы усложнения
аналитического строения линейных реккурент.

\paragraph{Фильтрующие генераторы.}

Первый способ заключается в применении к элементам ЛРП некоторой функции $f$
(см. рисунок).

% TODO: рис. 1

Подобные узлы усложнения ЛРП называются фильтрующими генераторами. Их
результирующей последовательностью является нелинейно <<фильтрованное>>
содержимое регистра сдвига.

<<Фильтрующая>> функция $f$ должна выбираться так, чтобы выходная
последовательность имела распределение близкое к равномерному и высокую линейную
сложность.

\paragraph{Комбинирующие генераторы.}

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

Генератор псевдослучайных последовательностей, реализующий усложнение нескольких
линейных рекуррент с помощью одной общей функции усложнения, получил название
комбинирующего генератора (см. рисунок).

% TODO: Рис. 2

\paragraph{Композиции линейных регистров сдвига}

Так называется схема, в которой выход одного из регистров подаётся на вход другого
регистра (см. рисунок).

% TODO: Рис. 3

Функционирование такой схемы описывается следующим образом.

Пусть $\nu$ --- ЛРП, вырабатываемая первым регистром сдвига, закон рекурсии
которого определяется характеристическим многочленом $F(X)$.

Пусть задано начальное состояние второго регистра сдвига, закон рекурсии
которого определяется характеристическим многочленом $G(x) = x^m - \sum_{j =
0}^{m - 1} g_j \cdot x^j$.

Тогда выходная последовательность композиции регистров сдвига задаётся
соотношением
\begin{equation*}
  w(i + m) = \sum_{j = 0}^{m - 1} w(i + j) g_j + v(i),\, i \geq 0
\end{equation*}

\paragraph{Схемы с элементами памяти}

Один из наиболее широко известных классов датчиков псевдослучайных чисел,
построенных с использованием памяти, составляют генераторы Макларена-Марсальи,
которые были предложены Д. Марсальей и Д. Маклареном в 1965 году.

Пусть имеется три последовательности и массив памяти. Элементы первой
последовательности записываются в память по адресам, которые определяются
элементами второй последовательности.

Элементы выходной последовательности получаются при считывании значений,
хранящихся в массиве памяти, в соответствии с элементами третьей
последовательности.

Таким образом, первая последовательность определяет, какие знаки заносятся в
память, вторая управляется процессом записи этих элементов в память, а третья
--- процессом считывания из памяти элементов выходной последовательности.

На рисунке приведена схема работы генератора, когда процессами записи и
считывания управляет одна и та же последовательность.

% TODO: Рис. 4

Пусть $u$ и $v$ --- последовательности над полем $P$, а выходная
последовательность $\gamma$ вырабатывается с использованием $q$ ячеек памяти
$R_0, \dots, R_{q - 1}$. Если $R_j(i)$ --- заполнение $j$-

% TODO: Дописать

\subsection{Поточная шифрсистема A5}

