ynbIpb
Скриптер
- Сообщения
- 399
- Репутация
- 110
AutoIt: 3.3.6.1
Версия: 0.1
Категория: Вспомогательные функции, Кодирование / Шифрование
Описание: Данная UDF предназначена для самопроверки целостности скомпилированного скрипта. Проверка реализована с помощью алгоритма хэширования MD5. Принцип работы: Так как заранее нам не известен MD5 хэш скомпилированного скрипта, то мы не можем его сохранить в самом скрипте. По этому информация добавляется уже после компиляции путём добавлением нескольких байт в конец *.exe файла. А чтобы она не была в открытом виде, информация шифруется алгоритмом XXTEA. При запуске функция высчитывает MD5 хэш части файла без добавленных в конец байтов. Потом читает байты в конце, расшифровывает их и сравнивает с полученным хэшем. Использование: Скомпилировать Demo пример, потом обратотать готовый EXE в SelfTest_Patcher.au3 (естественно пароль в переменной $sPassword должен соответствовать введённому в окне патчера)
Код/Пример:
Файл: в аттаче всё необходимое
Снимок:
История версий:
Источник: autoit-script.ru
Автор(ы): ynbIpb (SelfTest_Patcher.au3, _SelfTest), Ward (_MD5, _XXTEA_Encrypt, _XXTEA_Decrypt)
Версия: 0.1
Категория: Вспомогательные функции, Кодирование / Шифрование
Описание: Данная UDF предназначена для самопроверки целостности скомпилированного скрипта. Проверка реализована с помощью алгоритма хэширования MD5. Принцип работы: Так как заранее нам не известен MD5 хэш скомпилированного скрипта, то мы не можем его сохранить в самом скрипте. По этому информация добавляется уже после компиляции путём добавлением нескольких байт в конец *.exe файла. А чтобы она не была в открытом виде, информация шифруется алгоритмом XXTEA. При запуске функция высчитывает MD5 хэш части файла без добавленных в конец байтов. Потом читает байты в конце, расшифровывает их и сравнивает с полученным хэшем. Использование: Скомпилировать Demo пример, потом обратотать готовый EXE в SelfTest_Patcher.au3 (естественно пароль в переменной $sPassword должен соответствовать введённому в окне патчера)
Код/Пример:
Код:
#include <SelfTest_UDF.au3>
If @compiled = 0 Then
MsgBox (0, "", "Скрипт не откомпилирован!")
Exit
EndIf
$sPassword = "1" ; пароль шифрования XXTEA
$iSelftestResult = _SelfTest ($sPassword) ; проверяем свою целостность
If $iSelftestResult = 0 Then MsgBox (0, "", "Файл Повреждён!" & @CRLF & $iSelftestResult)
If $iSelftestResult = 1 Then MsgBox (0, "", "Проверка Прошла успешно!" & @CRLF & $iSelftestResult)
If $iSelftestResult = 2 Then MsgBox (0, "", "Файл не содержит информации для проверки!" & @CRLF & $iSelftestResult)
Снимок:
История версий:
Источник: autoit-script.ru
Автор(ы): ynbIpb (SelfTest_Patcher.au3, _SelfTest), Ward (_MD5, _XXTEA_Encrypt, _XXTEA_Decrypt)