Безопасно ли хранить имя пользователя + пароль в локальной БД SQLite в Android?

Я в точке, где я могу позволить пользователю хранить учетные данные для простого веб-приложения в моей приложения для Android. Мой страх (будучи новым для Android) заключается в том, что другие (злые) приложения могут попасть в эту, казалось бы, локальную базу данных (локальную для моего приложения)

при написании этой функции я должен опасаться других приложений, получающих эти данные? Если да, то какой лучший способ зашифровать его локально (но помните, что мне нужно вытащить его в какой-то момент, чтобы войти в систему, когда они используют app)

спасибо!

2 ответов


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

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


нет... другие приложения не смогут получить доступ к частным данным, таким как ваша база данных sqlite. Но, стоит зашифровать хотя бы пароли, на всякий случай.