Вопрос Web-программистам про безопасность

интернет компьютеры php безопасность flash

Дано: API ВКонтакте
Нужно: написать Flash-приложение, которое обращается к этому API, так, чтобы его было сложно взломать

Кто не знает, кратко опишу механизм:
1) На стороне сервера, когда мы устанавливаем приложение в ВКонтакте, мы задаём ему секретное слово Secret;
2) На стороне клиента, когда мы формируем запрос к серверу, слово Secret участвует в создании md5-суммы,
которая также отправляется на сервер. Таким образом сервер якобы может проверить подлинность запроса.

Проблема лишь в том, что .swf можно легко декомпилировать и узнать этот Secret.
Первое, что мне приходит в голову, это формировать md5-сумму на своём сервере (не ВКонтакте), где будет лежать и слово Secret.
А толку? Это лишь замедлит процесс взлома, но никак его не предотвратит.
Проанализировать трафик, узнать куда идёт запрос, и также обращаться к серверу за md5-суммой не составит труда.

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

Примечание:
> А общение с приложения с твоим сервером нужно для взлома аккаунтов ?

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

Примечание:
> апи в контакте позволяет хранить данные в своих переменных

Да это всё понятно. Вопрос не об этом.
Вопрос про то, как не дать посылать запросы API с идентификаторами приложения и пользователя вне приложения.
То что оно хранит в переменных, не исключает того, что в эти переменные можно извне запихать что угодно.

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

Примечание:
BlooDHounD.
Не внимательно я читал документацию. Вроде, ясно теперь.
А данные об игроке соответственно хранить на своём сервере по auth_key, а не во внутренних переменных ВКонтакте?

А ещё не подскажете, как можно избежать накруток уже от владельца аккаунта?
Т.е. игрок себе может понаписать в характеристики, что угодно.
Или тут уж никак не уберечься?
Приходит в голову только отлов резких скачков значений переменных пользователя.
Ответы:
А общение с приложения с твоим сервером нужно для взлома аккаунтов ?
Если вы боитесь, что вас поламают, декомпилировав ваш свф, нужно вводить в md5 данные, которые не хранятся в свф, а только в памяти - например введенный пароль пользователя, я так понимаю ваша программа будет многопользовательской? Или же контакту нужен одинаковый md5 для любой копии запущенной вами программы?
Если же вы боитесь анализа трафика
> Проанализировать трафик, узнать куда идёт запрос, и также обращаться к серверу за md5-суммой не составит труда.
то вам нужно вводить шифровать весь ваш трафик с помощью какой-нибудь системі с открытым и закрытым ключем. Это как бы две разные проблемы немного.
понятия Flash и "Безопасность" - несовместимы, в принципе !!!
Кира М. не храните secretKey на клиенте. на сервер отсылает только auth, который Вам передаёт контакт. всё общение с контактом перенесите на сервер. тогда Ваш secretKey, нигде не будет виден.
а не сможет он отсылать запросы, так как ему надо авторизироваться.
лучше хранить данные не по auth_key, а по viewer_id. если механизм авторизации изменится, то Ваша база не потеряется.


15 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

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

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.