CAP
Versiunea actuală a paginii nu a fost încă examinată de colaboratori experimentați și poate diferi semnificativ de
versiunea revizuită la 6 octombrie 2014; verificările necesită
19 modificări .
CHAP ( Challenge Handshake Authentication Protocol ) este un protocol de autentificare cu negociere indirectă . Este un algoritm de autentificare și asigură transmiterea nu a parolei utilizatorului în sine, ci a informațiilor indirecte despre aceasta. Autentificarea nodului se realizează printr-o procedură de negociere în trei etape [1] [2] . Protocolul CHAP este utilizat pe scară largă de către diverși furnizori de servere și clienți de acces la rețea [3] . Definit în RFC 1994 .
Cum funcționează
Este posibil să se evidențieze un ciclu, care constă din trei părți principale [1] :
- După ce conexiunea PPP este stabilită și ambele părți sunt de acord să se conecteze prin protocolul CHAP, autentificatorul trimite un pachet CHAP la nodul de tip Challenge, care conține cheia publică .
- Pe baza cheii publice primite și a secretului acesteia , nodul calculează un hash folosind algoritmul de hashing MD5 și trimite un pachet CHAP de tip Response (răspuns) care conține hashul calculat.
- Autentificatorul compară valoarea hash primită cu propriul calcul al valorii hash așteptate. Dacă valorile se potrivesc, atunci autentificarea este considerată reușită. Dacă valorile sunt diferite, conexiunea este întreruptă.
La diferite intervale, autentificatorul trimite o nouă cerere nodului, iar pașii 1-3 se repetă [4] [5] .
Structura pachetelor CHAP
Câmpul de informații al pachetelor PPP cu câmpul de protocol 0xc223 încapsulează un singur pachet CHAP care conține următoarele câmpuri [6] [7] :
- Cod (Cod). Câmpul Cod, care are o lungime de un octet , identifică tipul de pachet CHAP și poate lua una dintre următoarele valori:
- Provocare (apel, verifica);
- Răspuns (răspuns);
- Succes (succes);
- Eșec (eșec).
- Identificator (Identifier). Câmpul Identificator, care are o lungime de un octet, permite identificarea suplimentară în funcție de tipul pachetului. Participă la negocierea cererii, răspunsului și recunoașterii.
- Lungime (lungime). Câmpul Lungime, lung de doi octeți, specifică lungimea pachetului CHAP, inclusiv toate câmpurile (cod, identificator, lungime și date).
- Date (Date). Lungimea câmpului de date este zero sau mai mulți octeți. Conține date în formatul specificat de câmpul de cod.
Cerințe de arhitectură
- Lungimea secretului trebuie să fie de cel puțin 1 octet. Secretul ar trebui să aibă, de preferință, aproximativ aceeași lungime cu valoarea hash a funcției hash care este utilizată (16 octeți pentru MD5 ). Acest lucru este necesar pentru a oferi un interval suficient de mare pentru secret, pentru a proteja împotriva atacurilor de reluare [8] .
- Fiecare valoare de cerere trebuie să fie unică la nivel global și temporal și complet imprevizibilă, astfel încât un atacator să nu poată păcăli un nod cu o cerere viitoare previzibilă și să trimită un răspuns la autentificator [8] .
Beneficii
- CHAP oferă protecție împotriva atacurilor de reluare. O astfel de protecție se realizează datorită creșterii valorii identificatorului și a valorii variabile a cheii publice [9] .
- Metoda de autentificare se bazează pe faptul că autentificatorul și peer-ul cunosc secretul , care nu este niciodată trimis prin canal. Acesta este motivul pentru care CHAP oferă o securitate mai bună decât PAP [9] [10] .
- Deși autentificarea este doar o singură cale, negocierile CHAP pot fi efectuate în ambele direcții folosind același secret, oferind autentificare reciprocă [2] .
Dezavantaje
- CHAP cere ca secretul să fie disponibil în formă clară (necriptată). Bazele de date cu parole criptate ireversibil nu pot fi utilizate [11] .
- Aplicabil slab pentru proiecte mari cu un număr mare de participanți, deoarece fiecare secret trebuie să fie stocat la ambele capete ale canalului [9] .
Vezi și
Note
- ↑ 1 2 Nitish Dalal, Jenny Shah, Khushboo Hisaria, Devesh Jinwala. O analiză comparativă a instrumentelor de verificare a protocoalelor de securitate . - 2010. - P. 785 . Arhivat din original pe 23 septembrie 2017.
- ↑ 1 2 Cisco - PPP CAP . Arhivat din original pe 24 decembrie 2017.
- ↑ Microsoft Technet - CHAP . Arhivat din original pe 24 decembrie 2017.
- ↑ W. Simpson. PPP Challenge Handshake Authentication Protocol (CHAP ) . - 1996. - P. 2 . Arhivat din original pe 8 martie 2021.
- ↑ M.W. Youssef, Hazem El-Gendy. Securizarea autentificării TCP/IP Layer Two prin modificarea protocolului de autentificare Challenge-Handshake (engleză) // Advanced Computing: An International Journal. - 2012. - Martie. — P. 11 . Arhivat din original pe 24 decembrie 2017.
- ↑ W. Simpson. PPP Challenge Handshake Authentication Protocol (CHAP ) . - 1996. - P. 6 . Arhivat din original pe 8 martie 2021.
- ↑ M.W. Youssef, Hazem El-Gendy. Securizarea autentificării TCP/IP Layer Two prin modificarea protocolului de autentificare Challenge-Handshake (engleză) // Advanced Computing: An International Journal. - 2012. - Martie. — P. 12 . Arhivat din original pe 24 decembrie 2017.
- ↑ 12 W. Simpson . PPP Challenge Handshake Authentication Protocol (CHAP ) . - 1996. - P. 4 . Arhivat din original pe 8 martie 2021.
- ↑ 1 2 3 W. Simpson. PPP Challenge Handshake Authentication Protocol (CHAP ) . - 1996. - P. 3 . Arhivat din original pe 8 martie 2021.
- ↑ Microsoft Technet - PAP . Arhivat din original pe 24 decembrie 2017.
- ↑ Guy Leduc. Verificarea a două versiuni ale protocolului Challenge Handshake Authentication Protocol (CHAP ) . - 1999. - Februarie. — P. 1 . Arhivat din original pe 24 decembrie 2017.
Literatură