Alguém já usou um bom ofuscador para PHP? Eu tentei alguns, mas eles não funcionam para projetos muito grandes. Eles não podem manipular variáveis incluídas em um arquivo e usadas em outro, por exemplo.
Ou você tem outros truques para impedir a propagação do seu código?
php
obfuscation
user29593
fonte
fonte
Respostas:
Você pode tentar proteger o PHP, que é um ofuscador PHP gratuito para ofuscar seu código PHP.EDIT: Este serviço não está mais ativo.É muito agradável, fácil de usar e também gratuito.
Quanto ao que os outros escreveram aqui sobre não usar ofuscação, porque ela pode ser quebrada, etc:
só tenho uma coisa para respondê-la - não tranque a porta da sua casa porque qualquer pessoa pode trancá-la.
É exatamente esse o caso, a ofuscação não visa impedir 100% de roubo de código. Ele só precisa torná-lo uma tarefa demorada, para que seja mais barato pagar o codificador original. Espero que isto ajude.
fonte
As pessoas oferecerão ofuscadores, mas nenhuma ofuscação pode impedir que alguém chegue ao seu código. Nenhum. Se o seu computador puder executá-lo ou, no caso de filmes e músicas, se ele puder ser reproduzido, o usuário poderá fazê-lo. Mesmo compilá-lo no código da máquina apenas torna o trabalho um pouco mais difícil. Se você usa um ofuscador, está se enganando. Pior, você também está impedindo seus usuários de corrigir bugs ou fazer modificações.
As empresas de música e cinema ainda não chegaram a um acordo com isso, ainda gastam milhões em DRM.
Em linguagens interpretadas como PHP e Perl, é trivial. O Perl costumava ter muitos ofuscadores de código, então percebemos que você pode descompilá-los trivialmente.
O PHP tem coisas como DeZender e Show My Code .
Meu conselho? Escreva uma licença e procure um advogado. A única outra opção é não fornecer o código e executar um serviço hospedado.
Veja também a entrada perlfaq sobre o assunto .
fonte
Nada será perfeito. Se você quer apenas algo para parar os não programadores, aqui está um pequeno script que escrevi, você pode usar:
fonte
Não tenho certeza se você pode rotular a ofuscação de um idioma interpretado como inútil (não consigo adicionar um comentário à postagem de Schwern, então aqui vai uma nova entrada).
Eu acho que é um pouco míope supor que você conhece todos os cenários possíveis em que alguém gostaria de ofuscar código, e você pressupõe que alguém estará realmente disposto a fazer o possível para ver esse código depois de ofuscado. Considere o meu cenário atual:
Eu trabalho para uma empresa de consultoria que está desenvolvendo um site grande e bastante sofisticado, baseado em PHP. O projeto será hospedado no servidor de um cliente que hospeda outros sites desenvolvidos por outras consultorias. Tecnicamente, qualquer código que escrevemos é de propriedade do cliente, portanto não podemos licenciá-lo. No entanto, qualquer outra consultoria (concorrente) com acesso ao servidor pode copiar nosso código sem obter permissão do cliente primeiro. Portanto, temos um motivo genuíno de ofuscação - fazer o esforço necessário para que um concorrente compreenda nosso código mais do que o esforço de criar uma cópia de nosso trabalho do zero.
fonte
Veja o nosso SD Thicket PHP Obfuscator para obter um ofuscador que funcione bem com conjuntos de páginas arbitrariamente grandes. Ele opera principalmente codificando nomes de identificadores. Com aplicativos modestos a grandes, isso pode tornar o código extremamente difícil de entender, que é o objetivo todo.
Ele não desperdiça energia em esquemas "eval (decodificar ( código de programação codificado ))", que muitos "ofuscadores" do PHP fazem [estes são "codificadores", não "ofuscadores"], porque qualquer torrão pode encontrar essa chamada e execute o eval-decode ele mesmo e obtenha o código decodificado.
Ele usa um analisador preciso da linguagem para processar o PHP; ele informará se o seu programa é sintaticamente inválido. Mais importante, ele conhece toda a linguagem com precisão; ele não ficará perdido ou confuso e não quebrará seu código (exceto o que acontece se você ofuscar "incorretamente", por exemplo, falha em identificar a API pública do código corretamente).
Sim, ofusca identificadores de forma idêntica nas páginas; se não fizesse isso, o resultado não funcionaria.
fonte
O melhor que eu vi é o Zend Guard .
fonte
Experimente este: http://www.pipsomania.com/best_php_obfuscator.do
Recentemente, escrevi em Java para ofuscar meus projetos PHP, porque como não encontrei nenhum bom e compatível pronto escrito na rede, decidi colocá-lo online como saas, para que todos o usassem gratuitamente. Ele não altera nomes de variáveis entre scripts diferentes para obter compatibilidade máxima, mas os ofusca muito bem, com lógica aleatória, todas as instruções também. Cordas ... tudo. Eu acredito que é muito melhor do que esse codeeclipse de buggy, que é a propósito escrito em PHP e muito lento :)
fonte
Ofuscador Thicket ™ para PHP
fonte
:(
Isso é software morto de qualquer maneira. Existem melhores e impressionantes agora, certo?O uso do SourceGuardian é bom, pois vem com uma GUI legal e fácil de usar.
Mas esteja ciente:
Preste atenção aos seus termos de licenciamento - bastante engraçados.
fonte
A ofuscação está apenas adicionando outra camada de possíveis bugs e vulnerabilidades de segurança ao seu programa. Por favor, não faça isso.
O tipo de pessoa que escreve software de ofuscação geralmente parece muito superficial e pouco qualificado.
Se o seu código for "ótimo", os crackers se esforçarão muito para difundi-lo, independentemente de estar oculto ou não. Se ninguém sabe / se importa com o seu código, provavelmente também não.
fonte