Clave (criptografía)

Una clave, palabra clave o clave criptográfica es una pieza de información que controla la operación de un algoritmo de criptografía. Habitualmente, esta información es una secuencia de números o letras mediante la cual, en criptografía, se especifica la transformación del texto plano en texto cifrado, o viceversa. En sistemas informáticos, la clave sirve para verificar que alguien está autorizado para acceder a un servicio o un sistema. Las claves también se utilizan en otros algoritmos criptográficos, como los sistemas de firma digital y las funciones de hash con clave (asimismo llamadas códigos de autentificación de mensajes).

Un algoritmo bien diseñado debe producir, a partir del mismo texto plano, dos textos cifrados completamente diferentes si se usa una clave distinta. Similarmente, descifrar un texto cifrado con una clave errónea debería producir un galimatías aparentemente caótico. (En la criptografía denegable, dos claves pueden producir dos textos planos muy diferentes pero aparentemente normales.) Si la clave se pierde, los datos cifrados deberían ser irrecuperables en la práctica.

Los sistemas de cifrado que emplean la misma clave para el cifrado y el descifrado son conocidos como algoritmos de clave simétrica. En los años 70 se descubrieron nuevos métodos que usan un par de claves relacionadas, una para cifrar y otra para descifrar información. Estos métodos, llamados de criptografía asimétrica, permiten que una de las dos claves sea hecha pública, posibilitando así que cualquiera pueda mandar al poseedor de la clave privada un mensaje cifrado que sólo esta persona puede descifrar.

Criterios para escoger una clave

La clave puede ser una palabra con o sin sentido, lo que en inglés se denomina key (llave); o también una frase completa o passphrase, siendo esta última más segura debido a su mayor longitud.

La seguridad de una clave viene determinada por:

  • La longitud: cuanto mayor sea el número de bits de información en la clave, mayor es el número de combinaciones que debe probar un atacante que use la pura fuerza bruta. Por ejemplo, una clave compuesta de dos cifras necesita 100 intentos como máximo para ser descubierta, mientras que una clave de cinco dígitos requiere 100.000 intentos como máximo.
  • La aleatoriedad: si una clave es elegida basándose en palabras que existen en una lengua natural, es susceptible de ser rota mediante un ataque de diccionario. Por ello, una clave segura debe ser generada de una manera aleatoria, usando letras y números, así como símbolos ortográficos si es posible. Desde un punto de vista matemático, una clave es más segura cuanta más entropía contenga. Algunos sistemas informáticos contienen herramientas para "obtener entropía" de procesos impredecibles, como los movimientos de la cabeza lectora del disco duro. Sin embargo, la verdadera aleatoriedad sólo puede conseguirse mediante procesos físicos, como el ruido producido por el viento captado por un micrófono o, simplemente, un dado.
  • El periodo de uso: una clave se vuelve más insegura cuanto mayor sea el tiempo que ha estado en uso. Por eso es importante asegurarse de que se renuevan con suficiente regularidad, aunque hayan sido generadas con la mayor aleatoriedad posible.
Other Languages