Clave débil para niños
Una clave débil en criptografía es como una contraseña secreta que, cuando se usa con un método de cifrado (un algoritmo), hace que ese método no funcione tan bien como debería. Esto significa que el mensaje secreto podría ser más fácil de descifrar para alguien que no debería verlo.
Las claves débiles son muy raras. Si se elige una clave al azar, es muy poco probable que sea una clave débil. Aun así, los expertos en seguridad prefieren que los métodos de cifrado no tengan ninguna clave débil.
Contenido
¿Qué son las claves débiles en DES?
El algoritmo DES es un método de cifrado antiguo. Tiene algunas claves que son débiles y otras que son "semi-débiles". Estas claves hacen que el proceso de cifrado de DES funcione de una manera muy particular, casi como si estuviera descifrando al mismo tiempo.
Cuando DES cifra un mensaje, usa una clave secreta de 56 bits. Esta clave se divide en 16 partes más pequeñas, llamadas "sub-claves", que se usan en cada uno de los 16 pasos del cifrado.
Las claves débiles de DES son aquellas que hacen que las 16 sub-claves sean exactamente iguales. Esto sucede cuando los bits de la clave son:
- Todos ceros.
- Todos unos.
- La primera mitad ceros y la segunda mitad unos.
- La primera mitad unos y la segunda mitad ceros.
Si todas las sub-claves son iguales, cifrar un mensaje dos veces con la misma clave débil lo devuelve a su estado original. Es como si el cifrado se deshiciera a sí mismo.
DES también tiene claves semi-débiles. Estas vienen en pares, por ejemplo, K1 y K2. Si cifras un mensaje con K2 y luego el resultado lo cifras con K1, obtienes el mensaje original. Hay seis pares de estas claves semi-débiles.
Aunque DES tiene estas claves débiles y semi-débiles, son muy pocas en comparación con la enorme cantidad de claves posibles (más de 72 mil billones). Por eso, es muy improbable que alguien elija una clave débil por accidente. Sin embargo, DES ya no se recomienda para proteger información importante, porque las computadoras modernas pueden descifrarlo con un ataque de "fuerza bruta" (probando todas las claves posibles) en poco tiempo.
Otros métodos con claves débiles
Algunos otros métodos de cifrado también han tenido problemas con claves débiles:
RC4 y sus puntos de partida
El método RC4 tenía ciertos "vectores de inicialización" (puntos de partida para el cifrado) que eran débiles. Esto permitía a los atacantes, si conocían parte del mensaje original, descubrir el resto. Esto fue un problema para la seguridad de algunas redes Wi-Fi antiguas, como WEP.
IDEA y patrones en el cifrado
En el método IDEA, algunas claves débiles permitían a los atacantes encontrar patrones predecibles entre el mensaje original y el mensaje cifrado. Aunque no hay una lista de estas claves, se pueden identificar por su estructura.
Blowfish y sus "cajas S"
El método Blowfish puede generar "S-Boxes" (tablas internas que ayudan a mezclar los datos) que no son tan buenas si se usan ciertas claves. Esto hace que sea más fácil atacar versiones simplificadas de Blowfish. Sin embargo, para la versión completa de Blowfish con todas sus rondas de cifrado, no se ha encontrado un riesgo real por estas claves.
¿Cómo se evita que aparezcan claves débiles?
El objetivo al diseñar un método de cifrado es que todas las claves sean igual de fuertes. Si un método tiene algunas claves débiles, es importante que sean muy pocas y que se puedan identificar fácilmente. Los métodos con claves débiles desconocidas no son seguros.
Hay dos formas principales de evitar usar claves débiles sin querer:
- Revisar la clave: Cuando se genera una clave, se puede comparar con una lista de claves débiles conocidas para asegurarse de que no sea una de ellas.
- Generación aleatoria: Si las claves débiles son muy pocas, generar claves al azar hace que la probabilidad de obtener una débil sea casi nula.
Un gran número de claves débiles es un problema serio para un método de cifrado. Aumenta la posibilidad de que una clave elegida al azar sea débil, poniendo en riesgo la seguridad de los mensajes. Además, revisar una lista muy larga de claves débiles conocidas para cada nueva clave generada puede hacer que el proceso sea más lento.
Las claves débiles se vuelven un problema aún mayor si un atacante puede influir en qué claves se usan, por ejemplo, cuando un método de cifrado se utiliza para crear una función criptográfica de hash segura.
Véase también
En inglés: Weak key Facts for Kids