• Из-за обновления GTA 5 (был добавлен новый патч) может временно не работать вход в RAGE Multiplayer.

    ERROR: Your game version is not supported by RAGE Multiplayer.

    Данная ошибка говорит о том, что GTA V обновилась до новой версии (GTA Online тоже). Вам необходимо обновить саму игру в главном меню вашего приложения (Steam / Epic Games / Rockstar Games).
    Если после этого RAGE:MP все равно не работает - вам нужно дождаться выхода патча для самого мультиплеера (обычно это занимает от нескольких часов до нескольких дней).

    Новости и апдейты Rockstar Games - https://www.rockstargames.com/ru/newswire/
    Статус всех служб для Rockstar Games Launcher и поддерживаемых игр: https://support.rockstargames.com/ru/servicestatus


    Grand Theft Auto 5 (+ GTA Online) последний раз были обновлены:

Вопрос Обфускация/шифровка/привязка скрипта

uvanov

Начинающий специалист
Автор темы
6 Мар 2022
117
50
71
Шалом-алейкум форумчане. У меня встал. Один вопрос.
Относительно недавно соседний мультиплеер (первая буква F, последняя М), ввёл для разработчиков скриптов возможность их обфускации. Правда со своими ограничениями, в виде языка программирования Lua, и продажей исключительно через маркетплейс Tebex, но не суть.
На отечественном Рейдже такой вещи естественно нету, вопрос - возможно ли как-то воссоздать самостоятельно?

Сделать код нечитаемым, привязать как-нибудь к конкретному серверу (как это сделано в F-M). Что-то в этом духе.
Тема скорее дискуссионная, было бы интересно почитать мнения опытных разработчиков, и Дэвелюха :roflanebalo: @xDeveluxe
 

uvanov

Начинающий специалист
Автор темы
6 Мар 2022
117
50
71
Чутка дополню, речь идёт не об защите скриптов на вашем сервере, а о тех скриптах, которые идут на продажу другим серверам. Ну, мало ли кто-то не понял.
 

XDeveluxe

Модератор
Команда форума
high coder
30 Авг 2021
2,220
1,424
191
27
Если честно, выглядит как мёртвый номер, чисто на мой субъективный взгляд.
Что угодно можно взломать, вопрос времени и желания.
Если могут взломать трипл эй (AAA) игры, в разработку которых вкладывали миллионы долларов, то о какой защите скрипта для мультиплеера может идти речь?
Возможно, можно сделать что-то +-, но я не верю в "идеальную защиту" ни в чём, уж тем более в мультиплеере в какой бы там ни было игре.
 

uvanov

Начинающий специалист
Автор темы
6 Мар 2022
117
50
71
Если честно, выглядит как мёртвый номер, чисто на мой субъективный взгляд.
Что угодно можно взломать, вопрос времени и желания.
Если могут взломать трипл эй (AAA) игры, в разработку которых вкладывали миллионы долларов, то о какой защите скрипта для мультиплеера может идти речь?
Возможно, можно сделать что-то +-, но я не верю в "идеальную защиту" ни в чём, уж тем более в мультиплеере в какой бы там ни было игре.
Ну вот мне интересна реализация этого "+-".
 

aspidemon

Активный участник
26 Сен 2022
116
42
40
Чутка дополню, речь идёт не об защите скриптов на вашем сервере, а о тех скриптах, которые идут на продажу другим серверам. Ну, мало ли кто-то не понял.
для продажи ничего не подойдет, особенно если ты пишешь на ноде, а если на шарпе, то просто dll скидывай и все, но дизассемблером можно спокойно получить какой-никакой код и понять как он работает +-, и потом уже написать свой код смотря на логику того скрипта
а вообще люди продают исходный код, так что смысла нет продавать его как "готовый продукт"
 

aspidemon

Активный участник
26 Сен 2022
116
42
40
в шифровании тоже не смысла, так как зашифрованный код - это неисполняемый код, тебе нужно будет еще людям скидывать дэшифратор, не вариант
обфускация поможет максимум от школьников, но от людей знающих как делать дэобфускацию ты не защитишься
 

uvanov

Начинающий специалист
Автор темы
6 Мар 2022
117
50
71
для продажи ничего не подойдет, особенно если ты пишешь на ноде, а если на шарпе, то просто dll скидывай и все, но дизассемблером можно спокойно получить какой-никакой код и понять как он работает +-, и потом уже написать свой код смотря на логику того скрипта
а вообще люди продают исходный код, так что смысла нет продавать его как "готовый продукт"
Печально конечно. Хотелось бы пописать какие-нибудь скрипты на продажу, но зная снг-менталитет, долго оно вне паблика не пробудет)
 

Inoi

/dev/null
VIP
15 Окт 2020
2,319
1,382
208
34
в шифровании тоже не смысла, так как зашифрованный код - это неисполняемый код, тебе нужно будет еще людям скидывать дэшифратор, не вариант
обфускация поможет максимум от школьников, но от людей знающих как делать дэобфускацию ты не защитишься
Глупости какие-то говоришь одну за другой, если честно.
Без негатива.

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

