В последнее время я занимаюсь проблемами безопасности, в которых мое приложение может быть скомпрометировано путем получения моих client_id и client_secret.
Моя реализация хранила данные конфигурации в файле конфигурации (App.config), используя PCLAppConfig
плагин.В этом разделе вы создадите файл конфигурации, действие по сборке которого было выполнено как Embedded Resource.
Я подумал, что это было достаточно безопасно, поскольку он хранится в файле конфигурации, после того, как мой друг попытался провести тестирование на проникновение в моем приложении.В основном он просто делает следующее:
- Загрузите приложение в Google Play Store (пример для Android)
- Получите apk-эквивалент.(Он использует Share It)
- Переименуйте файл .apk в .zip
- Откройте с помощью инструмента отражения, и вы увидите все файлы DLL.Затем он видит, что под файлами dll (класс PCL) он может видеть файл .config.
В этот момент он знает все конфиденциальные данные, которые не должны быть известны пользователям.
Мой вопрос заключается в том, как надежно хранить эти конфиденциальные данные.Он не должен быть жестко закодирован, так как все коды были преобразованы в файл .dll, и его можно отслеживать с помощью Reflection Tool.
UPDATE
Все еще не решено