Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Безопасность и ее общие принципы (http://www.flasher.ru/forum/showthread.php?t=161582)

Tr1te 26.07.2011 19:19

Ну хотя бы эту проблему решить, я лично не вижу способов.

alatar 26.07.2011 19:24

Хз. Можно, например, голосованием, с проверкой границ.

Tr1te 26.07.2011 19:26

Думал об этом... но если 2 игра, то голосование не очень. :)

alatar 26.07.2011 19:27

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

goodguy 26.07.2011 20:04

Цитата:

Сообщение от suVrik (Сообщение 1014904)
А зачем откладывать то, что можно сделать при разработке на тот момент, когда игру уже сломали? :)

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

Есть ведь разные способы избавить сервер от излишних вычислений. На крайняк можно производить промежуточные проверки важных значений. Например посылать раз в 5 секунд серверу запрос на максимальную разрешенную скорость перемещения для активного в данный момент персонажа, вместо того, чтобы производить все эти расчеты на сервере постоянно. Для результатов можно задать некие значение, которые точно нельзя перейти в игре, и если клиент присылает большие (например время выполнения задания), то считать его читером и принять необходимые меры.
А можно и на самом клиенте хранить константы важных значений, и периодически производить сверку с ними. Прятать переменные в памяти и т.п.

-De- 26.07.2011 21:10

С рандомом всё просто: seeded random.
Ну вот есть мнение, что таки все хаки - они потому что криво пишут, а не вселенский закон.
ММОРПГ оно хорошо, но далеко не самый выгодный обьект для взломов. Банки, интернет магазины, тицы всякие - выгоднее намного.
Проверять - оно тоже хорошо, но только там, где проще проверить, чем самому посчитать.

Tr1te 26.07.2011 23:35

А можно поподробней про seeded random, я так понимаю это рандом основанный на общеизвестном числе, и в итоге там получается псевда рандомная последовательность, где можно повторить сид и получить туже последовательность, тоесть по сути известно когда выгодно наносить урон, а когда нет. :)

Хм, тогда может быть и можно более менее безопасную игру сделать на p2p.

Котяра 27.07.2011 00:38

имеем 3 компа. y
1 генер

Tr1te 27.07.2011 00:53

А если этот 1 читер?

Или ты имеешь ввиду подключать вообще третье лицо который с ними не играет.

-De- 27.07.2011 01:51

Да, именно так.
Да, с seeded random читер сможет узнать, какой урон он нанесёт следующим ударом. Это больше подходит быстрых для игр, где надо стрелять, а не смотреть, какой урон будет и думать. Если к тому же, например, всех заставить менять сид раз в секунду на основе хэша мира и старого сида, то читер может начать играть хуже. Т.к. начнет не вовремя стрелять, чтоб не пропустить крит или дохнуть, выжидая хороший момент, вместо того, чтоб стрелять.

В случае, где есть время подумать (типа героев) можно сделать например так: все игроки генерируют случайное число. Потом каждый говорит хэш (md5) его числа. (типа архива с паролем, который рассылается всем). Когда все обменяются хэшами, то число предрешено, но никто не может узнать, какое оно (и повлиять на то, каким оно будет). Потом все говорят свои числа, складывают их и получают нужное число, которое читер не может сделать таким, как ему нужно.

Tr1te 27.07.2011 09:23

Получается все таки можно сделать на p2p игрушку, причем желательно риалтайм, без страха что кто-то будет читовать. Все пошел делать Supreme Commander 3, Крису Тейлору не понравиться.

Или все же есть какие то дыры о которых не подумал?

windrunner31 29.07.2011 19:31

Видите?Моя тема полезна оказалась!)
Но всеже я не получил ответа на главный вопрос - как предотвращать взломы другими способами,кроме как валидацией?

goodguy 29.07.2011 19:57

Цитата:

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

Bgg 29.07.2011 20:00

Цитата:

Сообщение от goodguy (Сообщение 1015985)
Никак. Захотят взломать, взломают.

... и украдут идею на миллион долларов и не дадут вам его заработать первым, угога.

dimarik 29.07.2011 21:45

Сдается мне, что централизованный сервер с определенными оговорками можно заменить распределенным P2P. И пускай они сами себя валидируют )

goodguy 29.07.2011 21:55

А база данных?

dimarik 29.07.2011 22:07

Но интересно, правда? )

hartman 30.07.2011 14:28

я использую обфускацию. очень интересно насколько защищает и от чего? всегда ли можно выдрать привязку к домену? уже то что обрушивает декомпиляторы (возможно не все) уже отсеивает ряд взломщиков.


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

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