Hex Codificar & Decodificar
Ferramenta gratuita de Hex Codificar & Decodificar online. Processamento 100% local — seus dados nunca saem do seu dispositivo.
O resultado será exibido aqui...
Entrada → Codificar
Usage Guide
Sobre Hex (Hexadecimal)
Hex (Hexadecimal) é um método de codificação que usa 16 caracteres (0-9, A-F) para representar dados binários. Cada caractere hexadecimal representa 4 bits binários (0-15), portanto cada byte (8 bits) pode ser representado por 2 caracteres hexadecimais. Os dados codificados em Hex são 200% do tamanho dos dados originais, maiores que Base64, mas mais legíveis e amigáveis para depuração. Hex é amplamente usado em códigos de cor, endereços MAC, valores de hash, endereços de memória e outros cenários, tornando-o um dos métodos de codificação mais comumente usados por programadores.
Etapas de uso
A codificação e decodificação Hex é muito simples:
Princípio de codificação
A codificação Hex converte dados binários em caracteres hexadecimais através do seguinte processo:
0xFF (255) é codificado como “FF”, byte 0x41 (65, caractere 'A') é codificado como “41”. String “Hello” é codificada como “48656C6C6F”.Variantes de formato Hex
A codificação Hex tem várias variantes de formato comuns:
Cenários de aplicação
Hex é amplamente usado em cenários que requerem legibilidade e amabilidade para depuração:
FAQ
Q: Qual é a diferença entre Hex e Base64?
A: Hex e Base64 são ambas representações de texto de dados binários, mas têm características diferentes. Hex: 1) Usa 16 caracteres (0-9, A-F). 2) O tamanho codificado é 200% dos dados originais. 3) Mais legível, adequado para depuração. Base64: 1) Usa 64 caracteres (A-Z, a-z, 0-9, +, /). 2) O tamanho codificado é aproximadamente 133% dos dados originais. 3) Mais compacto, adequado para transmissão. Conselho de seleção: 1) Legibilidade e depuração necessárias: use Hex. 2) Transmissão compacta necessária: use Base64. 3) Saída de algoritmo de criptografia: normalmente usa Hex (como SHA-256).
Q: Por que os valores de hash são normalmente representados em Hex?
A: Algoritmos de hash (como SHA-256, MD5) produzem dados binários, normalmente representados em Hex. Razões: 1) Legibilidade: Hex é mais legível que binário, fácil para comparação manual. 2) Comprimento fixo: SHA-256 produz 32 bytes, representados como 64 caracteres Hex com comprimento fixo. 3) Prática tradicional: Campos de criptografia e hash tradicionalmente usam Hex. 4) Amigável para depuração: Desenvolvedores podem facilmente copiar, colar e comparar valores de hash. Exemplo: SHA-256(“hello”) = 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824.
Q: O que são códigos de cor Hex?
A: Códigos de cor Hex representam cores RGB usando notação hexadecimal, formatados como #RRGGBB. Formato: 1) #RRGGBB: Hexadecimal de 6 dígitos, cada 2 dígitos representam um canal de cor (vermelho, verde, azul). 2) #RGB: Abreviação de 3 dígitos, cada dígito é repetido uma vez (ex: #F00 = #FF0000). Exemplos: 1) #FF0000: Vermelho puro (R=255, G=0, B=0). 2) #00FF00: Verde puro (R=0, G=255, B=0). 3) #0000FF: Azul puro (R=0, G=0, B=255). 4) #FFFFFF: Branco. 5) #000000: Preto. Conversão: Cores Hex podem ser convertidas para RGB (ex: rgb(255, 87, 51)) ou HSL (ex: hsl(14, 100%, 60%)).
Q: Por que os endereços MAC são representados em Hex?
A: Endereços MAC (Endereço de Controle de Acesso à Mídia) são endereços físicos de dispositivos de rede, representados em Hex. Formato: 6 bytes (48 bits), normalmente separados por dois-pontos ou hífens, como 00:1A:2B:3C:4D:5E ou 00-1A-2B-3C-4D-5E. Razões: 1) Compacto: 6 bytes representados por 12 caracteres hexadecimais, mais compacto que binário (48 bits) ou decimal (número de 14 dígitos). 2) Legível: Hex é mais legível que binário, fácil para identificação e entrada manual. 3) Padrão: O padrão IEEE 802 especifica usar Hex para representar endereços MAC. Exemplo: 00:1A:2B:3C:4D:5E representa o endereço MAC 0x001A2B3C4D5E.
Q: Como usar Hex em JavaScript?
A: JavaScript fornece múltiplos métodos para lidar com codificação Hex. String para Hex:const str = 'Hello';
const hex = Array.from(str).map(c => c.charCodeAt(0).toString(16).padStart(2, '0')).join('');
// Resultado: '48656c6c6f'
Hex para String:const hex = '48656c6c6f';
const str = hex.match(/.{1,2}/g).map(byte => String.fromCharCode(parseInt(byte, 16))).join('');
// Resultado: 'Hello'
Número para Hex: const hex = (255).toString(16); // 'ff'
Hex para Número: const num = parseInt('ff', 16); // 255
Q: O que é um editor Hex?
A: Um editor Hex é uma ferramenta para visualizar e editar arquivos binários, exibindo o conteúdo do arquivo em formato hexadecimal. Recursos: 1) Visualizar arquivos binários: Exibir cada byte de um arquivo em formato Hex. 2) Editar arquivos binários: Modificar diretamente valores de bytes em arquivos. 3) Pesquisar e substituir: Pesquisar sequências de bytes específicas em arquivos binários. 4) Análise de arquivos: Analisar estrutura de arquivos, encontrar cabeçalhos de arquivos, identificar tipos de arquivos. Casos de uso: 1) Engenharia reversa: Analisar executáveis, firmware. 2) Recuperação de dados: Reparar arquivos corrompidos. 3) Modificação de jogos: Modificar saves de jogos, configurações. 4) Pesquisa de segurança: Analisar malware. Ferramentas comuns: HxD (Windows), Hex Fiend (macOS), xxd (linha de comando Linux).
Use Cases
Recomendado: Códigos de cor CSS
Códigos de cor Hex são a representação de cor mais comumente usada em CSS, formatados como #RRGGBB. Cada 2 dígitos hexadecimais representam um canal de cor (vermelho, verde, azul), com valores variando de 00-FF (0-255). Códigos de cor Hex são concisos, legíveis e o padrão para desenvolvimento web. CSS moderno também suporta cores Hex de 8 dígitos (#RRGGBBAA), onde os últimos 2 dígitos representam transparência (canal Alfa).
- ✅ Hex padrão de 6 dígitos (#FF5733)
- ✅ Abreviação de 3 dígitos (#F00 = #FF0000)
- ✅ Hex de 8 dígitos com transparência (#FF573380)
- 💡 Use ferramentas de seleção de cor para gerar cores Hex
- 💡 Considere usar variáveis CSS para gerenciar cores
Recomendado: Representação de valores de hash
Algoritmos de hash criptográficos (como SHA-256, MD5) normalmente produzem em formato Hex. Valores de hash formatados em Hex são fáceis de ler, copiar, colar e comparar, tornando-os o formato padrão para verificação de integridade de arquivos, assinaturas digitais, armazenamento de senhas e outros cenários. Por exemplo, Git usa valores de hash SHA-1 (Hex de 40 dígitos) para identificar commits, e blockchains usam valores de hash SHA-256 (Hex de 64 dígitos) para identificar blocos.
- ✅ Verificação de integridade de arquivos (SHA-256)
- ✅ IDs de commit Git (SHA-1)
- ✅ Hashes de bloco blockchain (SHA-256)
- ✅ Hashes de senha (bcrypt, Argon2)
- 💡 Use Hex em minúsculas para consistência
Recomendado: Endereços MAC e identificadores de rede
Endereços MAC (endereços físicos) usam 6 bytes (48 bits) de representação Hex, formatados como XX:XX:XX:XX:XX:XX ou XX-XX-XX-XX-XX-XX. Endereços MAC identificam exclusivamente dispositivos de rede, com os primeiros 3 bytes sendo o identificador do fornecedor (OUI) e os últimos 3 bytes sendo o número de série do dispositivo. Similarmente, endereços IPv6 também usam representação Hex (ex: 2001:0db8:85a3:0000:0000:8a2e:0370:7334).
- ✅ Endereços MAC (00:1A:2B:3C:4D:5E)
- ✅ Endereços IPv6 (2001:db8::1)
- ✅ Identificadores de dispositivos de rede
- 💡 Use separadores de dois-pontos para melhor legibilidade
Recomendado: UUIDs e identificadores únicos
UUIDs (Identificadores Universalmente Únicos) usam representação Hex, formatados como xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx (32 dígitos Hex + 4 hífens). UUIDs geram identificadores globalmente únicos, amplamente usados em chaves primárias de banco de dados, sistemas distribuídos, sistemas de arquivos e outros cenários. UUIDs têm múltiplas versões (v1-v5), sendo v4 (gerado aleatoriamente) a mais comum.
- ✅ Chaves primárias de banco de dados
- ✅ IDs de sistemas distribuídos
- ✅ Identificadores de sistemas de arquivos
- ✅ IDs de solicitação de API
- 💡 Use UUID v4 (aleatório) ou v7 (timestamp)
Recomendado: Análise de arquivos binários
Usar editores Hex para visualizar e editar arquivos binários é um método comum em engenharia reversa, recuperação de dados e pesquisa de segurança. Editores Hex exibem cada byte de um arquivo em formato hexadecimal, facilitando a análise da estrutura do arquivo, localização de cabeçalhos de arquivo e identificação de tipos de arquivo. Por exemplo, arquivos PNG começam com 89 50 4E 47 (.PNG), e arquivos JPEG começam com FF D8 FF.
- ✅ Engenharia reversa (análise de executáveis)
- ✅ Recuperação de dados (reparo de arquivos corrompidos)
- ✅ Análise de formato de arquivo
- ✅ Pesquisa de segurança (análise de malware)
- 💡 Use editores Hex profissionais (HxD, Hex Fiend)
Recomendado: Endereços de memória e depuração
Durante a depuração de programas, endereços de memória são normalmente representados em Hex (ex: 0x7FFF5FBFF000). Endereços de memória formatados em Hex são fáceis de ler e comparar, e são o formato padrão para depuradores (como GDB, LLDB, WinDbg). Desenvolvedores podem usar endereços Hex para visualizar conteúdo de memória, definir pontos de interrupção e analisar comportamento do programa.
- ✅ Depuradores (GDB, LLDB, WinDbg)
- ✅ Análise de dump de memória
- ✅ Cálculos de ponteiros e endereços
- ✅ Desenvolvimento em linguagem assembly
- 💡 Use prefixo 0x para indicar números hexadecimais
Recomendações de melhores práticas
- Dados codificados em Hex são 200% do tamanho dos dados originais, não adequados para transmissão de arquivos grandes; use Base64 ou transmissão binária em vez disso.
- Valores de hash normalmente usam Hex em minúsculas para consistência (ex: Git, blockchain).
- Códigos de cor CSS mais comumente usam Hex em maiúsculas (#FF5733), mas minúsculas (#ff5733) também são aceitáveis.
- Endereços MAC mais comumente usam separadores de dois-pontos (00:1A:2B:3C:4D:5E) que hífens (00-1A-2B-3C-4D-5E).
- Em JavaScript, use toString(16) para converter números para Hex, e parseInt(hex, 16) para converter Hex para números.
- Editores Hex são ferramentas poderosas para analisar arquivos binários, mas requerem compreensão de formatos de arquivo e ordem de bytes (big-endian/little-endian).