Каковы риски раскрытия не столь секретного ключа oauth?Есть ли обходные пути? - PullRequest
7 голосов
/ 16 января 2012

В настоящее время я разрабатываю мультиплатформенное приложение, которое использует Twitter, включая аутентификацию через oAuth.

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

Каковы риски, связанные с этим?Неужели кто-то может «скачать и проверить» бинарный файл вашего приложения, чтобы извлечь ваш ключ, а затем может притвориться вашим приложением (фишинговый стиль)?Или есть другие риски?


Помимо рисков, есть ли какие-нибудь обходные пути или решения, о которых люди знают?

Единственное решение, которое я уже видел, состоит в том, что некоторые люди обходят этопутем маршрутизации всех вызовов Twitter через их собственный веб-сайт - например, Twitter OAuth только с ключом Consumer (не используйте Consumer Secret) на iPhone и Android - но это кажется довольно медленным и дорогостоящим - я бы предпочел не маршрутизировать все вызовычерез мой собственный веб-сервис, если я могу избежать этого (или я неправильно понял решение - это только авторизация, проходящая через веб-сайт?)

Ответы [ 2 ]

1 голос
/ 19 мая 2012

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

Недостатком, который я вижу, является то, что кто-то, возможно, все еще может запустить ваше приложение под отладчиком, проверить память и получить ключ.

1 голос
/ 16 января 2012

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

В этом выступлении Google I / O есть несколько указаний на запутывание кода, чтобы сделать его более трудным для обратного инжиниринга. http://www.google.com/events/io/2011/sessions/evading-pirates-and-stopping-vampires-using-license-verification-library-in-app-billing-and-app-engine.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...