🔒Защита скрипта

Урок по защите вашего скрипта от взлома

Информация

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

Далее идёт пункт, где я расскажу о шифровании. Далее идёт пункт про базу данных, если вы хотите продавать ваш скрипт.

Шифрование скрипта

Как зашифровать свой скрипт?

Для шифрования скрипта многого не требуется. Достаточно просто зайти в клиент и написать команду .obf и имя отображаемое имя любого скрипта(которое устанавливается с помощью script:name().

Как работает шифрование?

Единственный способ снять шифрование - подбирать строки, например end) всегда будет равен NiJsj30aJP5NjQ/N8Z67MQ==

Но если в строке будет хотя-бы один другой символ, то зашифрованная строка будет совсем другая. Пример:

Тот же end), но с пробелом в конце будет равен /BdLaaVi+vUQuTEAdnLG6A==

База данных

Информация

Прошу заметить, что это не самая лучшая реализация системы подписок. Делаю я это для того, чтобы вы примерно понимали как это делается.

Пишем..

Для начала нам нужно узнать свой HWID. Для этого есть функция client:hwid(). Код для вывода HWID'a:

print("Ваш хвид:" .. client:hwid())

После захода в клиент ищем в консоли ваш хвид.

Заходим на Pastebin, регистрируемся. Нажимаем на кнопку "+ paste" сверху.

В поле вводим свой хвид и нажимаем "New Paste". Вуаля! У нас готов файл с хвидами юзеров, чтобы добавить нового пользователя необходимо ввести его хвид на следующей строке, отредактировав.

Нажав на кнопку "raw" можно получить страницу на которой расположены только хвиды.

Пример защиты, основываясь на этой системе:

script:name("New Script") -- Имя скрипта
script:devs({"Author"}) -- Разработчики
script:desc("Example Script") -- Описание

hwid = client:hwid()
if string.find(files:read_web("https://pastebin.com/raw/link"), hwid) then
    print("Подписка обнаружена. Запуск.")
    print("Ваш хвид:" .. hwid)
else
    print("Подписка не обнаружена.")
    print("Ваш хвид:" .. hwid)
    client:exit()
end

Далее остаётся только накинуть шифрование и всё.

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

Допустим, можно засунуть весь код в одну строку при помощи этой утилиты и после этого накинуть шифрование.

Пример:

script:name("New Script")script:devs({"Author"})script:desc("Example Script")if string.find(files:read_web("https://pastebin.com/raw/link"),client:hwid())then print("Подписка обнаружена. Запуск.")print("Ваш хвид:"..client:hwid())else print("Подписка не обнаружена.")print("Ваш хвид:"..client:hwid())client:exit()end

Удачного развития вашего скрипта!

Last updated