Безопасно ли хранить пароль защищенной службы / файла / базы данных в коде в Android?

1

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

  1. Я рассмотрел SharedPreferences как способ получения информации, но мне нужно создать приложение, которое будет хранить пароль в первом случае, что само по себе означает, что мне нужно записать его на код где-нибудь или в другом

  2. Диспетчер учетных записей - это еще один способ, который я рассмотрел.

  3. Храните фактический пароль в зашифрованном формате AES, в файле или в sqlite db. Но это означает, что ключ должен быть в коде.

Я бы подумал, что это довольно распространенная проблема, с которой сталкиваются люди, и мне интересно, как люди это решали!

  • 0
    это также может быть полезно stackoverflow.com/q/9838684/1007273
  • 0
    я не понимаю, почему кто-то даже -1ed мой QSN ...
Теги:
security
passwords

1 ответ

-2

По-моему, вы можете шифровать свои данные с помощью AES-шифрования. Но главная проблема заключается в том, что ключ небезопасен. APK можно декомпилировать. Таким образом, есть способ скрыть ключ. Имплантация немного сложна. Используйте собственное кодирование (NDK). Вы можете написать свой ключ в файле C, а после компиляции вы получите файл.SO. Этот файл может быть включен в ваш проект. Сделайте вызов из java в функцию C и верните ключ. Но другая проблема заключается в том, что строки, написанные на C, видны при открытии файла.SO. Поэтому присвойте сгенерируйте код ascii вашего ключа и создайте строку, используя код ascii в C.

  • 0
    Хранение ключа в вашем коде (в том числе нативном и в ascii) не обеспечивает безопасность, а обеспечивает неясность. Это может быть приемлемо для вас или нет, в зависимости от цены потери доступа к вашим защищенным данным, но следует понимать, что с помощью этого метода кто-то, кто хочет получить данные , получит их.
  • 0
    Файл .SO не может быть декомпилирован. Создайте строку, используя ascii в самом C
Показать ещё 6 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню