НАУЧНОЕ ПЕРИОДИЧЕСКОЕ ИЗДАНИЕ «IN SITU» №4/2015 ISSN 2411-7161
требованиям систем технического обслуживания по техническому состоянию (СТОТС). Её применение и распространение заметно снизит материальные и временные затраты на проведение ТО при достаточно высоком уровне эксплуатационной надёжности средств обработки информации.
Таким образом, использование современных цифровых и информационных технологий в СТОТС позволит применять её как основную систему ТО для АСОИ. Список использованной литературы:
1. Мачульский Е.В., Микрюков А.А. Задача распределения информационных нагрузок в организационных структурах. Труды XXI Всероссийской научно-методической конференции «Телематика 2014». РАН. г. Санкт-Петербург. 2014г. С.191-194.
2. Мачульский Е.В., Микрюков А.А. Проблемы совершенствования систем технического обслуживания средств связи и автоматизированных систем управления. Национальный исследовательский университет «Высшая школа экономики». XII международная научно-практическая конференция ИНФО-2015, г. Сочи, С.206-208.
© Беркетов Г.А., 2015
Выборнова Ю. Д.
аспирантка СГАУ им. Королева г. Самара, РФ Email: [email protected]
РЕАЛИЗАЦИЯ ГЕНЕРАТОРА BLUM-BLUM-SHUB И ИССЛЕДОВАНИЕ ЕГО ОСНОВНЫХ
ХАРАКТЕРИСТИК
Аннотация
Объектом исследования является криптографически стойкий генератор псевдослучайных последовательностей Blum-Blum-Shub. Цель работы - реализация генератора псевдослучайных последовательностей с помощью двух различных прикладных криптографических библиотек языка программирования C++ и сравнение основных характеристик полученных программных модулей. В работе проведен анализ основных характеристик полученного генератора: производительности и потребления оперативной памяти при генерации последовательностей большой длины. Сформированы выводы о границах применения полученных реализаций генератора.
Ключевые слова
псевдослучайные последовательности, генератор бинарных последовательностей, большие числа, скорость
алгоритма, потребление памяти
Реализация генератора.
Генераторы псевдослучайных последовательностей - это алгоритмы, которые используют математические формулы или предварительно вычисленные таблицы, чтобы порождать последовательности псевдослучайных чисел [1, с. 815-816].
В 1986 году Ленор Блюм, Мануель Блюм и Майкл Шуб опубликовали алгоритм, который впоследствии получил название генератора Blum-Blum-Shub. Генератор основан на операции возведения в квадрат в кольце вычетов по модулю большого числа N, где N = P х Q, при условии, что P и Q - простые числа равной длины, сравнимые с 3 по модулю 4 [2, с. 367-368].
Операции с целыми числами большой длины являются наиболее ресурсоемкими и сложными с точки зрения алгоритмов в генераторе Blum-Blum-Shub, поэтому важным этапом при реализации данного генератора является выбор подходящей программной библиотеки, реализующей такие операции.
_НАУЧНОЕ ПЕРИОДИЧЕСКОЕ ИЗДАНИЕ «IN SITU» №4/2015 ISSN 2411-7161_
В результате исследования были программно реализованы две версии данного генератора, в которых программный код был идентичен, за исключением программного кода вызова библиотек прикладных функций для работы с большими целыми числами.
Для реализации первой версии программного генератора Blum-Blum-Shub было решено использовать библиотеку Crypto++ [3].
Для реализации второй версии программного генератора Blum-Blum-Shub использовалась библиотека MPIR (The Multiple Precision Integers and Rationals Library) [4].
Также для детального рассмотрения была выбрана одна из существующих реализаций исследуемого генератора - реализация Ника Галбрета 2005 года [5]. Реализация представляет собой библиотеку на языке программирования Java.
Исследование характеристик генератора Blum-Blum-Shub
Три реализации исследуемого генератора были протестированы на трех различных операционных системах семейства Windows: Windows 7 Home Basic (64-битная), Windows 8 Professional (32-битная), Windows Vista Ultimate (32-битная). Windows 7 является основной операционной системой персонального компьютера, на котором проводилось исследование, а Windows 8 и Windows Vista запускались с помощью виртуальной машины Oracle VM VirtualBox. Основные характеристики персонального компьютера: двухядерный процессор Intel Pentium P6100, тактовая частота каждого ядра 2 ГГц, объем оперативной памяти 3 Гб.
Результаты представлены в таблицах 1 - 3.
Таблица 1
Среднее время выполнения программы при генерации 1 миллиона бит псевдослучайной
последовательности, [с]
"""" Реализация Операционная система Java C++, Crypto++ C++, MPIR
Windows 7 5,656 87,442 35,642
Windows 8 27,437 151,862 47,264
Windows Vista 21,374 94,424 38,399
Таблица 2
Средняя скорость потока при генерации 1 миллиона бит псевдослучайной последовательности, [бит/с]
"""""" Реализация Операционная система Java C++, Crypto++ C++, MPIR
Windows 7 188279,631 11461,812 28226,993
Windows 8 37118,510 6594,147 21251,284
Windows Vista 47831,430 10615,840 26182,505
Таблица 3
Средний объем потребляемой оперативной памяти при генерации 1 миллиона бит псевдослучайной
последовательности, [Кбайт]
Реализация Операционная — система Java C++, Crypto++ C++, MPIR
Windows 7 42149,6 3298,0 51313,6
Windows 8 1461,8 2412,0 50728,0
Windows Vista 1195,6 352,8 47595,2
_НАУЧНОЕ ПЕРИОДИЧЕСКОЕ ИЗДАНИЕ «IN SITU» №4/2015 ISSN 2411-7161_
Исходя из результатов тестирования двух рассмотренных генераторов, можно сделать вывод, что самой быстрой является реализация генератора Blum-Blum-Shub на языке программирования Java. Однако следует обратить внимание на наличие внешней зависимости и ненормированное потребление памяти. В данном случае преимущество по скорости не играет роли, так как для того чтобы изменить границы применения генератора, необходимо увеличить его скорость в 1000 раз и более, а в данном случае реализация на языке программирования Java быстрее других реализаций не более, чем в 16 раз.
Реализация на основе библиотеки MPIR также обладает высокой скоростью, но как и реализация на языке программирования Java имеет ненормированное потребление памяти, поэтому трудно предсказать поведение данной программы при генерации очень больших последовательностей (1 гигабайт и более). Для запуска данной реализации требуется наличие динамической библиотеки mpir.dll. Данная библиотека не требует установки и почти не занимает места на диске, поэтому такая зависимость не является недостатком.
Реализация на основе библиотеки Crypto++ является самой медленной и для генерации очень больших последовательностей потребуется колоссальное количество времени. Но зато данная программа отличается стабильным потреблением памяти и отсутствием каких-либо внешних зависимостей.
Средняя скорость работы всех перечисленных выше реализаций генератора Blum-Blum-Shub во много раз ниже средней скорости современных симметричных алгоритмов блочного шифрования. Из этого следует, что исследуемый генератор неприменим для генерации гаммы в шифрах гаммирования, но может использоваться для генерации данных в системах и протоколах, где скорость генерации не играет роли. Например, для генерации ключей в асимметричных системах, в качестве генератора ключей для имитовставки, а также в реализациях криптографических протоколов аутентификации и шифрования. Заключение.
Таким образом, если стоит вопрос об экономии времени, необходимо применять программную реализацию на основе теоретико-числовой библиотеки MPIR. Если же приоритетным требованием является экономия памяти, то следует выбрать программную реализацию на основе криптографической библиотеки Crypto++.
Список использованных источников
1. Neil J. Salkind. Encyclopedia of Measurement and Statistics. Sage Publications, 2007.
2. L. Blum, M. Blum and M. Shub. A Simple Unpredictable Pseudo-Random Number Generator. Proceedings, SIAM Journal on Computing, May 1986.
3. Crypto++. [Электронный ресурс]. URL: http://www.cryptopp.com/
4. The Multiple Precision Integers and Rationals Library. [Электронный ресурс]. URL: http://mpir.org/
5. A collection of random number generators in java. [Электронный ресурс]. URL: https://code .google. com/p/j avarng/
© Выборнова Ю.Д., 2015
Иванов Геннадий Павлович
канд. техн. наук, доцент ИТС КГАСУ
г. Казань, РФ E-mail: [email protected]
ПРЕДВАРИТЕЛЬНО-НАПРЯЖЕННЫЕ ЖЕЛЕЗОБЕТОННЫЕ БРУСКИ ДЛЯ АРМИРОВАНИЯ МОНОЛИТНЫХ ПЛИТ НЕРАЗРЕЗНЫХ ПРОЛЕТНЫХ СТРОЕНИЙ СТАЛЕЖЕЛЕЗОБЕТОННЫХ
МОСТОВ
Аннотация
Данная статья посвящена разработке конструкций предварительно-напряженных железобетонных брусков для их применения в конструкциях монолитных плит сталежелезобетонных пролетных строений