Главная страница
Навигация по странице:

  • 10.2. Руководство по статистическому тестированию НИСТ

  • Оценка результатов тестирования.

  • Генерация последовательностей для тестирования

  • Исполнение набора статистических тестов.

  • Анализ прохождения статистических тестов.

  • 10.3. Повышение эффективности оценочных тестов

  • 10.4. Комплекс программных средств оценки качества генераторов ПСЧ

  • ЧАСТЬ 3. ЭЛЛИПТИЧЕСКАЯ КРИПТОГРАФИЯ

  • Иванов М.А. КМЗИ сети. Криптографические методы защиты информации


    Скачать 3.04 Mb.
    НазваниеКриптографические методы защиты информации
    АнкорИванов М.А. КМЗИ сети.pdf
    Дата18.02.2018
    Размер3.04 Mb.
    Формат файлаpdf
    Имя файлаИванов М.А. КМЗИ сети.pdf
    ТипУчебное пособие
    #15674
    страница15 из 20
    1   ...   12   13   14   15   16   17   18   19   20
    ГЛАВА 10. ИССЛЕДОВАНИЕ СТАТИСТИЧЕСКОЙ
    БЕЗОПАСНОСТИ ГЕНЕРАТОРОВ ПСЧ
    10.1. Тесты, применяемые для оценки качества
    генераторов ПСЧ
    Для исследования ПСП применяются две группы тестов:
    1)
    графические;
    2)
    оценочные.
    В первом случае статистические свойства последовательно- стей отображаются в виде графических зависимостей, по виду которых делают выводы о свойствах исследуемой ПСП. Во вто- ром случае статистические свойства последовательностей опре- деляются числовыми характеристиками. На основе оценочных критериев делаются заключения о степени близости свойств анализируемой и истинно случайной последовательностей.
    В отличие от графических тестов, где результаты интерпре- тируются пользователями, вследствие чего возможны различия в трактовке результатов, оценочные тесты характеризуются тем, что они выдают численную характеристику, которая позволяет однозначно сказать, пройден тест или нет.
    Описания тестов с примерами их использования приведены в
    [16, 18]. Наиболее известная система статистического тестиро- вания генераторов ПСЧ это DIEHARD Дж. Марсальи (Флорид- ский Государственный Университет, США) [44]. Наиболее пол- ное описание тестов, применяемых для анализа генераторов
    ПСЧ, ориентированных на использование в системах защиты информации, содержится в Руководстве НИСТ по статистиче- скому тестированию генераторов ПСЧ (в дальнейшем просто
    Руководство НИСТ) [33].
    DIEHARD – это специализированная система, ориентиро- ванная в первую очередь на проверку конгруэнтных гене- раторов, разработанных Дж. Марсальи. Можно перечислить сле- дующие недостатки системы DIEHARD: параметры тестирования жестко заданы (например, размер области тестирования предопределена, иначе говоря, неза- висимо от размера файла анализируется определенное число байт);

    288 полностью отсутствуют справочная служба и методика трактовки результатов; большинство тестов основано не на теоретических расчетах, а на результатах испытаний.
    10.2. Руководство по статистическому тестированию НИСТ
    Различные статистические тесты могут применяться к ПСП, для того чтобы сравнить ее с истинно случайной последователь- ностью. Случайность – вероятностное свойство; это означает, что свойства случайной последовательности могут быть охарак- теризованы и описаны в терминах вероятности. Вероятный ре- зультат статистических тестов, применяемых к истинно случай- ной последовательности, известен априорно и может быть опи- сан в вероятностных терминах. Существует огромное количест- во возможных статистических тестов, оценивающих присутствие или отсутствие «образца», который, при обнаружении, указал бы, что последовательность неслучайна. Поскольку существует так много тестов, оценивающих, является ли последовательность случайной или нет, никакой определенный конечный набор тес- тов не считают «законченным». Кроме того, результаты стати- стического теста должны интерпретироваться с некоторой осто- рожностью, чтобы избежать неправильных заключений об опре- деленном генераторе.
    Статистический тест формулируется для проверки опреде- ленной нулевой гипотезы H
    0 о том, что проверяемая последо- вательность является случайной. С этой нулевой гипотезой свя- зана альтернативная гипотеза Н
    а о том, что последовательность
    не случайна. Для каждого применяемого теста получают заклю- чение о принятии или отклонении нулевой гипотезы, основы- ваясь на сформированной исследуемым генератором последо- вательности.
    Для каждого теста должна быть выбрана подходящая стати- стика случайности для принятия или отклонения нулевой гипо- тезы. Согласно предположению о случайности, такая статистика имеет распределение возможных значений. Теоретическое эта- лонное распределение этой статистики для нулевой гипотезы определяется математическими методами. Из этого эталонного

    289 распределения определяется критическое значение. Во время проведения теста, вычисляется значение тестовой статистики.
    Оно сравнивается с критическим значением. Если значение тес- товой статистики превышает критическое значение, нулевая ги- потеза для случайности отклоняется. В противном случае нуле- вая гипотеза принимается.
    Проверка статистических гипотез работает, потому что эта- лонное распределение и критическое значение зависят и генери- руются согласно предварительному предположению о случайно- сти. Если предположение о случайности последовательности ис- тинно, то результирующее значение тестовой статистики для нее будет иметь очень низкую вероятность превышения критическо- го значения (например, 0,01).
    С другой стороны, если расчетное значение тестовой стати- стики превышает критическое значение (т.е. происходит собы- тие с низкой вероятностью), то, с точки зрения проверки стати- стической гипотезы, событие с низкой вероятностью не может встретиться естественно. Поэтому когда расчетное значение тес- товой статистики превышает критическое значение, делается заключение, что первоначальное предположение о случайности является подозрительным или ошибочным. В этом случае дела- ется заключение об отклонении Н
    0
    (случайность) и принятии Н
    а
    (неслучайность).
    Проверка статистической гипотезы – процедура генерации заключения, которая имеет два возможных результата, или при- нять Н
    0
    (данные случайны) или принять Н
    а
    (данные неслучай- ны). Табл. 10.1 связывает истинное (неизвестное) состояние дан- ных с заключением, полученным процедурой проверки.
    Если данные на самом деле случайны, то заключение об от- клонении нулевой гипотезы (т.е. данные неслучайны) будет приниматься крайне редко. Это заключение называется ошибкой первого рода. Если данные неслучайны, то заключение о приня- тии нулевой гипотезы (т.е. данные случайны) называется ошиб- кой второго рода. Заключения о принятии Н
    0
    , когда данные дей- ствительно случайны, и отклонении Н
    0
    , когда данные неслучай- ны, являются правильными.

    290
    Таблица 10.1
    Принятие заключений по результатам проведения статистических испытаний
    Ситуация
    Заключение
    Принять H
    0
    Принять H
    a
    Данные случайны
    (H
    0
    истинна)
    Нет ошибки
    Ошибка 1-го рода
    Данные неслучайны
    (Ha истинна)
    Ошибка 2-го рода
    Нет ошибки
    Вероятность ошибки 1-го рода называется уровнем значимо-
    сти теста. Эта вероятность может быть установлена до испыта- ния и обозначается как . Для теста суть вероятность того, что тест укажет на неслучайность последовательности, тогда как на самом деле она случайна. То есть на то, что последовательность имеет неслучайные свойства, даже если ее произвел хороший генератор.
    Вероятность ошибки 2-го рода обозначается как . Для теста есть вероятность того, что тест укажет на случайность после- довательности, тогда как это не так; то есть плохой генератор произвел последовательность, которая, как кажется, имеет слу- чайные свойства. В отличие от , может принимать множество различных значений, потому что существует бесконечное число ситуаций, когда поток данных может быть неслучаен, и каждая из них выдает различные . Вычисление ошибки 2-го рода явля- ется более сложным из-за множества возможных типов неслу- чайности.
    Одна из основных целей статистических тестов – минимиза- ция вероятности ошибки 2-го рода, иначе говоря, минимизация вероятности принятия последовательности, произведенной пло- хим генератором, за последовательность, произведенную хоро- шим генератором. Вероятности и связаны друг с другом и с длиной n проверяемой последовательности: если два из этих значений определены, третье определяется автоматически. На практике обычно выбирают размер n и значение для (вероят- ности ошибки 1-го рода). Тогда критическая точка для данной статистики выбирается так, чтобы получить наименьшее значе- ние (вероятность ошибки 2-го рода).

    291
    Тестовая статистика использует вычисление значение P-value, которое констатирует силу доказательства против нулевой гипо- тезы, иначе говоря, P-value есть вероятность того, что совер- шенный генератор случайных чисел произвел бы последователь- ность менее случайную, чем исследуемая, для типа неслучайно- сти, проверяемого тестом. Если P-value для теста равно 1, то по- следовательность абсолютно случайна. P-value, равное 0, указы- вает, что последовательность абсолютно неслучайна. Для теста следует выбрать уровень значимости . Если значение P-value больше или равно , то принимается нулевая гипотеза, т.е. по- следовательность кажется случайной. Если значение P-value меньше , то нулевая гипотеза отклоняется, т.е. последователь- ность кажется неслучайной. Параметр обозначает вероятность ошибки 1-го рода. Как правило, выбирается в интервале
    [0,001; 0,01].
    Значение , равное 0,01, говорит о том, что из 100 случай- ных последовательностей не прошла бы тест лишь одна. При
    P-value 0,01 последовательность рассматривается как случай- ная с доверительностью 99 %, иначе говоря, с вероятностью
    0,99 последовательность случайна. При P-value < 0,01 последо- вательность рассматривается как неслучайная с доверительно- стью 99 %, иначе говоря, с вероятностью 0,99 последователь- ность неслучайна.
    Значение , равное 0,001, говорит о том, что из 1000 случайных последовательностей не прошла бы тест лишь одна. При P-value
    0,001 последовательность рассматривается как случайная с дове- рительностью 99,9 %. При P-value < 0,001 последовательность рас- сматривается как неслучайная с доверительностью 99,9 %.
    По отношению к исследуемым последовательностям можно сделать следующие предположения.
    Равномерность. В любой точке при генерации последова- тельности случайных или псевдослучайных битов 0 и 1 равновероятны и вероятности их появления равны 1/2.
    Ожидаемое число нулей (или единиц) равно n/2, где n – длина последовательности.
    Масшабируемость. Любой тест, применимый к последова- тельности, может также применяться к произвольной под-

    292 последовательности. Если последовательность случайна, то любая ее подпоследовательность также должна быть слу- чайной. Следовательно, любая подпоследовательность должна пройти все тесты на случайность.
    Полнота. Поведение генератора ПСЧ связано с начальным заполнением, поэтому неверно делать заключение о качест- ве генератора, основываясь на результатах анализа последо- вательности при каком-то одном начальном заполнении.
    Аналогично неверно делать заключение о генераторе слу- чайных чисел, основываясь только на результатах анализа одного произведенного им фрагмента последовательности.
    Итак, оценка статистических испытаний основана на про- верке гипотезы о случайности исследуемой последовательности нулей и единиц. Табл. 10.2 показывает пошаговый процесс, по- зволяющий оценить конкретную двоичную последовательность.
    Оценка результатов тестирования. Процесс исследования статистических свойств генератора ПСЧ состоит из следующих шагов: генерация последовательностей для тестирования; исполнение набора статистических тестов; анализ прохождения статистических тестов; принятие решения о свойствах генератора.
    Таблица 10.2
    Процедура оценки
    Номер шага
    Пошаговый процесс
    Комментарии
    1
    Постановка гипотезы
    Предполагаем, что последовательность является случайной
    2
    Вычисление тестовой статистики последовательности
    Проводим тестирование на битовом уровне
    3
    Вычисление P-value
    P-value
    [0; 1]
    4
    Сравнение P-value с α
    Задаем α, где
    α [0,001; 0,01].
    Если P-value ≥ α – тесты пройдены

    293
    Генерация последовательностей для тестирования. Для за- данного генератора формируется m последовательностей длины n.
    1 1
    2 1
    1 1
    n
    ,
    2 2
    2 2
    1 2
    n
    ,

    m
    n
    m
    m
    m
    2 1
    Длина последовательности n выбирается таким образом, чтобы все тесты могли быть пройдены.
    Исполнение набора статистических тестов. Каждая из m последовательностей проверяется каждым из t тестов набора.
    Результат работы каждого теста вычисление тестовой стати- стики s(obs). Таким образом, после проверки всех последова- тельностей получается mt тестовых статистик, как показано в табл. 10.3.
    Таблица 10.3
    Результаты выполнения набора статистических тестов
    Последовательность
    Тест 1
    Тест 2

    Тест t
    (1)
    obs
    s
    1 1
    obs
    s
    1 2

    obs
    s
    t
    1
    (2)
    obs
    s
    2 1
    obs
    s
    2 2

    obs
    s
    t
    2





    (m)
    obs
    s
    m
    1
    obs
    s
    m
    2

    obs
    s
    m
    t
    Анализ прохождения статистических тестов. Анализ про- хождения статистических тестов начинается с анализа тестовой статистки. Существует три варианта оценки тестовой статистики.
    1.
    Пороговые значения. Если тестовая статистика больше
    (меньше) порогового значения, последовательность счи- тается неслучайной.
    2.
    Фиксированные интервалы. Если тестовая статистика выходит за пределы заданного интервала, последователь- ность считается неслучайной.
    3.
    Вероятностные значения. Для тестовой статистики вы- числяется P-value. Под P-value понимается вероятность того, что совершенный генератор случайных чисел про- извел бы последовательность менее случайную, чем ис- следуемая, для типа неслучайности, проверяемого тес-

    294 том. Для теста выбирается уровень значимости . Если значение P-value больше, либо равно , то последова- тельность считается случайной.
    Поскольку для первых двух способов необходимо заранее рассчитывать пороговые значения и фиксированные интервалы, вычисление P-value представляется наиболее эффективным ва- риантом оценки тестовой статистики.
    Таким образом, вычисляются значения P-value для тестовых статистик s(obs) как показано в табл. 10.4.
    Таблица 10.4
    Результаты вычисления значений P-value для тестовых статистик s(obs)
    Последовательность
    Тест 1
    Тест 2

    Тест t
    (1)
    1 1
    - value
    P
    1 2
    - value
    P

    1
    -
    t
    value
    P
    (2)
    2 1
    - value
    P
    2 2
    - value
    P

    2
    -
    t
    value
    P





    (m)
    m
    value
    P
    1
    -
    m
    value
    P
    2
    -

    m
    t
    value
    P -
    Существует два варианта оценки прохождения набора из m последовательностей i-го теста,
    t
    i
    ,
    1 1.
    Анализ числа появлений значений P-value. Множество значений P-value [0; 1] разбивается на k категорий с ве- роятностями, равными k
    1
    в каждой категории, после че- го подсчитывается
    i
    ,
    k
    i
    ,
    1
    , – число последовательно- стей, значения P-value которых принадлежат i-й катего- рии. Вычисляется статистика
    k
    m
    k
    m
    obs
    k
    i
    i
    2 1
    2
    , которая анализируется при помощи критерия
    2
    с числом степеней свободы, равным k – 1. Одним из преимуществ данного варианта является то, что он позволяет косвен- ным образом определить значение m. Поскольку эмпири-

    295 ческое правило для критерия
    2
    гласит, что значение
    k
    m
    должно быть больше либо равным 5, то m 5k.
    2.
    Анализ значений P-value. Подсчитывается доля последо- вательностей, прошедших данный тест (т.е. доля после- довательностей, для которых P-value ). Значение этой доли должно лежать в интервале
    m
    m
    1 3
    1
    ;
    1 3
    1
    Результаты тестирования набора из m последователь- ностей каждым из t тестов могут быть сведены в таблицу, аналогичную, например, табл. 10.5.
    Таблица 10.5
    Результаты тестирования m последовательностей набором из t статистических тестов
    Последовательность
    Тест 1
    Тест 2

    Тест t
    (1)
    прошла / не прошла прошла / не прошла
    … прошла / не прошла
    (2)
    прошла / не прошла прошла / не прошла
    … прошла / не прошла





    (m)
    прошла / не прошла прошла / не прошла
    … прошла / не прошла
    Результат проверки генератора прошел / не прошел прошел / не прошел
    … прошел / не прошел
    Непрохождение какого-либо теста свидетельствует о стати- стических слабостях в структуре генератора.
    10.3. Повышение эффективности оценочных тестов
    Механизм работы практически всех тестов из вышеупомяну- тых подборок основан на подсчете числа появлений определен- ных шаблонов и сравнения полученных значений с теоретиче- скими. При этом для хранения данных о числе появлений шаб- лонов для последовательности длиной n, представляющей из се- бя наборы, состоящие из k m-разрядных чисел, требуется объем

    296 памяти, равный
    1 2
    log
    2
    k
    n
    km
    бит в случае непересекаю- щихся шаблонов и
    1 2
    log
    2
    n
    km
    в случае пересекающихся.
    Учитывая, что значение n должно быть большим, существенно возрастает объем требуемой памяти. Например, для последова- тельности размером 1 Мбайт анализ наборов, состоящих из пяти полубайтов, потребует памяти размером 500 Кбайт в случае не- пересекающихся наборов и 1,25 Мбайт в случае пересекающих- ся. В идеальном случае, при длине последовательности, стремя- щемся к бесконечности, размер памяти также будет стремиться к бесконечности. Таким образом, возникает задача уменьшения объема памяти, требуемой для реализации теста.
    В настоящее время большинство разработчиков оценочных тестов (в том числе и авторы наиболее популярного на сего- дняшний день Руководства НИСТ США) решает данную про- блему путем введения ограничений на размеры анализируемых шаблонов и длину исследуемой последовательности.
    Уменьшение размеров шаблонов приводит к существенному ослаблению теста, так как, зная логику работы последнего, мож- но внести соответствующие изменения в алгоритм работы гене- ратора ПСЧ или непосредственно в саму последовательность, благодаря чему свойства последней будут неотличимы от свойств истинно случайной последовательности для типа неслу- чайности, проверяемого заданным тестом. Данное утверждение косвенно подтверждается результатами исследований наиболее эффективных из существующих генераторов ПСЧ. Все они с легкостью проходят тесты «Проверка серий пар» и «Проверка серий троек» (размеры шаблонов – два и три бита соответствен- но) и полностью проваливают «Посимвольную проверку» (раз- мер шаблона – восемь бит). И это только для шаблонов, состоя- щих из одного числа. Можно предположить, что увеличение ко- личества чисел в шаблоне сделает статистику прохождения еще более удручающей.

    297
    Уменьшение длины исследуемой последовательности также снижает качество тестирования. Для примера, разработчики на- бора статистических тестов НИСТ США рекомендуют использо- вать для анализа последовательности длиной всего лишь 2 20
    бит, или 128 Кбайт, что для существующих объемов передаваемой информации, исчисляемой мегабайтами, гигабайтами и даже те- рабайтами, является просто недопустимым.
    Один из вариантов решения данной проблемы косвенно пред- ложен в Руководстве НИСТ. Суть его заключается в тестирова- нии не всей последовательности целиком, а подпоследователь- ностей. Однако данный подход не лишен недостатков. Основной из них связан с выбором размера подпоследовательности. При увеличении размера подпоследовательности опять возникает проблема дополнительной памяти. Уменьшение размера подпос- ледовательностей приводит к необходимости оценки корреляции между ними для исключения влияния периодичности.
    Выход из сложившейся ситуации видится в модификации ме- ханизма работы тестов, суть которой заключается в том, чтобы анализировать не число появлений определенных шаблонов, а число отсутствующих шаблонов. В этом случае для хранения информации о шаблоне достаточно будет одного бита, что при- ведет к уменьшению объема памяти до
    km
    2
    для пересекающихся и непересекающихся шаблонов, при этом цель теста не будет изменена, и он продолжит выявлять те же статистические откло- нения, что и оригинальный тест.Таким образом, размер требуе- мой для реализации теста памяти перестает зависеть от длины исследуемой последовательности. Для примера, для реализации тестов НИСТ при рекомендуемой длине в 128 Кбайт объем тре- буемой памяти уменьшается в 20 раз.
    Рассмотрим, как меняется механизм вычисления статистики теста. Для заданной последовательности длиной n, представ- ляющей из себя наборы, состоящие из k m-разрядных чисел, подсчитываем число отсутствующих наборов. Дж. Марсалья по- казал, что число отсутствующих наборов аппроксимируется с нормальным распределением. Найдем среднее и отклонение.

    298
    Для расчета среднего необходимо рассмотреть разложение в ряд Тейлора производящей функции, соответствующей значени- ям k и m. Очевидно, это не очень удобно, поскольку для различ- ных шаблонов придется заново определять производящую функ- цию для каждого типа набора и раскладывать ее в ряд Тейлора.
    Например, для k = 2 расчет осуществляется следующим образом: вычисляется p
    1
    – коэффициент при z
    n
    в разложении производящей функции
    ;
    1 1
    2 2
    z
    p
    z
    вычисляется p
    2
    – коэффициент при z
    n
    в разложении производящей функции
    2 2
    1 1
    1
    z
    p
    p
    z
    p
    z
    p
    вычисляется среднее для числа отсутствующих слов
    2 1
    2 2
    2
    p
    p
    m
    m
    km
    С увеличением k возрастает число производящих функций, а также их сложность. Поэтому для расчета предлагается исполь- зовать подход Дж. Марсалья, который показал, что среднее можно вычислить (при условии, что n > 1000) по формуле:
    2
    μ
    2
    km
    n
    km
    e
    Действительно, для случая n = 2 21
    , k = 2, m = 10 имеем
    μ
    = (2 2·10
    – 2 10
    )·0,135335283236469 +
    + 2 10
    ·0,135599351997986596411≈141909,60;
    33
    ,
    9 0
    9 1
    4 1
    2
    μ
    10 2
    10 2
    n
    e
    Расчет отклонения осуществляется по следующей формуле:
    ,
    ,
    ,
    ,
    cov
    2 1
    2 1
    2 1
    1 2
    2 1
    m
    m
    m
    k
    k
    i
    i
    i
    i
    i
    i
    n
    n
    n
    слове.
    в т
    отсутствуе
    ,
    2
    равная буква,
    если
    ,
    0
    слове;
    в ет присутству
    ,
    2
    равная буква,
    если
    ,
    1
    где
    i
    i
    i
    n

    299
    Примечание. Для вычисления отклонения рекомендуется ис- пользовать специализированные программные продукты
    (MathCad и др.), в которых присутствует возможность вычисле- ния ковариации нескольких переменных.
    В табл. 10.6–10.8 показано, какие тесты из наиболее популяр- ных подборок для оценки статистических свойств могут быть модифицированы. Как можно заметить, улучшить можно больше половины тестов подборки Д. Кнута [18] и системы DIEHARD, а также четвертую часть тестов Руководства НИСТ.
    Таблица 10.6
    Возможность модификации тестов подборки Д. Кнута

    Название теста
    Возможность модификации
    1
    Проверка несцепленных серий
    +
    2
    Проверка интервалов

    3
    Проверка комбинаций
    +
    4
    Тест собирателей купонов
    +
    5
    Проверка перестановок
    +
    6
    Проверка на монотонность

    7
    Проверка корреляции

    Итого
    4 из 7
    Таблица 10.7
    Возможность модификации тестов DIEHARD

    Название теста
    Возможность модификации
    1
    Промежутки между днями рождения

    2
    Проверка пересекающихся перестановок
    +
    3

    5
    Проверка рангов матриц
    +
    6

    10
    Буквенные («обезьяньи тесты»)
    (5 тестов)
    +
    11
    Подсчет числа единиц в потоке байт
    +
    12
    Подсчет числа единиц в определенных байтах
    +
    13
    Тест НОД

    14
    Тест парковки
    +
    15
    Тест минимальных расстояний

    16
    Тест пузырей

    Итого
    12 из 16

    300
    Таблица 10.8
    Возможность модификации тестов Руководства НИСТ

    Название теста
    Возможность модификации
    1
    Частотный тест

    2
    Проверка кумулятивных сумм

    3
    Проверка «дырок» в подпоследовательностях

    4
    Проверка «дырок»

    5
    Проверка рангов матриц
    +
    6
    Спектральный тест

    7
    Проверка непересекающихся шаблонов
    +
    8
    Проверка пересекающихся шаблонов
    +
    9
    Универсальный статистический тест Мау- рера

    10
    Проверка случайных отклонений

    11
    Разновидность проверки случайных отклонений

    12
    Проверка аппроксимированной энтропии

    13
    Проверка серий
    +
    14
    Сжатие при помощи алгоритма
    Лемпела

    Зива

    15
    Линейная сложность

    Итого
    4 из 16
    Эффективность применения данного подхода обусловлена следующими факторами.
    1.
    Размер дополнительной памяти для сбора статистики теста теперь не зависит от длины тестируемой последовательности и определяется только размерами шаблона. Это позволит выделять данную память статически, что ускорит выполнение теста при программной реализации, или прогнозировать объем

    301 памяти, выделяемой динамически.
    2.
    Учитывая, что значение длины последовательности теперь не влияет на объем затрачиваемой памяти, все существующие оценочные тесты можно будет приме- нять не к части последовательности фиксированной длины (ограниченной в существующих системах несколькими мегабайтами), а в случае необходимости ко всему периоду.
    3.
    Механизм работы модифицированных тестов предпо- лагает досрочное завершение процесса исследования в том случае, если исследуемая статистика вышла за границы доверительного интервала, что существенно сокращает время тестирования.
    4.
    Уменьшение объемов требуемой памяти позволит более свободно варьировать параметры тестирования, увеличивая диапазон используемых значений, что сущеественно повысит функциональность тестов и качество тестирования.
    10.4. Комплекс программных средств оценки качества
    генераторов ПСЧ
    Анализ недостатков существующих систем для тестирования генераторов ПСЧ позволяет перечислить свойства, которые должна иметь полнофункциональная система для исследования статистических свойств ПСП.
    1.
    Полнота тестов. Каждый отдельно взятый (даже очень сильный) оценочный тест можно «обмануть», т.е. сфор- мировать заведомо плохую последовательность, не удов- летворяющую совокупности сформулированных требо- ваний, но успешно проходящую рассматриваемый тест.
    Учитывая, что задача определения минимально допус- тимой совокупности тестов вряд ли имеет решение, должны быть реализованы все тесты, рекомендуемые для исследования генераторов, к качеству выходных после- довательностей которых предъявляются наиболее жест- кие требования. При этом система должна содержать как оценочные, так и графические тесты. Ни одна из сущест-

    302 вующих систем не удовлетворяет этому требованию.
    2.
    Оценка периода. Система должна содержать средства вы- явления периодичности в анализируемых последователь- ностях. При этом пользователь должен иметь возмож- ность выбирать, проверять ли ему всю последователь- ность, фрагмент длиной в период и др. В существующих системах отсутствует возможность определения периода.
    Более того, зачастую длина анализируемой последова- тельности жестко задана.
    3.
    Оценка корреляции. В качественных ПСП должна отсут- ствовать корреляция между отдельными выборками.
    Кроме того, в ряде случаев нелинейные преобразования, осуществляемые функцией обратной связи или функцией выхода генератора, состоят из нескольких шагов (раун- дов, уровней и пр.). Система должна содержать средства для анализа изменений, вносимых каждым шагом преоб- разования.
    4.
    Настройка параметров тестирования. Пользователь должен иметь возможность настраивать параметры тес- тирования (например, задавать границы для количест- венных характеристик тестов, длины подпоследователь- ностей и т.д.). В существующих системах большинство параметров, как правило, фиксировано.
    5.
    Интерпретация результатов. Результатом выполнения оценочного теста является численная характеристика. За- частую для того, чтобы трактовать полученное значение, необходимо знать структуру теста. Поэтому система должна представлять результат в виде, понятном даже неподготовленному пользователю. В существующих сис- темах такая возможность отсутствует.
    Структура комплекса. На рис. 10.1 показана структура про- граммного комплекса, отвечающего всем вышеперечисленным требованиям. В его состав входят следующие блоки.
    Блок работы с файлами. Предназначен для считывания по- следовательностей из файлов и передачи их для обработки в тестовый блок.
    Блок тестирования. Предназначен для исследования ста- тистических свойств ПСП. В его состав входят три модуля:

    303
    оценки качества (набор из 7 графических и 16 оценочных тестов), оценки периода и оценки корреляции между фай- лами.
    Блок настроек. Предназначен для определения имен тес- тируемых файлов или директорий, а также параметров тестов (границ для P-value, размеров серий и т.д.) и па- раметров тестирования (размера области тестирования, набора тестов и т.д.).
    Блок отчета. Предназначен для просмотра, записи и пе- чати результатов тестирования.
    Блок управления. Обеспечивает согласованную работу всех блоков комплекса и взаимодействие с пользователем.
    Файл 1
    Файл N
    Модуль оценки корреляции
    Модуль оценки периода
    Блок работы с файлами
    Оценочные тесты
    Графические тесты
    Блок управления
    Блок формирования отчета
    Блок настроек
    Модуль оценки качества
    Блок тестирования
    Рис. 10.1. Структура комплекса программных средств для исследования статистических свойств ПСП
    Контрольные вопросы
    1.
    Чем псевдослучайная последовательность отличается от истинно случайной?
    2.
    Что такое графические статистические тесты?
    3.
    Что такое оценочные статистические тесты?
    4.
    Приведите пример графического статистического теста.

    304 5.
    Приведите пример оценочного статистического теста.
    6.
    Опишите последовательность статистического тестиро- вания генераторов ПСЧ по методике НИСТ.
    7.
    Сформулируйте требования к полнофункциональному комплексу оценки качества генераторов ПСЧ.

    305
    ЧАСТЬ 3. ЭЛЛИПТИЧЕСКАЯ КРИПТОГРАФИЯ
    1   ...   12   13   14   15   16   17   18   19   20


    написать администратору сайта