Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Simon / диплом.doc
Скачиваний:
93
Добавлен:
16.04.2013
Размер:
9.51 Mб
Скачать
    1. Результаты тестирования

      1. Результаты проведения тестов

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

Табл. 3.14 Результаты тестирования двух модификаций алгоритма маскирования с помощью тестов из пакета тестов NIST.

Название теста

Параметры

тестирования

Результаты

Алгоритм маскирования (операция Xor)

Алгоритм маскирования (операция умножение)

1

Частотный тест

n = 1280000 бит

Ssum = 1286;

Sobs = 0.4032;

P-значение = 0.6868;

Т.к. P-значение ≥ 0.01, принимаем последовательность случайной.

Ssum = -1335;

Sobs = 4.187;

P-значение = 2.8261*10 -5;

Т.к. P-значение <0.01, принимаем последовательность не является случайной.

2

Тест на самую длинную серию единиц в блоке.

n =6272 бита

М = 128 – длина блока;

К = 5 – число степеней свободы;

N = 49 – число блоков;

= 7; = 14;

= 6; = 0;

= 11; = 3;

= 20,6046;

P-значение = 9,6188*10 -4;

Т.к. P-значение<0.01, последовательность не является случайной.

= 4; = 10;

= 10; = 0;

= 5; = 10;

= 13,4906;

P-значение = 0,0192;

Т.к. P-значение 0.01, считаем последовательность случайной.

3

Тест ранга двоичных матриц

n = 99328 бит

М = 32 – число столбцов в матрице;

Q = 32 – число строк в матрице;

N = 97 – число матриц;

FM = 97,

FM-1 = 0,

NFMFM-1= 0,

= 238.8762;

P-значение = 1,3473*10 -52;

Т.к. P-значение<0.01, последовательность не является случайной.

FM = 30,

FM-1 = 51,

NFMFM-1= 16

= 238.8762;

P-значение = 1,3473*10 -52;

Т.к. P-значение<0.01, последовательность не является случайной.

4

Тест с дискретным преобразованием Фурье (Спектральный Тест)

n = 12800 бит

N1 = 6054,

N0 = 6080,

d = -1.4912,

P-значение = 0.1359.

Т.к. P-значение ≥ 0.01, считаем последовательность случайной.

N1 = 6076

N0 = 6080

d = -0.2294

P-значение = 0.8185

Т.к. P-значение ≥ 0.01, считаем последовательность случайной.

5

Универсальный статистический тест Маурэра

n = 470016 бит

L = 6

Q = 640

K = 77696

c = 0.5689,

σ = 0.0035,

sum = 405330,

fn = 5.2169,

Ожидаемое_Значение =5.2177052,

varianse(L ) = 2.954,

P-значение = 0.8234,

Т.к. P-значение≥ 0.01, считаем последовательность случайной.

c = 0.5689,

σ= 0.0035,

sum = 405750,

fn = 5.2223,

Ожидаемое_Значение =5.2177052,

varianse(L )= 2.954,

P-значение =0.1949,

Т.к. P-значение≥ 0.01, считаем последовательность случайной.

6

Тест линейной сложности

n = 1 000 000 бит

M = 1000 – длина одного блока в битах;

K = 6 – число степеней свободы.

v0 = 13; v1 = 23;

v2 = 120; v3 = 511;

v4 = 251; v5 = 64;

v6 = 18;

.

Р-значение = 0.723.

Т.к. P-значение≥ 0.01, считаем последовательность случайной.

v0 = 9; v1 = 29;

v2 = 124; v3 = 504;

v4 = 272; v5 = 47;

v6 = 15;

.

Р-значение =0.2515.

Т.к. P-значение≥ 0.01, считаем последовательность случайной.

Напомним, что Р-значениеесть вероятность того, что совершенный генератор случайных чисел произвел бы последовательность менее случайную, чем исследуемая, для типа неслучайности, проверяемого тестом. ЕслиР-значениедля теста равно 1, то последовательность абсолютно случайна.Р-значение, равное 0, указывает, что последовательность абсолютно неслучайна.

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

Произведем оценку частоты появления битов 0 и 1 на одинаковых позициях от чисел, полученных умножением чисел из диапазона [0…232].

Рисунок 3.6. Частота появления битов 1 в 64-ех разрядном числе, полученном операцией умножение 32-ух разрядных чисел, на определенных позициях.

Рисунок 3.7. Частота появления битов 0 в 64-ех разрядном числе, полученном операцией умножение 32-ух разрядных чисел, на определенных позициях.

Таким образом можно предположить что на результаты тестов, предложенных Национальным институтом стандартов и технологий (NIST) мог повлиять тот факт, что при реализации алгоритма маскирования (операция умножение), использовавшаяся операции ∦.∦N перемешивания битов 2N-битного слова с получением в результате N-битного слова реализовывалась по следующей схеме: из 2N-битного слова выделяется блок из N бит (младшая часть блока 2N), но как показала оценка частоты появления битов 0 и 1 на одинаковых позициях от числа, полученных умножением чисел из диапазона [0…232], данная реализация операции ∦.∦N плохо осуществляет перемешивание. Выходом из сложившийся ситуации может быть реализация операции ∦.∦N следующим образом: из 2N-битного слова выделяется блок из N бит, [16…48] разряд, которые побитно перемножаются по модулю два с оставшимися N-битами исходного 2N-битного слова.

Табл. 3.15 Результаты тестирования модифицированного алгоритма маскирования (операция умножение) с помощью тестов из пакета тестов NIST.

Название теста

Параметры

тестирования

Результаты

Умножение(модифицированное)

1

Частотный тест

n = 1280000 бит

Ssum = -550;

Sobs = 1.7393;

P-значение = 0.0820;

Т.к. P-значение ≥ 0.01, принимаем последовательность случайной.

2

Тест на самую длинную серию единиц в блоке.

n =6272 бита

М = 128 – длина блока;

К = 5 – число степеней свободы;

N = 49 – число блоков;

= 6; = 13;

= 8; = 0;

= 5; = 3;

= 11,2925;

P-значение =0.0459;

Т.к. P-значение ≥ 0.01, принимаем последовательность случайной.

3

Тест ранга двоичных матриц

n = 99328 бит

М = 32 – число столбцов в матрице;

Q = 32 – число строк в матрице;

N = 97 – число матриц;

FM = 97,

FM-1 = 0,

NFMFM-1= 0,

= 238.8726;

P-значение = 1,3473*10 -52;

Т.к. P-значение<0.01, последовательность не является случайной.

4

Тест с дискретным преобразованием Фурье (Спектральный Тест)

n = 12800 бит

N1 = 6055,

N0 = 6080,

d = -1.4338,

P-значение = 0.1516.

Т.к. P-значение ≥ 0.01, считаем последовательность случайной.

5

Универсальный статистический тест Маурэра

n = 470016 бит

L = 6

Q = 640

K = 77696

c = 0.5689,

σ = 0.0035,

sum = 405630,

fn = 5.2208,

Ожидаемое_Значение =5.2177052,

varianse(L ) = 2.954,

P-значение = 0.382,

Т.к. P-значение≥ 0.01, считаем последовательность случайной.

6

Тест линейной сложности

n = 1 000 000 бит

M = 1000 – длина одного блока в битах;

K = 6 – число степеней свободы.

v0 = 6; v1 = 25;

v2 = 116; v3 = 508;

v4 = 260; v5 = 60;

v6 = 25;

.

Р-значение = 0.5099.

Т.к. P-значение≥ 0.01, считаем последовательность случайной.

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

Соседние файлы в папке Simon