Obsah

CHAP (Challenge-Handshake Authentication Protocol)

CHAP je autentizační protokol, který pravidelně ověřuje identitu vzdáleného klienta pomocí „třícestného podání ruky“. Na rozdíl od staršího protokolu PAP (Password Authentication Protocol), který posílal heslo v čitelném textu, CHAP využívá kryptografické hashování.

Tento protokol je definován v normě RFC 1994 a je klíčový pro zabezpečení vytáčených spojení (dial-up), virtuálních soukromých sítí (VPN) a úložišť typu iSCSI.


Jak CHAP funguje (Třícestné podání ruky)

Proces ověření probíhá bezpečně díky tomu, že obě strany (klient i server) znají stejné heslo (tzv. „shared secret“), ale nikdy si ho navzájem nepošlou.

1. **Výzva (Challenge):** Server vygeneruje náhodný řetězec dat (tzv. nonce) a pošle ho klientovi.
2. **Odpověď (Response):** Klient vezme tuto výzvu, spojí ji se svým heslem a pomocí hashovací funkce (obvykle MD5) vypočítá výsledek (hash). Tento hash pošle zpět serveru.
3. **Ověření (Verification):** Server provede stejný výpočet (má k dispozici stejnou výzvu i heslo klienta). Pokud se výsledek serveru shoduje s hashem od klienta, potvrdí autentizaci.

Klíčové vlastnosti a výhody


Srovnání: PAP vs. CHAP

Vlastnost PAP CHAP
Přenos hesla Čitelný text (Plaintext). Pouze hash (jednosměrný otisk).
Bezpečnost Velmi nízká. Vysoká (standard pro P2P).
Opakování výzvy Pouze při navazování spojení. Kdykoliv během spojení.
Nároky na CPU Minimální. Vyšší (kvůli výpočtům hashe).

MS-CHAP: Varianta od Microsoftu

Microsoft vyvinul vlastní verzi MS-CHAP, která se často používá v sítích Windows a VPN (PPTP).


Související pojmy: SSL/TLS, VPN, Hashování, MD5, Man-in-the-Middle, IP adresa, Autentizace.