Descifrado de un hash mediante Fuerza Bruta: GPU vs CPU JUAN SEBASTIAN OTÁLORA LEGUIZAMÓN GRUPO DE INTERES EN SEGURIDAD, AUDITORIA Y CONTROL [GISAC] INGENIERIA DE SISTEMAS UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS
CONTEXTO: CRIPTOGRAFÍA Criptografía Simétrica[1] Criptografía Asimétrica[2] Hash: secuencia de caracteres generados por un algoritmo criptográfico TEXTO ORIGINAL: cpu1gpu MD4 59E689D3146389CA22DFA45A7EB74DAA MD5 6D1215EE1CD6A284E5C71661AC5B72A3 SHA-1 84E52333AA66812693CE0AFF2810C2941B525EE6 [1][2] Tipos de criptografía: simétrica, asimétrica e hibrida, http://www.genbetadev.com/seguridad-informatica/tipos-de-criptografia-simetrica-asimetrica-e-hibrida
DESCIFRADO: FUERZA BRUTA Recuperar una clave probando todas las combinaciones posibles hasta encontrar aquella que permite el acceso. Obtener las claves necesarias para acceder a un sistema, sitio web, etc. consistente en utilizar combinaciones aleatorias, listados de palabras, así como el método prueba y error, hasta alcanzar una combinación correcta.
HERRAMIENTAS CPU GPU CAIN&ABEL IGHASHGPU
DIFERENCIAS 2 horas y 23 minutos
ESTADISTICAS Tiempo GPU: 1,066 minutos CPU: 143 minutos Por lo que: GPU 134 veces más rápido Passwords por segundo. GPU: aprox. 220’437.495 por segundo CPU: aprox. 6’467.516 por segundo Por lo que: GPU genera 34 veces más claves por segundo Passwords Procesadas GPU: 14.042’529.792 claves procesadas CPU: 33.910’160.866 caves procesadas Máxima cantidad posible: 36 7 claves = 78364164096 claves Por lo que: GPU procesó 2,4 veces menos passwords
CONCLUSIONES Los algoritmos asimétricos otorgan una característica sobresaliente y es que obtener un cifrado a través de alguno de ellos a pesar de ser complejo es más simple que su desencriptación pues no se conoce la llave que llevara a ese mensaje original. La fuerza bruta abre la oportunidad de descifrar passwords de las cuales no se conoce su llave de desencriptación aunque el proceso gaste -poco o mucho- tiempo y recursos, es una alternativa segura. Las unidades de procesamiento otorgan herramientas de solución de peticiones siendo unas más rápidas que otras. La GPU al ser diseñada para procesos gráficos, aprovecha cientos de procesos simultáneos para minimizar la lógica de control