Содержание к диссертации
Введение
Глава 1. Понятие случайной числовой последовательности и ее основные характеристики 15
1.1.Понятие случайности 15
1.2. Определение случайной числовой последователь ности и ее основные характеристики 20
1.3. Анализ задач, в которых необходима идентификация свойств случайных числовых последовательностей 22
1.4.Генераторы случайных числовых последовательностей 32
1.5. Требования, предъявляемые к степени случайности числовых последовательностей и их генераторам 40
1.6. Подходы к оценке степени случайности числовой последовательности ..42
1.7.Постановка задач исследования 47
1.8.Выводы и результаты по главе 1 49
Глава 2. Модель и методика комплексной оценки степени случайности последовательностей чисел 50
2.1. Общая схема комплексной оценки степени случайности числовой последовательности 50
2.2.Тесты проверки степени случайности числовой последовательности 53
2.3. Определение лингвистических переменных для описания степени случайности числовой последовательности 70
2.4. Способы агрегирования данных для определения степени случайности числовой последовательности 73
2.5. Математическая модель и методика комплексной оценки степени случайности числовой последовательности 80
2.6.Выводы и результаты по главе 2 82
Глава 3. Параметрическая идентификация модели оценки степени случайности последовательности чисел 83
3.1. Алгоритм комплексной оценки степени случайности числовой последовательности 83
3.2. Описание программного продукта для оценки степени случайности числовой последовательности 85
3.3.Выявление «зависимых» тестов 96
3.4.Определение ошибок 1-го и 2-го рода для тестов 97
3.5.Классификация тестов по эффективности работы 98
3.6. Расчет параметров модели оценки степени случайности числовой последовательности 100
3.7.Верификация программного продукта 103
3.8.Выводы и результаты по главе 3 105
Глава 4. Применение методики оценки степени случайности последовательности чисел при решении задач защиты информации 106
4.1.Выявление стегосообщений в графических файлах 106
4.2. Формирование ключевых последовательностей из графических файлов 118
4.3. Отбор случайных числовых последовательностей для метода гаммирования 126
4.4. Анализ качества генераторов последовательностей случайных чисел, используемых в языках программирования, для задач защиты информации 133
4.5. Улучшение результатов применения метода Монте-Карло при решении задач оценки уровня побочных электромагнитных излучений и наводок 137
4.6. Применение методики оценки степени случайности последовательностей чисел при определении характеристик сетевого трафика 143
4.7.Выводы и результаты по главе 4 148
Заключение 150
Библиографический список
- Подходы к оценке степени случайности числовой последовательности
- Определение лингвистических переменных для описания степени случайности числовой последовательности
- Описание программного продукта для оценки степени случайности числовой последовательности
- Отбор случайных числовых последовательностей для метода гаммирования
Введение к работе
Актуальность исследования. На сегодняшний день в таких областях, как численный анализ, моделирование, статистика, программирование, компьютерная графика и т.д., существует целый класс задач, при решении которых необходимо производить обработку информационных потоков с целью оценки степени их случайности.
В частности, при построении абстрактных моделей, которые должны адекватно отражать процесс преобразования входных данных объекта или процесса в выходные, часто возникает так называемая ошибка декомпозиции, величина которой может достигать 14%. Это в первую очередь связано с тем, что при рассмотрении данного объекта или процесса происходит «огрубление» кажущихся несущественными факторов. Подобные ошибки являются неустранимыми в рамках построенной модели, поэтому одной из главных задач в процессе моделирования является отбор наиболее информативных параметров. Данная задача может быть решена путем обработки входных и выходных данных и определения степени их случайности. При этом если параметр не реагирует на происходящие изменения, он неинформативен. С другой стороны, параметры, изменяющиеся случайным образом, также неинформативны, поскольку модель должна не только отражать свойства реального объекта или процесса, но и позволять эффективно им управлять. В связи с этим возникает необходимость в идентификации параметров с заданной степенью случайности.
В задачах численного и статистического анализа, при тестировании компьютерных программ одну из ведущих ролей также играет отбор случайных входных параметров, что позволяет существенно увеличить эффективность решения задач указанными методами.
Решающую роль степень случайности используемых данных играет в задачах обеспечения информационной безопасности, где она, в большинстве случаев, является критической величиной и определяет надежность защиты. Например, случайным образом должен формироваться симметричный ключ шифрования. При генерации ключей для асимметричной криптосистемы необходимо иметь достаточно большой объем (порядка 109) случайных чисел. Случайные данные также важны в различных сетевых , относящихся к безопасности. Например, схемы взаимной аутентификации используют случайные одноразовые параметры для предотвращения атак повтора и т.д. В связи с этим актуальной является задача создания методики идентификации свойств случайных информационных потоков, отображением которых являются числовые последовательности.
Исследованиями в области проверки степени случайности числовых последовательностей, занимались и продолжают заниматься многие российские и зарубежные ученые: Б.Я. Советов, С.А. Яковлев, М.М. Глухов, В.П. Елизаров, А.А. Нечаев, Д.Э. Кнут, A. Rukhin, J. Soto, J. Nechvatal, M. Smid, U. Maurer. В их работах приводятся подробные описания различных тестов проверки последовательностей чисел на случайность, однако не предлагается общая методика агрегирования полученных результатов в комплексный критерий. Попытки решить данную проблему были предприняты американскими исследователями при разработке пакетов статистических тестов Diehard и NIST, которые на сегодняшний день считаются наиболее строгими наборами тестов. Однако данные пакеты выдают лишь качественную оценку и не позволяют определить количественный показатель степени случайности исследуемой последовательности, что приводит к невозможности сравнения данных по степени их случайности между собой. В связи с этим возникает необходимость разработки эффективной методики определения метрической характеристики степени случайности информационных потоков, отображением которых являются последовательности чисел.
Объект исследования – наборы данных, порождаемые информационными потоками, в частности графическими файлами.
Предмет исследования – модели, методы и алгоритмы анализа характеристик наборов данных, порождаемых информационными потоками, в частности графическими файлами.
Целью диссертационного исследования является повышение эффективности обработки и анализа наборов данных, возникающих при решении задач защиты информации. Для достижения поставленной цели необходимо решение следующих задач:
-
Провести анализ задач, в которых необходима идентификация свойств стохастических информационных потоков, и определить требования, предъявляемые к последним.
-
Построить математическую модель и разработать методику комплексной оценки степени случайности последовательностей чисел, отображающих информационные потоки.
-
Разработать алгоритм, формализующий процесс обработки стохастических информационных потоков, представляющих собой числовые последовательности, с целью идентификации их свойств, и на его основе реализовать программный продукт. Провести верификацию программного продукта и проверить валидность методики.
-
Адаптировать разработанную методику для выявления стегосообщений в графических файлах и для решения задачи формирования и хранения ключевой информации в графических файлах.
Методы исследования. Для решения поставленных задач и достижения намеченной цели в работе были использованы аппараты нечеткой логики и теории нечетких множеств, математической статистики, теории принятия решений, графов, построения и анализа эффективных алгоритмов, системный анализ.
Достоверность и обоснованность научных положений и выводов подтверждается результатами экспериментальных исследований и расчетов, а также верификацией разработанного программного продукта и проверкой возможности применимости разработанной методики для решения задач защиты информации.
Научная новизна диссертационного исследования:
-
Построена математическая модель обработки стохастических информационных потоков, представляющих собой числовые последовательности, позволяющая наиболее эффективным образом идентифицировать их свойства.
-
Разработана методика обработки и определения степени случайности числовых последовательностей, отображающих информационные потоки, отличающаяся тем, что позволяет производить не только качественную, но и количественную оценку свойств случайности.
-
Предложено техническое решение по совершенствованию существующих средств защиты от передачи стегосообщений в графических файлах, позволяющее предотвращать несанкционированную передачу данных в изображениях, а также предложен новый способ, позволяющий использовать графические файлы в качестве источника и хранилища ключевой информации.
Практическая значимость заключается в повышении эффективности решения задач защиты информации путем принятия управленческих решений на основе идентификации свойств возникающих в них стохастических информационных потоков.
Разработан программный продукт «Программа для комплексной оценки качества последовательностей случайных чисел», реализующий предложенную методику обработки информационных потоков с целью определения степени их случайности. На основе данного программного продукта:
-
Разработан программный комплекс «Система защиты от передачи стегосообщений в изображениях», позволяющий выявлять и модифицировать изображения, подозрительные на наличие скрытой информации.
-
Предложена схема процесса формирования ключевой информации, позволяющего генерировать уникальные ключевые последовательности для задач защиты информации с использованием графических файлов.
Результаты диссертации использованы в Астраханском государственном техническом университете при разработке учебно-методического обеспечения дисциплины «Криптографические методы защиты информации» на кафедре «Информационная безопасность», в Астраханском филиале Московского государственного университета экономики, статистики и информатики при разработке учебно-методического обеспечения дисциплин «Основы информационной безопасности» и «Организация и управление безопасностью» на кафедре «Информационные технологии и высшая математика», а также в отделе информационной безопасности Территориального фонда обязательного медицинского страхования Астраханской области.
Диссертационные исследования выполнены в рамках НИР «Методы систематизации и классификации в задачах защиты информации» № гос. рег. 02201155454 (Внутр.№01201051067).
Апробация работы. Основные положения и отдельные результаты диссертации докладывались и обсуждались на следующих международных и всероссийских конференциях и семинарах: XXIII Международной научной конференции «Математические методы в технике и технологиях ММТТ – 23» (Саратов, 2010), Международной научно-практической конференции «Фундаментальные и прикладные исследования университетов, интеграция в региональный инновационный комплекс» (Астрахань, 2010), Международной межвузовской научно-практической конференции «Молодежь и образование» (Астрахань, 2010), 12-ой Всероссийской научно-практической конференции молодых ученых, студентов и аспирантов «Молодежь. Образование. Экономика» (Ярославль, 2011), XXIV Международной научной конференции «Математические методы в технике и технологиях ММТТ-24» (Пенза, 2011).
Публикации. Основные результаты диссертационного исследования опубликованы в 10 печатных работах: 1 монографии, 4 статьях в журналах из списка, рекомендованного ВАК РФ, 5 материалах и трудах конференций, получены 2 свидетельства о государственной регистрации программ для ЭВМ.
Структура и объем работы. Работа состоит из введения, 4 глав, заключения, списка литературы из 123 наименований и 11 приложений. Основная часть работы изложена на 152 страницах машинописного текста, содержит 27 таблиц и 47 рисунков.
Подходы к оценке степени случайности числовой последовательности
Представления о случайности зародились еще в древности, при самых первых попытках осознания человеком своего бытия. Они стали необходимыми при объяснении поведения человека, его судьбы или, так называемой, «жизненной траектории в многомерном мире». Тогда случайность сопоставляли с необходимостью. Новый этап в познании случая начался со времени вхождения вероятности в структуру физико-математического естествознания. Этот этап характеризуется тем, что вырабатываются научные основы в понимании случайности, а в теоретическом знании начинает формироваться ядро понятий, выражающих идею случая.
Первостепенное значение здесь имело развитие физики, которая изучает наиболее глубинные уровни материального мира. Однако следует отметить, что первоначально физика, да и наука в целом отторгали случай. Так, еще на заре европейской науки Демокрит полагал, что причину имеет всё, и что случайность люди ввели, «чтобы оправдать свою глупость». Однако он же положил в основание своей натурфилософии беспорядочное движение атомов, из-за которого явления приходится фактически рассматривать как случайные. В этом противоречии наука и пребывает до сих пор: хотя без случайности ни один род деятельности (в том числе и ни одна теория явлений - природы или общества) обойтись не может, но до сих пор можно услышать и прочесть, что случайности как таковой в строгом представлении первой научной картины мира (по Аристотелю) не существует.
Таким образом, в рамках первых физических теорий не было места для случайности. За ней практически не признавалось объективной основы. Такой стиль научного мышления хорошо выражен в словах П.Гольбаха: «Ничего в природе не может произойти случайно; все следует определенным законам; эти законы являются лишь необходимой связью определенных следствий с их причинами... Говорить о случайном сцеплении атомов либо приписывать некоторые следствия случайности - значит говорить о неведении законов, по которым тела действуют, встречаются, соединяются либо разъединяются». С подобных взглядов на случайность началось рассмотрение основ вероятности в физическом познании.
Вероятностные методы породили представления о новом классе закономерностей в природе — статистических закономерностях. По мере развития познания все более и более стала признаваться их самостоятельная ценность, полнота и несводимость к иным типам законов, прежде всего — к законам жесткой детерминации, которые были характерны для естествознания до разработки статистической физики. Произошедшие преобразования в мышлении стали выражаться в том, что в структуру научной теории, в структуру закона была включена случайность.
Иной, научный подход к анализу случайности стал вырабатываться в ходе становления теории вероятностей и ее приложений. Предмет теории вероятностей обычно определяется как изучение массовых случайных явлений (событий). Исходным ее понятием является понятие случайного события, под которым понимают некоторый факт, который при определенных условиях может произойти или не произойти. То есть, в теории вероятностей понятие случайного события определяется лишь тем, произошло оно или нет, а не его конкретной природой. Случайность же соотносится с отдельными событиями и выражает тот факт, что отдельные события в массовом явлении независимы и появление каждого из них не обусловлено другими событиями. Именно при таком подходе раскрываются основы объективного понимания природы случайного [9-11].
В работе [13] было предложено другое деление случайностей - на шесть ступеней по степени неупорядоченности (хаотичности): от детерминированного причинно-следственного акта, природа которого известна (в качестве низшей ступени случайности он может выступать для тех, кто не знает закономерной природы данного явления), до "истинного хаоса", не допускающего при наличном развитии науки никакого описания. Стандартная стохастическая случайность занимает здесь среднюю ступень, так как обладает жёсткой характеристикой - вероятностью.
Один из создателей теории вероятностей (ТВ) А.Н.Колмогоров в [14] лишь дважды коснулся природы случайности. В первом случае Колмогоров утверждает, что при большом числе однотипных опытов частота близка к вероятности «при известных условиях, в которые мы здесь не будем глубже вдаваться». Во втором - он отметил, что ТВ является чем-то большим, нежели главой теории меры, только в силу наличия в ней понятия независимости.
Первое соображение заставило Колмогорова разработать в 1960-е годы целую теорию, известную как «случайность по Колмогорову» и ставившую цель понять, какова та случайность, которая при повторении опытов приводит к устойчивой частоте данного исхода. По Колмогорову случайность числа трактуется как отсутствие алгоритма для его вычисления [15]. Второе соображение открывает путь для ещё одного способа группировать случайности - по степени независимости случайных величин. В природных и социальных системах часто возникают такие виды зависимости, когда случайность присутствует, а обычные средства ТВ и математической статистики не работают. К этим системам прежде всего относятся био- и техноценозы [16].
Эти виды классификации случайностей, как и другие возможные, тесно связаны друг с другом. При этом понятие случайности является первичным. Оно не поддается определению через некоторые иные, более общие понятия. Для раскрытия содержания понятия случайности необходимо его прямое соотнесение с «соответствующими» процессами и явлениями действительности [12,17].
Однако в любом случае общим остается следующее определение: случайное – это все то, что может при данных условиях как произойти, так и не произойти. Мерой случайности является вероятность. Однако о ней можно говорить только в отношении одного класса случайных явлений, в котором наблюдаются устойчивые частоты. По Колмогорову «такого рода явления естественно назвать вероятностно-случайными. Иногда их называют стохастическими». По общему мнению, ТВ описывает лишь явления «вероятностно-случайные с определяемыми распределениями вероятностей», хотя на деле её аппарат применяется и к тем явлениям, где о стохастичности ничего сказать нельзя. Следовательно, ТВ - лишь часть (и притом небольшая) общей науки о случайном [12,18].
Определение лингвистических переменных для описания степени случайности числовой последовательности
В таких приложениях, как взаимная аутентификация и генерация ключа сессии, нет жесткого требования, чтобы последовательность чисел была статистически случайной, т.е. носила вероятностный характер [63], но члены последовательности должны быть непредсказуемы. При абсолютно случайной последовательности каждое число статистически не зависит от остальных чисел и, следовательно, непредсказуемо. Однако абсолютно случайные числа на практике используются достаточно редко, чаще последовательность чисел, которая должна быть случайной, создается по некоторому алгоритму. В данном случае необходимо, чтобы противник не мог предугадать следующие элементы последовательности, основываясь на знании предыдущих элементов и используемого алгоритма.
Кроме того, в настоящее время задачи защиты информации предъявляют все более высокие требования к быстродействию генераторов случайных чисел.
Если дать наудачу выбранному человеку карандаш и бумагу и попросить его написать 100 десятичный цифр, то вероятность того, что в результате будет получена истинно случайная последовательность, очень мала. Люди стремятся избегать действий, приводящих к результатам, которые кажутся неслучайными, таким, например, как появление пары равных смежных цифр (хотя приблизительно одна из 10 цифр должна равняться предыдущей). И, если показать тому же человеку таблицу настоящих случайных чисел, он, вероятно, скажет, что эти числа неслучайны. Он заметит много кажущихся закономерностей.
В соответствии с высказыванием доктора И.Дж. Матрикса «Математики рассматривают десятичное разложение числа Пи как случайную последовательность, но современный специалист по магическим свойствам чисел найдет для себя множество интересных примеров» [29]. Матрикс указал, например, что первым повторяющимся двузначным числом в разложении числа Пи является 26, а второй раз оно появляется как раз посередине любопытных повторений пар чисел (рис. 1.13)
Составив список дюжины или более подобных свойств этих чисел, он заметил, что разложение числа Пи, если его правильно интерпретировать, может рассказать обо всей истории человечества.
На этом простом примере легко убедиться в том, что визуально нельзя однозначно определить, является ли взятая последовательность чисел случайной или нет. Однако для разработчика, к примеру, криптографической системы важно точно знать, что используемая им последовательность чисел случайна. Для этого были разработаны специальные тесты, которые представляют собой комплекс проверок по различным статистическим критериям. Отсюда и задача построения качественного генератора ПСЧ может быть сведена к построению статистически безопасного генератора, т.е. удовлетворяющего следующему требованию: ни один статистический тест не обнаруживает в выходной последовательности никаких закономерностей, иными словами, не отличает эту последовательность от истинно случайной.
За последние 20 лет разработано большое количество статистических тестов для анализа того, насколько последовательность чисел способна демонстрировать случайное поведение [1,3,29,64-70].
В зависимости от проверяемого свойства случайности принято выделять проверки на равномерность, стохастичность и независимость [1]. Проверка равномерности последовательностей случайных чисел может быть выполнена, к примеру, по гистограмме с присваиванием косвенных признаков. Проверка стохастичности наиболее часто проводится методами комбинаций и серий. Проверка независимости может проводиться, например, на основе вычисления корреляционного момента. Для независимых случайных величин корреляционный момент равен нулю.
Если некоторая ПСЧ была проверена с помощью набора критериев , ,…, , и все они подтверждают, что данная последовательность ведет себя случайным образом, то это еще не означает, что проверка с помощью -го критерия будет успешной.
Однако каждая успешная проверка дает все больше и больше уверенности в случайности последовательности. Обычно к ПСЧ применяется около полудюжины статистических тестов, и если она удовлетворяет этим критериям, то ее считают случайной.
Статистические пакеты оценки качества последовательностей случайных чисел. В настоящее время разработано несколько пакетов статистических тестов для измерения качества набора случайных чисел [65-66,68]. Наиболее известными и эффективными среди них принято считать тесты Diehard и тесты NIST.
Тесты Diehard были разработаны Джорджем Марсальей. Данный пакет включает 12 критериев и вместе они рассматриваются как один из наиболее строгих известных наборов тестов [66,69].
В 1999 году разработчиками NIST в рамках проекта AES был представлен статистический набор тестов NIST (NIST Statistical Test Suite) и предложена методика проведения статистического тестирования шифров и генераторов случайных чисел [66,70]. Данный пакет включает в себя уже 15 статистических тестов, которые разработаны для проверки гипотезы о случайности представляемой двоичной последовательности любой длины:
Кроме того использование многих современных статистических пакетов ограничено в силу их высокой стоимости (например, профессиональные западные статистические пакеты обычно стоят от 1 до 10 тыс. долларов и более), а также в силу сложности их освоения, т.к. в основном подобные пакеты предназначены только для опытных пользователей.
Вместе с этим современные статистические пакеты подвергаются постоянной критике и попыткам усовершенствования, что в свою очередь говорит об актуальности и практической значимости задачи разработки методики комплексной оценки качества последовательностей случайных чисел, учитывающей недостатки существующих статистических пакетов.
Анализ предметной области показал, что разработка эффективного метода оценки степени случайности числовых последовательней, отображающих информационные потоки, возникающие при решении различных прикладных задач, в настоящее время является весьма актуальной задачей.
Несмотря на то, что на сегодняшний день существует большое количество тестов, выявляющих те или иные отклонения от случайности в исследуемых числовых последовательностях, отсутствует методика комплексного решения данной задачи, а предложенные западными учеными статистические пакеты обладают определенными недостатками. Поэтому в рамках диссертационного исследования предлагается разработать подход к комплексной оценке степени случайности ПЧ с учетом недостатков существующих решений.
Описание программного продукта для оценки степени случайности числовой последовательности
Иначе, выводится сообщение с запросом об установке (или загрузке из Интернета) необходимых дополнений, количество и состав которых зависят от установленного ранее программного обеспечения (ПО).
Если пользователь отказывается установить (загрузить) требуемые дополнения, то инсталляция приложения автоматически прерывается. Деинсталлировать приложение можно через окно «Удаление программ» панели управления. При запуске приложения на экране появляется окно «Вход в программу», которое предоставляет пользователю возможность просмотреть справочную информацию или перейти непосредственно к блоку тестирования ПСЧ.
Окно «Справка» содержит справочную информацию об используемых в программе тестах, методике расчета конечного результата, а также руководство пользователя по работе с программой.
Окно «Тестирование» позволяет непосредственно протестировать и оценить статистические свойства числовой последовательности (рис. 3.4). При этом текстовые поля окна (поля настроек), расположенные рядом с названиями тестов, предназначены для настройки чувствительности общего результата по группе тестов к результатам отдельных тестов. Изначально данные поля заблокированы. Блокировка снимается только в том случае, если тест отмечен как выбранный. Аналогично, если тест исключается из блока проверок, то соответствующие текстовые поля снова блокируются.
Первый столбец указанных текстовых полей предназначен для задания весового коэффициента ошибки 1-го рода , второй – весового коэффициента ошибки 2-го рода . При тестировании ПСЧ можно воспользоваться значениями, установленными в данных полях по умолчанию, либо определить их самостоятельно.
Текстовые поля, расположенные рядом с названиями групп тестов, предназначены для присвоения им весов, определяемых пользователем в соответствии с поставленной задачей. При этом первый столбец текстовых полей предназначен для присвоения группам тестов непосредственно весов. В этом случае вес – некоторое рациональное число (от 0 до 1), характеризующее степень значимости группы тестов. Чем больше вес, тем важнее для пользователя результат, полученный по данной группе, и тем большее влияние он окажет на КК.
Если такой способ оценки важности проверок по группам тестов представляется сложным для пользователя, то предусмотрена возможность простого упорядочивания групп тестов по степени возрастания их значимости. При этом пользователь должен указать в текстовых полях второго столбца соответствующие порядковые номера. В данном случае перевод заданных значений в веса и их дальнейшая нормировка производится автоматически.
Изначально текстовые поля первого столбца заблокированы. Для того чтобы их разблокировать и иметь возможность вносить данные, необходимо исправить значения соответствующих порядковых номеров на нули. При этом допускается, что порядковый номер и вес для одной и той же группы будут одновременно принимать нулевые значения. В этом случае результат проверок по данной группе не окажет никакого влияния на конечный результат. По умолчанию все группы тестов равнозначны, и каждой из них присвоен порядковый номер, равный единице.
Также пользователю предоставлена возможность изменять пороговые уровни и для каждой из групп проверок в зависимости от поставленных задач. Данные пороговые уровни задаются в соответствующих текстовых полях (рис. 3.6). По умолчанию им присвоены следующие значения: 1) для группы проверок на равномерность: , 2) для группы проверок на независимость: , 3) для группы проверок на стохастичность: , Выполненные пользователем настройки могут быть сохранены для последующего использования. Также предоставляется возможность загрузки в программу сохраненных ранее настроек.
Кнопка «Комплексное тестирование» в главном меню окна «Тестирование» позволяет загрузить и автоматически протестировать ПЧ, содержащиеся во всех файлах указанной директории. Изначально эта опция недоступна. Чтобы ее активировать, необходимо выбрать стратегию и определить веса тестов и их групп.
При проверке одной ПЧ возможны два режима: ручной и автоматический. При использовании ручного режима после выполнения настроек необходимо последовательно выполнить проверку ПЧ по каждой из групп тестов, а затем произвести расчет ИК, нажав на кнопку «Рассчитать ИК». Кнопка «КОМПЛЕКСНЫЙ РАСЧЕТ» окна «Тестирование» позволяет автоматически выполнить все три блока проверок, а затем подсчитать интегральный критерий. После завершения вычислений в обоих случаях все результаты отображаются в текстовом поле (рис. 3.7). где x, y и z – ИСх результата с «эталоном» соответствующей категории. На основе полученных данных пользователь может принять решение о пригодности или непригодности проверенной ПСЧ для поставленной задачи.
Кнопка «Сохранить в файл» окна «Тестирование» позволяет экспортировать результаты тестирования в файл. По умолчанию в качестве файлов для экспорта предлагаются файлы приложения Excel, что позволяет пользователю в случае необходимости производить дальнейшие манипуляции с результатами тестирования ПСЧ. Рекомендуется в качестве файла для сохранения выбирать файлы Excel 2003-2007 (или более ранних версий) для предотвращения возникновения ошибок несовместимости. Структура файла отчета представлена на рис. 3.8. В левом верхнем углу файла отчета указываются дата и время его формирования, а также путь к файлу, содержащему проверяемую ПСЧ. Ниже следуют непосредственно результаты тестирования ПСЧ, сведенные в таблицу со следующими столбцами:
По желанию пользователя результаты тестирования также могут быть сохранены и в обычный текстовый файл .txt. Структура файла отчета при этом не изменится.
Для выполнения арифметических операций над нечеткими числами был разработан программный продукт «Вычисления с нечеткими числами» [88-89], который был подключен как отдельный модуль для функционировании ПП «Программа для комплексной оценки качества последовательностей случайных чисел».
Выявленные «зависимые» тесты объединим в группы, и в дальнейшем будем использовать только один тест из каждого группы. При этом выбор конкретного теста может быть обусловлен, например, соображениями эффективности выполнения алгоритма проверки. Кроме уменьшения вычислительных затрат, предварительная проверка тестов на «независимость» позволит более обоснованно выявлять последовательности, отвечающие определению случайности.
Так, при тестировании 100 числовых последовательностей (приложение 3), было выявлено, что тесты «Хи-квадрат» и монобитный тест из категории проверок на равномерность и тесты проверки стохастичности и Шапиро-Франчиа из категории проверок на стохастичность дают абсолютно одинаковые результаты.
Отбор случайных числовых последовательностей для метода гаммирования
В настоящее время статистическая информация часто используется для вывода «обоснованных предположений» о будущем. Неоднократно замечено, что тенденции, имевшие место в прошлом и настоящем, сохраняются и в дальнейшем. Хотя на основе прошлого опыта не всегда можно предсказать будущее, все же данные о прошлом часто используются для этого. В этих случаях на основе известных значений наблюдаемого показателя можно определить его значения для некоторого времени в будущем. Этот процесс получил название прогнозирования или анализа тенденций. Такой анализ может применяться для предсказания изменений курса акций, выполнения клинических тестов для определения границ применения нового лекарства или, например, определения средних результатов спортивных команд [121].
Современные подходы к статистическому анализу сложились в период, когда стали доступны для обработки большие наборы данных, а применение ЭВМ позволило быстро находить связь, обрабатывать, а также представлять их в удобной для человека форме.
В любом статистическом процессе имеются зависимые переменные, которые являются предметом изучения, и независимые переменные, которые являются факторами, влияющими на зависимые переменные. Обычно в качестве независимой переменной используется время. Например, исследуя тенденцию изменения курсов акций, можно рассматривать их изменения в течение дня.
При проведении статистического анализа широко используются следующие величины: МО, Д и СО.
При этом для их вычисления обычно применяется выборочный метод. Он состоит в том, что свойства генеральной совокупности устанавливаются путём изучения тех же свойств на некоторой выборке из этой совокупности [122].
Например, можно оценивать дневную загруженность локальной сети по величине трафика, измеренного через определенные промежутки времени. Если в качестве генеральной совокупности принять значения объема трафика, измеренного через каждую минуту, то выборкой может служить массив чисел, отражающих объем трафика, проходящего по сети, например, каждую десятую минуту.
Выборка может совпадать с генеральной совокупностью, и в этом случае она будет исчерпывающей. Для приведенного примера выборка будет совпадать с генеральной совокупностью в том случае, когда будут использованы данные о величине трафика, проходящего по сети через каждую минуту. Если выборка меньше генеральной совокупности, то результат будет неточен, т.к. исследуются не все элементы совокупности, а лишь их некоторая часть [123].
Ошибки также часто возникают и в тех случаях, когда в выборочную совокупность преимущественно попадают представители одинаковых групп. Так, например, почтовые анкеты чаще заполняют лица с более высоким уровнем образования, причем мужчины чаще, чем женщины, пенсионеры чаще, чем работающие и т.д.
Для уменьшения возникающих ошибок выборка в определенном смысле должна представлять собой модель генеральной совокупности, т.е. обладать свойством репрезентативности. Репрезентативная выборка – это одно из ключевых понятий анализа данных. Это такая выборка из генеральной совокупности, которая отражает основные особенности генеральной совокупности.
Например, если в городе проживает 100000 человек, половина из которых мужчины и половина женщины, то выборка 1000 человек, из которых 10 мужчин и 990 женщин, не будет репрезентативной. А следовательно и построенный на ее основе опрос общественного мнения будет содержать смещение оценок и приведет к искажению результатов [123].
Постановка задачи. Необходимо разработать схему использования методики оценки качества ПСЧ для повышения репрезентативности выборок при статистическом анализе данных.
Необходимым условием построения репрезентативной выборки является равная вероятность включения в нее каждого элемента генеральной совокупности, т.е. выборка должна обладать свойством случайности с точки зрения равномерности. Проверка на случайность выбираемых элементов, образующих числовую последовательность, может быть осуществлена с помощью разработанной МКО качества ПСЧ.
С целью исследования возможности использования такого подхода был измерен объем входящего и исходящего трафика, переданного по сети организации, за 24 часа с шагом в 1 минуту. Эти данные были взяты в качестве генеральной совокупности, которую можно охарактеризовать с помощью МО, Д и СО.
Пусть объем выборки составляет 10% от объема генеральной совокупности. Покажем, что случайная (с точки зрения свойства равномерности) выборка является более репрезентативной, чем неслучайная. Для этого вычислим отклонение указанных параметров (МО, Д и СО), рассчитанных для генеральной совокупности, от параметров, рассчитанных для выборок. При этом для проверки свойства равномерности будем использовать разработанный ПП. Результаты тестирования приведены в приложении 10. В таблицах 4.18-4.19 приведены результаты расчетов.
Результаты наглядно показывают, что минимальные отклонения рассчитанных параметров, полученные при использовании неравномерных выборок, в среднем в 2,3 раза превышают максимальные отклонения, которые могут быть получены при использовании равномерных выборок. Т.е. использование случайных числовых последовательностей при составлении выборки из генеральной совокупности данных позволяет более точно оценить статистические свойства последней.
Таким образом, предложенная МКО качества ПСЧ, а также разработанный на ее основе программный продукт, могут быть успешно использованы для повышения эффективности методов статистического анализа данных. Для этого предлагается усовершенствовать процедуру формирования выборки из генеральной совокупности, добавив блок проверки этой выборки на случайность с точки зрения свойства равномерности (рис. 4.14).
Предложенный подход позволяет существенно увеличить эффективность статистического анализа данных выборочным методом и свести к минимуму возможную погрешность получаемых результатов.
1. Предложен метод выявления и модификации графических файлов, подозрительных на наличие стегосообщения, с целью исключения возможности дальнейшего извлечения их них скрытой информации. Разработан программный комплекс «Система защиты от передачи стегосообщений в изображениях», позволяющий с вероятностью до 92% обнаруживать и корректировать графические файлы, содержащие встроенные сообщения.
2. Предложена схема процесса формирования ключевой информации из графических файлов, позволяющего удобным образом формировать и хранить случайные ключевые последовательности произвольной длины.
3. Показана зависимость трудоемкости криптоанализа шифротекстов от качества использованных при шифровании ключевых последовательностей. Предложена подход по совершенствованию алгоритмов шифрования, позволяющий увеличить трудоемкость криптоанализа в среднем в 2,5 раза.
4. Проведен анализ качества генераторов ПСЧ, встроенных в языки программирования C++ и C#. Показано, что количество случайных ПЧ, вырабатываемых генератором языка C++, в 4 раза превышает количество случайных ПЧ, вырабатываемых генератора языка C#. Сформулирован вывод о том, что данные генераторы не могут быть рекомендованы для использования в задачах защиты информации, в частности в криптографических приложениях.
5. Проведен сравнительный анализ результатов, полученных при решении задачи методом Монте-Карло с использованием случайных и неслучайных ПЧ. Предложен подход по совершенствованию вычислений методом Монте-Карло, позволяющий повысить его эффективность в 2,8 раза.