Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОЗІ / Лекц_ї / Лекц_я 6.doc
Скачиваний:
45
Добавлен:
05.06.2015
Размер:
85.5 Кб
Скачать

8

Лекція 6. Генератори випадкових чисел

Випадкові числа відіграють важливу роль при використанні криптографії в різних мережних додатках, що ставляться до безпеки. Зробимо короткий огляд вимог, пропонованих до випадкових чисел у додатках мережної безпеки, а потім розглянемо кілька способів створення випадкових чисел.

Вимоги до випадкових чисел

  1. Більшість алгоритмів мережної безпеки, заснованих на криптографії, використовують випадкові числа.

Двома основними вимогами до послідовності випадкових чисел є випадковість і непередбачуваність.

Випадковість

Звичайно при створенні послідовності псевдовипадкових чисел передбачається, що дана послідовність чисел повинна бути випадкової в деякому певному статистичному змісті. Наступні два критерії використовуються для доказу того, що послідовність чисел є випадковою:

  1. Однорідний розподіл: розподіл чисел у послідовності повинне бути однорідним; це означає, що частота появи кожного числа повинна бути приблизно однаковою.

  2. Незалежність: жодне значення в послідовності не повинне залежати від інших.

Хоча існують тести, що показують, що послідовність чисел відповідає деякому розподілу, такому як однорідний розподіл, тесту для "доказу" незалежності немає. Проте, можна підібрати набір тестів для доказу того, що послідовність є залежною. Загальна стратегія припускає застосування набору таких тестів доти, поки не буде впевненості, що незалежність існує.

Непередбачуваність

У додатках, таких як взаємна автентифікація й генерація ключа сесії, немає твердої вимоги, щоб послідовність чисел була статистично випадкової, але члени послідовності повинні бути непередбачені. При "правильній" випадковій послідовності кожне число статистично не залежить від інших чисел і, отже, непередбачено. Однак правильні випадкові числа на практиці використовуються досить рідко, частіше послідовність чисел, що повинна бути випадкової, створюється деяким алгоритмом. У цьому випадку необхідно, щоб супротивник не міг угадати наступні елементи послідовності, ґрунтуючись на знанні попередніх елементів і використовуваного алгоритму.

Джерела випадкових чисел

Джерела дійсно випадкових чисел знайти важко. Фізичні генератори шумів, такі як детектори подій іонізуючої радіації, газові розрядні трубки й конденсатор, що тече, можуть бути такими джерелами. Однак ці пристрої в додатках мережної безпеки застосовуються обмежено. Проблеми також викликають грубі атаки на такі пристрої. Альтернативним рішенням є створення набору з великої кількості випадкових чисел і опублікування його в деякій книзі. Проте, і такі набори забезпечують дуже обмежене джерело чисел у порівнянні з тією кількістю, що потрібна додаткам мережної безпеки. Більше того, хоча набори із цих книг дійсно забезпечує статистичну випадковість, вони передбачувані, тому що супротивник може одержати їхню копію.

Таким чином, додатки, що шифрують, використовують для створення випадкових чисел спеціальні алгоритми. Ці алгоритми детерміновані й, отже, створюють послідовність чисел, що не є статистично випадковою. Проте, якщо алгоритм гарний, отримана послідовність буде проходити багато тестів на випадковість. Такі числа часто називають псевдовипадковими числами.

Розглянемо кілька алгоритмів генерації випадкових чисел.

Соседние файлы в папке Лекц_ї