Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Шифрование файла *.php
 
 автор: Roo$   (05.11.2006 в 23:42)   письмо автору
 
 

Народ.... скажите пож. Можно ли средствами php зашифровать php файл. Чтобы его некто не смог прочитать (слизать код), если компопм польз. несколько человек. Но так чтобы и файл php (зашифрованный) работал (выполнял свою работу).

   
 
 автор: Shiva   (05.11.2006 в 23:52)   письмо автору
 
   для: Roo$   (05.11.2006 в 23:42)
 

Зашифровать можно. Но можно и расшифровать. Насколько сильной должна быть защита?

   
 
 автор: Roo$   (06.11.2006 в 00:03)   письмо автору
 
   для: Shiva   (05.11.2006 в 23:52)
 

Да так, для начала самую простую....для начала. Хочу посмотреть насколько умны те люди которые будут пытаться расшифоровать. Поможите?

   
 
 автор: cheops   (06.11.2006 в 00:46)   письмо автору
 
   для: Roo$   (06.11.2006 в 00:03)
 

Одна из простеших (и бесплатных) защит заключается в многократной упаковке кода
eval(gzinflate(base64_decode($str)))

Этот код сам себя распаковывает и выполняет, при использовании многократной упаковки потребуется рекурсивная распаковка - с этим многие не дружат, но те кто дружит распаковывает код в течении 3-4 минут.

   
 
 автор: Roo$   (06.11.2006 в 00:48)   письмо автору
 
   для: cheops   (06.11.2006 в 00:46)
 

Как он действует? Я имею введу просто вставить в php который хочу зашифоровать?

   
 
 автор: cheops   (06.11.2006 в 01:22)   письмо автору
 
   для: Roo$   (06.11.2006 в 00:48)
 

Пусть файл get2.php содержит код без тэгов <?php и ?>
  echo "Hello";

его можно упаковать при помощи скрипта
<?php
  $str 
"<?php\neval(gzinflate(base64_decode('".base64_encode(gzdeflate(file_get_contents("get2.php")))."')));\n?>";
  
$fd fopen("get3.php","w");
  
fwrite($fd$str);
  
fclose($fd);
?>

В результате в get3.php будет код
<?php
eval(gzinflate(base64_decode('U1BITc7IV1DySM3JyVeyBgA=')));
?>

Который не посвящённому человеку не понятен, но который при выполнении печатает строку "Hello". Берём код из файла get3.php и пропускаем через шифрующий код раз надцать - в результате получаем зашифрованный код, который остаётся работоспособным. Это позволяет уменьшить объём кода и зашифровать его, однако при его выполнении потребуется дополнительные ресурсы и время на расшифровку, да и расшировать его ничего не стоит - придёт человек к нам на форум с таким скриптом, я первый же его и расшифрую :))).

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

   
 
 автор: Roo$   (06.11.2006 в 21:30)   письмо автору
 
   для: cheops   (06.11.2006 в 01:22)
 

Большое спасибо за помощь..Это то что мне нужно.....

   
 
 автор: Yakor   (08.11.2006 в 19:57)   письмо автору
 
   для: cheops   (06.11.2006 в 01:22)
 

а работоспособность теряется?

   
 
 автор: Shiva   (08.11.2006 в 20:06)   письмо автору
 
   для: Yakor   (08.11.2006 в 19:57)
 

Работоспособоность - нет. Быстродействие - да.

   
 
 автор: Yakor   (08.11.2006 в 20:46)   письмо автору
 
   для: Shiva   (08.11.2006 в 20:06)
 

тогда нормуль, я просто не хочу чтобы заказчик видел код...

   
 
 автор: Yakor   (09.11.2006 в 05:47)   письмо автору
 
   для: cheops   (06.11.2006 в 01:22)
 

а zend'овская примочка - платная?

Кстати если кто-нибудь вкурсе как зашифрован код в Data Life Engine?

   
 
 автор: Shiva   (09.11.2006 в 19:42)   письмо автору
 
   для: Yakor   (09.11.2006 в 05:47)
 

>а zend'овская примочка - платная?
Платная. Но и это, как всегда, поправимо. Могу выслать лекарство, если хотите. Однако не на всех хостингах зашифрованный таким образом код будет работать.

>Кстати если кто-нибудь вкурсе как зашифрован код в Data Life Engine?
Посмотрите это: http://softtime.ru/forum/read.php?id_forum=1&id_theme=27093&page=1

   
 
 автор: Yakor   (10.11.2006 в 10:07)   письмо автору
 
   для: Shiva   (09.11.2006 в 19:42)
 

Будет ли работать.... у меня хостинг инфобокс, вот что ответили про установленность zend safe guard:

Установлен Zend Engine v1.3.0, Copyright (c) 1998-2004 Zend Technologies with Zend Optimizer v2.5.7, Copyright (c) 1998-2004, by Zend Technologies 


меня интересует в какой версии шифровать, что бы всё работало... ведь уже есть какие то новые версии zend guard...

   
 
 автор: myquery   (04.12.2006 в 02:45)   письмо автору
 
   для: Shiva   (09.11.2006 в 19:42)
 

>>а zend'овская примочка - платная?
>Платная. Но и это, как всегда, поправимо. Могу выслать лекарство, если хотите. Однако не на всех хостингах зашифрованный таким образом код будет работать.
>
>>Кстати если кто-нибудь вкурсе как зашифрован код в Data Life Engine?
>Посмотрите это: http://softtime.ru/forum/read.php?id_forum=1&id_theme=27093&page=1

Да очень хотелбы..

   
 
 автор: ihoru   (06.11.2006 в 00:51)   письмо автору
 
   для: cheops   (06.11.2006 в 00:46)
 

А вместо $str, что код? Так его же видно будет?!!
Или как, я не въехал!

   
 
 автор: cheops   (06.11.2006 в 01:08)   письмо автору
 
   для: ihoru   (06.11.2006 в 00:51)
 

>А вместо $str, что код? Так его же видно будет?!!
Как бы в этом и цель.

   
 
 автор: ihoru   (06.11.2006 в 08:20)   письмо автору
 
   для: cheops   (06.11.2006 в 01:08)
 

ааааа... я все понял, спасибо, полезно!

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования