Страница 1 из 2

Защита файла из папки Resources

СообщениеДобавлено: 08 апр 2021, 08:10
krauser0993
:-h
В папки Resources есть файлы внутри которых описаны характеристики предметов а также id.
Походу эта папка легко взламывается, т.к. один чел поменял характеристики предмета. В самой игре поменять проблематично, т.к. стоит античит + обфускатор.
Я его конечно забанил и написал письмо как он это провернул, пока жду ответ.

И теперь возник вопрос как проверить файл на наличие изменений без потери оптимизации?
Был вариант загружать эти файлы с сервера, но они весят 700кб так что отпадает

Сейчас думаю может по размеру файла вычислять. Есть в Unity возможность вывести в переменную размер файла? или какая либо другая проверка на изменение?

Re: Защита файла из папки Resources

СообщениеДобавлено: 08 апр 2021, 09:46
1max1
Я его конечно забанил

и написал письмо как он это провернул

Не очень правильная последовательность на мой взгляд))
По факту, можно зашифровать файлы каким-то говном по ключу, а в игре декодировать, ключ получать с сервера, тоже зашифрованный))

Re: Защита файла из папки Resources

СообщениеДобавлено: 08 апр 2021, 10:00
TeslaGan
проверяй хеш у файлов с характеристиками при старте. если у одного из файлов он изменился - перекачиваешь файл заново. если боишься что будут файлы подменять во время игры, запусти короутину раз в пол минуты, чтобы она так же хеш сверяла.
ну и про шифрование не забудь. пускай простым шифром цезаря, без сложного ключа. и в байтовое представление. матерых хакеров это не остановит, и их можно будет просто банить, а петя из 2ого подъезда уже не полезет.
вообще, 700кб это достаточно маленькое значение, некоторые сетевые игры столько льют в канал.

Re: Защита файла из папки Resources

СообщениеДобавлено: 08 апр 2021, 11:31
krauser0993
TeslaGan писал(а):проверяй хеш у файлов с характеристиками при старте. если у одного из файлов он изменился - перекачиваешь файл заново. если боишься что будут файлы подменять во время игры, запусти короутину раз в пол минуты, чтобы она так же хеш сверяла.
ну и про шифрование не забудь. пускай простым шифром цезаря, без сложного ключа. и в байтовое представление. матерых хакеров это не остановит, и их можно будет просто банить, а петя из 2ого подъезда уже не полезет.
вообще, 700кб это достаточно маленькое значение, некоторые сетевые игры столько льют в канал.


Спасибо, про хеш неплохая идея.
Он мне ответил оказывается это баг в игре. Он мне его полностью описал большим текстом, но я ничего не понял :-j ни один переводчик не справляется

Re: Защита файла из папки Resources

СообщениеДобавлено: 08 апр 2021, 12:14
Jarico
krauser0993 писал(а):Сейчас думаю может по размеру файла вычислять. Есть в Unity возможность вывести в переменную размер файла? или какая либо другая проверка на изменение?


Пакуй характеристики в бандл, шифруй его, загружай на хост, с хоста грузи, загружай в память как байты, дешифруй, загрузи дешифрованный бандл с помощью AssetBundle.LoadFromMemory(), загрузи объект где хранятся характеристики, выгрузи бандл...
Хацкер устанет лопатить всю память в поисках твоих значений

Re: Защита файла из папки Resources

СообщениеДобавлено: 08 апр 2021, 12:33
1max1
Уже сказали что это баг, а не взлом, беспокоится не о чем :ymdevil:

Re: Защита файла из папки Resources

СообщениеДобавлено: 08 апр 2021, 12:52
krauser0993
1max1 писал(а):Уже сказали что это баг, а не взлом, беспокоится не о чем :ymdevil:


он мне написал второе письмо и я этот баг уже устранил, несмотря на то что я его забанил) зато пообещал хорошую награду на новом аккаунте)
Но все равно на будущее думаю нужно шифровать

Re: Защита файла из папки Resources

СообщениеДобавлено: 08 апр 2021, 17:41
Saltant
Я может чего то в этой жизни не понимаю, но КАК изменение файлов клиента может повлиять на онлайн игру?
Можно мне пожалуйста такой же лайфхак чтоб я где нить в World of Warcraft чё нить поменял и миллион голды себе нарисовал или пуху с +100500 урона.

