Me di cuenta de que los tiempos de fuerza bruta (el tiempo que lleva encontrar un mensaje que contiene un hash determinado) de varios algoritmos de hash parece ser 2^(num_bits / 2) . Por ejemplo, la gente dice que el% de fuerza forzada SHA1 (sin usar la vulnerabilidad que reduce el tiempo de fuerza bruta a 2^69 ) es 2^80 . De hecho, si observa esta tabla , la columna "Seguridad (bits)" parece ser siempre la mitad del número de bits, y creo que se refiere al tiempo de búsqueda. ¿Cómo están obteniendo estos números? Pensaría que para forzar bruscamente un hash de 160 bits, uno debería al menos probar los mensajes 2^160 , o tal vez los valores 2^159 en promedio para encontrar mensajes. No creo que el ataque de cumpleaños sea relevante aquí, ya que parece tratarse de cualquier colisión, a diferencia de una colisión específica.