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

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

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

Аннотация научной статьи по математике, автор научной работы — Герасимов Л.Ю.

В данной работе исследуется возможность программного моделирования режима динамического хаоса. Исследование проводится на примере программной модели лампового генератора Ван-дер-Поля. Для оценки криптографических свойств полученного генератора псевдослучайных чисел используется пакет статистических тестов nist.

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

Похожие темы научных работ по математике , автор научной работы — Герасимов Л.Ю.

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

ON CONSTRUCTION OF PROGRAM PSEUDO-RANDOM NUMBERS GENERATORS ON THE BASIS OF DYNAMIC SYSTEMS IN DETERMINISTIC CHAOS MODE

In this work possibilities of program modelling of deterministic chaos mode are investigated. The research is carried out on the example of program model of Van-der-Pol oscillator. nist statistical tests suite is used for the evaluation of cryptographic properties of received generator of pseudo-random numbers.

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

УДК 519.688 + 621.391

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

© 2013 Л.Ю. Герасимов1

В данной работе исследуется возможность программного моделирования режима динамического хаоса. Исследование проводится на примере программной модели лампового генератора Ван-дер-Поля. Для оценки криптографических свойств полученного генератора псевдослучайных чисел используется пакет статистических тестов ЫШТ.

Ключевые слова: детерминированный хаос, псевдослучайные числа, криптография, ШБТ.

Введение

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

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

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

При моделировании хаотических систем повышение точности вычислений не всегда приводит к увеличению длины циклов. В работе [1] приведено исследование

1 Герасимов Леонид Юрьевич (gerasimovleo@gmail.com), кафедра безопасности информационных систем Самарского государственного университета, 443011, Российская Федерация, г. Самара, ул. Акад. Павлова, 1.

логистического отображения, задаваемого как

xn+1 4rxn(1

где x € (0,1) и r € (0,1). Полученная зависимость длинн циклов от точности вычислений представлена на рис. 1.

100000 -i

90000 -

80000 -

| 70000 -о.

| 60000 -

g 50000 -

| 40000 -

1 30000 -5

а 20000 -

10000 -

0 -5

Рис. 1. Зависимость средних и минимальных длин циклов в логистическом отображении от точности вычислений с плавающей запятой

В рамках данной работы была смоделирована более сложная хаотическая система. Оценка результатов проводится с использованием набора статистических тестов. По результатам их прохождения можно также судить и о наличии циклов в получаемых фазовых траекториях.

1. Программная реализация генератора псевдослучайных чисел

В качестве моделируемой динамической системы был выбран генератор Ван-дер-Поля. Он представляет собой ламповый автогенератор, схема которого представлена на рис. 2.

Уравнение движения этой системы в безразмерном виде имеет вид:

X — (Л — x2)X + x = 0,

где Л — единственный управляющий параметр.

Для программного моделирования динамики системы была использована дискретно-временная модель генератора Ван-дер-Поля, предложенная в работе [2]:

y[n] = Л1у[п — 1] + Л2у[п — 2] + 7(1 — y2[n — 1])(y[n — 1] — y[n — 2]). (1.1)

Она представляет собой итерационное уравнение с тремя управляющими параметрами: Л1, Л2 и 7. Каждое новое состояние системы вычисляется из двух предыдущих. Область значений управляющих параметров, при которых система демонстрирует хаотическое поведение, была установлена в работе [3].

средн.

10 15 20 25 30

точность представления чисел (бит)

Рис. 2. Схемы лампового генератора Ван-дер-Поля с колебательным контуром в цепи анода (а) и в цепи сетки (б) и анодно-сеточная характеристика триода (в)

Одной из основных проблем при программном моделировании хаотических систем является представление данных. В работе данные обозначены в виде чисел с плавающей точкой двойной точности (стандарт 1ЕЕЕ744), что давало системе лишь конечное фазовое пространство. Поэтому в качестве альтернативного варианта было также реализовано представление данных в виде рациональных дробей, числитель и знаменатель которых были выражены с использованием длинной арифметики. Таким образом, достигалось плотное счетное фазовое пространство. Помимо выигрыша в точности, при использовании второго метода представления данных наблюдалось также преимущество в скорости производства информации. В то время как при использовании арифметики с плавающей запятой на каждой итерации производилось лишь 8 байт информации, при применении рациональных дробей скорость производства информации росла нелинейно за счет увеличения абсолютных величин числителя и знаменателя. Однако вместе с увеличением количества информации также росла и вычислительная сложность каждой следующей итерации, что не позволяет использовать такой способ вычислений для генерации длинных случайных последовательностей.

Для оценки хаотичности получаемых фазовых траекторий (последовательностей у [и]) используется функция автокорреляции:

С (т)

т

у

1

N—т

N

Еу[к]у[к + т],

. ...

(1.2)

к = 1

у[к] - у, 1 N

Если исходная последовательность у[и] периодическая, то и функция автокорреляции (последовательность С(т)) также будет периодической.

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

б

Рис. 3. Пример фазовой траектории:

a — дискретно-временная модель (1.1), полученная при параметрах: Ai = 0, 605, Л2 = —0, 958, y = 0,198, N = 500 и начальных условиях (0;0,4); б — функция автокорреляции (1.2) для данной траектории

2. Статистические характеристики

Главной целью создания данной программной модели было получение бинарных последовательностей с хорошими криптографическими свойствами. Для анализа бинарных последовательностей применялся набор статистических тестов NIST (National Institute of Standards and Technologies). В результате исследований было установлено, что, несмотря на то что числовые последовательности были случайными, бинарные потоки, образованные их двоичными представлениями, обладали низкими статистическими показателями. В частности, число нулей в них значительно превышало число единиц. Поэтому для получения криптографически стойких бинарных последовательностей требовалось применение некоторой постобработки для коррекции частотных характеристик. При использовании для расчетов рациональных дробей на длинной арифметике длинные последовательности нулей объяснялись ростом абсолютных значений числителя и знаменателя. Проблема диспропорции количества нулей и единиц в данном случае решалась относительно просто — поиском и исключением таких длинных последовательностей нулей. В случае использования арифметики с плавающей запятой было решено

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

12000 н = ° 10000 I и 1 8000 В 1 о 6000 £. 4000 ч! £ 2000 0 —-----------

_______ ________________

,..*■*' ........-.........-

1 2 3 4 5 6 7 8 9 10

5332 4082 3746 5198 4014 4528 6080 5966 5374 5294

-■ — биты 20-51 12200 10546 998 2 10772 10162 10396 10376 11214 11816 10684

■——биты 0-31 12820 12058 12702 11646 12020 12190 13256 12652 12546 12916

-биты 16-31 272 222 323 226 53 137 250 212 303 233

Рис. 4. Модуль разности количества 0 и 1 в выходной последовательности (500000 бит) при использовании разных подмножеств двоичного представления 1ЕЕЕ754

После выбора и добавления в программную модель метода постобработки числовых последовательностей было проведено исследование с использованием набора статистических тестов ШБТ.

В наборе статистических тестов М1БТ используется ряд предположений о случайных последовательностях. Идеальной случайной последовательностью считается результат многократного подбрасывания идеальной монеты с вероятностями выпадения 0 и 1 — ровно 1/2. Кроме того, все подбрасывания считаются независимыми. Поэтому в такой последовательности должно наблюдаться [0, 1]-нор-мальное (Гауссовское) распределение нулей и единиц [4]. Для всего набора тестов задан уровень значимости а, равный вероятности того, что случайная последовательность не пройдет тесты. Использовалось значение уровня значимости 1/100, рекомендованное в сопроводительной документации. В результате каждого теста вычисляется Р-уаЫв, выражающее вероятность того, что идеальный генератор случайных последовательностей произведет последовательность менее случайную, чем исследуемая. Таким образом, значения Р-уаЛпв, близкие к 1, говорят о случайном характере исследуемой последовательности. Исследуемые последовательности проходят тесты, если выполнено условие Р-уа1пв ^ а. Выводы о случайности исследуемых данных делаются на основании доли тестируемых последовательностей, проходящих тесты [4].

На рис. 5 приведены примеры результатов работы частотного теста для 30 последовательностей по 1 500 000 бит при использовании предложенных методов постобработки двоичных последовательностей. Максимальное отклонение количества нулей и единиц в них не превышало 0,24 %.

4 ООО

3500 ■

3Q00

м

:= 2500

О

п

а

Б

2 2 ООО

£ §

ас £

а :5оо

шо

500

123456789 101112131415161718192021222324252627282930 последовательность

Рис. 5. Частотные характеристики последовательностей по 1500 000 бит

Результаты прохождения тестов для данных последовательностей представлены в таблице.

Таблица

Тест Доля прохождения Среднее P-value

IEEE754 Fraction IEEE754 Fraction

Frequency 30/30 29/30 0,431095 0,335982

Block Frequency 29/30 30/30 0,526829 0,420477

Runs 30/30 29/30 0,532709 0,545858

Longest Run 29/30 30/30 0,469816 0,599864

Rank 28/30 30/30 0,492630 0,490890

Spectral 29/30 30/30 0,480825 0,497099

Serial 30/30 29/30 0,539214 0,433550

Approximate Entropy 30/30 30/30 0,510219 0,593105

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

Linear Complexity 30/30 30/30 0,496125 0,531018

В наборе статистических тестов ОТБТ рекомендована минимальная доля последовательностей, проходящих тесты, достижение которой необходимо для подтверждения гипотезы о случайности исследуемых данных. Эта величина рассчитывается на основании числа исследуемых последовательностей и уровня значимости по формуле [5]:

/®(1 — а) Ртъи = (1 - а) - Зу-—-,

где — — число исследованных последовательностей.

■ IEEE754 □ Fraction

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

Заключение

Системы детерминированного хаоса сочетают в себе уникальные свойства. С одной стороны, они способны демонстрировать сложное и непредсказуемое поведение, с другой — их детерминированность позволяет воспроизвести это поведение, зная точные начальные условия и параметры системы. Эти свойства делают их пригодными для использования в криптографии. Однако современная криптография имеет дело с цифровыми системами. Моделирование хаотических систем в конечном цифровом пространстве может негативно сказаться на их характеристиках. В данной работе исследуется программный генератор псевдослучайных бинарных последовательностей, созданный на основе дискретно временной модели автогенератора Ван-дер-Поля. Исследование проводится с использованием набора статистических тестов NIST, и показывает, что при определенных условиях предложенная программная модель способна производить криптографически стойкие бинарные последовательности.

Литература

[1] Blackledge Z.M., Ptitsyn N. On the Applications of Deterministic Chaos for Encrypting Data on the Cloud //Conference papers, School of Electrical Engineering Systems. Dublin: Dublin Institute of Technoligy, 2010. 11 p.

[2] Зайцев В.В., Давыденко С.В., Зайцев О.В. Динамика автоколебаний дискретного осциллятора Ван-дер-Поля // Физика волновых процессов и радиотехнические системы. 2000. Т. 3. № 2. С. 64-67.

[3] Зайцев В.В., Зайцев О.В., Яровой Г.П. Статистические оценки характеристик стохастических автоколебаний дискретного осциллятора Ван-дер-Поля // Физика волновых процессов и радиотехнические системы. 2001. Т. 4. № 1. С. 18-21.

[4] A Statistical Test Suite for the Validation of Random Number Generators and Pseudo Random Number Generators for Cryptographic Applications // NIST Special Publication 800-22. Revision 1a: April 2010. 131 p.

[5] Игоничкина Е.В. Исследование статистических свойств кандидатов конкурса Estream // Актуальные проблемы безопасности информационных технологий: материалы II Международной научно-практической конференции (Красноярск, 9-12 сентября 2008 г.). Красноярск, 2008. C. 22-26.

Поступила в редакцию — 29/У/2013; в окончательном варианте — 29/V/2013.

ON CONSTRUCTION OF PROGRAM PSEUDO-RANDOM NUMBERS GENERATORS ON THE BASIS OF DYNAMIC SYSTEMS IN DETERMINISTIC CHAOS MODE

© 2013 L.Yu. Gerasimov2

In this work possibilities of program modelling of deterministic chaos mode are investigated. The research is carried out on the example of program model of Van-der-Pol oscillator. NIST statistical tests suite is used for the evaluation of cryptographic properties of received generator of pseudo-random numbers.

Key words: deterministic chaos, pseudo-random numbers, cryptography, NIST.

Paper received 29/V/2013. Paper accepted 29/V/2013.

2Gerasimov Leonid Yurievich (gerasimovleo@gmail.com), the Dept. of Security of Information Systems, Samara State University, Samara, 443011, Russian Federation.

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