:: Статистика ::

 
Індекс цитування

 

 

 

 

 

Криптографічні методи аутентифікації

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

  • Система А генерує послідовність байтів, зазвичай випадкову, кодує її своїм ключем і посилає системі Ст
  • Система В розкодує її своїм ключем. Це можливо, лише якщо системи володіють парними ключами.
  • Системи тим або іншим способом обмінюються "правильними" значеннями зашифрованої посилки.

Аутентифікація SSH
Для прикладу розглянемо принцип RSA-аутентификации в пакеті ssh [www.cs.hut.fi SSH] — Secure Shell. Пакет є функціональною заміною програм rlogin/rsh і відповідного цим програмам демона rshd. У пакет входять програми ssh (клієнт) і sshd (сервер), а також утиліти для генерації ключів RSA і управління ними. ssh використовує RSA для прозорої аутентифікації користувача при вході у видалену систему. Крім того, ssh/sshd можуть здійснювати шифрування даних, передаваних по лінії під час сеансу зв'язку і виконувати ряд інших корисних функцій.
Сервер зберігає список відомих загальнодоступних ключів для кожного з користувачів у файлі SHOME/.ssh/authorized_keys, де $НОМЕ позначає домашній каталог користувача. Файл складається з рядків формату host_name: key— по рядку для кожного з дозволених клієнтів. У свою чергу, кожен клієнт зберігає у файлі $HOME/.ssh/private_key свій приватний ключ.
Коли з видаленої системи-клієнта приходить запит на аутентифікацію, sshd запрошує прилюдний ключ. Якщо отриманий ключ збігається із значенням, що зберігається у файлі, для цієї системи, сервер генерує випадкову послідовність з 256 біт, шифрує її прилюдним ключем і посилає клієнтові. Клієнт розшифровує посилку своїм особистим ключем, обчислює 128-бітову контрольну суму і повертають її серверу. Сервер порівнює отриману послідовність з правильною контрольною сумою і приймає аутентифікацію в разі збігу (мал. 12.5). Теоретично контрольні суми можуть збігтися і в разі неспівпадання ключів, але вірогідність такої події украй мала.

Мал. 12.5. Аутентифікація SSH

Аутентифікація Lotus Notes
Система групової роботи Lotus Notes також використовує для аутентифікації відкритий ключ. При створенні облікового запису користувача генерується 621-бітовий приватний і відповідний йому прилюдний ключі. Прилюдний ключ розміщується в доменній адресній книзі (мал. 12.6). Приватний ключ піддається шифруванню закритим ключем, який потім запрошується у користувача як пароль, і зберігається в ідентифікаційному файлі.

Мал. 12.6. Аутентифікація в Lotus Notes

Аби аутентифицироваться в системі, користувач повинен вказати ідентифікаційний файл і набрати пароль, який дозволить розшифрувати приватний ключ, що зберігається у файлі. Після цього всі пакети, якими користувач обмінюється з сервером Notes, забезпечуються цифровим підписом на основі цього ключа. Сервер може перевірити автентичність підпису, використовуючи прилюдний ключ, що зберігається в його адресній книзі.
Складніша ситуація виникає, коли користувач повинен аутентифицироваться в іншому домені, в адресних книгах якого він не числиться. Аби зробити таку авторизацію можливою, Notes вводить ще одне поняття: сертифікат домена. Цей сертифікат також є парою ключів, пароль до приватного ключа якої відомий лише адміністраторам домена. Кожен ідентифікаційний файл, що створюється в домені, підписується приватним ключем цього сертифікату (мал. 12.7).
Реєструючись в чужому домені, користувач пред'являє свої ім'я і прилюдний ключ, підписані сертифікатом свого домена. Якщо приймаючий домен не знає такого сертифікату, аутентифікація відкидається. Аби домен міг визнати чужий сертифікат, його адміністратор повинен провести крос-сертифікацію, а просто кажучи створити в доменній адресній книзі документ, в якому зберігається прилюдний ключ сертифікату домена [redbooks.ibm.com sg245341] (мал. 12.8).

Мал. 12.7. Сертифікат домена Lotus Notes

Мал. 12.8. Крос-сертифікація між доменами Lotus Notes

Методи, засновані на RSA і інших алгоритмах шифрування, не можуть вирішити проблеми поширення прориву безпеки між системами, що довіряють: зломщик, що проник в систему, що довіряла, дістає доступ до приватних ключів і може використовувати їх для негайної реєстрації в будь-якій з довіряючих систем або навіть скопіювати ключі для проникнення в ці системи в слушніший час. Шифрування приватного ключа паролем декілька ускладнює здійснення такої операції, але в цьому випадку зломщик може здійснити словарну атаку. Проте, як вже говорилося раніше, це є практично неминучою платою за дозвіл автоматичній реєстрації в декількох системах.
В той же час криптографічні методи практично усувають небезпеку імітації системи, що довіряє, шляхом підміни мережевої адреси і значно збільшують надійність інших методів аутентифікації. Наприклад, передача пароля по мережі в зашифрованому вигляді, особливо при використанні двохключового шифрування або динамічних ключів, практично усуває можливість розкриття пароля за допомогою його підслуховування і так далі
Є підстави стверджувати, що використання криптографічних методів може вирішити багато проблем безпеки комп'ютерних мереж і навіть одиночних комп'ютерів.

 

рекламодавці:

/ ml lfppюн Купить yokohama ig20 оптом.

::  Меню ::

ГОЛОВНА

Введення

Представлення даних в обчислювальних системах 

Машинні мови

Завантаження програм 

Управління оперативною пам'яттю

Сегментна і сторінкова віртуальна пам'ять

Комп'ютер і зовнішні події

Паралелізм з точки зору програміста 

Реалізація багатозадачності на однопроцесорних комп'ютерах 

Зовнішні пристрої

Драйвери зовнішніх пристроїв 

Файлові системи 

Додаток. Огляд архітектури сучасних ОС

 


:: Навігація ::

Головна

Додати у вишукане  

 

 

 


Copyright © Asentli, 2008