Cómo identificar el algoritmo de hashing [cerrado]

1

Quiero identificar el algoritmo hash utilizado por un servicio en línea. Lo que tengo ahora es miles de pares de cadena original y hash de resultado.

Algunos ejemplos:

62.152.39.195 25d10817d8d2836925
62.152.39.200 c20147df170843824c

El resultado es 18 caracteres hexadecimales, como puede ver. ¿Hay algún algoritmo para tal identificación? ¿Quizás algo relacionado con el aprendizaje automático?

    
pregunta kirugan 10.05.2014 - 16:42
fuente

1 respuesta

2

No, la mejor manera es intentar cada función hash, codificar como hexadecimal y encontrar el hash resultante dentro de esa cadena.

De Wikipedia sobre propiedades adicionales para funciones hash criptográficas: "Por lo tanto, una función hash criptográfica debe comportarse tanto como sea posible como una función aleatoria, a la vez que sigue siendo determinista y computable de manera eficiente".

Esa línea también significa que cualquier buena función hash criptográfica se puede truncar fácilmente a un tamaño más pequeño sin perder la seguridad adicional . La cantidad de seguridad sigue siendo la cantidad de bits de salida dividida por dos.

Todo esto supone que se trata de un hash criptográfico. Si es un hash normal, entonces es posible encontrar una coincidencia sin forzamiento brutal (pero no apostaría por ello). Si es un MAC en lugar de un hash, entonces necesitarías acceso a la clave.

Supongo que ya intentaste encontrar la documentación, por supuesto.

    
respondido por el Maarten Bodewes 10.05.2014 - 17:04
fuente

Lea otras preguntas en las etiquetas