No se utiliza un hash criptográfico: no.
Pero puedes usar un Fuzzy Hash o Hashing sensible a la localidad . Los hashes difusos son diferentes de los hashes normales en que permiten que se agrupen contenidos similares en el espacio de colisión de hash *.
Por lo general, unidireccional significa que no se puede inferir qué hash, pero con hashes difusos, si conoce un archivo similar (imagen de huella dactilar) que coincida con el hash (colisión), entonces sabrá qué fue lo que se estaba haciendo.
Si alguna propiedad unidireccional funcional puede existir para un hash difuso depende de si el atacante tiene que recurrir a la adivinación de fuerza bruta de las entradas para encontrar un hash difuso coincidente. Esto se llama resistencia previa a la imagen.
Considere que existen muchas huellas dactilares únicas, al menos tantas como la población actual de la Tierra (~ 2 33 ) y que existe un hash difuso de huellas dactilares que colapsa de manera confiable ( una orden muy alta ) hasta este espacio de colisión o más grande. Quieres que los atacantes tengan que aplicar fuerza bruta en 2 entradas 33 en lugar de simplemente invertir el hash.
Si tal hash borroso existiera, podría protegerse contra una inversión directa pasando el hash a través de un hash criptográfico secundario. Al proporcionar el hash difuso colapsado de manera confiable y consistente en primer lugar, no perderá ninguna precisión de coincidencia después de volver a usar un hash criptográfico con un espacio de colisión mucho mayor. Así que buena suerte al saber cuál fue el hash difuso interino, siempre que el hash secundario agregue una sal aleatoria.
El componente difuso lo convierte en un hash no criptográfico de una sola vía, ya que la "borrosidad" de la imagen coincide y contradice la propiedad de una fuerte resistencia a la colisión.
fuzz() = Mythical_perfectly_consistent_fuzzy_hash_function_for_fingerprints();
salt = application's public random salt
hash_result = SHA-512(salt, fuzz(fingerprint.input))
* En este punto, todos los criptógrafos en la sala deberían gritar asesinatos a sangre fría y sacar sus Uzis :-)