Защищайте данные в безопасном хранилище с помощью биометрии

#android #ios #flutter #keychain #android-keystore

#Android #iOS #флаттер #брелок #android-хранилище ключей

Вопрос:

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

Я обнаружил, что это возможно сделать в Android, но мне не удалось заставить его работать:
https://labs.f-secure.com/blog/how-secure-is-your-android-keystore-authentication/
https://riptutorial.com/android/example/29719/how-to-use-android-fingerprint-api-to-save-user-passwords

В iOS:
https://developer.apple.com/documentation/localauthentication/accessing_keychain_items_with_face_id_or_touch_id

Пакет защищенного хранилища Flutter: https://pub.dev/packages/flutter_secure_storage

flutter_secure_storage — это простой пакет, и я не видел ни одной возможности добавить биометрическую подсказку при доступе к хранилищу.

Есть ли какой-либо способ добавить запрос биометрии на доступ к защищенному хранилищу из программы Flutter с использованием существующих пакетов?

Комментарии:

1. Вы видели / пробовали: pub.dev/packages/biometric_storage

2. Похоже, это все, мне нужно попробовать (я сейчас на телефоне :). Спасибо.

Ответ №1:

Я лично использовал бы пакет local_auth. Он более гибкий, чем biometric_storage, и может использоваться на устройствах, которые не поддерживают все формы биометрического хранения (отпечаток пальца, идентификатор лица и т. Д.).

Ответ №2:

Существует пакет Flutter, который делает именно то, что вы ищете, под названием biometric_storage. Он хранит строку данных в хранилище ключей / связке ключей, и данные доступны только после аутентификации с помощью биометрии. Для записи файла в хранилище ключей / связку ключей требуется биометрическая аутентификация, поэтому при сохранении данных вам также будет предложено выполнить биометрическую аутентификацию.