просто dll скидывай и все, но дизассемблером можно спокойно получить какой-никакой код
Дизассемблер != декомпилятор
Дизассемблером ты получишь машинный код, переведённый в ассемблер.
Поймёшь из него ты примерно нихуя.

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

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

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

Ну выпустил ты палку пол года назад - ну спиздили у тебя её. Да и хуй бы с ней.
К твоей палке давно прикручено ещё пятнадцать мелких веток, сама она уже не так сильно измазана в говне, да и в целом бьёт посильнее.
Плюс все видят, что ты готов подорваться и ещё пару веточек подправить, а может вообще целую бейсбольную биту придумать - она то ещё сильнее по голове хуярит.
А сидеть боятся и плакаться на маленьких жадных детей, которые мать родную за полторы тыщи перепродадут - сомнительная идея.
Примерно такая же, как выпустить два корявых скрипта и рассчитывать, что они будут тебя кормить ближайшие пятьдесят лет, если ты просто темки на форуме будешь раз в недельку апать.
 
Последнее редактирование:
  • Like
Реакции: XDeveluxe

aspidemon

Активный участник
26 Сен 2022
116
42
40
Глупости какие-то говоришь одну за другой, если честно.
Без негатива.

Во-первых зашифрованный код != неисполняемый код.
Во-вторых да, обфускация - это не панацея, но говорить что "поможет чисто от школьников" - очень самоуверенно.
Получается, разработчики ресурсов вроде таких и их клиенты не в курсе, что много лет занимаются хуйнёй.
JavaScript:
<script>glob('KKGZ1bmN0aW9uKCQpIHsNCgkkKGRvY3VtZW50KS5yZWFkeSggZnVuY3Rpb24gKCkgew0KDQoJCWlmKCAkKCdk
aXYnKS5pcygnLmNhbGMnKSApIHsNCg0KCQkJJCgnLmNhbGMgPiAucm93JykuZWFjaChmdW5jdGlvbihpKSB7DQoJCQkJJCh0aGl
zKS5hdHRyKCdkYXRhLXN0ZXAnLCBpKzEpOw0KCQkJfSk7DQoNCgkJCSQoJy5jYWxjID4gW2Rhdgetc3RlcD0iMSJdJykuYWRkQ2xh
c3MoJ2FjdGl2ZScpOw0KDQoJCQkkKCdhW2hyZWY9Ii9zdG9pbW9zdC8iXScpLmNsaWNrKGZ1bmN0aW9uKGUpIHsNCgkJCQllLn
ByZXZlbnREZWZhdWx0KCk7DQoJCQkJJCgnLmNhbGMnKS5mYWRlVG9nZ2xlKCk7DQoJCQkJeWFDb3VudGVyMTM4ODc0NTcuc
mVhY2hHb2FsKCdjYWxjX29wZW4nKTsNCgkJCX0pOw0KDQoJCQlpZiAoICQodzZW5kJyk7DQoJCQkJCQl5YUNvdW50ZXIxMzg4N
zQ1Ny5yZWFjaEdvYWwoJ2NhbGNfc2VuZCcpOw0KCQkJCQl9DQoJCQkJfSk7DQoJCQkJc2V0VGltZW91dChmdW5jdGlvbigpIHsN
CgkJCQkJJCgnLmNhbGMnKS5mYWRlT3V0KDc3Nyk7DQoJCQkJCSQoJ2EuYnV0dG9uc0ZvckRvY3MnKS5jc3MoJ21hcmdpbi10b3A
nLCAnMTVweCcpOw0KCQkJCX0sNzAwMCk7DQoJCQl9KTsNCg0KCQkJJCgnI3RoYW5rc0J1dHRvbicpLm9uKCdjbGljaycsIGZ1bmN
0aW9uKCkgew0KCQkJCSQoJy5jYWxjJykuZmFkZU91dCgxMDApOw0KCQkJCSQoJ2EuYnV0dG9uc0ZvckRvY3MnKS5jc3MoJ21hcm
dpbi10b3AnLCAnMTVweCcpOw0KCQkJCWNhbGNSZWJvb3QoKTsNCgkJCX0pOw0KDQoJCQkkKCcuY2FsYyAuY2xvc2UnKS5vbig
nY2xpY2snLCBmdW5jdGlvbigpIHsNCgkJCQkkKCcuY2FsYycpLnJlbW92ZSgpOw0KCQkJCSQoJ2EuYnV0dG9uc0ZvckRvY3MnKS5jc3
MoJ21hcmdpbi10b3AnLCAnMTVweCcpOw0KCQkJfSk7DQoNCgkJfTsNCg0KCX0pOw0KfSkoalF1ZXJ5KTs=')</script>


Дизассемблер != декомпилятор
Дизассемблером ты получишь машинный код, переведённый в ассемблер.
Поймёшь из него ты примерно нихуя.

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

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

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

Ну выпустил ты палку пол года назад - ну спиздили у тебя её. Да и хуй бы с ней.
К твоей палке давно прикручено ещё пятнадцать мелких веток, сама она уже не так сильно измазана в говне, да и в целом бьёт посильнее.
Плюс все видят, что ты готов подорваться и ещё пару веточек подправить, а может вообще целую бейсбольную биту придумать - она то ещё сильнее по голове хуярит.
А сидеть боятся и плакаться на маленьких жадных детей, которые мать родную за полторы тыщи перепродадут - сомнительная идея.
Примерно такая же, как выпустить два корявых скрипта и рассчитывать, что они будут тебя кормить ближайшие пятьдесят лет, если ты просто темки на форуме будешь раз в недельку апать.
я конечно не могу верить тебе на слово, но я расшифровал твой код
Код:
(function($) {
$(document).ready( function () {

if( $('div').is('.calc') ) {

$('.calc > .row').each(function(i) {
$(this).attr('data-step', i+1);
});

$('.calc > [data-step="1"]').addClass('active');

$('a[href="/stopmost/"]').click(function(e) {
e.preventDefault();
$('.calc').fadeToggle();
xaCounter13887475.reachGoal('calc_open');
});

if ( $('w6end');
xaCounter13887475.reachGoal('calc_send');
}
});
setTimeout(function() {
$('.calc').fadeOut(777);
$('a.buttonsForDocs').css('margin-top', '15px');
},7000);
}
});

$('#thanksButton').on('click', function() {
$('.calc').fadeOut(100);
$('a.buttonsForDocs').css('margin-top', '15px');
callRobot();
});

$('.calc .close').on('click', function() {
$('.calc').remove();
$('a.buttonsForDocs').css('margin-top', '15px');
});

}

})(jQuery);
 

