За последние 24 часа нас посетили 5060 программистов и 657 роботов. Сейчас ищут 205 программистов ...

Защита РНР-приложения от копирования

Тема в разделе "Прочие вопросы по PHP", создана пользователем Скрипт Дизайнер, 11 июн 2019.

  1. Скрипт Дизайнер

    С нами с:
    11 июн 2019
    Сообщения:
    1
    Симпатии:
    0
    Подскажите, пожалуйста, чем Вы защищаете PHP-приложение от копирования.
    Стоит задача передать коробочную версию SaaS-решения клиенту, нужно защитить код от взлома и перепродажи.
    Что можете посоветовать?
     
  2. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    5.592
    Симпатии:
    906
    Адрес:
    Лень
    1. вы передаете клиенту продукт и прощаетесь с ним
    2. вы передаете клиенту видео материал, где показывает работоспособность продукта, после п.1
    3. DLE софт от меня уже дозащищался. Смысла в защите 0
    dle decompile php scripts
    PHP:
    1. <?php
    2.  
    3. error_reporting ( E_ALL );
    4.  
    5. const FILENAME = 'engine/classes/antivirus.class.php';
    6.  
    7. $content = file ( __DIR__ . DIRECTORY_SEPARATOR . FILENAME )[10] ?? '';
    8.  
    9. if ( substr ( $content, 0, 24 ) != '?><?php $_F=__FILE__;$_X' )
    10. {
    11.    exit ( 'lol kek cheburec!' );
    12. }
    13.  
    14. $fun = function ( string ...$string ): string
    15. {
    16.    $first = strpos ( $string[0], $string[1] ) + strlen ( $string[1] );
    17.    
    18.    $last = strpos ( substr ( $string[0], $first ), $string[2] );
    19.    
    20.    return substr ( $string[0], $first, $last );
    21. };
    22.  
    23. $eval = base64_decode ( $fun( $content, 'eval($_D(\'', '\'));' ) );
    24.  
    25. $ex = explode ( "','", $fun( $eval, '$_X=strtr($_X,\'', '\');' ) );
    26.  
    27. $content = strtr ( base64_decode ( $fun( $content, '$_X=\'', '\';$_D' ) ), $ex[0], $ex[1] );
    28.  
    29. if ( substr ( $content, -2 ) == '?>' )
    30. {
    31.    $content = substr ( $content, 0, -2 ) . '# END';
    32. }
    33.  
    34. file_put_contents ( __DIR__ . DIRECTORY_SEPARATOR . FILENAME, substr ( $content, 2 ) );
     
    Скрипт Дизайнер нравится это.
  3. Dimon2x

    Dimon2x Старожил

    С нами с:
    26 фев 2012
    Сообщения:
    1.915
    Симпатии:
    139
    Наверное никак
     
    webog нравится это.