¿La firma de huellas dactilares del iPhone es un hash de una sola vía?

17

He estado considerando la seguridad de la función de huella digital del iPhone 5S. Mi principal preocupación es que no es posible que alguien pueda replicar mi huella digital en el mundo físico y pasar por alto el teléfono; sin embargo, alguien podría reconstruir mi huella digital en función de la firma digital que está almacenada en el teléfono.

¿La huella dactilar se almacena como un hash unidireccional (o equivalente)? ¿Qué tan realista sería la posibilidad de la ingeniería inversa para crear la firma original?

Me imagino que una tabla de arco iris para un conjunto de firmas de hash de huellas dactilares sería casi imposible con el poder de cómputo de hoy.

    
pregunta Seth 09.10.2013 - 22:43
fuente

3 respuestas

21

Las huellas digitales no se pueden hashear. Bueno, puedes hacer un hash de cualquier secuencia de bits, pero eso no sería interesante en absoluto. Los lectores de huellas digitales, al igual que todas las aplicaciones biométricas, hacen medidas físicas que nunca son exactamente reproducibles. En cambio, el lector debe detectar las posiciones de algunos "puntos característicos" en la imagen del dedo (donde se encuentran las crestas, en su mayoría), y luego buscar una coincidencia con las huellas dactilares registradas en el teléfono. La coincidencia nunca es exacta, debido a la precisión limitada de la medida y los efectos de umbral inevitables.

La conclusión es que el teléfono necesariamente almacena la información sobre las ubicaciones de los "puntos característicos" de manera reversible, no como un hash. Puede que esta no sea la imagen completa del dedo, pero sería suficiente diseñar un dedo falso que engañaría a tu iPhone.

Ahora eso no debería ser una preocupación tan grande. El iPhone puede contener cierta información sobre sus huellas dactilares, pero su estuche también está cubierto con muchas copias precisas de las mismas huellas dactilares, simplemente porque sostiene el teléfono con las manos. Si alguien roba su teléfono, entonces puede tener sus huellas digitales sin siquiera molestarse en encender el teléfono.

Más generalmente, dejas tus huellas dactilares en todas partes, por ejemplo. en el pomo de cada puerta por la que pasas. Sus huellas dactilares no pueden considerarse secretas (en consecuencia, su uso para desbloquear una computadora o un teléfono siempre me ha parecido una idea bastante mala, al menos desde el punto de vista de la seguridad).

    
respondido por el Thomas Pornin 10.10.2013 - 00:22
fuente
14

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 :-)

    
respondido por el LateralFractal 10.10.2013 - 02:14
fuente
0

Según la documentación oficial de Apple no es posible recuperar su huella digital de los datos almacenados:

  

Touch ID no almacena ninguna imagen de su huella digital. Solo almacena   Una representación matemática de tu huella dactilar. No es posible   para que alguien haga ingeniería inversa de su imagen de huella digital real de   esta representación matemática.

Por lo tanto, si se puede confiar en Apple, su principal preocupación parece infundada.

    
respondido por el Gruber 10.03.2017 - 08:18
fuente

Lea otras preguntas en las etiquetas