Nano Hash - криптовалюты, майнинг, программирование

Android Oauth хранит учетные данные клиента

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

Спасибо!


  • Нельзя встроить пароль в APK таким образом, чтобы его можно было извлечь (программой) и нельзя было извлечь (подглядыванием). Более интересные вопросы: а зачем вам это? 11.11.2014
  • Я синхронизирую данные с моего php-сервера, используя oauth. Я никогда не заставляю пользователя проходить через поток oauth, потому что синхронизация обрабатывается в фоновом режиме. Они никогда не вводят учетные данные, поэтому их нужно где-то сохранять. 11.11.2014
  • Извините, но в этом нет никакого смысла. Как тот факт, что синхронизация происходит в фоновом режиме, связан с тем, что пользователи не проходят этап аутентификации/авторизации? Ваш сервер и хранящиеся на нем данные полностью открыты, если вы встроите в APK фиксированный, не зависящий от пользователя пароль. В качестве оптимизации рассмотрите возможность удаления слоя OAuth. Это, конечно, не сделало бы это менее безопасным. 11.11.2014
  • Я не понимаю, что вы имеете в виду. Конечно, я хочу oauth, потому что он предотвращает доступ неавторизованных людей к моему API. Я следую потоку oauth, но это происходит в фоновом режиме и не заставляет пользователя входить в систему с помощью формы веб-сайта. Я использую тип аутентификации с предоставлением пароля и отправляю client_id, client_secret, имя пользователя/адрес электронной почты и пароль для запроса токена. После получения токена я отправляю его вместе с каждым вызовом API. Если я делаю вызов API без токена, на странице отображается отказ в доступе. Я спрашиваю, как безопасно включить client_id, client_secret, имя пользователя, пароль в APK 11.11.2014
  • Я повторяю: вы не можете безопасно включать пароль в APK. Это там для всех, чтобы взять. Использование OAuth с фиксированным идентификатором пользователя и паролем не обеспечивает никакой безопасности. 14.11.2014

Ответы:


1

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

17.11.2014
Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

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

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

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

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..