Що таке Керберос?

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

Як працює Керберос?

Керберос працює в три етапи. Тепер обговоримо ці три кроки один за одним.

Крок 1:

Вхід

Клієнт вводить своє ім’я на довільній робочій станції. Потім робоча станція надсилає ім'я серверу аутентифікації у простому текстовому форматі.
У відповідь сервер аутентифікації виконує певні дії. По-перше, він створює пакет імені користувача, тобто клієнт і генерує ключ сеансу. Він шифрує цей пакет симетричним ключем, який сервер автентифікації ділиться з сервером надання квитків (TGS). Результатом цього процесу називається квиток на видачу квитків (TGT). Потім сервер аутентифікації поєднує в собі і TGT, і ключ сеансу, і шифрує їх разом, використовуючи симетричний ключ, який виходить із пароля клієнта.

Примітка: TGT можна відкрити лише за допомогою TGS, а кінцевий вихід може бути відкритий тільки клієнтом.

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

Крок 2:

Отримання послуги, що надає квиток.

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

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

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

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

Крок 3:

Користувачі контакту X для доступу до сервера.

Клієнт відправляє KAB до X для створення сеансу з X. Для безпечного зв'язку клієнт пересилає KAB, зашифрований секретним ключем X, до X. X може отримати доступ до KAB. Для захисту від атаки відповіді клієнт відправляє часову позначку до X, яка зашифрована за допомогою KAB.

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

Тепер клієнт і X можуть безпечно спілкуватися один з одним. Обидва використовують загальний секретний ключ KAB, який зашифровує дані під час надсилання та розшифровує повідомлення за допомогою того ж ключа. з сервера надання квитків. Отримавши секретний ключ, він може спілкуватися з Y так само, як ми обговорювали у випадку X. Якщо клієнт може знову спілкуватися з X, він може використовувати той самий попередній ключ, щоразу не потрібно створювати квиток. Тільки вперше йому потрібно отримати квиток.

Переваги та недоліки Kerberos

Нижче наведено переваги та недоліки:

Переваги Кербероса

  1. У Керберосі клієнти та послуги взаємно підтверджуються автентичністю.
  2. Він підтримується різними операційними системами.
  3. Квитки в Керберос мають обмежений термін. Крім того, якщо квиток буде вкрадений, важко повторно використовувати його через сильні потреби в аутентифікації.
  4. Паролі ніколи не надсилаються по мережі незашифрованими.
  5. У Керберосі поділяються секретні ключі, які є більш ефективними, ніж обмін відкритими ключами.

Недоліки Кербероса

  1. Він уразливий для слабких або повторних паролів.
  2. Він надає лише автентифікацію для служб та клієнтів.

Висновок

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

Рекомендовані статті

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

  1. Види веб-хостингу
  2. Що таке веб-додаток?
  3. Що таке схема зірок?
  4. Масиви в програмуванні Java