Студопедия
rus | ua | other

Home Random lecture






Як перший приклад, надамо протокол односторонної автентифікації на основі паролів, так звану систему S-keys.


Date: 2015-10-07; view: 433.


Приклади протоколів автентифікації

В цій системі користувач володіє паролем та сберігає, скажимо на смарт-карті, послідовність , , , і так далі, наприклад, до , где стійка геш-функція.

При попередній реєстрації користувача системі надається .

При необхідності війти у систему, користувач пред'являє , а система перевіряє співвідношення . Якщо рівність не виконується, користувач вважається незаконним.

Якщо рівність виконується, користувач отримає доступ у систему, а система змінює значення на значення , яке щойно пред'явив користувач, тобто, наступним разом, він має пред'являти .

Очевидно, на смарт-карті достатньо зберігати пароль і номер чергового севнса автентифікації.

Розглянемо типовий протокол взаємної автентифікації в симетричній криптосистемі зі спільним секретним ключем

 

Таблиця 12.1 Взаємна автентифікація в симетричній криптосистемі

 

  Напрям Дані, що пе- редаються Коментар
Від А к В А, В, n1 А, В - ідентифікатори учасників обміну, n1 - випадкове двійкове число
Від В к А К(A, f(n1), n2, k1) Повідомлення, що зашифроване на ключі К, в якому f - зворотна функція-модифікатор, скажимо f(n)=n+1, n2 - випадкове двійкове число, k1 - за необхідності, новий ключ для подальшої роботи. На цьому кроці А перевіряє, чи зміг В зашифрувати модифіковані випадкові дані, тобто, чи є він власником ключа К.
Від А к В К(B, f(n2)) На цьому кроці B перевіряє, чи зміг A зашифрувати модифіковані випадкові дані, тобто, чи є він власником ключа К.

 

Покажемо тепер як здійснюється взаємна автентифікація за наявності сервера ключів S.

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

Позначимо через і ключи користувачів, що відомі серверу S.

 

Таблиця 12.2 Взаємна автентифікація за наявності сервера ключів

 

  Напрям Дані, що передаються Коментар
От А к S A, К[A](n1, B, text) (В не знає ключа К[A]) Ідентифікатор абонента А і зашифроване на ключі К[A]повідомлення, в якому n1 - випадкове двійкове число, В - ідентифікатор абонента В, а text - додаткова (смислова) інформація, задля попередження атаки з використанням довільних двійкових даних. Абонент А запитує сервер щодо организації обміну з В.
От S к А К[A](f(n1), K, B, К[B](K,A)) Зашифроване на ключі К[A]повідомлення, в якому f - зворотна функція-модифікатор, скажимо, f(n)=n+1, K - сеансовий ключ для обміну між А и В; К[B](K,A) - частина відкритого тексту повідомлення, що є результатом зашифрування даних K,A на ключі К[B]. Після розшифрування, на цьому кроці А отримує від сервера ключ K, а також криптограму для В, що є зашифрованою на ключе К[B]. Ця криптограма містить ключ K та ідентифікатор абонента А.
От А к В К[B](K,A), K(n2) (А не знає ключа К[В]) А пересилає криптограму, що підготовив сервер для абонента В, а також випадкове двійкове число n2, що зашифроване на сеансовому ключі K , який запропоновано сервером як спільний ключ для А і В.
От В к А К(f(n2), n3) Після розшифрування криптограми від сервера, B отримує сеансовий ключ K і число n2, яке він модифікує і пересилає А разом із випадковим числом n3, у повідомленні, яке зашифроване на ключі K . Після розшифрування повідомлення, А може переконатися в істинності В.
От А к В К(f(n3)) Аналогічно, після розшифрування повідомлення, В може переконатися в істинності А.

 

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

Деякі позначення:

- абонент надсилає дані абоненту ;

- вибрано випадково, рівномірно та незалежно з множини ;

- шифрування на (відкритому) ключі абонента ;

- конкатенація (послідовний запис) та ;

- множина двійкових послідовностей скінченої довжини, крим послідовності, що складається з нулів;

- множина двійкових послідовностей довжини ( = );

- множина ненульових квадратичних лишків за модулем .

В таб. 12.3 надано приклад запису криптопротоколу між абонентами .

 

Таблиця 12.3 Протокол встановлення сеансового ключа

 

1. , знатиме , якщо він володіє відповідним секретним ключем.
2.  
3. ключ абонента для шифрування даних в ході поточного сеансу

 


<== previous lecture | next lecture ==>
Ідентифікація клієнта в системі | Протокол Фіата-Шаміра ідентифікації клієнта в системі
lektsiopedia.org - 2013 год. | Page generation: 0.003 s.