Что нового

Опять про обфускатор

iltmpz

Новичок
Сообщения
23
Репутация
0
Приветствую!

Мне понадобилось опубликовать свое приложение, и хотелось бы по возможности скрыть содержимое от любопытных глаз.
Нагуглил обфускатор: http://autoit-script.ru/autoit3_docs/userappendix/Obfuscator.htm и много тем по нему.
Добавил в код: #Autoit3Wrapperr_Run_Obfuscator=y и получил предупреждение, мол, используйте вместо него стриппер.

И здесь: http://autoit-script.ru/index.php?topic=18986.150 пишут, что обфускатора давно уже нет, а стриппер вроде его возможности совсем и не заменяет. Как быть?
Нашел стриппер тут: "C:\Program Files (x86)\AutoIt3\SciTE\au3Stripper\AU3Stripper.exe", прогнал им свой файлик, получил аккуратно вырезанное все лишнее, но имена все остались.

Хочу:
1. Опубликовать exe, чтобы клиент мог его просто запустить
2. Чтобы в этом exe хранился не совсем читаемый код скрипта. Обфусцированные имена моих переменных и функций - то что нужно. Если дополнительной парой строк можно указать шифровать например текстовые строки или перепутывать порядок переменных - это только плюс, но не принципиально, поскольку все равно обратимо.
3. Убедиться, что в exe будет храниться именно обфусцированный скрипт. Потому что я не умею (лень) вытаскивать свой скрипт из exe, а потенциальный противник его вытащит.
 

InnI

AutoIT Гуру
Сообщения
4,922
Репутация
1,432
1. В папке установленной расширенной версии SciTE есть справка SciTE4AutoIt3.chm, в которой в разделе "Extra Utilties" - "Au3Stripper" описаны параметры запуска. Эту же справку можно вызвать из главного меню расширенной версии SciTE "Help" - "SciTE Help".

2. При выборе в расширенной версии SciTE меню "Tools" - "Compile" появится окно Wrapper'а. Перейдите на вкладку "Au3Stripper", включите "Run Au3Stripper before compilation", ознакомьтесь с описанием параметров и добавьте необходимые. Насколько я понимаю, вам нужны /so /rm. После нажатия "Compile Script" в сам скрипт добавяться необходимые директивы, будет создан модифицированный скрипт и exe-файл.
 
Автор
I

iltmpz

Новичок
Сообщения
23
Репутация
0
Спасибо, шикарно, то что нужно!
Действительно, похоже что именно эти параметры мне и нужны.

Настроил, скомпилировал, в заголовке моего проекта появились строки:
Код:
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_Run_Au3Stripper=y
#Au3Stripper_Parameters=/tl /so /rm
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****

И теперь по F7 сначала запускается стриппер, а в каталоге проекта лежит файлик проект_stripped.au3, с идеально оптимизированными именами моих функций и переменных, и без лишнего мусора.

В таком виде враг уже не разберется, а кто разберется, тому проще свой проект написать, чем понять, что такое функция Func _cs($1o) :smile:
 

InnI

AutoIT Гуру
Сообщения
4,922
Репутация
1,432
iltmpz [?]
в каталоге проекта лежит файлик проект_stripped.au3
Можете добавить ещё директиву
Код:
#AutoIt3Wrapper_Run_After=del проект_stripped.au3
которая будет автоматически удалять модифицированный файл после компиляции. В интерфейсе Wrapper'а за данную директиву отвечает вкладка "Run Before/After".
 
Автор
I

iltmpz

Новичок
Сообщения
23
Репутация
0
InnI сказал(а):
Можете добавить ещё директиву
Код:
#AutoIt3Wrapper_Run_After=del проект_stripped.au3
которая будет автоматически удалять модифицированный файл после компиляции. В интерфейсе Wrapper'а за данную директиву отвечает вкладка "Run Before/After".
Да, спасибо, когда убедился, что с исходниками все хорошо, _stripped действительно удобно удалять этой командой.
Ну и там же настроил несколько других подобных директив, типа пути к exe, иконки, но это уже оффтоп. :smile:
 
Верх