¿Dónde se guarda nuestro patrón de bloqueo de teléfonos inteligentes?

El usuario ingresa el patrón de bloqueo de puntos de unión en una matriz 3 × 3 en el orden elegido. Desde Android 2.3.3, este patrón debe incluir un mínimo de 4 puntos (en versiones anteriores de Android, el mínimo era de 3 puntos) y cada punto solo se puede usar una vez. Los puntos de la matriz se registran en un orden numerado que comienza en 0 en la esquina superior izquierda y termina en 8 en la esquina inferior derecha. Entonces, el patrón de la pantalla de bloqueo en la siguiente figura sería 0 – 3 – 6 – 7 – 8 .

Android almacena este patrón en un archivo especial llamado gesto.key en / data / system / . Como almacenar el patrón en texto sin formato no sería muy seguro, Android solo almacena un hash SHA1 sin sal de este patrón (consulte el fragmento de código más adelante). En consecuencia, nuestro patrón se almacena como c8c0b24a15dc8bbfd411427973574695230458f0 .

Debido al hecho de que el patrón tiene un número finito y muy pequeño de combinaciones posibles, el uso de un hash sin sal no es muy seguro. Es posible generar un diccionario (tabla de arco iris) con todos los hashes posibles y comparar el hash almacenado con ese diccionario en unos segundos. Para garantizar más seguridad, Android almacena el archivo gest.key en un área restringida del sistema de archivos donde un usuario normal no puede acceder a él.

Los datos del patrón de su teléfono Android se guardan en:

/data/system/gesture.key

Es un archivo encriptado, así que dudo que puedas leerlo. Además, el acceso a este archivo está restringido y debe tener permisos de root para poder leerlo o acceder a él. No estoy seguro de qué tipo de cifrado usa Android, pero creo que es RSA.

Además, si logra eliminar este archivo, ya sea mediante una recuperación personalizada o un explorador de archivos, se eliminará el bloqueo de patrón. El comportamiento exacto depende del firmware que esté ejecutando: en algunos, la pantalla de bloqueo simplemente no solicita ningún patrón, y en otros al ingresar cualquier patrón se desbloqueará el teléfono, pero la pantalla aún permanece.