Разработка и исследование высокоскоростных генераторов псевдослучайных равномерно распределенных двоичных последовательностей (1025663), страница 10
Текст из файла (страница 10)
Генератор ГеффеДлинырегистровLi, L2 и Lz выбираютсячто обеспечивает максимальный период выходнойLTmax =Lвзамнопростыми,последовательностиL(2 i-l)(2 *-l)(2 *-l).Несмотря на то, что использование перемешивающей функции длякомбинирования выходов регистров позволило существенно увеличить период и улучшить статистические свойства вырабатываемой последовательности, генератор оказался подвержен корреляционной атаке [2]. Как видноиз табл. 2, значение функции F(x, у, z) совпадает со значениями аргументов х и у в 75% случаев.
Таким образом, генератор Геффе является непригодным для использования в криптографии.Таблица 2.Значения функции усложнения F(x, у, z) генератора ГеффеZ000001010F000XУ0111001010110111Совпадение 6/8 = 0,75Совпадение 6/8 = 0,75Совпадение 4/8 = 0,501Следует отметить, что корреляционным атакам подвержены и многиедругие комбинированные генераторы псевдослучайных последовательностей [2].-591.3.3.
П Р О Р Е Ж И В А Н И Е П О С Л Е Д О В А Т Е Л Ь Н О С Т Е ЙЕще одним методом улучшения статистических свойств псевдослучайных последовательностей является их прореживание. Пусть а=—ai, «2j • • • псевдослучайная последовательность, полученная при помощинекоторого генератора, и t\, £2, • • • G N (1 ^ t\ < £2 < ...) — не зависящая ота последовательность индексов.
Тогда последовательность/3 = atl,at2,...,-получаемая из а путем ее «прореживания», является равномерно распределенной, если исходная последовательность также являлась равномернораспределенной (см. раздел 1.1.1). При этом прореживание позволяет улучшить статистические свойства псевдослучайной последовательности и сделать ее менее предсказуемой за счет «разрушения» корреляций между различными членами.К недостаткам метода прореживания можно отнести снижение быстродействия генератора (за счет «отбрасывания» некоторых выходных значений), а также неравномерность скорости выработки псевдослучайной последовательности.Примером практической реализации метода прореживания являетсясхема, предложенная Ниффелером в 1975 г. [65] и основанная на использовании РСЛОС с управляемым сдвигом.1.3.3.1. СХЕМА Н И Ф Ф Е Л Е Р АГенератор, построенный по схеме Ниффелера, включает в себя (см.рис.
1.8):- два регистра сдвига с линейными обратными связями R\ и R.2, одиниз которых вырабатывает исходную псевдослучайную последовательность, а второй — последовательность, определяющую индексы прореживания, над полями ¥qi и ¥q2 соответственно;- функцию /, реализующую отображение / : ¥qi —> N.Начальное состояние генератора определяется начальными заполнениями регистров Ri и it^.
Выход xt первого регистра преобразуется припомощи функции f{xt)и подается на вход тактирования второго регистра,определяя величину его сдвига, а выход второго регистра используется дляформирования членов выходной последовательности а = {cxt}.-60-РСЛОСЯхX,fЛ**)•'VTifi ГТГЛГ1 JX2пrK^JlW^a,Р и с . 1.8. Генератор НиффелераТаким образом, на каждом такте работы генератора выполняются следующие шаги:1) регистр Ri сдвигается на одну позицию и формируется его выходноезначение Xt G F 9 l ;2) вычисляется значение функции f(xt)3) регистр i?2 сдвигается на f(xt)6 N;позиций и формируется его выходноезначение at G F g 2 , являющееся очередным членом выходной последовательности а генератора.Анализ свойств генератора, предложенного Ниффелером, был проведен Смитсом в работе [74].
Исследования показали, что при выполненииряда условий обеспечивается высокая линейная сложность выходной последовательности и ее хорошие статистические свойства.Развитие идей Ниффелера и более глубокий анализ различных вариантов комбинации регистров сдвига с линейными обратными связями припостроении генераторов псевдослучайных последовательностей был проведен Голлманом и Чэмберсом; результаты .исследований опубликованыв [27-29] и др.1.3.3.2. С Ж И М А Ю Щ И Й Г Е Н Е Р А Т О РНа методе прореживания также основан сжимающий генератор [73],предложенный в 1993 г. Генератор состоит из двух двоичных регистровсдвига с линейными обратными связями R\ и i? 2 , первый из которых является управляющим, а второй вырабатывает псевдослучайную последовательность.Алгоритм работы сжимающего генератора основан на повторении следующих шагов на каждой итерации:1) осуществляется сдвиг регистров R\ и R2 на одну позицию;-612) если на выходе Ri сформировалось значение 1, то на выход генератораподается выходное значение R2\3) если на выходе R\ сформировалось значение 0, то на выход генераторане подается ничего (т.
е. очередной член к выходной последовательности генератора на текущем шаге не добавляется).Если регистры R\ и R2 имеют длины L\ и L2 соответственно и являются М-генераторами, то верны следующие утверждения:- период выходной последовательности сжимающего генератора составляет Т = (2L2 —1)2£'1~1, если длины регистров L\ и L2 взаимнопросты;- линейная сложность С(а) выходной последовательности генератораограничена неравенствомL2 • 2 L l ~ 2 < Ца)^L2-2L^\Основным недостатком сжимающего генератора является непостоянство скорости выработки псевдослучайной последовательности.1.4. О КРИПТОГРАФИЧЕСКИ КАЧЕСТВЕННЫХ ГЕНЕРАТОРАХ ПСЕВДОСЛУЧАЙНЫХ ПОСЛЕДОВАТЕЛЬНОСТЕЙВ криптографии генераторы псевдослучайных последовательностейиспользуются, прежде всего, в качестве генераторов гаммы в схемах поточного шифрования информации.
Как отмечалось ранее в разделе 1.2.1, ктаким генераторам предъявляется дополнительное требование непредсказуемости символов выходной последовательности по любой ее известнойчасти.При построении криптографически качественных генераторов псевдослучайных последовательностей обычно используется комбинация нескольких простых ГПСП в совокупности с различными методами улучшения ихсвойств.
Так, например, алгоритм Trivium [67] использует несколько регистров сдвига с нелинейными обратными связями, выход которых складывается при помощи операции «исключающее или», а алгоритм Grain [35] —комбинацию регистров сдвига с линейными и нелинейными обратными связями.-62Кроме того существуют генераторы, не подходящие под приведеннуювыше классификацию: в алгоритме RC4 [14], например, используются перестановки элементов 256-байтового массива памяти.Наконец, в качестве криптографически качественного генераторапсевдослучайныхпоследовательностеймогут использоваться блочныешифры в режиме гаммирования [3,64].Общим недостатком большинства криптографически качественных генераторов псевдослучайных последовательностей является их недостаточное для использования в современных информационных системах быстродействие, что связано с повышенными требованиями к таким генераторами необходимостью использования дополнительных преобразований для выработки выходной последовательности.1.5.
ВыводыСуществует множество методов и алгоритмов генерации псевдослучайных последовательностей, различающихся как принципами, положеннымив основу их функционирования, так и деталями реализации (такими, каквыбор конкретных параметров). К настоящему времени по проблеме генерации ПСП опубликовано большое число научных трудов, и полный обзоррезультатов занял бы не одну сотню страниц.На основании'проведенного аналитического обзора можно сделать вывод, что подавляющее большинство генераторов в той или иной мере обладает как достоинствами, так и недостатками (см.
табл. 3). Для улучшениястатистических характеристик генераторов могут использоваться различные методы, такие как применение фильтрующей функции, комбинацияили прореживание последовательностей, однако это влечет за собой снижение скорости выработки выходной последовательности в связи с увеличением требуемого объема вычислений.
С другой стороны, повышениебыстродействия за счет использования более простых конструкций приводит к снижению качества выходной последовательности.Требования к современным генераторам псевдослучайных последовательностей неуклонно возрастают по мере развития возможностей вычислительной техники, и существующие генераторы уже не полностью им со--63ответствуют (в первую очередь это касается быстродействия). Учитываяуровень и темпы развития информационных технологий, в настоящее время существует потребность в разработке новых методов генерации псевдослучайных последовательностей, обеспечивающих одновременно высокоебыстродействие и хорошие статистические свойства, а для криптографических приложений — также удовлетворяющих требованию непредсказуемости.Таблица 3.Основные достоинства и недостатки различных генераторов псевдослучайных последовательностей№МетодДостоинстваНедостаткиКонгруэнтные методы1Линейный конгруэнтный методПростота реализации, высокоеЗначительные статистическиебыстродействиеотклонения, линейность,предсказуемость2Метод «середины квадрата» (вНизкие требования кМалый период, склонность кнастоящее время невычислительным ресурсам«зацикливанию» генератораВысокое быстродействие,Сводится кхорошие статистическиемультипликативномусвойстваконгруэнтному генератору,применяется)3Метод умножения с переносомотклонения в распределениистарших битов4Квадратичный конгруэнтныйХорошие статистическиеметодсвойства, непредсказуемость,может использоваться вкриптографииНизкое быстродействиеТаблица 3 — продолжение№5МетодДостоинстваИнверсивный (обратный)Хорошие статистическиеконгруэнтный методсвойстваНедостаткиНизкое быстродействиеГенераторы Фибоначчи67Классический генераторПлохие статистическиеФибоначчи (в настоящее времясвойства, линейностьне применяется)преобразованияАддитивный генераторВысокое быстродействие,Фибоначчиумеренно хорошиеЛинейность преобразованияСЛстатистические свойства8Мультипликативный генераторВысокое быстродействие,Фибоначчиумеренно хорошиестатистические свойства9Генератор Фибоначчи соперацией «исключающее или»Высокое быстродействие05Линейность преобразования,эквивалентность выходнойпоследовательностисовокупности независимыхбитовых последовательностейТаблица 3 — продолжение№МетодДостоинстваНедостаткиГенераторы на основе регистров сдвига10 Регистры сдвига с линейнымиобратными связямиВысокое быстродействие,Предсказуемость, линейностьравномерность распределенияпреобразованиявыходной последовательности,эффективность аппаратнойреализации11 Обобщенные регистры сдвигаВысокое быстродействиеЛинейность преобразования,эквивалентность выходнойпоследовательностисовокупности независимыхбитовых последовательностей12 Обобщенные регистры сдвига сВысокое быстродействиекриптографиизакручиванием13 Регистры сдвига с нелинейными Непредсказуемость,обратными связямиНе могут применяться вНедостаточная изученность,потенциально высокая линейная проблематичность обеспечениясложность (определяетсяхороших статистическихфункцией обратной связи)свойств0502Таблица 3 — окончание№МетодДостоинстваНедостаткиГенераторы на основе клеточных автоматов14 Генераторы на основеХорошие статистическиеНедостаточная изученность,одномерных клеточныхсвойства, непредсказуемость,неэффективность программнойавтоматовнелинейность преобразования,реализациивысокая эффективностьаппаратной реализации-68-ГЛАВА 2ИССЛЕДОВАНИЕ СВОЙСТВ К Л Е Т О Ч Н Ы ХАВТОМАТОВ2.1.КЛАССИЧЕСКИЕ КЛЕТОЧНЫЕ АВТОМАТЫ2.1.1.