- •Ідентифікація, аутентифікація і авторизація користувачів
- •Парольна аутентифікація
- •1 Якщо у процесі вводу і обробки паролю виник збій, то невідомо який пароль викоритовувати далі.
- •Основні заходи безпеки при роботі з паролями
- •Авторизація
- •Реєстрація подій в системі
- •Криптографічний захист інформації
- •Основні поняття та визначення
- •Принципи побудови практичних симетричних шифрів
- •Алгоритм гост 28147-89
- •Асиметричні крипто системи
- •Хеш функції
- •Отримання великих простих чисел
- •Криптографічні комп'ютерні протоколи
- •Деякі різновиди протоколів
- •Протоколи аутентифікації
- •Протокол аутентифікації Гіллоу-Куіквотера
- •Протоколи аутентифікації повідомлень
1 Якщо у процесі вводу і обробки паролю виник збій, то невідомо який пароль викоритовувати далі.
Якщо пароль вибирається з послідовності псевдо випадкових чисел, то зловмисник який має законний доступ до системи знаючи свої паролі може відновити параметри генератора псевдо випадкових чисел, після чого згенерувати всі паролі всіх користувачів.
Паролі однократного використання можуть застосовуватись для підтвердження справжності завершення сеансу зв'язку, оскільки зловмисник під'єднавшись до лінії зв'язку може послати користувачеві несправжне повідомлення про завершення сеансу зв'язку, продовжити роботу з системою, змінити пароль і таким чином ізолювати законного користувача від системи. Тому при дійсному завершення сеансу система відсилає користувачеві запит на пароль, і якщо система вимкнулась без паролю то необхідно вжити заходів.
Основні заходи безпеки при роботі з паролями
Не слід використовувати імена, дати народження та іншу особисту інформацію, символи що повторюються...
Слід максималтно різноманітноти символи алфавіту які використовуються
Паролі ніколи не повинні зберігатися в пам'яті системи в не зашифрованому вигляді. Для шифрування слід використовувати необоротні шифри, для яких не існує алгорит повернення до оригіналу.
Паролі не слід відображати на дисплеї чи на пинтері
Паролі необхідно достатньо часто змінювати. При цьому старі та новий паролі потрібно задавати так щоб старий деякий час діяв після ового, це дозволяє проводити автоматичну зміну паролю на деякий час.
Система ніколи не повинна генеревути новий пароль в кінці сеансу зв'язку, бо зловмисник який під'єднався до лінії зв'язу зможе його використати, ввійти в систему та ізолювати від неї законного користувача.
Авторизація
Після встановлення справжності користувача, перевіряється його повноваження по використанню ресурсів системи. Опис повноважень в системі описується за допомогою матриці прав доступу (P). Кожний елемент якої Pij встановлює права доступу i го суб'єкта до j го об'єкта. Зазвичай елементи матриці являють собою бітові вектори, які встановлюють права на читання запис модифікацію данних і тому подібне. Крім того можуть міститися вказівники на процедури, які виконуються при запиті на доступ. Наприклад: рішення на надання права доступу до ресурсу може базуватися на:
1 історія доступу до інших ресурсів
2 на динамічному стані системи
3 на поточному стані ресурсу
4 на рівні повноважень
Реєстрація подій в системі
Реєстрація подій що відбуваються в системі є еффективним засобом збільшення безпеки. Вона дозволяє прослідкувати хід подій і перекрити виток інформації, в реєстраційному журналі повинна міститися інформація про всі зміни в матриці прав доступу, відомості по всих доступах на дозвіл, про всі відмови, всі випадки коли доступ було дозволено а ресурс не використаний, всі випадки зміни системного часу та параметрів системи.
Крім прямого призначення реєстрація користна також для налаштування системи, повернення системи до почоткового стану після збою, допомоги користувачам які роблять помилки, та психологічного впливу на потенційних порушників.
Криптографічний захист інформації
Основні поняття та визначення
Криптологія (наука про таємниці) - поділяється на криптографію та криптоаналіз.
Криптографія - наука про способи перетворення данних, які дозволяють приховати їх смисл від супротивника. Спосіб перетворення данних називаається шифр.
Розвиток криптографії поділяється на 2 періоди: наївна, наукова. В 1948 році Клод шенон опублікував свою працю, де розвинув свою теорію шифрування данних. Основні проблеми:
1 проблема конфіденційності (позбавити супротивника можливості здобути інформацію з повідомлення).
2 проблема цілісності (позбавити противника можливості змінити смисл повідомлення, або внести до нього дизінформацію)
Відправник генерує відкритий текст початкового повідослення (plaintext) який повинен бути переданий законному отримувачеві відкритим каналом зв'язку. З цією метою відкритий текс шифрується (піддіеться перетворенню Ek) в результаті чого отримується зашифрований текст (ciphertext) с=Ек(р). Законний отримувач застосовує обернене перетворення Dk=Ek^-1 і таким чином отримує plaintext.
Перетворення Ek вибирається з деякого сімества однотипних перетворень, за допомогою параметра k який називається ключем. k€K який називається простором ключів. Таким чином криптосистема це є однопараметрична система однооборотних перетворень з простору plaintext-тів в простір ciphertext-тів.
Перетворення Ek по
відношенню до Dk може бути симетричним
або асиметричним. Всі відомі крипто
системи поділяються на симетричні і
асиметричні.
Узагальнена
схема симетричної крипто системи
виглядає так:
В цій системі для шифрування і дешифрування використовується один і тойже ключ який необхідно передавати (недоступним для супротиника) каналом зв'язку.
Узагальнена
схема асиметричної системи виглядає
так
В цьому випадку для шифрування і дешифрування використовуються різні ключі, один з них є відкритим. З його допомогою повідомлення можна лише зашифрувати. Інший є сикретним з його допомогою можна лише розшифрувати. Ключі пов'язані між собою так званою необоротною функцією, так щоб знаючи сикретний ключ можна легко обчислити відкритий ключ. Але знаючи відкритий ключ дуже важко (в обчислювальному плані) обчислити сикретний ключ. Обидва ключі генеруються отримувачем сикретний ключ залишаеться у місті генерації, відкритий ключ передається відкритими каналами зв'язку.
Криптостійкість крипто алгоритму оцінюється часом витраченим на розкриття шифру шляхом послідовного перебору всіх можливих ключів. Одиницею стійкості алгоритму є мак звана MIPS (мільйон операцій в секунду) - час роботи аналітичної системи яка виконує один мільйон операцій в секунду.
Єффнктивність криптоалгоритму - оцінюється відношенням часових затрат на дешифрування до часових затрат на шифрування.
З точки зору криптостійкості та єфективності асиметрична система значно поступається симетричній тому практично для шифрування повідомлень виклристовується симетричні системи, а асиметричні системи використовуються для розповсюдження ключів симетричних систем відкритими каналами зв'язку.
Наука про розкриття крипто шифрів називаеться криптоаналізом. Згідно з фундаментальним правилом криптоаналізу (правило керхофа) криптостійкість системи повинна позначатися лише стійкістб ключа. Тобто криптограф повинен вважати, що алгоритм шифруваня повністю відомий криптоаналітику системи. Це пояснюється тим що криптосистема являє собою складну та дорогу сукупність апаратних та програмних засобів для зміни якої потрібні великі затрати часу і засобів в той час як ключ можна легко змінити. Відомо багато методів криптоаналізу зокрема, метод вгадування, повного перебору ключів, статистичний метод базується на відомих статистичних алгоритмів мови plaintext-у. Знаючи алгоритм шифрувння та маючи фрагменти відкритого тексту можна скласти систему рівнянь для визначення невідомих фрагментів тексту. Основними типами криптоатак:
- атака при наявності шифр тексту.
- Атака при наявності шифр тексту та відкритого тексту.
- Атака при можливості вибору тексту і отриманні відповідного шифр тексту.
- атака при отриманні шифр тексту
Основними вимогами до шифр тексту є:
достатня криптостійкість
Простота процедур шифрування та дешифрування
Незначна надлишковість шифр тексту в порівняні з plaintext ом
Не чутливіть шифру до невеликих помилок
Мала вартість шифру
Симетричні криптосистеми
Види симетричих шифрів
І відкритий текст і шифр текст утворюється з символів деахяких алфавітів наприклад:
P={p0, p1...pm-1}
Об'єднуючи символи алфавіту попарно можна отримати алфавіт C^2 алфавіт P^3 ітак далі аж до P^n які складаються з n граф. Завжди можна перйти від символів до їх індексів, тобто перейти до алфавіту Z^n який складається з цілих чисел. Алфавіт Zm^n містить як всі можливі plaintext-и так і всі можливі тексти довжиною n. Будь яке симетричне криптоперетворення є перетворенням одного числа (вектора) на інше число (вектор), тобто являє собою функціональне перетворення.
Всі існуючі симетричні шифри належать до одного з двох видів.
Шифри підстановки (символи відкритого тексту за деяким правилом замінюються символами тогож спмого чи іншого алфавіту)
Штфр перестановки (символи відкритого тесту перставляються за деяким рпавилом). Іноді окремим символом шифру вважають шифр вгамування при якому шифр текст отримують шляхом посимвольного додавання plaintext і гамми тобто послідовності символів тогож алфавіту. Однак шифр вгамування фактично є оізновидом шифру підстанови.
Абсолютно стійкий шифр
У 1898 році клод шенон математично строго довів існування та єдиність абсолютно стійкого шифру (шифру який може бути розкритий лише шляхом повного перебору всіх можливих ключів) ним виявився шифр гамування з алгортмом p(+)gamma. Шифр є абсолютно стійким якщо:
Гамма є абсолютно випадковою послідовністю
Довжина гамми дорівнює довжині тексту
Гамма використовується один раз
Практично цей шифр було запропоновано в 1926 році співробітником цру Вернама.
Методи генерації випадкових значень
Шифр Верднама практичо використовується в сучасних криптосистемах, як складова частина шифру, але в якості гамми використовується не випадкова послідовність а так звана псевдо випадкова послідовність, яка може бути відтворена повторно. Генератори псевд випадкових чисел ПВЧ є одним з най важливіших інструментів сучасної криптографії.
До генераторів пред'являються наступні висоги:
- сгенерована послідовність за своїми статистичними властивостями не повинна відрізнятися від випадуової, тобто в достатньо довгій гаммі всі можливі комбінації з 1 2 3 4... символів повинні зустрічатися однаково часто.
- період гамми повинен бути достатньо великим, щоб можна було шифрувати достатньо довгі тексти.
- алгоритм генерації повинен бути простим і легко реалізуватися.
В наш час най більш широко використовується так звані ліннійні конгруентні генератори випадкових чисел в яких чергове випадкове число обчислюється на основі попереднього за формулою.
Ri+1 = (a*Ri+b) mod m
Початкове число R0 називаеться породжуваним. Для отримання хорошої якості випадкової послідовності, числа a b m повинні бути узгоджені між собою. Зокрема рекомендується щоб a b були не парні, b m були взаємно простими, m=2^n де n - длвжина слова в системі.
Лінійні конгруентні генератори прості і легко реалізується, але період згенерованих чисел та їх статистичні характеристики є недостатніми для серйозних шифрів.
Більш якісні псевдовипадкові послідовності можуть бути генеровані за допомогою наступних рекурентних послідовностей:
Ri+k = summod( sum(j=0;k-1) hj*Ri+j)
h e {0,1}
h - зворотній коефіціент
h(x)= x^3 + x^2 + 1
h(x)=hm*x^m + hm-1*x^m-1 + ...h0*x0
Ключем для запуску генератора випадкових чисел є 1010
I=0, k=4
Най краші псевдовипадкові послідовності виникають у тому випадку коли багаточлен є незмінним, якщо цей багаточлен має ступінь n, то генератор видає псевдо випадкову послідовність овжиною 2^n-1.
Данні генератори називають генераторами на регістрах зсуву, оскільки на регістрах зсуву вони легко реалізуються аппаратно.
Ще кращі псевдо випадкові послідовності можна згенерувати, якщо використовувати нелінійні зв'язки.
