IPsec es una familia de protocolos, cuya arquitectura ha sido propuesta como estándar por el Grupo de Trabajo de Ingeniería de Internet (IETF por sus siglas en inglés), una organización dedicada al desarrollo técnico de Internet. IPsec está a disposición de los usuarios desde la última versión del Protocolo de Internet (IPv6) y fue desarrollado posteriormente para IPv4, dividiéndose principalmente en los tres siguientes grupos:
- Protocolos de transferencia: Authentication Header (AH), Encapsulating Security Payload (ESP)
- Gestión de claves: Internet Security Association and Key Management Protocol (ISAKMP), Internet Key Exchange (IKE)
- Bases de datos: Security Association Database (SAD), Security Policy Database (SPD)
Con la ayuda de los protocolos de transferencia AH y ESP, IPsec garantiza la autenticidad e integridad de los datos enviados, asegurando que su contenido no haya sufrido cambios desde que fue enviado por su emisor y que llegará intacto a su destinatario. Para este fin, AH ofrece una extensión de la cabecera del paquete, concentrándose, por un lado, en la autenticación, y, por el otro, en evitar que los paquetes sean manipulados durante el proceso de transmisión. Adicionalmente, el protocolo AH añade un número de secuencia a la cabecera, impidiendo repeticiones en la transmisión de los paquetes.
Además de la comprobación de la integridad y de la identidad, el protocolo ESP cifra los datos enviados. Sin embargo, la autenticación ESP difiere del protocolo AH en la medida en que no tiene en cuenta la cabecera IP exterior, por lo que no es considerada del todo exhaustiva. Sin embargo, con la ayuda de un proceso de encapsulamiento adicional y de la traducción de direcciones de red (NAT), como sucede comúnmente en las conexiones DSL privadas, se pueden entregar correctamente los contenidos ESP.
El protocolo IKE es el principal responsable de la gestión del cifrado ESP. Para garantizar estas medidas de seguridad (Security Associations) entre emisor y receptor, utiliza el método Diffie Hellman para un intercambio seguro de claves, estableciendo las definiciones técnicas del framework ISAKMP.
La información necesaria para el envío de paquetes basado en IPsec es almacenada en dos bases de datos locales: SPD y SAD. Las entradas en la Security Policy Database (SPD) determinan, por ejemplo, qué protocolos de seguridad (AH, ESP o ambos) se utilizarán para establecer una conexión segura. El SAD gestiona los registros específicos de Security Association que han sido creados por el protocolo IKE, entregándole al emisario los métodos de cifrado (incluyendo la clave) y al receptor los métodos de descifrado.