La descripción general es que ciframos las credenciales usando el código PIN como la frase de contraseña que el usuario también establece. Uno de los requisitos es NUNCA GUARDAR EL CÓDIGO PIN en cualquier momento y en cualquier lugar.
Cada vez que el usuario sale de la aplicación o sale de la aplicación, se mostrará una pantalla de bloqueo cuando el usuario vuelva a ejecutar la aplicación que solicita el código PIN del usuario. La aplicación luego intentará descifrar la credencial usando el código pin que el usuario ingresó.
Ahora, si el descifrado es exitoso, colocamos la credencial en una variable en nuestro singleton porque necesitamos la credencial para varias cosas como la regeneración de sesión con el servidor y como frase de contraseña para cifrar los archivos descargados.
Me gustaría preguntar si es seguro hacerlo, ya que según mi investigación, así es como lo hacen los desarrolladores web, pero los sitios web tienen servidores que están protegidos dentro de una empresa, a diferencia de un dispositivo iOS en el que cualquiera puede tener acceso. .