Ataque de fuerza bruta
De Wikipedia, la enciclopedia libre
En criptografía, se denomina ataque de fuerza bruta a la forma de recuperar una clave probando todas las combinaciones posibles hasta encontrar aquella que permite el acceso.
Dicho de otro modo, define al procedimiento por el cual a partir del conocimiento del algoritmo de cifrado empleado y de un par texto claro/texto cifrado, se realiza el cifrado (respectivamente, descifrado) de uno de los miembros del par con cada una de las posibles combinaciones de clave, hasta obtener el otro miembro del par. El esfuerzo requerido para que la búsqueda sea exitosa con probabilidad mejor que la par será <math>2^{n-1}</math> operaciones, donde <math>n</math> es la longitud de la clave (también conocido como el espacio de claves).
Otro factor determinante en el coste de realizar un ataque de fuerza bruta es el juego de caracteres que se pueden utilizar en la clave. Contraseñas que sólo utilicen dígitos numéricos serán más fáciles de descifrar que aquellas que incluyen otros caracteres como letras, así como las que estan compuestas por menos caracteres serán también mas faciles de decifrar, la complejidad impuesta por la cantidad de caracteres en una contraseña es logaritmica.
Los ataques por fuerza bruta, dado que utilizan el método de prueba y error, son muy costosos en tiempo computacional.
Ej: El algoritmo DES utiliza claves de 56 bits de longitud. Para quebrar por fuerza bruta un cifrado con DES se requerirán <math>2^{55}</math> operaciones.
[editar] En claves simétricas
Para cada intento de una llave del candidato el atacante necesita poder reconocer cuando él ha encontrado la llave correcta. La manera más directa es obtener algunos pares correspondientes del texto plano y del texto cifrado. Alternativamente, un ataque del texto cifrado solamente es posible descifrando el texto cifrado usando cada llave del candidato, y probando el resultado para la semejanza a la lengua del texto plano, por ejemplo, español codificado en el ASCII.
Las cifras simétricas con llaves de hasta 64 bits se han quebrado por ataques de fuerza bruta. El DES, una cifra ampliamente utilizada del bloque que utiliza 56 bits, estaba quebrado por el hardware de encargo en 1998 (véase la cookie del DES del EFF), y un mensaje cifrado con RC5 que usaba una llave de 64 bits estaba quebrada más recientemente por Distributed.net. Más recientemente, el COPACOBANA fue construido, es un triturador reconfigurable del código que se satisface para buscar el dominante de muchos algoritmos, incluyendo el DES. Además, se especula comúnmente que las agencias de inteligencia del gobierno (tales como la NSA de los E.E.U.U.) pueden atacar con éxito una cifra dominante simétrica con longitudes dominantes largas, tales como un dominante de 64 bits, usando fuerza bruta.
Si las llaves se generan de una manera débil, por ejemplo, derivada de una guessable-contraseña, es posible buscar exhaustivamente sobre un sistema mucho más pequeño, por ejemplo, llaves generadas de contraseñas en un diccionario. Ver el passphrase de la contraseña para más información.
[editar] Limitaciones teóricas
Los recursos requeridos para un ataque de fuerza bruta exponencial con el aumento del tamaño dominante, estan fuera de los alcances de esta época. El tamaño dominante que dobla el número requerido de operaciones, pero algo ajusta el número de operaciones requeridas. Así, aunque el bit 56 defina, por ejemplo ésos usados por el obsoleto cifrado estándar de datos (DES), resulta absolutamente práctico atacar por la fuerza bruta, esto no se cumple en llaves mucho más largas, tales como el cifrado estándar avanzado (AES), que utiliza llaves por lo menos de 128 bits de longitud.
Para romper una clave AES de 128 bits por fuerza bruta se necesitaria el equivalente de 8 grandes reactores nucleares dedicados funcionando continuamente por 100 años.
[editar] Códigos irrompibles
Ciertos tipos de cifrado, por sus características matemáticas, no se pueden derrotar por la fuerza bruta. Un ejemplo de esto es la criptografía one-time pad, donde cada bit tiene un bit dominante correspondiente. Un ataque de fuerza bruta no tendría ninguna manera de distinguir un bit del otro.
Una llave RSA de 1024 bits generada con OpenSSL, es una llave irrompible por fuerza bruta:
-----BEGIN RSA PRIVATE KEY-----
MIICXAIBAAKBgQCusTANUufsz4yxj3b5zhI8YUup/4NX2az/vfAoSJoYvJXxCrQX
ChJNU/+ZsMZXGG2Jwa4LKbqtj+jsiAdaLVNnm10KUSzu1w/t60/vIv7lkl7qi494
nFOPwqMFTVEVbc4QPHgiv+GGnEwMu/Pc2WBd+Cq33U3dU2xW4kq1Ei+elwIDAQAB
AoGBAJ3k0vzH+Y5mTdFTTYMeCgd/HWeK5ckqmx4QLBgM/xLqqU/Tj9DfLomsKXNd
fvfLwX3ojAnU7sDfOPVJQfP00dNuHfJ4PrQJskEHS2qUiIlCDVsZzTidl0OJTKxE
BLhCKaNJTnusAWSMST7yj7zJrlJ+/iXcnyJi89kenp83DJypAkEA1jnQzAJmhNpb
T1Ng1SLRNDdTrWTEX18f00fmlEjMUfQx/G1wIdgk90zRLZjs8xLzi2kROfARf/kM
mBs7LzUjHQJBANDB2BOQOPaML7vHpjmwgiWWs4viHSML3XEdvEhpVGgKOyw6O6MM
s9U/Agr1H5Rzsnr2sVBczVnnZgZejuVrxkMCQB4WzsnoyGd+l/ajWmV1V3cDEmC3
V5GhtcGiRrOrKe+U4fR3lplaV47YnkTORvG5RrXdEwtVOdAEtg0jPgPabc0CQC1W
O/AbvVNGJMO6W05iGBHDxeCWTc+jrwb290Iepfcmaa10RCloA9JHKdFpZN9ftR5h
Xybd0Lc6uvydIpmOq3MCQEoJjB0IGX24iB8hdbu8ItzzYz7QD2/KFIbHhe3iltd8
hJV/RQIqSklGnIjwaRYRpFF4795Xn0gT3ejJM7p0XSk=
-----END RSA PRIVATE KEY-----
de:Brute force attack en:Brute force attack ja:総当たり攻撃 pl:Atak brute force

