Protegendo Código PHP com YAK Pro

Publicado em: 27/12/2025

YAK Pro - PHP Obfuscator, abreviado como yakpro-po, é uma ferramenta livre e de código aberto para ofuscar código PHP.

Ofuscação é o processo de transformar código fonte em uma versão funcionalmente equivalente mas dificilmente legível por humanos, tornando muito mais difícil a compreensão ou engenharia reversa do software. Em linguagens interpretadas como PHP, que normalmente distribuem o código fonte completo, esse tipo de proteção pode ser útil para proteger lógica de negócio ou propriedade intelectual.

Como funciona

O yakpro-po analisa o código PHP usando a biblioteca PHP-Parser (desenvolvida por nikic) para construir a Árvore de Sintaxe Abstrata (AST) do código e então aplica transformações que tornam o código mais difícil de entender, por exemplo:

  • Renomeia variáveis, funções, classes e outros identificadores.
  • Embaraça estruturas de controle (como if, for, while) trocando por goto.
  • Ofusca literais de strings.
  • Remove comentários e formatação, produzindo saída geralmente em uma única linha para dificultar leitura.

Isso resulta em código que funciona normalmente, mas é extremamente complexo para alguém que tenta lê-lo ou modificar-lo.

⚙️ Configurações flexíveis

O projeto usa um arquivo de configuração (yakpro-po.cnf) repleto de opções que permitem ativar/desativar cada tipo de ofuscação com precisão, como:

  • --no-obfuscate-variable-name ou --obfuscate-variable-name
  • --no-obfuscate-function-name ou --obfuscate-function-name
  • --no-obfuscate-string-literal ou --obfuscate-string-literal
  • Entre muitas outras opções.

📁 Suporte a diretórios

O yakpro-po pode processar diretórios inteiros de código, recriando a estrutura no destino ofuscado e reutilizando contextos de tradução para nomes através de múltiplos arquivos, o que traz consistência à ofuscação em projetos maiores.

🧰 Outras opções úteis

Além da ofuscação, ele também oferece:

  • modo silencioso (--silent)
  • exibição da árvore de sintaxe para debug (--debug)
  • limpeza de diretório alvo (--clean)

Requisitos e compatibilidade

Para usar o yakpro-po:

  • PHP CLI (linha de comando): versão compatível geralmente PHP >= 7.0.
  • A biblioteca PHP-Parser 4.x deve estar disponível no diretório PHP-Parser ao lado da ferramenta.
  • O yakpro-po 2.x funciona com PHP-Parser 4.x e consegue ofuscar código destinado a várias versões de PHP (incluindo versões mais antigas). 

Como instalar

Você pode baixar a versão mais recente nos releases do repositório oficial ou clonar o repositório do GitHub.

git clone https://github.com/pk-fr/yakpro-po.git

Entre no diretório e clone o PHP-Parser:

cd yakpro-po
git clone https://github.com/nikic/PHP-Parser.git

Garanta permissões de execução em yakpro-po.php:

chmod a+x yakpro-po.php

Teste a instalação:

./yakpro-po.php --help

Isso exibirá as opções disponíveis e confirmará que a ferramenta está funcionando.

Exemplo de uso

Para ofuscar um arquivo PHP e escrever o resultado em outro arquivo:

./yakpro-po.php arquivo_origem.php -o arquivo_ofuscado.php

Para ofuscar um diretório inteiro:

./yakpro-po.php src/ -o src_obfuscado/

Você também pode ajustar as opções de ofuscação conforme o necessário no comando ou usando o arquivo de configuração. 

Casos de uso

🔐 Proteção de código em projetos comerciais
Se você distribui um software PHP comercialmente e deseja proteger sua lógica interna de concorrentes ou usuários curiosos, o yakpro-po oferece uma camada adicional de defesa.

⚙️ Integrado em ferramentas e frameworks
Pacotes como laravel-obfs utilizam o yakpro-po como backend para ofuscar projetos Laravel via comandos Artisan.

Limitações e cuidados

✔ Ofuscação não é criptografia: desenvolvedores experientes ainda podem analisar e reverter o código com ferramentas e técnicas apropriadas.

✔ Projetos que embutem HTML e PHP podem apresentar problemas se o código for misturado, pois yakpro-po foi projetado para código PHP puro.

O yakpro-po é uma das ferramentas mais completas e configuráveis para ofuscar código PHP de forma automática. É especialmente útil quando você precisa proteger propriedade intelectual em projetos PHP antes de distribuir ou implantar em ambientes de produção.

Siga-me

Pesquisar