Научная статья на тему 'Исследование параметров генератора псевдослучайных чисел, основанного на нечёткой логике'

Исследование параметров генератора псевдослучайных чисел, основанного на нечёткой логике Текст научной статьи по специальности «Математика»

CC BY
565
68
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ГЕНЕРАТОР ПСЕВДОСЛУЧАЙНЫХ ЧИСЕЛ / НЕЧЕТКАЯ ЛОГИКА / ЛИНЕЙНЫЙ РЕГИСТР СДВИГА С ОБРАТНОЙ СВЯЗЬЮ / МЕТОД АНАЛИЗА ИЕРАРХИЙ / НАБОР СТАТИСТИЧЕСКИХ ТЕСТОВ NIST / ПАКЕТА ТЕСТОВ DIEHARD / PSEUDO-RANDOM NUMBER GENERATOR / FUZZY LOGIC / LINEAR FEEDBACK SHIFT REGISTERS / ANALYTIC HIERARCHY PROCESS / NIST STATISTICAL TESTS SUITE / DIEHARD RANDOMNESS TESTS

Аннотация научной статьи по математике, автор научной работы — Аникин И. В., Альнаджар Х. Х., Кирпичников А. П.

В статье исследуются различные параметры генератора псевдослучайных чисел, оснонванного на нечеткой логике, ранее предложенного авторами. Преследуется цель получения качественного генератора удовлетворяющего статистическим критериям качества. Предложенные параметры генератора псевдослучайных чисел позволили сформировать качественные псевдослучайные последовательности с лучшими статистическими свойствами по сравнению с 16 генераторами пакета Diehard.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по математике , автор научной работы — Аникин И. В., Альнаджар Х. Х., Кирпичников А. П.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Исследование параметров генератора псевдослучайных чисел, основанного на нечёткой логике»

УДК 004.056.57

И. В. Аникин, Х. Х. Альнаджар, А. П. Кирпичников

ИССЛЕДОВАНИЕ ПАРАМЕТРОВ ГЕНЕРАТОРА ПСЕВДОСЛУЧАЙНЫХ ЧИСЕЛ, ОСНОВАННОГО НА НЕЧЁТКОЙ ЛОГИКЕ

Ключевые слова: генератор псевдослучайных чисел, нечеткая логика, линейный регистр сдвига с обратной связью, метод анализа иерархий, набор статистических тестов NIST, пакета тестов DIEHARD.

В статье исследуются различные параметры генератора псевдослучайных чисел, оснонванного на нечеткой логике, ранее предложенного авторами. Преследуется цель получения качественного генератора удовлетворяющего статистическим критериям качества. Предложенные параметры генератора псевдослучайных чисел позволили сформировать качественные псевдослучайные последовательности с лучшими статистическими свойствами по сравнению с 16 генераторами пакета Diehard.

Keywords: pseudo-random number generator, fuzzy logic, linear feedback shift registers, analytic hierarchy process, NIST Statistical

tests suite, Diehard randomness tests.

We investigate the parameters of pseudo-random numbers generator based on fuzzy logic, proposed in our previous work, to find the best values that fit the requirements of high quality of randomness of the generated sequences. Then we compared the resulting generator with 16pseudo-random numbers generators, included in Diehard bundle.

В настоящее время качественные генераторы случайных и псевдослучайных чисел становятся важными для многих прикладных областей, включая телекоммуникационные технологии, информационную безопасность [12], моделирование [13] и т.д. ГПСЧ с хорошими статистическими свойствами применяются для решения таких задач, как генерация криптографических ключей, реализация протоколов аутентификации, создание имитационных моделей.

Для формирования качественных последовательностей ГПСЧ должен генерировать так называемый «псевдослучайный шум». Для этого он должен удовлетворять трем основным постулатам Голомба, представленным в работах [3, 4]. В работах [1, 2] авторами предложен новый генератор псевдослучайных чисел (НГПСЧ), использующий нечеткую логику [12] и линейные регистры сдвига с обратной связью для получения псевдослучайных последовательностей, которые по статистическим свойствам близки к случайным.

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

