Начну с того, что это мне нужно, потому что мой проект содержит довольно много эксклюзивных материалов, на создание которых я потратил много времени, и которые я не хотел бы видеть в других проектах (эксклюзив же).
Собственно что я имел ввиду под "максимальной защитой". Это как минимум защита от xdepa и возможности открыть в других программах. То есть оптимизатор-протектор Векса мне точно не подойдет.
Многие китайские карты не взламываются хдепом (ошибка с открытием war3map.w3i), крашат модел эдитор при попытке открыть через mpq браузер, а в mpq editor Ладика отображают только файлы .xxx и некоторые модели с текстурами с битыми названиями. Пример такой карты - Focs3 Another.
Я понимаю, что и это можно как-то ломануть, но мне нужно знать, как замутить такую защиту (на хгм были какие-то статьи про замену строчек, но я не особо понял, в какой именно файл карты это вставлять).
Многие китайские карты не взламываются хдепом (ошибка с открытием war3map.w3i), крашат модел эдитор при попытке открыть через mpq браузер, а в mpq editor Ладика отображают только файлы .xxx и некоторые модели с текстурами с битыми названиями. Пример такой карты - Focs3 Another.
Я понимаю, что и это можно как-то ломануть, но мне нужно знать, как замутить такую защиту (на хгм были какие-то статьи про замену строчек, но я не особо понял, в какой именно файл карты это вставлять).
Принятый ответ
Aws, тогда мой вариант тебе идеально подходит, осталось решить какой необратимый хеш одновременно достаточно хорош и не слишком сложен в реализации. Я помню кто-то даже md5 на jass выкладывал тут на xgm, но, имхо, это изврат.
Принцип примерно такой:
- игрок вводит команду вида "-code qwerty", где code это или универсальное ключевое слово для ввода кодов или уникальное для каждого кода, в зависимости от реализации, а qwerty это ключевое слово для конкретного кода
- триггер отлавливает ввод первого ключевого слова "-code" и выделяет из строки второе ключевое слово "qwerty"
- ключевое слово "qwerty" прогоняется через необратимую хеш-функцию и превращается в хеш "123456"
- хеш "123456" сравнивается с записаным в карте хешем, циклом если команда "-сode" универсальная, или напрямую если у каждого кода есть своя команда
- если хеш совпал, то выдаем плюшки, ну а если нет, то шлем нах
- при попытке вскрыть карту кулхацкер обнаружит только "-code" и "123456", но не "qwerty", а значит не сможет правильно ввести команду в официальной версии карты
- наличие алгоритма хеширования в карте не спасает кулхацкера т.к. алгоритм необоратимый и не может из "123456" получить "qwerty"
- кулхацкер может поробовать подобрать ключевое слово, хеш которого совпадет с "123456", но если функция хеширования достаточно хороша, то он скорее начнет рвать волосы на жопе и визжа кататься по полу, чем у него это получится
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
запусти format d:\ c:\
затем жесткий с твоими бывшими файлами засунь в микроволновку на 5-10 минут
затем охлади и в морозилку
затем разбей молотком на мелкую пыль (респиратор не забудь)
затем пыль в мусорку
А если ты хочешь, чтобы это работало в варкрафте, можешь забыть словосочетание "защита файлов"
Ну а если говорить о "защите" по типу тех, что описаны в примерах, то опять же - за чем охотимся? Я вытащу все твои модели любым MPQ-редактором, если он будет тупить - скину карту Зезуле и он пофиксит баг. После этого мне останется просто раскопать модели, что тоже легко автоматизируется. Я из китайских карт на 40к файлов доставал модели нужные.
Отредактирован nvc123
и то и то открывается нормальными mpq архиваторами
а после пересохранения можно и xdep заюзать
любой кто захочет взломать твою карту взломает её
на крайний случай попросит помощи на этом же сайте
DracoL1ch, морозилка фигня
надо жидкий азот
и ты забыл про кислоту
AlexSan, ещё можно для защиты от скрипткиди вставляющих читы по гайдам
особенно в карте с сэйвлоадом
правда там как правило используется проверка хэндлов в коде а не протект всей карты
нуб не сломает
а про не станет тратить время на поиск этой проверки в карте
Хотя, судя по заданному вопросу, тебе на них плевать.
Отредактирован 8gabriel8
Автор кампаний, которому помогаю, несколько раз задавал здесь вопросы, но ему почти никогда ничего толкового не отвечали, скорее уводили далеко в сторону от воплощения его идеи. Он чувствует себя здесь чрезвычайно отчуждённым.
В кампании «До Горького Конца» увидел отличный визуальный эффект для ролика в виде словно расплывающегося в данном случае красного бурления:
И это только мы двое с автором Эфирии пострадали от общения и запретов, а ещё общаюсь с массой разработчиков, которые не сидят на XGM, в лучшем случае редко-редко бывают. У них своя атмосфера, которую не хотят покидать. Когда видят какую-то интересную идею в карте, но обнаруживают, что она защищена, то просто не тратят своего времени на взлом, либо обращение к кому-то, а обходятся старыми и несвежими средствами, что в итоге не делает их проекты лучше.
Но знаешь, если эти люди занимаются чем-то стоящим и по меркам XGM эксклюзивным, то они не будут этого прятать, а наоборот, покажут, подарят, расскажут, научат и поделятся новыми идеями. За исключением, конечно же, таких проектов, когда всё должно быть представлено в релизе, например, тот проект с обновлёнными моделями для варика, который потом влился в Armies of Azeroth.
А ты говоришь, что у тебя много эксклюзивного контента, который мог бы многим пригодиться.
Честно, мне не нужен он. Но пару лет назад, когда не умел делать модели, не умел пользоваться ГУИшными триггерами, не понимал, как редактируется текстура или натягивается на модель, не знал многих тонкостей игры, вот тогда, наверное, что-то мне могло пригодится, чтобы быстрее во всём разобраться.
Отредактирован quq_CCCP
Отредактирован Aws
Отредактирован prog
Отредактирован sleep
Игрок красный ввел в чат -1
действие: Игрок красный получил 999999999999 голды.