Twitter XAuth против открытого источника

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

С другой стороны, помещать ключ непосредственно в двоичный файл также не имеет смысла. Я пишу свое приложение на python, поэтому, если я просто предоставлю pyc-файлы, это еще одна секунда, чтобы получить ключи, благодаря отличной способности отражения Python. Если я создаю небольшой.so-файл с ключами, то также легко получить ключ, посмотрев на необработанный двоичный файл (ключи имеют фиксированную длину и набор символов).

Каково твое мнение? Действительно ли это безопасная дыра для раскрытия ключей API?

1 ответ

Решение

Дыра в безопасности? В общих чертах, да. Реалистично, однако, что речь идет не о ядерных кодах запуска.

Самое худшее, что может случиться, это то, что кто-то может взять и использовать ключи вашего приложения, чтобы сделать что-то против TOS в Твиттере, что приведет к тому, что ключи будут забанены. Никакие пользовательские данные не будут уязвимы, так как вы не распространяете пользовательские токены (это было бы намного хуже с точки зрения безопасности). Поскольку любой желающий может бесплатно зарегистрировать приложение в течение 2 секунд, единственная причина для такого подражания заключается в том, чтобы подорвать репутацию вас или вашего приложения.

Одна вещь, которую вы могли бы сделать, это исключить их из исходного кода, но дать понять, что для компиляции пользователя из исходного кода необходимо получить свои собственные ключи и поместить их в подходящее место, но оставить их в бинарной версии, которую вы распространяете. Не на 100% безопасен, но делает это немного сложнее, что будет сдерживать определенное количество бездельников.

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