|
|
|||||
Смысл api_secret?
В популярном API ВКонтакте (впрочем, пожалуй, и на любом другом API) перед отправкой запроса существует параметр api_secret, который якобы устанавливает подлинность приложения. Только что декомпилировал "Счастливого фермера" и в исходниках без труда нашёл пароль. Вот у меня в связи с этим вопрос возник. Какой смысл в этом api_secret? Есть ли реальные способы его скрыть?
|
|
|||||
Регистрация: Aug 2007
Сообщений: 467
|
Не надо хранить этот ключ в открытом виде. Надо хотябы затруднить его нахождение/вычисление.
__________________
Лучше быть умным и иногда делать глупости, чем глупым и постоянно умничать! |
|
|||||
Если не забивать жестко api_secret, то ваше приложение может любой юзер взять и опубликовать из-под себя, доверяя тому secret, что вы ему передадите извне...
Ну получили вы этот api_secret и что? Этот ключ для общения клиента с контактом - дергать инфу и не более. Что он вам даст то?))) Ключ для общения с сервером и платежами - другой, его в клиенте не хранят, так что можете не искать =)
__________________
Стой! Опасная зона! Работа мозга! |
|
|||||
Вся фигня в том, что вот я, например, только что увидел приложение "Жук" (например) и только что подделал там таблицу рекордов, вытащив ключ. Есть ли какие-нибудь способы защиты? Не хочу, чтобы с моим приложением поступили также.
|
|
|||||
Регистрация: Aug 2007
Сообщений: 467
|
Спрячьте ключ.
__________________
Лучше быть умным и иногда делать глупости, чем глупым и постоянно умничать! |
|
|||||
Регистрация: Jul 2007
Адрес: Дубна, Моск.обл.
Сообщений: 108
|
chatman,
конечно, есть, для этого и придуман auth_key и api_secret2 (со страницы платежей). Держите этот secret на сервере и проверяете auth_key на подлинность, и запросы можно подделать уже только от своего ID. Далее, переносите всю логику игры на сервер, где и ведете игровой счет и т.д. Таким образом, подделанные запросы от своего ID тоже можно определить: ну например какая-нибудь карточная игра - карты имеют номера 1-36; на каком-то этапе игры в базе лежит информация о том, что у юзера есть карты 1,2,3; соответственно, когда от него приходит запрос (походить такой-то картой с номером, переданным как параметр), проверяем, что этот параметр совпадает с одним из номеров карт, которые на руках, в данном случае, 1, 2 или 3. Если не совпадает - запрос подделан, отбрасываем. Для обеспечения хорошей безопасности в клиенте должны быть только интерфейс и графическое отображение хода игры. Надеюсь, мое сообщение оказалось вам полезным |
|
|||||
блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
|
Цитата:
Мысль понятна?
__________________
Тут мужик танцует и поёт про флэш |
|
|||||
Некропостер детектед!
__________________
Стой! Опасная зона! Работа мозга! |
|
|||||
блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
|
Эээ... у меня эта тема показалась в "новых сообщениях". Походу её апнул кто-то. Извиняюсь )
__________________
Тут мужик танцует и поёт про флэш |
Часовой пояс GMT +4, время: 09:48. |
|
« Предыдущая тема | Следующая тема » |
|
|