Uwierzytelnianie

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacji, wyszukiwania

Uwierzytelnianie (ang. authentication) – proces polegający na potwierdzeniu zadeklarowanej tożsamości podmiotu biorącego udział w procesie komunikacji[1]. Celem uwierzytelniania jest uzyskanie określonego poziomu pewności, że dany podmiot jest w rzeczywistości tym, za który się podaje[2][3]. Spotykane są niepoprawne warianty: autentykacja, autentyfikacja[4][5].

Proces uwierzytelniania[edytuj | edytuj kod]

W większości zastosowań uzyskanie dostępu do chronionych zasobów (asset) przez dany podmiot (entity)[6] odbywa się w następujących krokach:

  • Identyfikacja (identification) – podmiot deklaruje swoją tożsamość (identity). Na przykład:
    • w rozmowie telefonicznej z centrum obsługi banku klient deklaruje swoje imię, nazwisko i numer konta (bank jest stroną ufającą);
    • w procesie logowania do serwera użytkownik wpisuje nazwę (login) (serwer jest stroną ufającą);
    • podczas połączenia przeglądarki z serwerem SSL, ten ostatni przedstawia certyfikat X.509 zawierający jego nazwę (przeglądarka jest stroną ufającą).
  • Uwierzytelnianie (authentication) – strona ufająca stosuje odpowiednią technikę uwierzytelniania (authentication mechanism) w celu weryfikacji zadeklarowanej wcześniej tożsamości. Na przykład:
    • personel banku prosi o podanie ustawionego wcześniej hasła telefonicznego, daty urodzenia, nazwiska panieńskiego matki; suma poprawnych odpowiedzi daje wysokie prawdopodobieństwo, że dana osoba jest tą, za którą się podaje;
    • serwer prosi użytkownika o wpisanie hasła i weryfikuje jego zgodność z wcześniej ustawioną wartością;
    • przeglądarka weryfikuje podpis cyfrowy złożony pod certyfikatem serwera przez urząd certyfikacji, któremu ufa.
  • Autoryzacja (authorisation) – potwierdzenie, czy dany podmiot jest uprawniony do uzyskania dostępu do żądanego zasobu. Na tym etapie autentyczność podmiotu jest już potwierdzona, nie musi on jednak być uprawnionym do uzyskania dostępu w żądanym zakresie. Na przykład:
    • personel banku potwierdza, że użytkownik ma dostęp do swojego rachunku, ale żądanie stanu konta rachunku powiązanego (małżonka, firmy) weryfikuje sprawdzając czy zostało złożone odpowiednie pełnomocnictwo;
    • serwer weryfikuje uprawnienia zalogowanego użytkownika do konkretnego pliku sprawdzając tablicę dostępu w systemie plików;
    • przeglądarka sprawdza zapisane w certyfikacie serwera flagi keyUsage, weryfikując czy został on poświadczony przez uprawniony podmiot.

Metody uwierzytelniania[edytuj | edytuj kod]

W zależności od kanału komunikacyjnego stosuje się różne metody i protokoły uwierzytelniania.

Jedną z funkcjonalnych klasyfikacji uwierzytelniania jest podział na metody wykorzystujące:

  • coś co wiesz (something you know) – informacja będąca w wyłączonym posiadaniu uprawnionego podmiotu, na przykład hasło lub klucz prywatny;
  • coś co masz (something you have) – przedmiot będący w posiadaniu uprawnionego podmiotu, na przykład klucz (do zamka) lub token (generator kodów);
  • coś czym jesteś (something you are) – metody biometryczne.

Uwierzytelnianie dwuskładnikowe[edytuj | edytuj kod]

Przy dostępnie do danych lub systemów o szczególnie wysokiej wartości często stosuje się uwierzytelnianie dwuskładnikowe (two-factor authentication), czyli łączące dwie wymienione wyżej metody. Na przykład w komunikacji elektronicznej stosowanie hasła wiąże się z ryzykiem jego przechwycenia (keylogger) lub podsłuchania (sniffer). Przestaje ono być wówczas znane wyłącznie osobie uprawnionej, zaś kradzież może pozostać niezauważona. Ryzyko to można ograniczyć, wprowadzając dodatkowy, materialny składnik uwierzytelniania, w postaci tokenu sprzętowego:

  • token istnieje w jednym, unikatowym egzemplarzu, więc jego użycie wymaga fizycznego dostępu lub kradzieży, która zostanie zauważona (cecha coś co masz);
  • użycie tokenu wymaga dodatkowo podania hasła (np. w postaci kodu PIN), więc bez jego znajomości token będzie nieprzydatny, nawet w razie kradzieży (cecha coś co wiesz).

Uwierzytelnienie dwuskładnikowe stosuje większość banków internetowych, a także platformy gier (Battle.net), usługa poczty Gmail i wiele innych. Stosowane są zarówno tokeny sprzętowe, jak i programowe generatory haseł (np. Google Authenticator) oraz hasła jednorazowe przesyłane za pomocą SMS.

Zobacz też[edytuj | edytuj kod]

Przypisy

  1. Norma ISO/IEC 27000:2009 definiuje uwierzytelnianie ogólniej jako „uzyskiwanie pewności, że zadeklarowana cecha danego podmiotu jest prawdziwa” oraz autentyczność jako „fakt, że podmit jest tym, za który się podaje”.
  2. PN-ISO/IEC 9798-1:1996, Technika informatyczna – Techniki zabezpieczeń – Mechanizmy uwierzytelniania podmiotów – Model ogólny.
  3. Krzysztof Gaj, Anna Górska, Karol Górski, Nicolas Courtois: Słowniczek terminów związanych z kryptologią i ochroną informacji angielsko – francusko – polski. Enigma Systemy Ochrony Informacji, 2003.
  4. Poradnia językowa Wydawnictwa Naukowego PWN
  5. Rada Języka Polskiego przy Prezydium Polskiej Akademii Nauk
  6. Podmiotem może być osoba, instytucja, urządzenie, aplikacja i inne.
  7. PN-ISO/IEC 9798-2:1996, Technika informatyczna – Techniki zabezpieczeń – Uwierzytelnianie podmiotów – Mechanizmy wykorzystujące symetryczne algorytmy szyfrowania.
  8. PN-ISO/IEC 9798-3:2002, Technika informatyczna – Techniki zabezpieczeń – Uwierzytelnianie podmiotów – Część 3: Mechanizmy stosujące techniki podpisu cyfrowego.
  9. PN-ISO/IEC 9798-5:2001, Technika informatyczna – Techniki zabezpieczeń – Uwierzytelnianie podmiotów – Część 5: Mechanizmy wykorzystujące techniki wiedzy zerowej.