¿Cómo funciona el "intercambio de clave encriptada"?

El intercambio de clave encriptada es un protocolo, o conjunto de reglas, que permite a dos partes compartir una contraseña común para comunicarse en una red insegura sin exponer esta contraseña. Este protocolo fue desarrollado originalmente por Steven Bellovin y Michal Merritt de Laboratorios AT&T Bell, quienes produjeron un trabajo seminal en el tema.

Encriptación asimétrica y simétrica

El intercambio de clave encriptada implica una combinación de encriptación asimétrica, o de clave pública, y simétrica, o de clave privada. El encriptado de clave pública utiliza un par de claves relacionadas (valores que deben ser alimentados con una fórmula matemática o algoritmo, para decodificar el mensaje encriptado), una de las cuales es conocida por las dos partes y la otra se mantiene privada, o secreta. El encriptado de clave secreta, por otro lado, utiliza una sola clave secreta para encriptar y desencriptar mensajes.

Derivación de clave

En el intercambio de clave encriptada, una clave secreta, o contraseña, es derivada de la clave pública de una parte y la clave privada de la otra parte. La clave secreta compartida se usa entonces para encriptar comunicaciones subsecuentes entre las partes, quienes no tienen conocimiento previo entre sí, usando un sistema de cifrado de clave simétrica. Los pares de claves públicas y privadas pueden generarse una y otra vez, cada vez que se ejecute el protocolo, para mantener la seguridad.

Efectividad

A diferencia de protocolos clásicos de cifrado, el intercambio de clave encriptada proporciona protección contra ataques activos, en los que un atacante intenta adivinar la contraseña, y tipos más sofisticados de ataques en línea, conocidos como ataques diccionario. En un ataque de este tipo, el agresor intenta todas las combinaciones posibles de claves secretas en un pequeño conjunto de valores, conocido cono el diccionario, para tratar de romper la seguridad del esquema de encriptado por fuerza bruta.

Limitaciones

En su forma original, el protocolo de intercambio de clave encriptada requería que ambas partes tuvieran la contraseña compartida almacenada en forma desencriptada, conocida como cleartext. Además, el protocolo original protegía contraseñas enviadas en una red, pero requería un centro de distribución de claves actuando como tercero. Estas limitaciones presentaban problemas, particularmente si un usuario accedía a una computadora que no contaba con un servidor de clave segura para la autenticación, y se llevó a lo que se conoce como intercambio mejorado de clave encriptada. Este sistema no requiere contraseñas para almacenarse en forma desencriptada; las contraseñas del usuario local están protegidas por los mecanismos de protección de archivos del sistema operativo local, las contraseñas de usuarios remotos están protegidas por el mismo protocolo y no hay terceros implicados en el proceso.