Idioma: Português

tools / base64

base64/

Converta texto, arquivos e imagens de e para Base64. UTF-8, com suporte a URL-safe.

Texto simples

Base64

Perguntas frequentes

E se a decodificação mostrar "Contém caracteres que não são Base64" ou "Comprimento inválido"?

Primeiro veja se o texto está completo e limpo. Os caracteres aceitos são A–Z, a–z, 0–9, + e /, além de - e _ da forma URL-safe; o = só pode aparecer no final. Espaços, quebras de linha e um data:...;base64, no início são ignorados automaticamente. Símbolos de largura total, aspas e restos de codificação de URL como %2B geram "Contém caracteres que não são Base64", enquanto "Comprimento inválido" geralmente significa que faltaram caracteres ao copiar.

E se a decodificação mostrar "Não é texto UTF-8" ou o resultado sair embaralhado?

Os bytes decodificados não são texto UTF-8. Em geral o original usava outra codificação, como GBK, ou os dados já eram binários, como uma imagem, um arquivo compactado ou bytes criptografados. Esta ferramenta só exibe texto UTF-8 e não força outras codificações a aparecerem como caracteres embaralhados. Para dados binários, clique em "Baixar arquivo" para salvar; texto em GBK precisa de uma ferramenta que converta de GBK.

Por que meu resultado é diferente do JavaScript, do Python ou da linha de comando?

Os motivos mais comuns são uma quebra de linha no final ou uma codificação de caracteres diferente. Esta ferramenta codifica exatamente o que está na caixa como UTF-8, sem remover espaços nem quebras de linha, enquanto o echo da linha de comando adiciona uma quebra de linha no final por padrão; use echo -n para obter o mesmo resultado. Para texto em chinês e emoji, confirme que o outro lado também usa UTF-8: o btoa do JavaScript gera erro com eles diretamente, e em Python é preciso fazer encode('utf-8') antes do b64encode.

Posso remover o = do final? E o que significa "URL-safe"?

Ao decodificar, a falta do = não é problema: a ferramenta o completa. Se dá para omiti-lo ao enviar depende de quem recebe, pois algumas bibliotecas exigem o =. O modo URL-safe troca + por - e / por _ e remove o = final, o que serve para parâmetros de URL e nomes de arquivo; o JWT usa esse formato. Ao decodificar, - e _ são reconhecidos automaticamente, então não é preciso mudar nada.

Existe limite de tamanho ao converter um arquivo para Base64?

Sim: cada arquivo pode ter no máximo 20 MB, e arquivos maiores são recusados com uma mensagem. Por padrão a saída é uma Data URL com um prefixo como data:image/png;base64, que você pode usar direto no endereço de uma imagem em uma página web ou no CSS; se quiser só o Base64 puro, apague tudo até a vírgula, inclusive. O Base64 deixa os dados cerca de um terço maiores, então não é recomendado embutir imagens grandes.

Como transformo Base64 de volta em imagem ou arquivo?

Mude para "Decodificar" e cole o Base64 ou uma Data URL completa. Imagens (PNG, JPEG, GIF, WebP) mostram uma prévia, o texto aparece direto, e outros dados binários mostram só o tamanho. Em qualquer caso, você pode clicar em "Baixar arquivo" para salvar o resultado: imagens recebem o nome conforme o formato, e todo o resto é salvo como decoded.bin; se precisar, troque a extensão você mesmo.

Base64 é criptografia? Serve para manter dados em segredo?

Não. O Base64 apenas reescreve bytes como caracteres imprimíveis, e qualquer pessoa pode reverter; não há chave nem sigilo. Se você precisa de confidencialidade, use um algoritmo de criptografia de verdade, como o AES.

Meu texto e meus arquivos são enviados para algum servidor?

Não. A codificação e a decodificação acontecem no seu navegador, e o arquivo escolhido é lido apenas no seu dispositivo, sem ser enviado a nenhum servidor.