Apple TouchID — обнаружение аутентификации по новым добавленным отпечаткам пальцев

#ios #objective-c #swift #touch-id

#iOS #objective-c #swift #touch-id

Вопрос:

Я интегрирую TouchID в свое приложение, по соображениям безопасности мне нужно блокировать пользователя, когда он пытается пройти аутентификацию по новым добавленным отпечаткам пальцев [который добавляется после включения аутентификации TouchID в моем приложении].

Я могу обнаружить изменения биометрии с помощью LAContext evaluatedPolicyDomainState . но это говорит только о том, что либо биометрическая база данных была изменена (пальцы или лица были удалены или добавлены), либо нет.

Есть ли какой-либо другой способ узнать, прошел ли пользователь аутентификацию с использованием недавно добавленного отпечатка пальца [добавлено после включения TouchID в моем приложении] или нет.

Есть мысли по этому поводу? ценю любую помощь и заранее благодарю.

Ответ №1:

Невозможно определить, была ли проведена биометрическая аутентификация с помощью «нового» или «старого» пальца. Это аппаратное ограничение.

Биометрическая проверка выполняется в безопасном анклаве. Безопасный анклав просто возвращает ответ «да» / «нет» главному процессору. Главный процессор не имеет доступа к фактическим биометрическим данным, которые были проверены.

Как вы уже отметили, вы можете определить, обновлялась ли биометрическая база данных с момента последней оценки состояния домена. Лучшее, что вы можете сделать, это аннулировать весь биометрический доступ, если вы определите, что база данных была изменена, даже если это изменение было удалением пальца.