Jump to content

Декомпиляция и защита от неё


Recommended Posts

3 часа искал разные декомпиляторы дабы превратить мой собственный скомпилированный скрипт в Луа код. Нашел разные версии, исходники, разные вспомогательные инструменты. НО не один из них не не смог сделать декомпил сложного скрипта. Простые скрипты - декомпиляЦЦа, ДА. Но нечто вроде "классов" в виде таблиц - не один декомпилер толком их не понимает и не может ничего сделать.

как защитить исходники:

  • Скомпилируйте их максимально в 1 файл. Например,
    "Путь к компилятору\luac5.1.exe" -s -o "Путь\СкомпиленныйСкрипт123.lua" -- "Путь\Скрипт1.lua" "Путь\Скрипт2.lua" "Путь\Скрипт3.lua" 
    

    -

  • Используйте максимально сложный по конструкции код. Например, локальные функции внутри других функций или определения функций в определении таблицы.
    -
  • Не оставляйте debug информацию в скомпилированном скрипте. Это, канеш, усложнит дебаг, но тем самым вы оставите меньше инфы для чужих глаз. Чтобы убрать дебаг инфо, нужно компилировать с параметром "-s". Например,
    "Путь к компилятору\luac5.1.exe" -s -o "мой\Скрипт.luac" -- "мой\Скрипт.lua" 
    

    Скажу только, что в дебаг инфо входит даже абсолютный путь к исходнику (:
    -

  • Еще 1 способ защиты - выложить код в массы как релиз или проект, закрыв в нем только важные компоненты, без которых он работать не будет. Изменяя открытый код, нужно менять и закрытый так, чтобы новая версия открытого кода могла работать только с новой версией закрытого. Тем самым кто-то сможет помочь вам доработать открытый код, если он будет популярен, но не сможет его полностью украсть и изменить.

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

ЗЫ: Однако, можно дизассемблировать любой скомпиленный скрипт, но для не специалиста этот код ничего не скажет.

Это, кстати не все способы защиты. Есть и другие, там гораздо больше паранойи (: Возможно, кто-то знает и другие способы, если да, пишите.

Link to comment
  • 5 months later...
Стессна, декомпилеры я тут выкладывать не буду, кто хочет, сам найдёт, благо Инет пестрит ими.

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

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...