Challenge-handshake authentication protocol
Vzhled
Challenge Handshake Authentication Protocol (CHAP) slouží k prokazování totožnosti při použití protokolu PPP. Protokol CHAP řeší nedostatky protokolu PAP a je definovaný v RFC 1994.
Autentizace
[editovat | editovat zdroj]Klient i autentizační server sdílí stejný šifrovací klíč symetrické šifry. Autentizace v protokolu CHAP probíhá ve třech krocích.
- Nejprve je ustanoveno spojení mezi klientem a autentizačním serverem. Následně autentizační server odešle klientovi příkazem Challenge výzvu, obsahující náhodný řetězec.
- Klient vhodně spojí přijatý náhodný řetězec se sdíleným tajemstvím (šifrovací klíč) a výsledek zašifruje pomocí jednocestné funkce, známé jako hash, např. pomocí algoritmu SHA-2. Výsledek vloží do odpovědi (Response) a odešle autentizačnímu serveru.
- Autentizační server obdržel zašifrovanou zprávu od klienta. Server zašifruje původní zprávu, kterou odeslal klientovi stejným způsobem, jako to udělal klient, a porovná se zprávou, kterou získal od klienta. Pokud je výsledek shodný, tak dojde k potvrzení autentizace (Success) při neshodě k zamítnutí autentizace (Failure).
- Pakety Challenge mohou být v průběhu komunikace odesílané kdykoliv v náhodných opakujících intervalech z důvodu ověření klienta (opakují se kroky 1 až 3).
Výhoda protokolu CHAP je oboustranná autentizace, tj. autentizace klienta proti serveru a autentizace serveru proti klientovi.
Bezpečnost v protokolu CHAP
[editovat | editovat zdroj]Proti zneužití a odchycení hesla slouží serveru změna Challenge a narůstající identifikátor v odeslaných paketech. Klient při odesílání odpovědí serveru vkládá do paketu důsledně zkopírované identifikátory, které slouží serveru ke správnému vybrání Challenge pro vlastní výpočet pomocí hashovací funkce.
CHAP paket
[editovat | editovat zdroj]Název(anglicky) | 1 byte | 1 byte | 2 byte | 1 byte | Proměnná | Proměnná |
---|---|---|---|---|---|---|
Challenge | Code = 1 | ID | Délka | Challenge délka | Challenge hodnota | Jméno |
Response | Code = 2 | ID | Délka | Response délka | Response hodnota | Jméno |
Success | Code = 3 | ID | Délka | Zpráva | ||
Failure | Code = 4 | ID | Délka | Zpráva |
- Rámec protokolu PPP s vloženým paketem protokolu CHAP (pole má hodnotu C223 (hex))
Křídlová značka | Adresa | Řídicí pole | Protokol (C223 (hex)) | DATA | Kontrolní součet | Křídlová značka |
---|
Reference
[editovat | editovat zdroj]- Alena Kabelová, Libor Dostálek: Velký průvodce protokoly TCP/IP a systémem DNS, CP Books, 2005; ISBN 80-7226-675-6
- Autentizační protokoly používané v PPP[nedostupný zdroj]