Criptografia e ofuscação em Javascript

Arraste o arquivo JavaScript ou clique para ler o arquivo JavaScript.

       

Configuração de criptografia ofuscada


Configuração com um clique


Configuração básica



Gerador de nomes de identificadores


prefixo do identificador




Ambiente de execução alvo

Configurações de proteção de depuração




Configuração de string


Codificação de strings


coeficiente de criptografia de string






Configurações de filtro

Bloquear domínio


Método de preservação


Manter a string


Configurações adicionais

mapa de origem


Endereço do mapa de código fonte


Nome do arquivo do mapa de origem


Identificar o ID da semente.

Descrição da configuração da ferramenta de ofuscação de código JAVASCRIPT.


Comprimir em uma linha. Comprimir quebras de linha e espaços em branco.
Gerador de nomes de identificadores

Use esta opção para controlar como ofuscar identificadores (nomes de variáveis, nomes de funções, etc.).

hexadecimal
生成使用十六进制图案随机标识符的名称(如: 0xabc123

caractere curto
使用短字符名称 (如: a, b, c 等等)

prefixo do identificador

Esta opção faz com que todos os identificadores globais tenham um prefixo específico.

Use esta opção ao carregar vários arquivos na mesma página. Esta opção ajuda a evitar conflitos entre os identificadores globais desses arquivos. Use um prefixo diferente para cada arquivo.

Renomeação de variáveis de método
Esta opção pode danificar seu código. Ative-a apenas se souber como funciona.

Use a declaration to enable obfuscation of global variable and function names.

Proteção K

Esta opção torna o código de saída resistente a formatações e renomeações de variáveis. Se você tentar usar um embelezador de JavaScript no código ofuscado, ele não funcionará corretamente, tornando-o difícil de entender e modificar.

需要 Comprimir em uma linha. 设置。

Impedir formatação
Esta opção tem o maior impacto no desempenho, reduzindo a velocidade de execução em até 1,5 vezes.

Ativar a planificação do fluxo de controle do código. A planificação do fluxo de controle é uma transformação na estrutura do código-fonte que dificulta a compreensão do programa.

fator de formatação


Em repositórios de código maiores, recomenda-se reduzir esse valor, pois uma grande quantidade de transformações de fluxo de controle pode aumentar o tamanho do código e diminuir sua velocidade (de 0 a 1).

Injeção de código de instrução floral
Esta opção aumenta significativamente o tamanho do código ofuscado (até 200%).

Esta função adiciona blocos de código aleatórios (ou seja, código que não será executado) à saída ofuscada, tornando mais difícil a engenharia reversa.

Taxa de injeção de comando de flores


Você pode usar esta configuração para ajustar a probabilidade de impacto dessa opção nos nós (de 0 a 1).

需要 Criptografia de strings 选项支持。

Criptografia de strings

Remova o texto da string e coloque-o em um array especial. Por exemplo, na string "Hello World", a string var m = "Hello World"; será substituída por uma chamada a uma função que recuperará seu valor em tempo de execução, como: var m = _0xb0c3('0x1'); Veja a seguir como configurar essa funcionalidade com opções mais ou menos flexíveis.

Rotacionar array de strings


Mover um array de strings para uma posição fixa e aleatória (gerada durante a ofuscação do código). Isso torna mais difícil corresponder a ordem das strings removidas à sua posição original. Se o seu código-fonte original não for muito grande, é recomendável usar esta opção, pois a acessibilidade pode chamar a atenção.

Se o código-fonte não for pequeno, recomenda-se usar esta opção.

Reorganizar o array de strings


Ordenar aleatoriamente um array de strings.

Codificação de strings


Esta opção reduzirá ligeiramente a velocidade do script.

Use todos os literais de string codificados em Base64 ou RC4 e insira uma função especial que decodifique-os em tempo de execução.

Por favor, note que a opção RC4 é cerca de 30-35% mais lenta do que a opção Base64, mas é mais difícil de recuperar a string.

coeficiente de criptografia de string


Você pode usar esta configuração para ajustar a probabilidade de inserir literais de string (de 0 a 1).

Essa configuração é útil em grandes bibliotecas de código, pois chamar repetidamente a função de criptografia de strings pode diminuir a velocidade do código.

Criptografia de variáveis

Converter chaves de objetos confusos.

Por exemplo, após ofuscar este código var a = {enabled: true};, o código se tornará: var a = {}; a[_0x2ae0[('0x0')] = true; e a chave do objeto enabled ficará oculta.

Configurações de parâmetros para criptografia de strings.

Sequência de escape Unicode

Converter chaves de objetos confusos.

将所有字符串转换为它们的unicode表示形式。例如,字符串"Hello World!"将被转换为"'\x48\x65\x6c\x6c\x6f\x20\x57\x6f\x72\x6c\x64\x21"。

Essa conversão é muito fácil de reverter e aumentará significativamente o tamanho do código ofuscado. Não é recomendável usá-la em bibliotecas de código maiores.

Desativar a saída do console.

Proíbe o uso de console.log, console.info, console.error e console.warn, o que torna o uso do depurador mais difícil.

Proteção de depuração
Se você abrir as ferramentas de desenvolvedor, pode congelar o navegador.

Usar essa opção torna quase impossível utilizar a aba do console nas ferramentas de desenvolvedor (no Google Chrome e no Mozilla Firefox).

Intervalo de proteção de depuração


Se esta opção for selecionada, um intervalo de tempo será forçado a usar o modo de depuração na guia "Console", dificultando o uso de outras funcionalidades das ferramentas de desenvolvimento.

Um código especial que é chamado repetidamente será inserido no código fonte ofuscado para funcionar.

Bloquear domínio

Bloqueie o código-fonte ofuscado para que ele funcione apenas em domínios e/ou subdomínios específicos. Isso torna realmente difícil para aqueles que apenas copiam e colam o código-fonte e o executam em outros lugares.

Vários domínios ou subdomínios
可以将代码锁定到多个域或子域。例如,要对其进行锁定以使代码仅在www.bejson.com上运行,请使用add www.bejson.com,使其可在bejson.com的任何子域上使用.bejson.com。

Manter o nome

Desative a ofuscação e a geração de identificadores que correspondem ao padrão RegExp (expressão regular) fornecido.

Por exemplo, se adicionar ^bejsoncom, o ofuscador garantirá que não serão danificados todas as variáveis, nomes de funções e parâmetros de funções que começam com bejson.

Manter a string

Desativar a conversão de literais de string que correspondem ao padrão RegExp (expressão regular) fornecido.

Por exemplo, se adicionar ^bejson *string, o ofuscador garantirá que todas as strings que começam com um determinado string não serão processadas na "criptografia de strings".

mapa de origem
Certifique-se de não fazer upload de código-fonte ofuscado que contenha imagens com código-fonte embutido, pois isso inclui o código-fonte original.

Os mapas de origem podem ajudá-lo a depurar código-fonte JavaScript ofuscado. Se você deseja depurar em produção, pode carregar arquivos de mapa de origem separados em um local secreto e, em seguida, apontar o navegador para esse local.

Mapa de fonte inline
这会将源代码的源映射嵌入到混淆代码的结果中。如果只想在计算机上进行本地调试,则很有用。

Mapa de origem separado
这将与源映射一起生成一个单独的文件。这对于调试生产中的代码很有用,因为这使您可以将源映射上载到服务器上的秘密位置,然后指向浏览器使用它。
使用“ 源地图基本URL”和“ 源地图文件名”来自定义sourceMappingURL将添加到混淆代码末尾的属性。
举例来说,如果你的设置基本URL来 "http://bejson.com:9000"和文件名来 "tool",你会得到://# sourceMappingURL=http://bejson.com:9000/tool.js.map。附加到混淆代码的末尾。

semente

Por padrão (seed = 0), a cada vez que o código é ofuscado, um novo resultado é gerado (ou seja, nomes de variáveis diferentes, inseridos em diferentes variáveis como stringArray, etc.). Se você quiser obter resultados reproduzíveis, defina o seed para um inteiro específico.

Você usou recentemente:

Coleção Menu QQ