Мое приложение Android использует секретный ключ для генерации маркера в целях аутентификации. Существует ли более безопасный способ сохранить это, чем просто помещение этого в хранилище данных? Я думаю для iPhone, мы храним его в связке ключей. Я знаю о android.accounts. AccountManager, но это, кажется, дает другим приложениям потенциально способность получить доступ к паролю (если пользователь выбирает неправильную опцию), и так кажется менее безопасным.
Android (к сожалению) не позволяет это сделать. Подход, который я использовал раньше, - зашифровать этот токен другим ключом, сгенерированным в приложении.
Ключ вашего приложения может быть сгенерирован алгоритмически. Однако это безопасно настолько, насколько надежен ваш алгоритм. Как только это известно, это эквивалентно хранению токена в виде обычного текста.
Вы можете сохранить ключ в настройках вашего приложения. Это защитит ключ от чтения другими приложениями из-за ограничений файловой системы Android.
Но это не защитит ключ от чтения самим пользователем.