Как сохранить конфиденциальные данные на iOS? Брелок или Outh2? Благодарю.

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

Как вы, ребята, справляетесь с этой сложной проблемой? Всем, кто знает, пожалуйста, поделитесь и спасибо заранее.

1 ответ

Решение

Брелок:

Имеет два уровня шифрования

  • код блокировки экрана в качестве ключа шифрования

  • ключ генерируется и хранится на устройстве)

Но когда устройство взломано, его тоже не безопасно.

OAuth:

Даже если вы храните учетные данные на сервере, вам необходимо сохранить OAuth- TOKEN на стороне клиента, и нет лучшего места, чем цепочка для ключей, чтобы хранить его на стороне клиента. Так что теперь появилась возможность извлечь TOKEN на взломанное устройство.

Насколько я знаю, в большинстве приложений они используют один из этих подходов.

Если вам нужны эти данные, чтобы быть очень очень безопасным.

Предложения:

  • Хранить OAuth-токен на сервере, а не на клиенте

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

Замечания:

Доступны некоторые библиотеки с открытым исходным кодом, которые обнаруживают, что ваше устройство или приложение взломано, если вы можете предпринять такие действия, как отключение TOKEN, удаление критических ресурсов, блокировка приложения и т. Д.

Другие вопросы по тегам