Общая структура НГПСЧ, предложенного авторами в работах [1,2], представлена на рисунке 1.

Нелинейная функция

Выход

Рис. 1 - Общая структура НГПСЧ

Данный генератор состоит из двух выход-

ные данные которых поступают в два буфера размером 8 бит. Далее с помощью лингвистических переменных оцениваются статистические свойства информации, находящейся в буферах. Производится оценка:

• количества единиц в буфере (10);

• разности между числом блоков (11), состоящих из двух единиц (0110), и количества пробелов (12), состоящих из двух нулей (1001) в буфере ^^у.

Далее работает совокупность ЕСЛИ-ТО правил для определения того, какой из регистров сдвига имеет лучшие статистические свойства на каждом шаге.

Ранее авторами были использованы следующие примитивные полиномы для реализации

Р1(х)=1+х83+х84+х86+х89 Р2(х)=1+х91+х97

Было показано, что период предложенного НГПСЧ является приемлемой для решения практических задач (> 1050).

В данной работе исследуются два параметра генератора; первый параметер - объём буфера, второй -количество термов (функций принадлежности) нечетких переменных. Эти параметры играют ключевую роль в НГПСЧ и непосредственно влияют на случайности полученной двоичной последовательности.

Случайность полученных двоичных последовательностей была оценена с помощью набора из 15 статистических тестов МЕТ [5].

Далее в работе решаются задачи выбора наиболее важных статистических тестов для тестирования случайности полученных последовательностей с изменением значений параметров НГПСЧ.

Для сокращения времени тестирования НГПСЧ был произведен выбор наиболее важных статистических тестов из набора №БТ. Для выбора важных тестов был использован подход, основанный на методе анализа иерархий (МАИ) [6,10]. Построенная иерархия включает в себя три уровня: 1. Цель -«Выбор лучшего теста», 2. Критерии выбора, 3. Пятнадцать исследуемых статистических тестов.

В качестве критериев выбора статистических тестов использовались следующие:

- Независимость (тест не входит в состав других). Например, тест № 1 "Частотный побитовый

тест" входит в состав теста № 13 "Тест кумулятивных сумм", поэтому он имеет малый вес;

- Сложность (вычислительная и временная). Тесты, обладающие меньшей сложностью, будут иметь более высокие веса. Например, "Тест на линейную сложность" требует самых больших затрат времени [7], поэтому он имеет наименьший вес;

- Разделающая способность. Если тест дает четкие результаты разделения случайных последовательностей (случайная/не случайная), то он будет иметь высокий вес.

С помощью попарных сравнений и МАИ получены следующие веса критериев: «Независимость» -0,1062; «Сложность» - 0,2605; «Отличительные результаты» - 0,63.

Далее с помощью попарных сравнений и МАИ были определены веса важности статистических тестов, а также порядок их важности в соответствии с данными весами:

• Частотный побитовый тест - вес 0,1051.

• Частотный блочный тест - вес 0,0731.

• Тест на последовательность одинаковых битов - вес 0,0977.

• Тест на самую длинную последовательность единиц в блоке - вес 0,1476.

• Тест рангов бинарных матриц - вес 0,0655.

• Спектральный тест - вес 0,0552.

• Тест на совпадение неперекрывающихся шаблонов - вес 0,0447.

• Тест на совпадение перекрывающихся шаблонов - вес 0,0614.

• Универсальный статистический тест Маурера - вес 0,0206.

• Тест на линейную сложность - вес 0,0409.

• Тест на периодичность - вес 0,0571.

• Тест приблизительной энтропии - вес 0,0966.

• Тест кумулятивных сумм - вес 0,0394.

• Тест на произвольные отклонения - вес 0,0592.

• Разновидность теста на произвольные отклонения - вес 0,0360.

Таким образом, можно сделать вывод, что наиболее важными статистическими тестами в соответствии с выбранными критериями являются: "Тест на самую длинную последовательность единиц в блоке", "Частотный побитовый тест", "Тест на последовательность одинаковых битов ", "Тест приблизительной энтропии", "Частотный блочный тест". Данные тесты были использованы для тестирования случайности полученных последовательностей с изменением значений параметров НГПСЧ.

Для оценки качества полученных последовательностей с изменением значений параметров НГПСЧ с помощью пакета тестов №8Т, были выбраны три известных подхода оценки соответствия распределения Р-значений равномерному распределению.

Первый подход предполагает получение средних значений и дисперсии Р-значений и дальнейшее их сравнение со средним значением (0,5) и дисперсией (1/12) равномерного распределения.

Второй подход предполагает вычисление статистики «хи-квадрат» с девятью степенями свободы основываясь на частоте встречаемости Р-значений в блоках, определяемых путем разбиения единичного интервала на десять равномерно распределенных подынтервалов. Вычисленное значение не должно превышать 21.666 для девяти степеней свободы [7].

Третий подход предполагает вычисления отношения числа последовательностей, успешно прошедших тест к общему числу тестируемых последовательностей. Это отношение сравняется с приемлемой величиной Цассер. Порог приемлемости определяется с помощью доверительного интервала, вычисляемого следующим образом [7]:

р ± к^(р(1-р)/п), гдер=0,99, к=3, п=1000.

Получено, что число неудачных подпоследовательностей должно быть меньше, чем 19,4 на 1000 последовательностей.

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

Для тестирования сгенерированных последовательностей с длиной 1024000 бит, при изменении одного значения параметров НГПСЧ, разделена на 1000 подпоследовательностей длиной 1024 бита.

Первый параметр (объём буфера) имеет 5 значений (8,16,24,32,64), а второй (количество термов) имеет 3 значения для первого нечёткого переменного (3,5,7) и 2 значения для второго (3,5). Итак у нас 5*3*2=30 последовательностей с длиной 1024000 бит, каждая из них разделена на 1000 подпоследовательностей длиной 1024 бита. К ним были применены выбранные ранее 5 наиболее важных статистических теста №8Т. Т1= "Частотный побитовый тест", Т2= "Частотный блочный тест", Т3="Тест на последовательность одинаковых битов", Т4="Тест на самую длинную последовательность единиц в блоке", Т5="Тест приблизительной энтропии". Все эксперименты реализованы в среде МаИаЪ, версия Я2012а (7.14.0.739) [9].

Результаты тестирования с использованием первого подхода (среднее значение, дисперсия) представлены в таблице 2. Как упоминалось прежде, среднее значение должно быть равно 0,5 и максимальная допустимая разница от 0,5 должна быть меньше ± 0,1. Последовательность у которой среднее значение превышает допустимую разность будет отклонена. Знак (+) в таблице 4, означает, что результат тестирования соответствующей последовательности является хорошим, знак (-) означает, что результат тестирования отрицательным, и в этом случае соответствующая последовательность не входит на следующих сравнениях.

Затем последовательности, которые успешно прошли первый подход (средное значение и дисперсия) исследуются с использованием второго подхода (хи-квадрат), для того чтобы найти наилучие значения параметров НГПСЧ. В таблице 2 приведены результаты сравниваемых последовательностей с использованием критерия хи-квадрат. Последовательности, у которых вычисленное значение превышает определение значение критерии хи-квадрат

для девяти степеней свободы (21,666), будут отклонены. Также знак (+), означает, что результат тестирования соответствующей последовательности является положительным, знак (-) означает, что результат тестирования отрицательным, и в этом случае соответствующая последовательность не входит на следующих сравнениях.

Наконец, третий подход был применен для сравнения последних 3 последовательностей, которые успешно прошли предыдущие подходы тестирования. Таблица 1 показывает результаты сравниваемых последовательностей с использованием третьего подхода тестирования (отношения числа последовательностей, успешно прошедших тест к общему числу тестируемых последовательностей).

Таблице 1 - Результаты сравнения

количество термов f0, |f1-f2| объём буфера T1 T2 T3 T4 T5

Результаты сравнения с использованием первого подхода

8 + - - + -

16 + + + + +

3,3 24 + + + + +

32 + + + + +

64 + + + + +

8 + - - + -

16 + - + + +

5,3 24 + - + + +

32 - - + + +

64 + - + + +

8 + - - + -

16 + - + + +

7,3 24 + - + + +

32 + - + + +

64 + - + + +

16 + - + + +

3,5 24 + - + + +

32 + + + + +

64 + + + + +

16 + - + + +

5,5 24 + - + + +

32 + - + + +

64 + + + + +

16 + - + + +

7,5 24 + - + + +

32 + - + + +

64 + - + + +

Результаты сравнения с использованием второго подхо-

да (критерия хи-квадрат)

16 + - + + +

3,3 24 + + + + +

32 + + + + +

64 + + + + +

3,5 32 - + + + +

64 - + + - +

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

5,5 64 - - + + +

Результаты сравнения с использованием третьего подхода

24 + + + - +

9 7 11 21 12

3,3 32 + + + + +

8 4 5 7 12

64 + + + + +

15 13 10 6 18

Очевидно что, в первом случае (размер буфера = 24 бита) последовательность не прошла тест, по-

скольку она имеет число неудачных подпоследовательностей (21) превышает установленный порог 19,4. Остальные два случая успешно прошли через третий подход, но мы можем сказать, что второй вариант (размер буфера = 32) является лучшим, потому что он имеет меньшее число неудачных подпоследовательностей (по суммированию), и с точки зрения практической реализации, он требует меньше памяти, чем третий вариант (размер буфера = 64).

Таким образом, лучший вариант был успешно определен - наилучшие значения исследуемых параметров НГПСЧ были точно определены (размер буфера = 32 бита, количество термов функций принадлежности для первой нечеткой переменной f0 = 3, количество термов функций принадлежности для второй нечеткой переменной | f1-f2 | = 3)..

Для оценки качества полученного НГПСЧ было произведено сравнение его с 16 различными генераторами псевдослучайных чисел, включенных в пакет DIEHARD. Для сравнения были использованы выбранные ранее тесты NIST T1-T5. В таблице 2 представлены результаты проведенного сравнения.

Таблица 2 - Результаты сравнения НГПСЧ с генераторами DIEHARD

Название генератора хи-квадрат (< 21.666) Рез. (E)

НГПСЧ + + (36)

1- Multiply with carry (MWC) + + (47)

2- MWC on pairs of 16bits + - (51)

3- the mother of all RNGs - + (55)

4- Kiss RNG - + (54)

5- Combo RNG + + (55)

6- the lagged Fibonacci-MWC combination ULTRA - + (44)

7- A combination of MWC & subtract + (50)

with borrow (SWB)

8- Extended conqruential - + (43)

9-The super Duper generator RNG + + (63)

10- Substract with borrow - + (46)

11- Any specified congruential - + (52)

12- The 31-bit ran2 from Numerical Recipes - + (51)

13- Any specified shift register generator 31 or 32 bits - + (53)

14- The system generator in Microsoft Fortran - + (58)

15- Any lagged-Fibonacci + - (94)

16- An inverse conqruential - + (35)

Знак (+) в таблице означает, что генератор успешно прошел все пять статистических тестов относительно критерия «Хи-квадрат» и «Число неудачных последовательностей». Знак (-) означает, что генератор не прошел полностью или частично соответствующий критерий теста. Если генераторы успешно прошли два теста, то рассматриваем сумму чисел неудачных последовательностей оказана в таблеце между скобками для каждого генератора.

