Lab_5_AOK_1
.pdf
порожніх урн позначається M0, а ймовірність того, що t з N урн залишаться порожніми в теорії ймовірності задається рівнянням
|
|
|
|
|
|
N |
|
N |
t |
|
|
|
|
N t |
|
|
|
t |
v |
|
R |
|
||||
|
|
|
|
|
|
|
|
v |
|
|
|
|
|
|
|
|||||||||||
P(M |
|
t) |
|
|
|
( |
1) |
1 |
|
|
|
|
(11) |
|||||||||||||
0 |
|
t |
|
|
|
|
|
v |
|
N |
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
v |
0 |
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
Матсподівання |
0 |
і дисперсія |
2 |
кількості порожніх урн задаються так: |
||||||||||||||||||||||
|
|
|
|
|
|
|
0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
N 1 |
1 |
|
|
B |
|
|
|
|
|
|
|
(12) |
|||||
|
|
|
|
|
0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
N |
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
1 |
R |
|
|
|
1 |
R |
|
|
|
|
|
|
|
|
|
2 |
|
|
|||||
2 |
N 1 |
1 |
N 1 |
|
|
|
|
N N |
1 (1 |
|
|
) R |
(13) |
|||||||||||||
0 |
|
|
|
|
|
|
|
|
|
|||||||||||||||||
|
|
|
N |
|
|
|
|
|
|
|
N |
|
|
|
|
|
|
|
|
|
|
|
N |
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
При R , N |
і R / N |
0 розподіл випадкової величини |
|
|||||||||||||||||||||||
|
|
|
|
|
|
w |
|
M 0 |
|
N |
|
R |
|
|
|
|
|
|
|
(14) |
||||||
зводиться до розподілу Пуассона з математичним сподіванням |
|
|||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
R |
|
|
|
|
|
|
|
R2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(15) |
||
|
|
|
|
|
|
Ne |
|
N |
|
N R |
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
2N |
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
Оскільки N M 0 - це кількість зайнятих урн, то значення w тестової статистики є кількістю повторень патернів у вибірці. w – це кількість разів, коли з'явилося повторення, а не кількість повторень патернів. На відміну від тесту на рівноймовірність, де розмір вибірки R зростає лінійно від N,
достатньо, щоб R зростало лінійно від 
N , що дозволяє перевіряти блоки вдвічі більшої довжини. Це двохсторонній тест, оскільки при випадковому розміщенні не очікується, що кожна урна повинна бути зайнята до того, як з'являться повторення.
Даний тест вимагає підрахунку кількості повторень патернів, а не частот появи кожного патерну, тому масив даних, що зберігаються, складається з
R 2r l -бітових блоків, де r |
l |
3 . При використанні відповідних алгоритмів |
||
2 |
||||
|
|
|
||
сортування загальна обчислювальна складність має |
порядок r 2r при |
|||
необхідній ємності масиву зберігання розміром всього |
2r l -бітових блоків. |
|||
Це можливо навіть при r 32(l |
|
64) |
|
|
1.3.7.Порівняння тестів l-грам
Увипадку застосування послідовного тесту всі очікувані частоти рівні і повинні бути не менше 5, звідки випливає, що мінімальна довжина тестового
масиву має бути не менше 5 l 2l біт. У разі застосування універсального
тесту потрібна довжина гамми повинна складати l (10 |
2l |
1000 |
2l ) біт. У |
|
|
|
l |
3 біт, |
|
|
|
|
|
|
тесті повторень довжина послідовності повинна бути l |
2 2 |
тобто його |
||
слід застосовувати при великих розмірах l-грам. У таблиці 2 наводяться результати порівняння мінімальних довжин шифропослідовностей, потрібних для застосування описаних тестів.
Таблиця 2. Мінімальна довжина в бітах для тестування потокових шифрів
Довжина l-грами |
Послідовний тест |
Універсальний тест |
Тест повторень |
||||||||
14 |
1,15 10 |
6 |
2,32 |
10 |
8 |
14336 |
|
|
|||
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
16 |
5,24 10 |
6 |
1,06 10 |
9 |
32768 |
|
|
||||
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|||
20 |
1,05 10 |
8 |
|
|
10 |
1,64 10 |
5 |
||||
|
|
|
2,12 10 |
|
|
|
|||||
24 |
|
|
8 |
4,07 |
|
11 |
7,68 10 |
5 |
|||
|
2,01 10 |
|
10 |
|
|
||||||
28 |
|
|
10 |
7,59 |
|
12 |
3,67 10 |
6 |
|||
|
3,76 10 |
|
10 |
|
|
||||||
32 |
|
|
11 |
|
14 |
1,68 10 |
7 |
||||
|
6,87 10 |
|
1,39 10 |
|
|
|
|
||||
2.ЗАВДАННЯ
2.1.Домашня підготовка до роботи
1)Вивчити основні способи реалізації генераторів псевдовипадкових послідовностей на основі регістрів зсуву з лінійним зворотним зв’язком та методи обчислення випадковості отриманої послідовності.
2) Скласти блок-схеми алгоритмів та підпрограми для реалізації генераторів псевдовипадкових послідовностей. Варіанти функцій зворотного зв’язку та тип регістру беруться за вказівкою викладача з таблиці 3.
3) Скласти блок-схеми алгоритмів, підпрограми та програму для реалізації обчислення випадковості гами. Дані для роботи беруться з таблиці 3 за вказівкою викладача.
|
|
|
|
Таблиця 3. |
|
|
|
|
|
№ |
Функція |
|
Тип регістру |
Тести |
з/п |
зворотного |
|
|
|
|
звязку |
|
|
|
|
|
|
|
|
1 |
(8, 4, 3, 2, 0) |
Фібоначчі |
Частотний і послідовний |
|
|
|
|
|
|
2 |
(12, 6, 4, 1, 0) |
Фібоначчі |
Частотний і тест серій |
|
|
|
|
|
|
3 |
13, 4, 3, 1, |
0 |
Фібоначчі |
Частотний і автокореляційний |
4 |
14, 5, 3, 1, |
0 |
Фібоначчі |
Частотний і універсальний |
5 |
16, 5, 3, 2, 0 |
Галуа |
Частотний і тест повторень |
|
6 |
18, 5, 2, 1, |
0 |
Фібоначчі |
Послідовний і тест серій |
7 |
19, 5, 2, 1, |
0 |
Галуа |
Послідовний і універсальний |
|
|
|
|
|
8 |
24, 4, 3, 1, |
0 |
Галуа |
Послідовний і тест повторень |
|
|
|
|
|
9 |
36, 6, 5, 4, 2, |
1, 0 |
Галуа |
Тест серій і автокореляційний |
|
|
|
|
|
10 |
37, 6, 4, 1, |
0 |
Фібоначчі |
Тест серій і універсальний |
11 |
37, 6, 4, 1, |
0 |
Фібоначчі |
Тест серій і тест повторень |
12 |
37, 5, 4, 3, 2, |
1, 0 |
Галуа |
Автокореляційний і універсальний |
13 |
38, 6, 5, 1, |
0 |
Фібоначчі |
Автокореляційний і тест повторень |
14 |
40, 5, 4, 3, 0 |
Галуа |
Універсальний і тест повторень |
|
|
|
|
|
|
15 |
42, 5, 4, 3, 2, 1, 0 |
Фібоначчі |
Частотний і послідовний |
|
|
|
|
|
|
16 |
43, 6, 4, 3, |
0 |
Галуа |
Частотний і тест серій |
|
|
|
|
|
17 |
44, 6, 5, 2, |
0 |
Галуа |
Частотний і автокореляційний |
|
|
|
|
|
18 |
45, 4, 3, 1, |
0 |
Галуа |
Частотний і універсальний |
19 |
46, 8, 7, 6, |
0 |
Фібоначчі |
Частотний і тест повторень |
20 |
46, 8, 5, 3, 2, |
1, 0 |
Галуа |
Послідовний і тест серій |
21 |
48, 9, 7, 4, |
0 |
Галуа |
Послідовний і універсальний |
22 |
48, 7, 5, 4, 2, |
1, 0 |
Фібоначчі |
Послідовний і тест повторень |
|
|
|
|
|
23 |
49, 6, 5, 4, |
0 |
Галуа |
Тест серій і універсальний |
|
|
|
|
|
24 |
50, 4, 3, 20 |
Фібоначчі |
Тест серій і тест повторень |
|
2.2. Робота в лабораторії
1)Ввести в комп'ютер програми згідно з отриманим завданням.
2)Відлагодити програми. При необхідності скоригувати блок-схеми алгоритмів та програми у відповідності з виявленими логічними та
синтаксичними помилками.
3)Остаточні версії блок-схем, програм та отримані результати занести у звіт з лабораторної роботи.
4)Здати звіт з лабораторної роботи.
3.ЗМІСТ ЗВІТУ
1)Номер і назва лабораторної роботи.
2)Повний текст завдання.
3)Остаточні версії блок-схем алгоритмів.
4)Список ідентифікаторів констант, змінних, процедур і функцій,
використаних у блок-схемах алгоритмів і програм, та їх пояснення.
5)Остаточні версії програм.
6)Результати роботи програм.
4.КОНТРОЛЬНІ ЗАПИТАННЯ
1.Що таке регістр зсуву?
2.Складові елементи регістру зсуву.
3.Намалюйте схему регістру Фібоначчі?
4.Намалюйте схему регістру Галуа?
5.Як проводиться частотний тест?
6.Як проводиться послідовний тест?
7.Як проводиться тест серії?
8.Як проводиться автокореляційний тест?
9.Як проводиться універсальний тест?
СПИСОК ЛІТЕРАТУРИ
1.R.E. Blahut. Theory and Practice of Error Control Codes. Addison-Wesley, 1983
2.A. Klapper and M. Goresky. Feedback Shift Registers, 2-Adic Span, and Combiners with Memory, Journal of Cryptology (1997) 10: 111-147.
3.R. Lidl and H. Niederreiter, "Finite Fields," in Encyclopedia of Mathematics and Its Applications, Vol. 20, Reading, MA: Addison-Wesley, 1983..
4. R. Lidl and H. Niederreiter, Introduction to Finite Fields and Their Applications, London, Cambridge University Press, 1986.
5.Б. Шнайер. Прикладная криптография. Протоколы, алгоритмы и исходные тексты на языке С, 2-ое издание.
6.Дискретная математика и криптология. Курс лекций/ Под общ. Ред. Н.Д. Подуфалова – М.:ДИАЛОГ-МИФИ, 2003 – 400 с.
Навчальне видання
Генератори псевдовипадкових послідовностей на основі регістрів зсуву з лінійним зворотним зв’язком: Методичні вказівки до лабораторної роботи №5 з дисципліни “Алгоритмічні основи криптології” для студентів базового напряму 6.170101 “Безпека інформаційних і комунікаційних систем”.
Укладачі: А.Е.Лагун, к.т.н., доцент Ю.М.Костів, асистент
