- •Розрахунково-графічна робота
- •«Порівняльний аналіз методів аутентифікації: одноразові паролі та багатофакторний методи»
- •1. Огляд аутентифікації
- •1.1. Історія
- •1.2. Механізм аутентифікації
- •1.3. Елементи системи аутентифікації
- •1.4. Фактори аутентифікації
- •1.5. Види аутентифікації
- •1.6. Протоколи аутентифікації
- •2. Метод одноразових паролів
- •2.1. Технологія One-Time Password
- •2.2. Одноразовий пароль: ввів і забув
- •2.3. Реалізація otp
- •2.4. Уразливості технологій отр
- •2.5. Якість реалізації
- •3. Метод багатофакторної аутентифікації
- •3.1. Механізм генерації кодів
- •3.2. Механізм багатофакторної аутентифікації
- •3.3. Біометричні методи
- •Статистичні
- •2. Динамічні
- •Висновок
- •Список використаних джерел
2.5. Якість реалізації
Надійність будь-якої системи безпеки значною мірою залежить від якості її реалізації. Тобто у практичних рішень є свої недоліки, які можуть бути використані зловмисниками в своїх цілях. Причому ці "дірки" часто не мають прямого відношення до реалізованої технології. Повною мірою це правило можна застосувати і до систем аутентифікації на базі одноразових паролів. Як вже говорилося вище, в їх основі лежить використання криптографічних алгоритмів. Це накладає певні зобов'язання на розробників таких продуктів. Адже неякісне виконання будь-якого алгоритму або, наприклад, генератора випадкових чисел, може поставити під загрозу безпеку інформації.
Генератори одноразових паролів можуть бути реалізовані двома способами: програмним і апаратним. Перший з них, природно, менш надійний. Справа в тому, що клієнтська утиліта повинна зберігати в собі секретний ключ користувача. Зробити це більш-менш безпечно можна тільки за допомогою шифрування самого ключа на основі персонального пароля. При цьому необхідно враховувати, що клієнтська утиліта повинна бути встановлена на комп'ютері (КПК, смартфон і т.п.), з якого в даний момент людина здійснює сесію. Таким чином, виходить, що аутентифікація співробітника залежить від одного пароля. Тим часом існує безліч способів дізнатися або підібрати його. І це далеко не єдина вразливість програмного генератора одноразових паролів.
Незрівнянно більшою надійністю має широкий спектр пристроїв для апаратної реалізації OTP-технологій. Наприклад, є пристрої, з вигляду нагадують калькулятор (на малюнку справа): при введенні в них набору цифр, надісланого сервером, на основі ушито секретного ключа вони генерують одноразовий пароль (реалізація методу "Запит-відповідь"). Головна вразливість подібних пристроїв полягає в можливості його втрати або злодійства. Якщо ваш "калькулятор" потрапить до рук зловмисникові, то останній зможе отримати бажаний доступ до віддаленої системи. Убезпечити систему від подібних дій можна тільки при умови використання надійного захисту пам'яті пристрою з секретним ключем.
Саме такий підхід реалізований у смарт-картах і USB-токен. Для доступу до їх пам'яті користувач повинен ввести свій PIN-код. Причому дані пристрої захищені від його підбору: при триразовому введенні неправильного значення вони блокуються. Надійне зберігання ключової інформації, апаратна генерація ключових пар і виконання криптографічних операцій у довіреній середовищі (на чіпі смарт-карти) роблять неможливим спроби зловмисника витягти секретний ключ і виготовити дублікат пристрою генерації одноразових паролів.
Рис. 2. Пристрій ключа eToken NG-OTP
1 – мікросхема смарт-карти; 2 – захищений мікроконтролер; 3 – USB-роз'єм, 4 – світловий індикатор режимів роботи eToken; 5 – кнопка для генерації одноразових паролів; 6 – РК-дисплей; 7 – джерело живлення.
У ключі eToken NG-OTP крім модулів, що реалізують описані вище можливості, є апаратний генератор одноразових паролів (див. рис.4). Працює він за методом "синхронізація по події". Це найбільш надійна з синхронних варіантів реалізація технології OTP (з мінімальним ризиком рассинхронізациі). Алгоритм генерації одноразових паролів, реалізований в ключі eToken NG-OTP, розроблений у рамках ініціативи OATH (він заснований на технології HMAC). Суть його полягає в обчисленні значення HMAC-SHA-1, а потім виконання операції усічення (виділення) з отриманого 160-бітового значення 6-ти цифр. Саме вони і є тим самим одноразовим паролем.