Согласно таблице 2 предложенный НГПСЧ показал наилучшие результаты по сравнении со всеми 16 ГПСЧ пакета DIEHARD.

Итак, в данной статье было показано, что полученный генератор с наилучшими значениям параметров, удовлетворяет статистическим критериям качества, а также формирует более качественные

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

Литература

1. И.В. Аникин, Х.Х. Альнаджар. Генератор псевдослучайных чисел, построенный на нечеткой логике // Информация и безопасность - 2015. - Том 18, № 3. - C. 376-379.

2. I.V. Anikin, K. Alnajjar, "Fuzzy stream cipher system", Proceedings of 2015 International Siberian Conference on Control and Communications, SIBCON 2015, Omsk, 2015.

3. Henk C. A. van Tilborg, "Fundamentals of Cryptology, A Professional Reference and Interactive Tutorial". - Springer, 2002.

4. E. Biham, A. Shamir, "Differential Cryptanalysis of the Data Encryption Standard" - Spinger Verlag, New York etc., 1993.

5. A. Rukhin, J. Soto, J. Nechvatal, M. Smid, E. Barker, S. Leigh, M. Levenson, M. Vangel, D. Banks, A. Heckert, J. Dray and S.Vo, "A statistic-al test suite for random and pseudorandom number generators for crypto-graphic applications" Revised: April 2010, Lawrence E Bassham III, NIST Special Publication 800-22, Revision 1a.

6. T.L. Saaty, "The Analytic Hierarchy Process", McGraw-Hill, New York, 1980.

7. P. L'Ecuyer, P. Hellekalek, "Random Number Generators: Selection Criteria And Testing" in Lecture Notes in Statistics, vol 138, pp 223-266, Spring Verlag, 1998.

8. G. Marsaglia, DIEHARD Statistical Tests: http://stat.fsu.edu/~geo/ diehard.html.

9. MATLAB® "Creating Graphical User Interfaces", The MathWorks, Inc.

10. И.В. Аникин, А.П. Кирпичников. Применение метода анализа иерархий для решения задачи выбора антивирусных продуктов // Вестник Казанского технологического университета. - 2014. Т.17, №12. - С. 187-189.

11. И.В. Аникин, А.П. Кирпичников, А.О. Назаров. Практическое применение метода концептуальной кластеризации объектов, характеризуемых нечеткими параметрами // Вестник Казанского технологического университета. - 2014. Т.17, №11. - С. 203-207.

12. А.П. Кирпичников, С.А. Ляшева, М.П. Шлеймович, Р.М. Гимальдинов. Система защищенного обмена документами между организациями // Вестник технологического университета. - 2015. Т.18, № 2. - С. 296-303.

13. И.М. Якимов, А.П. Кирпичников, Г.Р. Зайнуллина, З.Т. Яхина. Аналитическое и имитационное моделирование замкнутых систем массового обслуживания // Вестник технологического университета. - 2015. Т.18, № 13. - С. 176-181.

© И. В. Аникин - канд. техн. наук, зав. каф. систем информационной безопасности КНИТУ-КАИ, e-mail: [email protected]; Х. Х. Альнаджар - Аспирант, каф. систем информационной безопасности КНИТУ-КАИ, e-mail: [email protected], А. П. Кирпичников - док. физ.-мат. наук, зав. каф. интеллектуальных систем и управления информационными ресурсами КНИТУ, e-mail: [email protected].

© 1 V. Anikin, PhD, Head of the Information security systems department, KNRTU-KAI, e-mail: [email protected]; Kh. Alnajjar, PhD student, Information security systems department, KNRTU-KAI, e-mail: [email protected], A. P. Kirpichnikov, Dr. Sci, Head of the Intelligent systems and information assets management department, KNRTU, e-mail: [email protected].

i Надоели баннеры? Вы всегда можете отключить рекламу.