El Intercambio de claves de Internet (IKE) es un conjunto de protocolos de soporte creados por el Grupo de trabajo de ingeniería de Internet (IETF) y se utiliza con los estándares de seguridad de protocolo de Internet (IPSec) para proporcionar comunicaciones seguras entre dos dispositivos, o pares, a través de una red. Como protocolo, IKE se puede utilizar en varias aplicaciones de software. Un ejemplo común es configurar una red privada virtual segura (VPN). Si bien es estándar en prácticamente todos los sistemas operativos de computadoras y equipos de red modernos, gran parte de lo que hace el intercambio de claves de Internet está oculto a la vista del usuario promedio.
Los protocolos en IKE establecen lo que se llama una asociación de seguridad (SA) entre dos o más pares a través de IPSec, que se requiere para cualquier comunicación segura a través de IPSec. La SA define el algoritmo criptográfico que se utiliza en la comunicación, las claves de cifrado y sus fechas de vencimiento; todo esto luego ingresa en la base de datos de asociaciones de seguridad (SAD) de cada par. Si bien IPSec puede tener su SA configurada manualmente, Internet Key Exchange negocia y establece las asociaciones de seguridad entre pares automáticamente, incluida la capacidad de crear las suyas propias.
El intercambio de claves de Internet se conoce como protocolo híbrido. IKE utiliza un marco de protocolo conocido como Internet Security Association and Key Management Protocol (ISAKMP). ISAKMP proporciona a IKE la capacidad de establecer la SA y realiza el trabajo de definir el formato de la carga útil de datos y decidir el protocolo de intercambio de claves que se utilizará. ISAKMP es capaz de usar varios métodos para intercambiar claves, pero su implementación en IKE usa aspectos de dos. La mayor parte del proceso de intercambio de claves utiliza el método del Protocolo de determinación de claves de OAKLEY (OAKLEY), que define los diversos modos, pero IKE también utiliza algunos de los métodos del Mecanismo de intercambio de claves de origen (SKEME), que permite el cifrado de claves públicas y tiene la capacidad de Actualice las teclas rápidamente.
Cuando los compañeros desean comunicarse de forma segura, se envían lo que se llama «tráfico interesante» entre sí. El tráfico interesante son los mensajes que se adhieren a una política IPSec que se ha establecido en los pares. Un ejemplo de esta política que se encuentra en los firewalls y enrutadores se llama lista de acceso. La lista de acceso recibe una política de criptografía mediante la cual ciertas declaraciones dentro de la política determinan si los datos específicos enviados a través de la conexión deben cifrarse o no. Una vez que los pares interesados en la comunicación segura han hecho coincidir una política de seguridad IPSec entre sí, comienza el proceso de intercambio de claves de Internet.
El proceso IKE se lleva a cabo en fases. Muchas conexiones seguras comienzan en un estado inseguro, por lo que la primera fase negocia cómo los dos pares continuarán el proceso de comunicación segura. IKE primero autentica la identidad de los pares y luego asegura sus identidades determinando qué algoritmos de seguridad usarán ambos pares. Usando el protocolo de criptografía de clave pública Diffie-Hellman, que es capaz de crear claves coincidentes a través de una red desprotegida, Internet Key Exchange crea claves de sesión. IKE finaliza la Fase 1 creando una conexión segura, un túnel, entre los pares que se utilizarán en la Fase 2.
Cuando IKE ingresa a la Fase 2, los pares usan el nuevo IKE SA para configurar los protocolos IPSec que usarán durante el resto de su conexión. Se establece un encabezado de autenticación (AH) que verificará que los mensajes enviados se reciban intactos. Los paquetes también deben cifrarse, por lo que IPSec utiliza el protocolo de seguridad de encapsulación (ESP) para cifrar los paquetes, manteniéndolos a salvo de miradas indiscretas. El AH se calcula en función del contenido del paquete y el paquete está encriptado, por lo que los paquetes están protegidos de cualquier persona que intente reemplazar paquetes con paquetes falsos o leer el contenido de un paquete.
IKE también intercambia nonces criptográficos durante la Fase 2. Un nonce es un número o cadena que se usa solo una vez. Luego, un par usa el nonce si necesita crear una nueva clave secreta o para evitar que un atacante genere SA falsas, evitando lo que se llama un ataque de repetición.
Los beneficios de un enfoque de múltiples fases para IKE es que al utilizar la fase 1 SA, cualquiera de los pares puede iniciar una fase 2 en cualquier momento para renegociar una nueva SA para garantizar que la comunicación se mantenga segura. Una vez que el intercambio de claves de Internet completa sus fases, se crea un túnel IPSec para el intercambio de información. Los paquetes enviados a través del túnel se cifran y descifran de acuerdo con las SA establecidas durante la Fase 2. Cuando finaliza, el túnel termina, ya sea expirando según un límite de tiempo predeterminado o después de que se haya transferido una cierta cantidad de datos. Por supuesto, las negociaciones adicionales de la Fase 2 de IKE pueden mantener el túnel abierto o, alternativamente, iniciar una nueva negociación de la Fase 1 y la Fase 2 para establecer un túnel nuevo y seguro.