Tiny Online Tools logoTiny Online ToolssearchBuscar ferramentas…grid_viewTodas as ferramentas
Iniciochevron_rightFerramentas de engenharia reversachevron_rightOfuscador de JavaScriptOfuscador de JavaScript

Ofuscador de JavaScript

Renomeia variáveis locais, oculta strings e achata o fluxo de controle em JavaScript, tudo no seu navegador, sem enviar nada.

Nível de ofuscaçãoBásicoMédioAgressivoRenomeia variáveis comprovadamente locais e remove espaços e comentários.
infoIsto é um obstáculo contra leitura casual, não segurança real nem criptografia, e não protege segredos. Tudo roda localmente no seu navegador; nada é enviado.

Ferramentas semelhantes

Assistente de Desofuscação JavaScript

Assistente de Desofuscação JavaScript

Reverte padrões estáticos comuns de ofuscação JavaScript: arrays de strings, escapes, constantes reduzidas, ramos mortos e colchetes convertidos em pontos.

Analisador de Código Morto JavaScript

Analisador de Código Morto JavaScript

Cole um pacote JS e encontre funções de nível superior sem nenhuma referência estática no arquivo — uma análise heurística de alcançabilidade, não uma certeza.

Analisador de Tamanho por Source Map

Analisador de Tamanho por Source Map

Atribua os bytes de um bundle aos arquivos e pastas de origem que os produziram, usando seu arquivo .map — veja o que realmente ocupa espaço.

Gerador de código de incorporação 3D

Gerador de código de incorporação 3D

Gere código de incorporação pronto para colar de um modelo 3D em quatro variantes, grátis e inteiramente no seu navegador.

Extrator de anexos de e-mail

Extrator de anexos de e-mail

Extraia todos os anexos de ficheiros EML, MBOX e MSG do Outlook de uma só vez e guarde-os num ZIP.

Metrônomo

Metrônomo

Metrônomo baseado no navegador com BPM e fórmula de compasso ajustáveis. Perfeito para praticar música, sem necessidade de instalar aplicativo.

Cortar vídeo

Cortar vídeo

Cortar vídeo ajuda você a cortar um clipe no início e fim exatos diretamente no navegador. Use para ajustes rápidos e privados, publicações, aulas, demonstrações e edição diária.

apps

Mais ferramentas

Explore nossa colecao completa de ferramentas online gratuitas.

O que esta ferramenta faz

Este ofuscador analisa seu código com acorn, monta uma árvore de sintaxe, aplica algumas transformações estruturais e regenera JavaScript com astring, tudo dentro do seu navegador. Nada do que você colar é enviado a um servidor.

É importante ser claro sobre o que "ofuscar" significa aqui: é um obstáculo contra leitura casual, não criptografia nem segurança de verdade. Quem estiver disposto a executar seu código e inspecioná-lo (ou apenas ler com calma) ainda consegue recuperar seu comportamento. JavaScript que chega a um navegador sempre pode ser baixado e executado; nenhuma transformação muda isso. Use para dificultar copiar e colar casualmente, não para proteger segredos. Nunca coloque chaves de API ou credenciais reais em JavaScript do lado do cliente, ofuscado ou não.

Os três níveis

Básico renomeia todo identificador que a ferramenta consegue provar que é vinculado localmente — parâmetros de função e declarações var/let/const dentro de uma função — usando uma análise léxica real, não um palpite. Tudo o que resolve para uma variável global ou externa é deixado como está, de propósito: renomear quebraria seu código. Espaços e comentários também são removidos ao regenerar o código.

Médio faz tudo do Básico e ainda reúne cada string usada como expressão em um único array no topo do arquivo, substituindo cada ocorrência por uma chamada como _fn(3) que busca a string pelo índice.

Agressivo faz tudo do Médio e ainda escreve cada string desse array com escapes \x/\u em vez de caracteres normais, e reescreve trechos de três ou mais instruções seguidas em um laço despachante while(1) { switch(_i) { ... } }, de forma que a estrutura deixa de se ler de cima a baixo.

Correção em primeiro lugar

Cada nível foi feito para produzir código que roda exatamente igual ao que você colou. Quando uma construção não pode ser comprovada segura — padrões de desestruturação, eval, with — a ferramenta evita renomeá-la em vez de arriscar quebrar seu programa. Se seu código usar eval ou with, um aviso informa que a renomeação foi ignorada por esse motivo.

Como ler os números de tamanho

Os indicadores mostram os bytes exatos de entrada e saída e a mudança percentual. Renomear e extrair strings costuma aumentar um pouco o tamanho, mesmo que o código fique mais difícil de ler: ofuscar e minificar são objetivos diferentes.

Usos típicos

  • Tornar um script pequeno menos trivial de ler antes de compartilhar uma demo.
  • Aprender como ofuscadores funcionam comparando entrada e saída.
  • Adicionar um obstáculo leve a um script cuja lógica não é sensível.

Cole o JavaScript, escolha um nível e copie ou baixe o resultado.