Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Серверные технологии и Flash (http://www.flasher.ru/forum/forumdisplay.php?f=62)
-   -   Онлайн-игры и защита от лома (http://www.flasher.ru/forum/showthread.php?t=70931)

Exie 11.11.2005 14:23

Цитата:

Сообщение от iNils
Потом лог всех победителей пропускался через механнику той же игры (просто вместо действий пользователя использовались данные лога) и смотрелась реальность ситуации. Времени опять же занималось мало.

Благодарю. Этого вполне достаточно. Засунуть во флэшового робота лог и глазками посмотреть, насколько игровой процесс соответствовал реальности - задача вполне посильная, если победителей не сто на дню. А если их будет по сто на дню, то и модерирующий состав можно нанять %))

Аркади 16.11.2005 11:32

Есть ли способы разобрать что в файле после обсфускачивания прогой SWFEncrypt ?

Ion 16.11.2005 13:52

Если в п-коде рубишь, то, наверное, да

Skubent 16.11.2005 16:57

Запускаем игру N раз ( не более 10, для начала).
Смотрим, что и когда летит к серверу.
В случае тетриса - кольцуем "лог игрового процесса" :)

А что касается шифрования... Алгоритм - двухсторонний, иначе не восстановишь лог для анализа.
В общем, отдавать на клиент "все" и получать "в конце результат" - имхо, здоровенная такая дыра.

Loki666 25.01.2006 23:29

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

Сделал так (если кто укажет на недостаток механизма, буду только признателен)

На HTML странице, там где загружается Flash. Flash-ке передается от сервера некий ID (ключ).

<PARAM NAME=FlashVars VALUE=”id=asd398djs783jd8213nd” >

Который сервер генерирует, следующим образом (php)
$id = md5(Session_id() . time());

(md5 тут уже лишний, но это просто для разнообразия).
Тут же сервер в базу заносит пометку, с этим кличем.

Как только Flash-ка загрузилась, она соединяется с сервером по средствам XMLSocket-ов (в качестве сервера скрипт на Perl) и отсылает ID. Сервер принимает ключ, смотрит есть ли он в базе, если есть, то удаляет эту запись и оставляет connect. Если нету, то делает disconnect клиенту.

Был бы очень признателен, если бы прокомментировали ;)

Loki666 25.01.2006 23:41

Хотя, как уже было сказано, можно взломать все что угодною Уверен есть брешь и тут :(

aQuestion 26.01.2006 18:11

Цитата:

Сообщение от Loki666
Как только Flash-ка загрузилась, она соединяется с сервером по средствам XMLSocket-ов (в качестве сервера скрипт на Perl) и отсылает ID. Сервер принимает ключ, смотрит есть ли он в базе, если есть, то удаляет эту запись и оставляет connect. Если нету, то делает disconnect клиенту.

заменяем в этом тексте "Flash-ка" на "подделанная Flash-ка". что меняется?

aQuestion 26.01.2006 18:17

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

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

Loki666 27.01.2006 03:39

Ну и, а ключа то она не знает. Принцип.
HTML > Flash > В первом же фрейме Flash конектится и отдает ключ.

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

Допустим мы зашли через сайт открыли нормальную Flash-ку. Скопировали ее клич, и записали в поддельную, но нормальная Flash-ка уже соединилась и ключ уже больше не действителен. :confused:

Loki666 27.01.2006 04:48

Ладно, проехали, способы все равно есть, в любом случае :(


Часовой пояс GMT +4, время: 20:41.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.