Для доступа к данным приложения можно использовать механизм офлайн-аутентификации, реализованный с помощью методов шифрования. Шифрование обеспечивается методами библиотеки OpenSSL версии 1.1.0g.
Сценарий офлайн-аутентификации:
В первый раз аутентификация должна проходить онлайн. Пользователь вводит логин и пароль. Происходит проверка корректности учётных данных.
Мобильное приложение принимает логин и пароль, введенные пользователем, и формирует из них однострочный параметр.
К полученному параметру применяется хэш-функция SHA-256. К строке с вычисленным результатом хеш-функции добавляется дополнительный ключ (соль), после чего к полученной строке повторно применяется хеш-функция SHA-256.
Результат произведенных действий используется в качестве ключа, который передаётся для открытия и расшифровки данных из базы данных мобильного устройства.
В случае успешного открытия базы данных пользователь считается аутентифицированным и может начать работу с приложением без подключения к серверу мобильной платформы.
Примечание. Сформированные ключ шифрования/расшифрованная находится только в оперативной памяти приложения, что не позволяет получить доступ к данным, подключившись напрямую к файловой системе.
См. также: