Uwierzytelnianie
Uwierzytelnianie, autentyfikacja (ang. authentication, niepopr. „autentykacja”[1][2]) – proces polegający na potwierdzeniu zadeklarowanej tożsamości podmiotu biorącego udział w procesie komunikacji[3]. Celem uwierzytelniania jest uzyskanie określonego poziomu pewności, że dany podmiot jest w rzeczywistości tym, za którego się podaje[4][5].
Na określenie tego procesu używa się również niezalecanych przez normatywistów terminów „autentykacja”, „autentyfikacja”[6][7] będących kalkami z języka angielskiego.
Proces uwierzytelniania
Ta sekcja od 2015-08 wymaga zweryfikowania podanych informacji. |
W większości zastosowań uzyskanie dostępu do chronionych zasobów (resources) przez dany podmiot (entity)[8] 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 (lub wskazanie pliku klucza) 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 (authorization) – 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
W zależności od kanału komunikacyjnego stosuje się różne metody i protokoły uwierzytelniania.
- w stosunku do dokumentów papierowych – podpisy, pieczęcie, parafowanie, znak wodny (metody), poświadczenie notarialne (protokół);
- w stosunku do osób i innych istot żywych – zabezpieczenie biometryczne, dokument tożsamości, hasło, karta mikroprocesorowa (smart card), biochip, token (generator kodów);
- w stosunku do wiadomości i dokumentów elektronicznych – podpis cyfrowy, kod uwierzytelniania wiadomości (message authentication code);
- w stosunku do podmiotów w komunikacji elektronicznej – metody oparte na dowodzie posiadania hasła (kryptografia symetryczna – np. HMAC[9]) lub klucza prywatnego (kryptografii asymetrycznej[10]), dowód z wiedzą zerową[11], hasło jednorazowe.
Jedną z funkcjonalnych klasyfikacji uwierzytelniania jest podział na metody wykorzystujące:
- coś co wiesz (something you know) – informacja będąca w wyłącznym 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
Przy umożliwianiu dostępu 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ż
Przypisy
- ↑ Standard API (interfejsu programistycznego aplikacji). s. 3. [dostęp 2020-03-11]. (pol.).
- ↑ Autentykacja, www.rjp.pan.pl [dostęp 2020-06-23] .
- ↑ 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 podmiot jest tym, za który się podaje”.
- ↑ PN-ISO/IEC 9798-1:1996, Technika informatyczna – Techniki zabezpieczeń – Mechanizmy uwierzytelniania podmiotów – Model ogólny.
- ↑ 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.
- ↑ Mirosław Bańko , autentykacja, [w:] Poradnia językowa PWN [online], sjp.pwn.pl, 14 lutego 2013 [dostęp 2019-01-17] .
- ↑ Autentykacja, [w:] Porady językowe [online], Rada Języka Polskiego, 2002 [dostęp 2019-01-17] .
- ↑ Podmiotem może być osoba, instytucja, urządzenie, aplikacja i inne.
- ↑ PN-ISO/IEC 9798-2:1996, Technika informatyczna – Techniki zabezpieczeń – Uwierzytelnianie podmiotów – Mechanizmy wykorzystujące symetryczne algorytmy szyfrowania.
- ↑ PN-ISO/IEC 9798-3:2002, Technika informatyczna – Techniki zabezpieczeń – Uwierzytelnianie podmiotów – Część 3: Mechanizmy stosujące techniki podpisu cyfrowego.
- ↑ PN-ISO/IEC 9798-5:2001, Technika informatyczna – Techniki zabezpieczeń – Uwierzytelnianie podmiotów – Część 5: Mechanizmy wykorzystujące techniki wiedzy zerowej.