Pular para o conteúdo
Aback Tools Logo

Criptografador/ofuscador de strings .NET

Ofusque literais de string em C# com 6 técnicas diferentes: sequências de escape hexadecimais, decodificação com Convert.FromBase64String, arrays de bytes criptografados com XOR e descriptografia em tempo de execução, arrays de char com new string(), concatenação dividida com StringBuilder e sequências de escape Unicode. Cada método gera código C# válido que produz a string original em tempo de execução. Compare todos os métodos lado a lado, filtre por técnica e copie o código gerado — tudo grátis, privado e sem cadastro.

.NET String Encryptor/Obfuscator

Obfuscate C# string literals using 6 different techniques: hex escape sequences, Convert.FromBase64String, XOR-encrypted byte arrays, char arrays with new string(), StringBuilder split concatenation, and Unicode escape sequences. Each method generates valid C# code that produces the original string at runtime. Compare all methods side by side or focus on one.

Examples:

Enter a C#/VB.NET string above to obfuscate it using 6 different techniques. Choose from hex escape sequences, Convert.FromBase64String, XOR encryption, char arrays, StringBuilder split concatenation, or Unicode escape sequences. Click any example below the input to get started.

Recursos

  • 6 métodos de ofuscação: escolha entre escapes hexadecimais, decodificação Base64, criptografia XOR, arrays de char, divisão com StringBuilder e escapes Unicode. Cada um gera código C# válido que produz a string original em tempo de execução.
  • Comparação lado a lado: veja os 6 métodos ao mesmo tempo para comparar tamanho do código, legibilidade e força da ofuscação. Filtre para focar em um único método quando encontrar um que sirva.
  • Análise de impacto no tamanho: cada método mostra a contagem de caracteres e o aumento em relação à string original, ajudando você a equilibrar força de ofuscação e tamanho do código. Inclui estatísticas médias de todos os métodos.
  • Exemplos predefinidos: teste rapidamente com strings realistas — chaves de API, strings de conexão, tokens JWT e frases comuns. Veja na hora como cada método transforma diferentes tipos de conteúdo.

O que é ofuscação de strings?

Ofuscação de strings é a prática de transformar literais de string legíveis no código-fonte em representações equivalentes difíceis de entender para pessoas e ferramentas automatizadas. Em vez de escrever "Hello" , você pode escrever ou {'new string(new char[] )'} . Ambos produzem a mesma string em tempo de execução, mas parecem completamente diferentes no seu código-fonte.

Como funciona a ofuscação

O criptografador/ofuscador de strings .NET aplica seis técnicas distintas de transformação. Escapes hexadecimais convertem cada caractere no seu valor de byte hexadecimal. A decodificação Base64 envolve a string codificada em Base64 dentro de Convert.FromBase64String(). A criptografia XOR aplica XOR em cada byte com uma chave aleatória e gera o código de descriptografia. Arrays de char representam cada caractere como ponto de código inteiro. O StringBuilder divide a string em pedaços codificados em hexadecimal, concatenados em tempo de execução. Escapes Unicode convertem cada caractere na sua representação \\uNNNN. Cada técnica usa randomização para produzir saída diferente a cada geração.

Eficácia na proteção do código

A ofuscação de strings é uma camada essencial para proteger aplicações .NET, porque assemblies .NET são relativamente fáceis de descompilar com ferramentas como ILSpy, dnSpy e dotPeek. Ainda que um reverser determinado possa executar o código ofuscado para recuperar as strings originais, strings ofuscadas dificultam muito a varredura automatizada e a correspondência de padrões. Para melhores resultados, combine a ofuscação de strings com ConfuserEx, Obfuscar ou outros ofuscadores .NET que ofereçam ofuscação de fluxo de controle e renomeação de nomes.

Privacidade e segurança

Esta ferramenta roda inteiramente no seu navegador com JavaScript do lado do cliente. Suas strings de entrada e as saídas ofuscadas geradas nunca saem do seu dispositivo. Não há chamadas de API, processamento no servidor, armazenamento de dados nem rastreamento. O mecanismo de ofuscação usa os métodos internos de string e número do JavaScript em todas as transformações — tudo é local e privado.

Perguntas frequentes

A ofuscação de strings .NET transforma literais de string legíveis em código-fonte C# ou VB.NET em representações equivalentes, mas difíceis de ler. Por exemplo, "Hello" pode virar Convert.FromBase64String("SGVsbG8=") ou new string(new char[] { (char)72, (char)101, (char)108, (char)108, (char)111 }). Ambos produzem a mesma string em tempo de execução, mas são muito mais difíceis de entender por descompilação ou inspeção do código.

A ferramenta suporta 6 métodos: sequências de escape hexadecimais, decodificação com Convert.FromBase64String, arrays de bytes criptografados com XOR e descriptografia em tempo de execução, arrays de char com new string(), concatenação dividida com StringBuilder e Append(), e sequências de escape Unicode. Cada método gera código C# válido que funciona no .NET Framework e no .NET Core.

A criptografia XOR e os arrays de char oferecem a ofuscação mais forte, porque a string original não é recuperável diretamente sem executar a transformação. Escapes hexadecimais e Unicode são reconhecíveis para desenvolvedores experientes, mas ainda muito mais difíceis de ler do que strings em texto puro. O método StringBuilder acrescenta o benefício de dividir a string em várias instruções.

Sim, todo o código gerado é compatível com .NET Framework 4.5+ e .NET Core 2.0+. O método Convert.FromBase64String existe desde o .NET Framework 1.1. A classe StringBuilder está disponível em todas as versões. Para Unity (Mono), todos os métodos são totalmente compatíveis.

Com certeza. O ofuscador de strings .NET roda inteiramente no seu navegador. Suas strings de entrada e a saída ofuscada nunca são enviadas a nenhum servidor. Todo o processamento acontece localmente no seu dispositivo. Sem cadastro.

O método XOR converte cada caractere em seu valor de byte ASCII e depois aplica XOR em cada byte com uma chave de um byte escolhida aleatoriamente. A saída inclui tanto os valores do array de bytes com XOR quanto a chave como literais inteiros. Em tempo de execução, o código C# usa o método Select do LINQ para aplicar XOR de volta em cada byte e reconstruir a string original.

Sim. A ofuscação de strings complementa ofuscadores .NET como ConfuserEx, Obfuscar, SmartAssembly e Dotfuscator. Aplique primeiro a ofuscação de strings no código-fonte e depois rode o ofuscador no assembly compilado. Essa abordagem em camadas oferece proteção bem mais forte do que qualquer uma das técnicas isoladas.

Sim — 100% grátis, sem cadastro, sem conta e sem limites de uso. Os 6 métodos de ofuscação, a comparação lado a lado e a função de cópia estão disponíveis sem restrições.