O Que e Base64?

Base64 e uma codificacao que representa dados binários usando apenas 64 caracteres ASCII imprimiveis: A-Z, a-z, 0-9, + e /, com = como padding. Serve para transportar binários por canais que só aceitam texto.

Onde Base64 e usado em SegInfo?

  • Tokens JWT - header e payload são Base64URL
  • Certificados PEM - BEGIN CERTIFICATE ... END CERTIFICATE
  • Payloads de phishing - atacantes ocultam scripts maliciosos em Base64
  • Basic Authentication - Authorization: Basic dXNlcjpwYXNz
  • Imagens inline - data:image/png;base64,...
  • MIME email - anexos codificados em Base64
Base64 não e criptografia

Qualquer pessoa pode decodificar Base64 em milissegundos. Nunca use Base64 para "esconder" senhas ou dados sensíveis. Para proteger dados, use criptografia real (AES-256, TLS, bcrypt para senhas).

Base64 vs Base64URL

Base64 padrão usa + e /, que são caracteres reservados em URLs. Base64URL substitui por - e _, além de remover o padding =. E o formato usado em JWT, OAuth e cookies.

URL Encoding (Percent Encoding)

URL encoding, também chamado percent encoding, converte caracteres que tem significado especial em URLs (como espacos, ?, &, =) para a forma %XX, onde XX e o valor hexadecimal do byte UTF-8.

encodeURI vs encodeURIComponent

  • encodeURI - codifica uma URL completa, preserva :/?#&= que tem função estrutural
  • encodeURIComponent - codifica um valor individual, escapa tudo que não e alfanumerico

Quando usar cada um?

Use encodeURIComponent para codificar valores que você insere em uma URL (nome de usuário em query string, por exemplo). Use encodeURI apenas quando você esta codificando uma URL inteira que ainda precisa funcionar como URL.

Codificacao Hexadecimal

Hex representa cada byte (8 bits) como dois caracteres hexadecimais (0-9, a-f). E a representação textual padrão de dados binários em SegInfo.

Onde Hex e usado em SegInfo?

  • Hashes - MD5, SHA-1, SHA-256 são exibidos em hex
  • Chaves criptográficas - chaves AES, HMAC
  • MAC addresses - de:ad:be:ef:00:01
  • Analise de memória - hex dumps em forense e engenharia reversa
  • IoCs - assinaturas de malware em YARA
  • Shellcodes - \x90\x90\x31\xc0

Uso em Cibersegurança

Estas codificacoes são onipresentes em analise de tráfego, pentest de APIs, reverse engineering de malware e response a incidentes. Veja alguns cenários:

Analise de phishing

URLs de phishing frequentemente escondem o destino real via URL encoding ou Base64. Decodifique para revelar o domino malicioso:

hxxps://safe[.]com?r=aHR0cHM6Ly9waGlzaGluZy5jb20= → decode Base64 → https://phishing.com

Pentest de APIs

JWT tokens são três segmentos Base64URL separados por ponto: header.payload.signature. Decodifique os dois primeiros para inspecionar claims. Nossa ferramenta de decodificacao de JWT automatiza isso.

Analise de malware

Macros maliciosos em documentos Office frequentemente usam Base64 para ocultar payloads PowerShell. Decodificar revela o comando real:

powershell -enc SQBFAFgAIAAoAE4AZQB3AC0ATwBiAGoAZQBjAHQALgAu...

Erros Comuns

  • Achar que Base64 e segurança - não e criptografia, apenas codificacao
  • Misturar Base64 e Base64URL - o decoder falha se o formato não bate com o encoder
  • Esquecer UTF-8 - caracteres acentuados viram bytes múltiplos; ignorar isso corrompe dados
  • Double encoding - aplicar duas vezes por engano (%2520 em vez de %20)
  • Hex com caracteres estranhos - espacos, :, -, 0x precisam ser removidos antes de decodificar

Perguntas Frequentes

O que e Base64 e para que serve?

Base64 e uma codificacao que representa dados binários usando 64 caracteres ASCII imprimiveis. Serve para transmitir dados binários por canais que aceitam apenas texto (email, JSON, URLs, JWT). Não e criptografia - qualquer um pode decodificar.

Qual a diferença entre encodeURI e encodeURIComponent?

encodeURI preserva caracteres reservados de URL (/ ? # : &) pois assume URL completa. encodeURIComponent codifica todos os especiais, ideal para valores individuais de query string. Regra: use Componente para valores dentro de uma URL.

Hex e seguro para transportar dados?

Hex e apenas representação textual de bytes - cada byte vira 2 caracteres (00-FF). Não oferece segurança alguma, apenas legibilidade. Comum em assinaturas, hashes, chaves criptográficas e analise forense.

Os dados são enviados ao servidor?

Não. Toda codificacao/decodificacao acontece no seu navegador usando APIs nativas. Nenhum dado e transmitido, salvo ou registrado. Você pode desconectar da internet e a ferramenta continua funcionando.

Por que Base64 aumenta o tamanho dos dados?

Base64 usa 6 bits por caractere para representar 8 bits de dado - tamanho cresce ~33% (4/3). Além disso, o comprimento e arredondado para multiplo de 4 com padding (=). 100 bytes binários viram ~136 caracteres Base64.

Outras Ferramentas Gratuitas

Decoder JWT

Decode e inspecione tokens JWT, veja header e payload, detecte vulnerabilidades como alg=none.

Calculadora de Hash

Calcule hashes MD5, SHA-1, SHA-256, SHA-384 e SHA-512 de texto ou arquivo.

Gerador de Senhas

Gere senhas fortes e frases-senha com criptografia segura do navegador.

Precisa de uma avaliação de segurança em sua aplicação?

Nossa equipe realiza pentest de APIs, analise de tokens JWT e revisão de criptografia em produtos web e mobile.

Solicitar Proposta