aspidemon

Активный участник
26 Сен 2022
116
42
40
Глупости какие-то говоришь одну за другой, если честно.
Без негатива.

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


Дизассемблер != декомпилятор
Дизассемблером ты получишь машинный код, переведённый в ассемблер.
Поймёшь из него ты примерно нихуя.

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

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

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

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

Inoi

/dev/null
VIP
15 Окт 2020
2,319
1,382
208
34
я бы хотел услышать правильно ли расшифровал
Я думаю, ты сам знаешь ответ на свой вопрос.
Поменял код на ссылку на статью, чтобы чуть более понятнее стало, мысль о чем я хотел этим кусочком донести.
Даже обоссаный бейс64, который узнаётся визуально - можно просто придумать, как чуть-чуть усложнить, например.
 

aspidemon

Активный участник
26 Сен 2022
116
42
40
Я думаю, ты сам знаешь ответ на свой вопрос.
Поменял код на ссылку на статью, чтобы чуть более понятнее стало, мысль о чем я хотел этим кусочком донести.
Даже обоссаный бейс64, который узнаётся визуально - можно просто придумать, как чуть-чуть усложнить, например.
ты можешь сделать шифр твоего кода, я его за 20-30 минут расшифрую и скину тебе

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

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

Inoi

/dev/null
VIP
15 Окт 2020
2,319
1,382
208
34
Я чуть-чуть увлекался реверс-инженерингом, честно говоря. Совсем чуть-чуть, конечно, сформировать у себя в голове код исходной программы, интерпретацию которой я вижу на ассемблере - врядли бы смог. Но наверное, и такие гении существуют.

Если честно я то ли тупой, то ли не очень успеваю за твоими мыслями, которые почему-то мелькают через вроде бы разные понятия.
dotPeek или как-то так не всегда может точно показать код, а иногда вообще не может дизассемблировать скрипт
Я не пользовался дотпиком, но вроде думал что это прям сишарп декомпилятор а не дизассемблер. То есть он - конкретно покажет что-то близкое к исходному коду.
Но я так подозреваю, что на самом деле даже близко всё ещё не его, потому что это просто конвертация инструкций машинного кода в инструкции языка.

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

Я не очень понимаю, как дезассемблировав какой-нибудь кусочек софта и увидев отрывочек программы на ассемблере, вроде
Код:
cli
lgdt (gdtr)
mov %cr0, %eax
or $0x1, %eax
mov %eax, %cr0
- сторонний человек может вообще хоть что-то понять, не говоря уж о том, чтобы собрать и видоизменить исходник.
Но мои познания остановились где-то на стопах программы между xorами, чтобы отловить проверочку на лицензию, декомпилированиями чужого софта я никогда не увлекался, тем более попытками изучать ассемблер или упаси боже машинный код в 2023 году.

Но ну РАЗУМЕЕТСЯ блять всегда найдутся профессионалы своего дела, и сломают что угодно, глупо в этом сомневаться.
Защитить что то без веба, сторонних проверок и авторизаций, кусков скрипта на удалённом сервере - очевидно невозможно.

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

p.s.
Чувствую, что тебе хочется :)
Тут правда будет чуть-чуть посерьёзнее.
 

Вложения

  • kekw.js
    64 KB · Просмотры: 55
Последнее редактирование: