Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Сборная ответов к госэкзаменам.doc
Скачиваний:
137
Добавлен:
02.09.2019
Размер:
7 Mб
Скачать

Фильтрующие генераторы

строятся на основе ЛРС и некоторой функции усложнения - n-местная функция.

Нет смысла брать линейную функцию , т.к. суперпозиция линейных функций есть линейная функция. Следовательно, необходимо брать функцию, имеющую высокую степень нелинейности. Если то . Так если K = 2, то линейная сложность будет иметь порядок n2- немногим лучше, чем n.

- все эти функции имеют степень нелинейности меньше, чем K

ПРОБЛЕМА: сохранить период последовательности, так как он может сократиться.

Линейная сложность последовательности - минимальная длина ЛРС (линейного регистра сдвига), который способен сгенерировать данную последовательность.

Для последовательности длины N максимальная линейная сложность N-1

Комбинирующий генератор

есть несколько различных регистров, выходные последовательности этих регистров поступают на некоторую объединяющую функцию усложнения. Если длина регистров равна n1, n2, …ny, то линейная сложность последовательности .

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

Если функция выхода deg=d, то линейная сложность <= d

Схемы с неравномерным движением регистров

  • управление с помощью управляющего регистра

  • самоуправление с помощью обратной связи

Генераторы «стоп-вперед»

Схема работы выглядит следующим образом. Первый регистр движется равномерно (1 знак за 1 шаг). Если знак равен 0, то регистр 2 не движется и выдает тот знак, который у него был до этого. Если же знак равен 1, то регистр 2 сдвигается (отрабатывает) 1 такт и на выходе выдается значение функции обратной связи

«0» - оставляем, что было.

«1» - прокручиваем новое.

- суммарное число продвижений.

Из линейной последовательности строим гамму достаточно сложной зависимости. Сама же функция f довольно простая,

Слабости: По выходной последовательности можно судить о входе.

Пусть Т1 – период первого регистра, Т2 – второго регистра, Т – период всего генератора.

- сумма всех продвижений за период. То через НОК (S,T2) шагов второй регистр вернется в исходное состояние. И за каждый круг первого регистра происходит продвижение на S шагов =>

Можно построить схему так, что НОД (S,T2)=1 (взаимнопростые числа), тогда Т = Т1 Т 2

- линейная сложность. Равенство будет в том случае, если (m,n)=1 и Т1=2n-1

Эта схема довольно сложная, однако генератор обладает слабым криптографическим свойством:

если , то произошел сдвиг второго регистра , таким образом можно восстановить первый регистр, набирая информацию. Чтобы исключить эти слабости, используется генератор «1-2 шага». Для этого генератора функция управления . Если , то R2 сдвигается на 1 шаг. Если , то R2 сдвигается на 2 шага.

Обобщением описанных моделей является генератор BRM = Binary Rate Multiplier.

Управляющая функция имеет вид: - функция от t первых координат первого регистра. . Число единиц на периоде первого регистра: .

За число импульсов на входе R2: - оба регистра вернуться в исходное состояние.

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

Вывод 1: период общей последовательности генераторов «стоп-вперед» и «1-2 шага» равен произведению периодов, входящих в них регистров.

Для линейной сложности: , где m – длина R2. Это оценка сверху. Она достигается, если НОД(m,n)=1, а R1 – полноцикловый.

(Преобразование А называется полноцикловым, если его граф образует один полный цикл).

Вывод 2: генераторы «1-2 шага» и «стоп-вперед» имеют следующие достоинства:

  1. Большой период

  2. Высокая линейная сложность

  3. хорошее статистическое свойство (все - граммы, , встречаются равномерно)

Главный недостаток: если знать как работал управляющий регистр R1, легко восстановить всю выходную последовательность.