Enviar um arquivo
  1. base64hub
  2. Ferramentas de texto
  3. Codificador MIME

Codificador Base64 MIME com linhas de 76 caracteres

Cole o texto e receba o Base64 dividido em linhas de 76 caracteres, o formato usado no corpo e nos anexos de e-mails. Troque para 64 em blocos PEM ou para Nenhuma para uma linha só.

Grátis sem cadastro, sem limites Local nada é enviado 76 caracteres por linha, RFC 2045 Atualizado 27 de out. de 2026
Entrada 0 BSaída 0 BTamanho –

Processado no seu navegador. Esta página não consegue enviar seus dados para lugar nenhum – como sabemos

Como gerar Base64 MIME

  1. Cole o texto em Entrada · texto. Quebra de linha já vem em 76 (MIME, LF).
  2. Mantenha Charset em UTF-8, a menos que a mensagem declare outro charset, e use o mesmo valor no header Content-Type.
  3. Copie o Base64 quebrado de Saída · Base64, ou clique em Baixar para salvá-lo como base64.txt.
  4. Para o conteúdo de certificados ou chaves, troque Quebra de linha para 64 (PEM). Para HTTP, JSON ou qualquer outra coisa que precise de uma linha só, escolha Nenhuma.

O que é Base64 MIME

O MIME (RFC 2045) é o padrão que permite ao e-mail levar anexos, texto em outros idiomas e HTML. Quando o corpo de uma parte é binário ou cheio de bytes não ASCII, o remetente o codifica em Base64 e o marca com Content-Transfer-Encoding: base64. Além do Base64 comum, a RFC 2045 acrescenta uma regra de tamanho de linha: as linhas codificadas podem ter no máximo 76 caracteres. Uma linha de 76 caracteres guarda 57 bytes de entrada.

Uma parte de texto codificada assim fica deste jeito; as duas linhas Base64 são a saída desta ferramenta para a frase citada abaixo:

Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: base64

Q2Fmw6kgbWVudTogY3LDqG1lIGJyw7tsw6llLCBqYWxhcGXDsW8sIHNtw7ZyZ8Olc2JvcmQuIFRo
aXMgbGluZSBpcyBsb25nIGVub3VnaCB0byB3cmFwIGFmdGVyIDc2IGNoYXJhY3RlcnMu

O texto original era Café menu: crème brûlée, jalapeño, smörgåsbord. This line is long enough to wrap after 76 characters., 108 bytes em UTF-8. Decodificadas com o decodificador Base64, as duas linhas juntas devolvem a frase; a quebra de linha é ignorada.

Quebras de linha, CRLF e tamanho

Quebra de linha oferece duas variantes de 76 colunas: 76 (MIME, LF) separa as linhas com line feed (\n), e 76 (MIME, CRLF) usa \r\n. O e-mail em trânsito usa CRLF, e as bibliotecas de e-mail convertem os finais de linha ao serializar uma mensagem, então LF serve para código. Se você colar a saída direto num arquivo .eml bruto ou numa sessão SMTP, escolha a variante CRLF.

A quebra custa um pouco de espaço além dos 33% de sempre:

SaídaCaracteres a cada 57 bytes de entradaAcréscimo
Uma linha, sem quebras7633,3%
Linhas de 76 caracteres com LF7735,1%
Linhas de 76 caracteres com CRLF7836,8%

Os limites de tamanho de e-mail valem para a mensagem codificada, então um anexo de 10 MB consome uns 13,7 MB do limite. A calculadora de tamanho dá os números exatos, e Base64 em e-mail explica como as partes se encaixam.

Encoded-words para headers

Headers como Subject e From não podem usar Content-Transfer-Encoding. Texto não ASCII em headers usa os encoded-words da RFC 2047: =?charset?B?base64?=. Para montar um, codifique o texto com Quebra de linha em Nenhuma e envolva o resultado você mesmo:

Subject: =?UTF-8?B?R3LDvMOfZSBhdXMgQmVybGlu?=

Isso decodifica para Grüße aus Berlin. Um encoded-word pode ter no máximo 75 caracteres; assuntos mais longos são divididos em vários encoded-words separados por espaço. Para texto quase todo em ASCII, os programas de e-mail muitas vezes usam a forma ?Q?, baseada em quoted-printable.

Base64 MIME no código e na linha de comando

O base64.encodebytes do Python quebra em 76 caracteres com \n, gerando as mesmas linhas desta ferramenta:

import base64

text = "Café menu: crème brûlée, jalapeño, smörgåsbord. This line is long enough to wrap after 76 characters."
print(base64.encodebytes(text.encode("utf-8")).decode("ascii"))

Para mensagens inteiras, o pacote email cuida da codificação, dos headers e do CRLF para você. No Linux, o base64 do GNU quebra em 76 por padrão e o openssl base64 em 64:

base64 attachment.pdf > attachment.b64
openssl base64 -in attachment.pdf -out attachment.pem.b64

Para fazer o contrário e desmontar um e-mail bruto, abra-o no decodificador de e-mail (EML), que extrai os corpos e os anexos.

Perguntas frequentes

Por que o Base64 MIME usa linhas de 76 caracteres?

A RFC 2045 define o limite em 76 caracteres, com folga abaixo do limite de 998 caracteres por linha do e-mail (RFC 5322). 76 é múltiplo de 4, então cada linha guarda exatamente 57 bytes.

O Base64 MIME é diferente do Base64 normal?

O alfabeto e o preenchimento são idênticos. A única diferença são as quebras de linha, e espera-se que os decodificadores as ignorem, então as versões com e sem quebra decodificam para os mesmos bytes.

Devo quebrar o Base64 na linha de assunto de um e-mail?

Não. Headers usam encoded-words da RFC 2047, como =?UTF-8?B?R3LDvMOfZQ==?=, que não podem ter quebras de linha. Codifique o assunto com Quebra de linha em Nenhuma e mantenha cada encoded-word com no máximo 75 caracteres.

Por que o openssl me dá linhas de 64 caracteres?

O openssl base64 quebra em 64, a convenção do PEM, enquanto o base64 do GNU e a maioria das bibliotecas de e-mail quebram em 76. Os dois decodificam do mesmo jeito; escolha 64 aqui se precisar de uma saída idêntica à do openssl.