IPsec fa parte di una serie di protocolli e la sua architettura è stata proposta come standard dall’ Internet Engineering Task Force (IETF), un’organizzazione che si occupa di continuare lo sviluppo tecnico di Internet. IPsec è stato sviluppato per la nuova versione del protocollo di rete (IPv6) e successivamente anche per l’IPv4. In base alle funzioni svolte, si può suddividere essenzialmente in tre gruppi:
- Protocolli di trasferimento: Authentication Header (AH), Encapsulating Security Payload (ESP)
- Gestione del processo di crittografia: Internet Security Association and Key Management Protocol (ISAKMP), Internet Key Exchange (IKE)
- Database: Security Association Database (SAD), Security Policy Database (SPD)
Grazie ai due protocolli di trasferimento AH e ESP, IPsec garantisce l’autenticità e l’integrità dei dati inviati, assicurando così che il contenuto provenga dal mittente dichiarato e che arrivi invariato a destinazione. A questo scopo il protocollo AH consente, tramite l’estensione dell’header del pacchetto, da una parte l’autenticazione della sorgente dei dati, confermandone così l’autenticità, e dall’altra una protezione contro la modifica dei pacchetti durante la trasmissione. Inoltre, il protocollo AH aggiunge all’header una sequenza numerica, così da impedire l’invio ripetuto dei pacchetti.
Il protocollo ESP garantisce, oltre alla verifica dell‘identità e dell’integrità dei dati, anche la cifratura dei dati inviati. Tuttavia, l’ autenticazione ESP si differenzia da quella del protocollo AH, dal fatto che non considera l’header IP più esterno e quindi non è completa. Con l’aiuto di un incapsulamento aggiuntivo, i contenuti ESP vengono consegnati correttamente, attraversando le reti collegate tramite NAT (Network Address Translation), come avviene solitamente nelle reti ADSL private.
Per la gestione della crittografia ESP è principalmente responsabile il protocollo IKE, che regola gli accordi di sicurezza (Security Associations) tra mittente e destinatario, utilizza l’algoritmo di Diffie-Hellman per garantire uno scambio delle chiavi protetto e realizza così l’intera procedura tramite il framework ISAKMP.
Leinformazioninecessarie per l’invio dei pacchetti, utilizzando IPsec, si trovano nei due database locali SPD e SAD. I parametri contenuti nel Security Policy Database determinano ad esempio quali protocolli di trasferimento (AH, ESP o entrambi) devono essere utilizzati per stabilire una connessione sicura. Il SAD gestisce invece i parametri specifici della Security Association, creati dal protocollo IKE, e prestabilisce così l’intero procedimento di crittografia per il mittente, che comprende le chiavi da utilizzare durante lo scambio dati, e la successiva fase di decodifica, svolta dal destinatario.