Re: Защита файла из папки Resources

СообщениеДобавлено: 08 апр 2021, 17:57
krauser0993
Saltant писал(а):Я может чего то в этой жизни не понимаю, но КАК изменение файлов клиента может повлиять на онлайн игру?
Можно мне пожалуйста такой же лайфхак чтоб я где нить в World of Warcraft чё нить поменял и миллион голды себе нарисовал или пуху с +100500 урона.


Не сравнивай меня с Blizzard) Тем более пк с мобилками.
Я бы мог конечно делать проверку на получение каждого предмета, но это нагрузка на сеть и задержки.
Поэтому выбрал такой путь, на мобилках как по мне оптимизация важнее защиты

Re: Защита файла из папки Resources

СообщениеДобавлено: 08 апр 2021, 18:36
Saltant
krauser0993 писал(а):
Saltant писал(а):Я может чего то в этой жизни не понимаю, но КАК изменение файлов клиента может повлиять на онлайн игру?
Можно мне пожалуйста такой же лайфхак чтоб я где нить в World of Warcraft чё нить поменял и миллион голды себе нарисовал или пуху с +100500 урона.

Поэтому выбрал такой путь, на мобилках как по мне оптимизация важнее защиты

А ничего что в онлайн играх "игра" идет на сервере а клиент только отрисовывает то что говорит ему сервер?
Клиент может заменять чё ему угодно, т.к эти изменения увидит только конкретный клиент, для всех остальных игроков ничего не поменяется. Он может себе нарисовать пуху хоть с 100500 урона, сервер всё равно знает что у этого клиента пуха например с 50 урона, т.к расчет урона ведется на сервере используя серверные переменные...
Друг мой, мне кажется ты вообще не понимаешь как строятся онлайн игры, по любому есть какая то литература на этот счет, нужно только поискать, если не справишься с поиском - думаю на форуме люди смогут подсказать чё почитать.

Re: Защита файла из папки Resources

СообщениеДобавлено: 08 апр 2021, 18:54
krauser0993
по моему это ты не понимаешь, у меня не батл рояль от активижн.
я сделал так как мне удобно и на данный момент я имею полный контроль над игроками, вижу все действия без всяких firebase. если будут какие-то читерские действия их также легко обнаружить.
и это как по мне намного проще чем заморачиваться с сервером и нагружать сеть

Re: Защита файла из папки Resources

СообщениеДобавлено: 08 апр 2021, 19:58
Saltant
krauser0993 писал(а):я сделал так как мне удобно

Но ведь существуют практики принятые всеми разработчиками игр не просто так, потому что это "удобно".
Сервер игры у тебя чего вообще тогда делает если не симулирует игру?
Вот не плохая статья где объясняется клиент-серверное взаимодействие (правда на инглише) https://gafferongames.com/post/what_eve ... etworking/

Re: Защита файла из папки Resources

СообщениеДобавлено: 09 апр 2021, 03:08
krauser0993
Сервер игры у тебя чего вообще тогда делает если не симулирует игру?

только хранит данные игрока, это даже не сервер просто база данных и php скрипты на хостинге

Re: Защита файла из папки Resources

СообщениеДобавлено: 09 апр 2021, 05:01
Saltant
krauser0993 писал(а):
Сервер игры у тебя чего вообще тогда делает если не симулирует игру?

только хранит данные игрока, это даже не сервер просто база данных и php скрипты на хостинге

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

Re: Защита файла из папки Resources

СообщениеДобавлено: 09 апр 2021, 10:03
TeslaGan
Saltant писал(а):Ну хз, я вот играю в браузерные игры (дада я динозавр) и даже там вся игра происходит на сервере, а в браузер прилетает только результат.

лет дцать назад делали для ВК мультиплеерный 2д шутер под флеш. очередной убийца БК(тогда это было модно) только арены оформлены в виде платформера, и чуть подинамичнее. Сервером была БД снабженная парочкой ПХП скриптов для обращения к базе. остальное делали клиенты(вплоть до битвы, где один из игроков просто становился сервером)... а все потому, что машинки для симуляции сервера не было... вот и взяли у игроков часть мощностей.