Co to jest Kerberos?

Kerberos to protokół uwierzytelniania sieci komputerowej. Został zaprojektowany w MIT, aby umożliwić bezpieczne korzystanie z zasobów sieciowych. W tym artykule zobaczymy omówioną koncepcję Kerberos i jej działanie za pomocą przykładu.

Jak działa Kerberos?

Kerberos działa w trzech krokach. Teraz omówmy kolejno te trzy kroki.

Krok 1:

Zaloguj sie

Klient wprowadza swoje imię i nazwisko na dowolnej stacji roboczej. Następnie stacja robocza wysyła nazwę do serwera uwierzytelniania w formacie zwykłego tekstu.
W odpowiedzi serwer uwierzytelniania wykonuje pewne działania. Najpierw tworzy pakiet nazwy użytkownika, tj. Klienta i generuje klucz sesji. Szyfruje ten pakiet za pomocą klucza symetrycznego, który serwer uwierzytelniania współdzieli z Ticket Granting Server (TGS). Wynik tego procesu nazywa się biletem przyznającym bilet (TGT). Następnie serwer uwierzytelniający łączy zarówno klucz TGT, jak i klucz sesji i szyfruje je razem za pomocą klucza symetrycznego uzyskanego z hasła klienta.

Uwaga: TGT może być otwarty tylko przy użyciu TGS, a ostateczne wyjście może być otwarte tylko przez klienta.

Po otrzymaniu tego komunikatu stacja robocza użytkownika prosi o hasło. Gdy użytkownik lub klient wprowadzi swoje hasło, stacja robocza generuje klucz symetryczny uzyskany z hasła serwera uwierzytelniającego. Ten klucz służy do wyodrębnienia klucza sesji i biletu TGT. Następnie stacja robocza niszczy hasło klienta z pamięci, aby zapobiec atakowi.
Uwaga: Użytkownicy nie mogą otworzyć Biletu przyznającego bilet.

Krok 2:

Uzyskanie biletu uprawniającego do usługi.

Załóżmy, że po udanym zalogowaniu użytkownik chce komunikować się z innymi użytkownikami za pośrednictwem serwera poczty. W tym przypadku klient informuje swoją stację roboczą, że chce skontaktować się z innym użytkownikiem X. Tak więc klient potrzebuje biletu do komunikacji z X. W tym momencie stacja robocza klienta tworzy komunikat przeznaczony dla serwera przyznającego bilety, który zawiera niżej wymienione elementy -
• Bilet przyznawania biletów
• identyfikator X, którego usługami klienci są zainteresowani.
• Bieżący znacznik czasu powinien być szyfrowany tym samym kluczem sesji.

Przyznawanie biletów, bilet jest szyfrowany tylko tajnym kluczem serwera wydawania biletów, a zatem tylko serwer wydawania biletów może otworzyć bilet przyznania biletu. Z tego powodu serwer przyznający bilety uważa, że ​​wiadomość pochodzi od klienta. Bilet przyznający bilet i klucz sesji zostały zaszyfrowane przez serwer uwierzytelniania sesji.

Serwer uwierzytelniający szyfruje go za pomocą tajnego klucza, który pochodzi z hasła klienta. Dlatego jedyny klient może otworzyć paczkę i pobrać bilet
Gdy serwer przyznający bilety jest zadowolony z danych wprowadzonych przez klienta, bilet przyznający bilet tworzy klucz sesji KAB dla klienta w celu wykonania bezpiecznej komunikacji z X. Serwer przyznania biletu wysyła go dwukrotnie do klienta - po raz pierwszy wysyła po połączeniu z identyfikatorem X i zaszyfrowanym kluczem sesji, po raz drugi wysyła po połączeniu z identyfikatorem klienta i zaszyfrowanym tajnym kluczem KB KB.

W takim przypadku atakujący może spróbować uzyskać pierwszą wiadomość wysłaną przez klienta i może podjąć próbę ataku w odpowiedzi. Nie udałoby się to jednak, ponieważ wiadomość klienta zawiera zaszyfrowany znacznik czasu, a atakujący nie może zastąpić znacznika czasu, ponieważ nie ma klucza sesji.

Krok 3:

Kontakty użytkownika X w celu uzyskania dostępu do serwera.

Klient wysyła KAB do X, aby utworzyć sesję z X. Aby zapewnić bezpieczną komunikację, klient przesyła dalej KAB zaszyfrowane tajnym kluczem X do X. X może uzyskać dostęp do KAB. Aby zabezpieczyć się przed atakiem odpowiedzi, klient wysyła znacznik czasu do X, który jest szyfrowany za pomocą KAB.

X używa swojego tajnego klucza do uzyskania informacji, z tych informacji używa KAB do odszyfrowania wartości pieczęci. Następnie X dodaje 1 do wartości znacznika czasu i szyfruje ją za pomocą KAB i wysyła do klienta. Następnie klient otwiera pakiet i weryfikuje znaczek zwiększany o X. Z tego procesu klient upewnia się, że X otrzymał tę samą KAB, która jest wysyłana przez klienta.

Teraz klient i X mogą się ze sobą bezpiecznie komunikować. Oba używają współdzielonego tajnego klucza KAB yo szyfrują dane w momencie wysyłania i odszyfrowują wiadomość przy użyciu tego samego klucza. Załóżmy, że klient może chcieć komunikować się z innym serwerem Y, w takim przypadku klient po prostu nie chce uzyskać innego tajnego klucza z serwera przyznawania biletów. Po uzyskaniu tajnego klucza może komunikować się z Y w sposób podobny do omówionego w przypadku X. Jeśli klient może ponownie komunikować się z X, może użyć tego samego poprzedniego klucza, nie ma potrzeby generowania biletu za każdym razem. Tylko po raz pierwszy musi zdobyć bilet.

Zalety i wady Kerberos

Poniżej znajdują się zalety i wady:

Zalety Kerberos

  1. W Kerberos klienci i usługi są wzajemnie uwierzytelniane.
  2. Jest obsługiwany przez różne systemy operacyjne.
  3. Bilety na Kerberos mają ograniczony okres. Również jeśli bilet zostanie skradziony, trudno jest go ponownie użyć z powodu silnych potrzeb uwierzytelnienia.
  4. Hasła nigdy nie są przesyłane przez sieć niezaszyfrowane.
  5. W Kerberos tajne klucze są współdzielone, co jest bardziej wydajne niż współdzielenie kluczy publicznych.

Wady Kerberos

  1. Jest podatny na słabe lub powtarzające się hasła.
  2. Zapewnia tylko uwierzytelnianie dla usług i klientów.

Wniosek

W tym artykule widzieliśmy Czym jest Kerberos, jak działa wraz z jego zaletami i wadami. Mam nadzieję, że ten artykuł okaże się pomocny.

Polecane artykuły

To jest przewodnik po Kerberos. Tutaj omawiamy, czym jest Kerberos, jak działa Kerberos oraz jego zalety i wady. Możesz także przejrzeć nasze inne sugerowane artykuły, aby dowiedzieć się więcej -

  1. Rodzaje hostingu
  2. Co to jest aplikacja internetowa?
  3. Co to jest schemat gwiazd?
  4. Tablice w programowaniu Java