Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Общие вопросы о Flash (не затрагивающие ActionScript) (http://www.flasher.ru/forum/forumdisplay.php?f=60)
-   -   HighScore system (http://www.flasher.ru/forum/showthread.php?t=95298)

vitlance 03.05.2007 05:10

HighScore system
 
Такой вопрос... Мне надо чтобы PHP проверял откуда флашка проигрывется.. Это нужно для безопасности High Score, т.е чтобы никто не мог декомпильнуть флашку и изменить код флэшки так чтобы считить... Или вообще как ещё можно обезопасить High Score?:bb:

FourSide 03.05.2007 10:30

Как вариант:
Если флэшка запущена не с локального хоста, то она не может обратиться к вашему PHP файлу, находящемуся на другом хосте (если нет crossdomain.xml). Вы можете описанием названий разрешенных хостов в этом файле(crossdomain.xml) регулировать обращение флэша к вашему скрипту.

etc 03.05.2007 12:02

Это все-равно можно сломать, без особых усилий.

vitlance 03.05.2007 14:05

Цитата:

Сообщение от FourSide
Как вариант:
Если флэшка запущена не с локального хоста, то она не может обратиться к вашему PHP файлу, находящемуся на другом хосте (если нет crossdomain.xml). Вы можете описанием названий разрешенных хостов в этом файле(crossdomain.xml) регулировать обращение флэша к вашему скрипту.

Флэшка может обращаться к PHP файлу и с локального компа... Что за crossdomain так и толком не понял?

Цитата:

Это все-равно можно сломать, без особых усилий.
Есть какие то соображения по этомe поводу? Кроме перенесения игры полностью на PHP? :eek:

etc 03.05.2007 14:45

Шифровать, шифровать и ещё раз шифровать.

FourSide 03.05.2007 16:50

Опа... вот это я сморозил... глупость :)

Вобщем, общего метода защиты не существует. Зависит от флэшки.
Например, когда я делал онлайн-казино (рулетку) я все выигрыши определял на сервере (принимая ставку и сразу снимая/начисляя деньги), а флэшка это только показывала и всё.

vitlance 03.05.2007 17:14

Цитата:

Шифровать, шифровать и ещё раз шифровать.
Ну а разве нельзя сделать так например чтобы определялся клиент клиент ли это с сервера, а все остальные клиенты с другово домена или просто с локального компа просто блокировать?

По поводу шифрования... я слышал про swf encrypt, он защищает хоть на 80%? :umnik2:

etc 03.05.2007 17:35

Смотря от кого :)
От меня SWF Encrypt не защитит :D

CCCPirate 03.05.2007 17:37

Цитата:

Сообщение от vitlance
По поводу шифрования... я слышал про swf encrypt, он защищает хоть на 80%? :umnik2:

swf encrypt защитит от популярных декомпиляторов, но не защитит от байткодчиков, была тема во флэйме где etc потрошил инкриптовую версию моего md5 шифровальщика. по идее если ты напишешь очень запутанный код в логику которого не возможно будет вникнуть даже видя его исходный вариант - то это отчасти может усилить защиту. хотя кому нужно, тот сможет найти способ взломать, дело будет лишь в мотивации и соотношении трудо затрат\результата...

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

vitlance 03.05.2007 19:15

А что по поводу этого?:umnik2:

Цитата:

Ну а разве нельзя сделать так например чтобы определялся клиент клиент ли это с сервера, а все остальные клиенты с другово домена или просто с локального компа просто блокировать?

etc 03.05.2007 19:32

Ещё раз: это очень легко ломается. Откуда пришел запрос узнать довольно проблематично. Referrer не всегда будет послан.

vitlance 03.05.2007 19:55

Ну вот конкретное у PHP есть ли что то, что определяет идёт ли запрос например от www.mysite.com/flash.swf ? Или у какого то другово сервера?

В каких случаях referer не будет послан?

etc 03.05.2007 19:58

Флешка может при запросе данных передавать свой _url.

vitlance 03.05.2007 20:00

Может, но пользы от этого нету, т.к как можно декомпельнуть и вместо _url поставить что угодно ... Нужно чтоьы сервак определял откуда идёт запрос... Например как определяет IP, так же откуда идёт запрос

etc 03.05.2007 20:05

Это уже сервер должен проверять referrer. Лично у меня это значение всегда пусто.

vitlance 03.05.2007 20:17

Вообщем надо искать PHP код который определяет откуда идёт запрос :)

Появилась ещё такая идейка как удостоверится используют ли клиент с сервера... Например вот так:

В папке где Flashka находиться txtшник, в нём там какойто код:
Код:

&&code=29576293576469090789023457823508346970436&&
Потом, надо сделать так чтобы этот txt, могла читать токо Flashka с сервака... После того как Flashka прочитала этот код она посилает его PHP тот сравнивает...

Тут единственая загвоздка, это как сделать так чтобы этот txt был доступен токо для Flashki с сервера..

etc 03.05.2007 20:29

Никак, запрашивает файл браузер.

vitlance 03.05.2007 20:55

Жаль.. А ещё вот вопрос такой:

А Flashka может самостоятельно определять какие файлы находятся в той папке где эта Flashka?

etc 03.05.2007 21:01

Нет, не может.


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

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