ENPHP:http://enphp.djunny.com/
// 一个开源加密混淆 PHP 代码项目
// a Open Source PHP Code Confusion + Encryption Project
GITHUB:https://github.com/djunny/enphp
GITEE:https://gitee.com/mz/enphp_opensource
Автор проекта, будучи молодым разработчиком коммерческого программного обеспечения, столкнулся с проблемой взлома своих программ. В результате он потратил несколько месяцев на исследование и разработку EnPHP. Проект также предоставлялся многим людям, но, вероятно, существует множество взломанных версий в интернете. Основная ценность проекта заключается в предоставлении идеи шифрования и дешифрования кода.
Строго запрещено использовать для незаконных целей.
include('./func_v2.php');
$options = array(
// Метод шифрования имени функции: 1 = шифрование букв, 2 = шифрование случайных символов
'ob_function' => 2,
// Максимальная длина переменной, созданной функцией шифрования
'ob_function_length' => 3,
// Вызов функции шифрования: 1 = зашифровать, 0 = не шифровать или массив ('eval', 'strpos') для указания метода шифрования
'ob_call' => 1,
// Случайное добавление случайных символов
'insert_mess' => 0,
// Режим вызова функции шифрования переменной: 1 = буквенное шифрование, 2 = случайное символьное шифрование
'encode_call' => 2,
// Класс шифрования
'ob_class' => 0,
// Шифрование переменных и параметров методов: 1 = буквенное шифрование, 2 = случайное символьное шифрование
'encode_var' => 2,
// Максимальная длина зашифрованной переменной
'encode_var_length' => 5,
// Зашифрованная строковая константа: 1 = буквенное шифрование, 2 = случайное символьное шифрование
'encode_str' => 2,
// Максимальная длина зашифрованных строковых констант
'encode_str_length' => 3,
// Шифрование HTML: 1 = зашифровано, 0 = не зашифровано
'encode_html' => 2,
// Шифрование чисел: 1 = зашифрованное как 0x00a, 0 = незашифрованное
'encode_number' => 1,
// Строка, которая будет сжата с помощью gzencode: 1 = сжато, 0 = несжато
'encode_gz' => 0,
// Добавление новых строк (для улучшения читаемости)
'new_line' => 1,
// Удаление комментариев: 1 = удалить, 0 = сохранить
'remove_comment' => 1,
// Отладка
'debug' => 1,
// Количество повторений шифрования, чем больше повторений, тем меньше вероятность обратного проектирования, но производительность значительно снижается
'deep' => 1,
// Версия PHP
'php' => 7,
);
$file = 'code_test/1.php';
$target_file = 'encoded/2.php';
enphp_file($file, $target_file, $options);
Вы можете поместить код, который вы хотите протестировать, в code_test, а затем запустить команду:
php code_test.php
Программа автоматически проведёт тестирование восстановления, и я также включил некоторые ранее протестированные скрипты.
P.S.
Изначально я также реализовал вариант goto + xor, но его совместимость и производительность были не очень хорошими, поэтому я отложил дальнейшее исследование до тех пор, пока у меня не появится достаточно времени и энергии.
interface i {
function init($a, $b);
}
class ii implements i {
// В PHP имена параметров при наследовании могут отличаться
function init($b, $c) {
echo $b, $c;
}
}
namespace a{
class b{
}
# Правильно
$b = new \a\b();
# Неправильно
#$b = new b():
}
// Формат: /*<encode>*/ данные для вторичного шифрования /*</encode>*/
$a = /*<encode>*/"Данные открытого текста 1"/*</encode>*/;
echo /*<encode>*/2/*</encode>*/;
print(/*<encode>*/"Данные открытого текста 3"/*</encode>*/);
echo 1;
/*<hide>*/
echo 2;
/*</hide>*/
echo 3;
//Формат: /*<hide>*/ код для скрытия /*</hide>*/
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )