Codificador de Base64
Converta textos e dados para o formato Base64 com esta ferramenta gratuita. Ideal para desenvolvedores que trabalham com transmissão de dados binários, armazenamento de imagens em CSS, autenticação básica e muito mais. Precisa do processo inverso? Use nosso Decodificador de Base64.
O que é Base64?
Base64 é um método de codificação que converte dados binários em texto ASCII. Ele utiliza 64 caracteres diferentes (A-Z, a-z, 0-9, + e /) para representar qualquer sequência de dados binários. Esta codificação é amplamente utilizada quando há necessidade de transmitir dados binários por meios que lidam apenas com texto, como e-mail ou HTML.
Como funciona a codificação Base64?
O processo converte grupos de 3 bytes (24 bits) de dados originais em 4 caracteres Base64 (4 grupos de 6 bits). Veja como:
- Agrupamento: Os dados de entrada são lidos em blocos de 3 bytes (24 bits).
- Divisão: Cada bloco de 24 bits é dividido em 4 grupos de 6 bits cada.
- Mapeamento: Cada grupo de 6 bits (que pode ter valores de 0 a 63) é mapeado para um caractere específico da tabela Base64 (A-Z, a-z, 0-9, +, /).
- Padding (Preenchimento): Se o último bloco de dados não tiver 3 bytes completos, caracteres de preenchimento '=' são adicionados ao final da string Base64. Um '=' indica que o último bloco tinha 2 bytes; '==' indica que tinha apenas 1 byte. Isso garante que o comprimento total da string codificada seja sempre um múltiplo de 4.
Por exemplo, a letra 'M' (ASCII 77, Binário 01001101
) como parte de um bloco seria
processada e convertida conforme essas regras.
Tabela de codificação Base64
Valor | Caractere | Valor | Caractere | Valor | Caractere | Valor | Caractere |
---|---|---|---|---|---|---|---|
0 | A | 16 | Q | 32 | g | 48 | w |
1 | B | 17 | R | 33 | h | 49 | x |
2 | C | 18 | S | 34 | i | 50 | y |
3 | D | 19 | T | 35 | j | 51 | z |
4 | E | 20 | U | 36 | k | 52 | 0 |
5 | F | 21 | V | 37 | l | 53 | 1 |
6 | G | 22 | W | 38 | m | 54 | 2 |
7 | H | 23 | X | 39 | n | 55 | 3 |
8 | I | 24 | Y | 40 | o | 56 | 4 |
9 | J | 25 | Z | 41 | p | 57 | 5 |
10 | K | 26 | a | 42 | q | 58 | 6 |
11 | L | 27 | b | 43 | r | 59 | 7 |
12 | M | 28 | c | 44 | s | 60 | 8 |
13 | N | 29 | d | 45 | t | 61 | 9 |
14 | O | 30 | e | 46 | u | 62 | + |
15 | P | 31 | f | 47 | v | 63 | / |
Usos comuns da codificação Base64
- Envio de dados binários por e-mail (MIME): Permite anexar arquivos em e-mails, que tradicionalmente só suportam texto.
- Incorporação de imagens/fontes em CSS ou HTML (Data URIs): Embutir pequenos recursos
diretamente no código, evitando requisições HTTP extras (ex:
<img src="data:image/png;base64,...">
). - Transmissão de dados binários em APIs REST (JSON/XML): Enviar dados como arquivos ou outros formatos binários dentro de estruturas baseadas em texto.
- Autenticação básica em HTTP: Codificar credenciais (usuário:senha) no cabeçalho
Authorization
(pouco seguro, prefira métodos mais robustos). - Armazenamento de dados binários em formatos textuais: Guardar pequenos blobs de dados em bancos de dados ou arquivos de configuração que só aceitam texto.
- Transferência segura de chaves ou certificados: Formatos como PEM usam Base64 para representar chaves criptográficas em texto.
Exemplos de codificação Base64
Texto original: Hello World
Codificado em Base64: SGVsbG8gV29ybGQ= (O '=' indica padding)
Texto original: Gerador Brasil
Codificado em Base64: R2VyYWRvciBCcmFzaWw= (O '=' indica padding)
Codificação Base64 em JavaScript
Em JavaScript, você pode usar a função nativa btoa()
para codificar uma string em Base64. Lembre-se
que btoa()
pode ter problemas com caracteres Unicode fora do padrão Latin1.
const textoOriginal = "Olá Mundo!";
// Atenção: btoa() pode falhar com caracteres acentuados diretamente.
// Uma abordagem segura é converter para UTF-8 e depois codificar:
const bytesUtf8 = new TextEncoder().encode(textoOriginal);
const stringBinaria = String.fromCharCode(...bytesUtf8);
const textoBase64 = btoa(stringBinaria);
console.log(textoBase64); // Saída: T2zDoCBNdW5kbyE=
Perguntas Frequentes
A codificação Base64 é uma forma de criptografia?
Não. Base64 é apenas uma forma de codificação e não oferece nenhuma segurança. Os dados codificados podem ser facilmente decodificados por qualquer pessoa. Para segurança, você deve usar algoritmos de criptografia adequados.
Por que os dados codificados em Base64 são maiores que os originais?
A codificação Base64 aumenta o tamanho dos dados em aproximadamente 33%, pois representa 3 bytes de dados originais em 4 bytes codificados. Este é o custo de converter dados binários em texto ASCII.
Posso codificar arquivos grandes em Base64?
Sim, nossa ferramenta suporta a codificação de arquivos, mas tenha em mente que arquivos muito grandes resultarão em strings Base64 ainda maiores, o que pode causar problemas de desempenho em navegadores.
Por que os números gerados em Base64 são tão grandes?
Os números gerados em Base64 são uma representação textual dos dados binários. Eles podem parecer grandes, mas não há perda de informação. No entanto, alguns sistemas que usam o CPF como identificador (ex: Receita Federal) podem rejeitar esses números se não forem formatados corretamente.
O que é Base64 URL Safe?
É uma variante da codificação Base64 que substitui os caracteres '+' e '/' (que podem causar problemas em URLs e nomes de arquivo) por '-' e '_', respectivamente. O padding ('=') também é frequentemente omitido nesta variante.