CHAP (Challenge-Handshake Authentication Protocol)

Che cos’è CHAP (Challenge-Handshake Authentication Protocol)?

CHAP (Challenge-Handshake Authentication Protocol) è un metodo di autenticazione challenge e response utilizzato dai server Point-to-Point Protocol (PPP) per verificare l’identità di un utente remoto. L’autenticazione CHAP inizia dopo che l’utente remoto ha avviato un collegamento PPP.

CHAP consente agli utenti remoti di identificarsi in un sistema di autenticazione, senza esporre la propria password. Con CHAP, i sistemi di autenticazione utilizzano un segreto condiviso-la password-per creare un hash crittografico utilizzando l’algoritmo MD5 message digest.

CHAP utilizza una stretta di mano a tre vie per verificare e autenticare l’identità dell’utente, mentre il protocollo di autenticazione password (PAP) utilizza una stretta di mano a due vie per l’autenticazione tra l’utente remoto e il server PPP.

Progettato per essere utilizzato con PPP per l’autenticazione degli utenti remoti, CHAP viene applicato periodicamente durante una sessione remota per riautenticare l’utente. PAP e CHAP sono destinati principalmente a connessioni remote su linee dial-up o circuiti commutati, nonché a collegamenti dedicati.

PAP e CHAP sono comunemente usati per negoziare una connessione di rete con un provider di servizi Internet. CAP è specificato nella richiesta di osservazioni 1994.

Come agisce il CAP?

Ecco come funziona il CAP:

  1. Dopo aver effettuato il collegamento, il server invia un messaggio di sfida al richiedente della connessione.
  2. Il richiedente risponde con un valore ottenuto utilizzando una funzione hash unidirezionale nota come MD5.
  3. Il server controlla la risposta confrontandola con il proprio calcolo del valore hash previsto. Se i valori corrispondono, l’autenticazione viene riconosciuta; in caso contrario, la connessione viene solitamente terminata.

Il server può inviare una nuova sfida al richiedente in modo casuale durante la sessione per riautenticarlo. I passaggi da 1 a 3 vengono quindi ripetuti.

In qualsiasi momento, il server può richiedere alla parte connessa di inviare un nuovo messaggio di sfida. Poiché gli identificatori CHAP vengono modificati frequentemente e l’autenticazione può essere richiesta dal server in qualsiasi momento, CHAP offre maggiore sicurezza rispetto a PAP.

CHAP handshake a tre vie
CHAP utilizza un protocollo handshake a tre vie per autenticare gli utenti su sessioni PPP.

Tipi di pacchetti CHAP

PPP trasporta pacchetti CHAP tra l’autenticatore e il richiedente. I pacchetti CHAP sono costituiti da un’intestazione, che include quanto segue:

  • campo Codice, che contiene otto bit di codice che identifica il tipo di CAP pacchetto inviato — i valori validi sono da 1 a 4;
  • Identificatore di campo, che è un numero arbitrario di otto bit ID identificare il pacchetto come appartenenti ad una sequenza di autenticazione;
  • Lunghezza del campo che contiene il numero di byte nel CAP pacchetto; e
  • campo di Dati, che comprende tutti i dati richiesti o inviati e i valori a seconda del tipo di CAP pacchetto che viene portato in.

Ulteriori letture

CHAP e PAP sono stati tra i primi tentativi di implementare un accesso remoto sicuro e comprendere le differenze tra CHAP e PAP è solo il primo passo.

CHAP si integra con il protocollo RADIUS (Remote Authentication Dial-In User Service). Kerberos offre uno strumento più sofisticato e sicuro per l’autenticazione dell’utente remoto.

Imparare le differenze tra CHAP e Extensible Authentication Protocol, Lightweight Extensible Authentication Protocol e Wi-Fi Protected Access versione 2 Protocol aiuterà i professionisti IT a prendere la decisione migliore.

CHAP funziona con quattro diversi tipi di pacchetto. Ogni pacchetto è identificato dal valore del suo campo di codice, come segue:

  1. Il sistema di autenticazione, solitamente un server di accesso alla rete o uno switch, invia un pacchetto CHAP Challenge per avviare il processo di autenticazione. Dopo l’avvio di una sessione PPP, il sistema o la rete a cui si accede possono richiedere l’autenticazione dell’utente remoto. La Sfida include il nome host dell’autenticatore.
  2. Il sistema dell’utente remoto deve inviare un pacchetto di risposta CHAP in risposta a una Sfida. Il sistema remoto invia un hash sicuro basato sulla password dell’utente remoto nel pacchetto di risposta. L’autenticatore confronta l’hash della password dell’utente con il valore previsto. L’utente remoto viene autenticato se corrisponde; in caso contrario, l’autenticazione non riesce.
  3. Il sistema di autenticazione-il server di accesso alla rete-invia un pacchetto di successo CHAP se l’hash dell’utente remoto corrisponde all’hash previsto dal server.
  4. Il sistema di autenticazione invia un pacchetto di errore CHAP se l’hash della password dell’utente remoto non corrisponde al valore inviato dall’utente.

Se il sistema remoto non risponde a un pacchetto Challenge, l’autenticatore può ripetere il processo. L’autenticatore termina l’accesso dell’utente remoto se non può autenticarsi.

CAP vs. PAP

CHAP è una procedura più sicura per la connessione a un sistema rispetto a PAP.

Gli schemi di autenticazione PAP e CHAP erano entrambi originariamente specificati per autenticare utenti remoti che si connettevano a reti o sistemi utilizzando PPP. Il protocollo di stretta di mano a tre vie di CHAP fornisce una protezione più forte contro gli attacchi di indovinare password e intercettazioni rispetto alla stretta di mano a due vie di PAP.

CHAP vs. PAP
CHAP e PAP differiscono in diversi modi, in particolare essendo che CHAP è più sicuro di PAP.

L’autenticazione con PAP richiede all’utente remoto di inviare il proprio nome utente e password e il sistema di autenticazione consente o nega l’accesso all’utente in base a tali credenziali.

PAP handshake bidirezionale
PAP è una semplice handshake bidirezionale per l’autenticazione degli utenti remoti.

CHAP protegge il processo di autenticazione utilizzando un protocollo più sofisticato. CHAP implementa un protocollo handshake a tre vie da utilizzare dopo che l’host ha stabilito una connessione PPP con la risorsa remota.

PAP definisce una stretta di mano bidirezionale per un utente remoto per avviare l’accesso remoto:

  1. Il sistema remoto invia un nome utente e una password, ripetendo la trasmissione fino a quando il server di accesso alla rete risponde.
  2. Il server di accesso alla rete trasmette una conferma di autenticazione se le credenziali sono autenticate. Se le credenziali non sono autenticate, il server di accesso alla rete invia un riconoscimento negativo.

Mentre PAP può essere utilizzato come protocollo minimo per consentire a un utente remoto di avviare una connessione di rete, CHAP fornisce un protocollo di autenticazione più sicuro.

Leave a Reply