Loading AI tools
З Вікіпедії, вільної енциклопедії
Протокол Kerberos (з англ. Цербер) — орієнтований в основному на клієнт-серверну архітектуру, пропонує механізм взаємної аутентифікації двох співрозмовників (хостів) перед встановленням зв'язку між ними в умовах незахищеного каналу. Kerberos — це також пакет вільного програмного забезпечення розробленого в Массачусетському технологічному інституті, що реалізовує цей протокол. Повідомлення протоколу Kerberos захищені проти прослуховування мережі та атак повторного відтворення.
Kerberos базується на симетричних алгоритмах шифрування та для своєї роботи потребує довірену третю сторону. Деякі модифікації протоколу можуть використовувати елементи асиметричного шифрування.
Протокол Kerberos розроблявся інститутом МІТ для забезпечення безпеки сервісів проекту Афіна[en], метою якого було забезпечення доступності навчальних матеріалів із будь-якої станції. Назва протоколу походить від грецької міфічної триголової потвори Цербера, захисника підземного царства. Існує декілька версій протоколу Включно із третьою були доступні лише для внутрішнього користування у МІТ.
Стів Міллер (англ. Steve Miller) та Кліффорд Ньюман (англ. Clifford Neuman), основні архітектори четвертої версії Kerberos, опублікували її у кінці 1980-х, хоча вона також розроблялась в основному для проекту Афіна. П'ята версія протоколу, розроблена Джоном Колем (англ. John Kohl) та Кліффордом Ньюманом, з'явилась у 1993 році як рекомендація на стандарт RFC 1510, оновлена 2005 року у RFC 4120.
У своїй основі протокол Kerberos ставить перед собою реалізацію таких принципів:
В основу Kerberos покладений протокол Нідгема — Шредера. У ролі довіреної третьої сторони виступає Центр Розподілу Ключів (ЦРК, англ. Key Distribution Center), що складається із двох логічно розділених частин: Сервера Аутентифікації (ЦА, англ. Authentication Server) і Сервера Видачі Квитків (СВК, англ. Ticket Granting Server). Kerberos працює на основі «квитків», які використовуються для підтвердження ідентичності користувачів.
Нехай комунікатор реципієнт - Учасники сенсу мають ідентифікатори . Комуніканти, кожний окремо, розділяють таємний ключ із сервером Ser. Нехай сторона ініціює фазу розподілу ключів, посилаючи по мережі серверу ідентифікатори
Сервер генерує повідомлення із часовою позначкою терміном дії випадковим сенсовим ключем та ідентифікатором Він шифрує це повідомлення таємним ключем, який розділяє із стороною Потім сервер бере часову позначку термін дії сеансовий ключ ідентифікатор й шифрує це усе таємним ключем, який розділяє із стороною Обидва ці зашифровані повідомлення він відправляє стороні
Сторона розшифровує перше повідомлення своїм теємним ключем, перевіряє позначку часу щоб запевнитися, що це повідомлення не є повторенням попередньої процедури розподілу ключів. Потім сторона генерує повідомлення із своїм ідентифікатором й позначкою часу шифрує його сенсовим ключем й відправляє стороні Крім того, відправляє повідомлення від зашифроване ключем сторони
Лише сторона може розшифрувати повідомлення. Сторона отримує позначку часу термін дії сеансовий ключ та ідентифікатор Потім сторона розшифровує сенсовим ключем другу частину повідомлення. Співпадіння значень та у двох частинах повідомлення підтверджують аутентичність Для взаємного підтвердження справжності сторона створює повідомлення, яке складається із позначки часу плюс 1, шифрує його ключем й надсилає стороні
Якщо після розшифрування цього повідомлення сторона отримує очікуваний результат, вона знає, що на іншому кінці лінії зв'язку знаходиться дійсно
Цей протокол працює лише за умови, що годинники кожного учасника синхронізовані із годинником сервера Також у цьому протоколі потрібний обмін із сервером для отримання сенсового ключа кожний раз, коли комунікант хоче встановити зв'язок із реципієнтом.
ЦРК зберігає базу даних закритих ключів; закритий ключ учасника мережі відомий лише йому та ЦРК. Знання цього ключа є підтвердженням ідентичності учасника. Для з'єднання двох учасників, ЦРК генерує ключ сесії, який забезпечує безпеку повідомлень. Безпека протоколу сильно залежить від синхронізації часу учасників мережі та від обмеження часу придатності квитків.
Спрощений опис протоколу виглядає таким чином
Клієнт проходить аутентифікацію у СА з допомогою довготривалого спільного секрету і отримує квиток від СА. Пізніше клієнт використовує квиток для отримання додаткових квитків для ПС без потреби використання спільного секрету. Ці квитки підтверджують аутентифікацію для ПС.
Основні кроки:
1. C→СА - запит клієнта С до сервера СА дозволити звернутися до служби СВМ.
2. СА→С - дозвіл (мандат) від сервера СА до клієнта С звернутися до служби СВМ.
3. С→СВМ - запит клієнта С до служби СВМ на отримання допуску (мандату) до серверу ресурсів ПС.
4. СВМ→С - дозвіл (мандат) від служби СВМ клієнту С для звернення до серверу ресурсів ПС.
5. С→ПС - запит інформаційного ресурсу (послуги) у сервера ПС.
6. ПС→С - підтвердження справжності сервера ПС й надання інформаційного ресурсу (послуги) клієнту С.
Ця модель взаємодії клієнта із серверами може функціонувати лише за умови забезпечення конфіденційності й цілісності керуючої інформації, яка передається.
Це незавершена стаття з криптографії. Ви можете допомогти проєкту, виправивши або дописавши її. |
Це незавершена стаття з інформаційної безпеки. Ви можете допомогти проєкту, виправивши або дописавши її. |
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.