¿Qué es una clave de sesión?

Una clave de sesión es un método temporal para encriptar información. Cuando un usuario abre una sesión de comunicación, se genera una clave para esa sesión en particular. Esa clave se utiliza para todas las comunicaciones durante ese período y luego se descarta cuando finaliza la sesión. Las claves de sesión suelen ser simétricas y relativamente sencillas en lo que respecta a la criptografía. Esta simplicidad generalmente sería una gran desventaja de usar la clave, pero dado que hay tantas claves en funcionamiento al mismo tiempo y las claves no se usan por mucho tiempo, no es un gran problema.

La criptografía opera mediante claves. Una clave se usa para codificar o encriptar datos y otra para desencriptarlos o desencriptarlos. Cuando estas claves son iguales, o al menos muy similares, entonces son simétricas. Cuando las claves son muy diferentes, es un sistema asimétrico. En la mayoría de los casos, una clave simétrica es menos segura que una asimétrica, ya que romper una clave abre completamente el código.

Las claves de sesión se diferencian de las claves típicas en una forma importante; están creados para existir por muy poco tiempo. A diferencia de una clave normal, que puede usarse sin modificaciones durante años, una clave de sesión solo debe usarse durante unos segundos o unas pocas horas. Por ejemplo, una clave se genera cuando un usuario se conecta para revisar su correo electrónico y luego se descarta cuando cierra la sesión. Esto le da a estas claves una variedad de ventajas e inconvenientes que son exclusivos de este estilo de cifrado.

Su mayor ventaja es su volumen. Dado que cada sesión de comunicación utiliza una clave única, incluso una empresa de tamaño medio puede generar cientos de claves todos los días. La gran cantidad de claves que un atacante potencial necesitaría examinar solo para acceder a información importante es inmensa. Si bien cualquier clave de sesión determinada puede ser relativamente fácil de romper, la probabilidad de que esa clave aleatoria tenga información importante es muy baja.

Una de las principales influencias en la facilidad para romper claves es la cantidad de material encriptado que puede usarse como referencia. Cuanto más material esté disponible, más fácil será romperlo. Dado que una clave de sesión tiene una cantidad muy pequeña de material de referencia, la simplicidad de la clave es menos importante.

Por otro lado, las claves de sesión son bien conocidas por tener algoritmos mal hechos y códigos que se rompen fácilmente. Esto se vuelve especialmente evidente cuando los atacantes comienzan a encontrar patrones en la generación de claves o realizan ingeniería inversa en el algoritmo real. En cualquiera de estos casos, el sistema de claves de sesión se abre de par en par y no proporciona ninguna seguridad.