La sicurezza in rete è un argomento molto ampio, poichè le problematiche di sicurezza sono affrontate in modi diversi a seconda di quali applicazioni devono girare su una rete. Alcuni dei principali meccanismi di sicurezza che la comunità Internet ha sviluppato per specifiche applicazioni sono:
Nel seguito verranno analizzate tre delle soluzioni più significative, ciascuna relativa a un diverso livello della pila protocollare:
Al livello di rete si vogliono impedire la lettura e la modifica dei pacchetti IP in transito. In particolare, è necessario proteggere non solo il payload, ma anche l’header,, perchè alcuni dei possibili attacchi sono:
E’ importante notare che l’header IPv4 contiene già un checksum, ma questo serve solo a verificare l’assenza di errori di transizione sul singolo hop, da un nodo della rete al successivo, e non dal mittente al destinatario, perchè il calcolo del checksum comprende il campo TTL (Time To Live), il cui valore viene decrementato a ogni hop, dunque anche il checksum varia a ogni hop, dunque anche il checksum generato dal mittente. Inoltre, il checksum non fornisce alcuna protezione contro modifiche intenzionali: esso non è cifrato in alcun modo (a differenza ad esempio di una firma digitale), dunque un attaccante che volesse modificare il pacchetto potrebbe sostituire liberamente il checksum con quello corretto per il pacchetto modificato.
IPSec fornisce un framework (un insieme di elementi) per la comunicazione sicura su IP. Le sue specifiche sono complesse, definite in numerosi RFC. Esso deve obbligatoriamente essere supportato dalle implementazioni IPv6, ma può essere usato anche con IPv4, e realizza servizi che riguardano tre aree: