Arquivos e páginas

Conversor de arquivo para Base64

Execução local

A ferramenta em si está em inglês; esta página explica como usá-la no seu idioma.

Use Conversor de arquivo para Base64

O que ele faz

Solte ou escolha um arquivo para obtê-lo como data URI em Base64, ou cole uma data URI para decodificá-la de volta em um arquivo para download.

Ele funciona inteiramente no seu navegador: nada do que você digitar é enviado.

Como usar Conversor de arquivo para Base64

  1. Escolha ou solte um arquivo. Clique na caixa tracejada para escolher um arquivo ou arraste um para ela. Se você soltar vários arquivos, só o primeiro é convertido.
  2. Leia a data URI. A caixa abaixo é preenchida com data:tipo;base64, seguido do arquivo codificado. A linha embaixo mostra o tamanho original, o tamanho em Base64 e o acréscimo.
  3. Copie o resultado. Clique em Copy para colocar a data URI inteira na área de transferência, por exemplo para colá-la em uma página de teste ou em uma anotação de caso.
  4. Cole uma data URI para decodificar. Para fazer o contrário, cole um URI de dados na caixa inferior, como data:image/png;base64,... São aceitos parâmetros como ;charset=utf-8, quebras de linha, URIs de dados em Base64 compatíveis com URL e codificados em porcentagem.
  5. Baixe e verifique o arquivo. Clique em Decode & Download (decodificar e baixar) para salvar o arquivo. Se ele veio de um e-mail ou de uma página suspeita, verifique-o com o File Type Sniffer e o File Hash antes de abrir.

Exemplo

Uma imagem pequena

Entrada
A small PNG file, dropped onto the box or chosen by clicking it
Como fica o resultado
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg==

Original: 70 bytes | Base64: 96 bytes (37% overhead) | Data URI: 118 bytes

A caixa abaixo é preenchida com “data:image/png;base64,...” e uma linha mostra o tamanho original, o tamanho do Base64 com a sobrecarga e o comprimento total do URI de dados: o Base64 é cerca de um terço maior do que o arquivo.

O que ele verifica

SinalO que isso significa
Tipo MIME depois de data:É o tipo que o seu navegador informa para o arquivo, que normalmente vem da extensão do nome do arquivo. Ele não prova o que o arquivo realmente contém, então um arquivo renomeado mantém um tipo enganoso.
Tamanho originalO tamanho do arquivo em KB com uma casa decimal. Arquivos menores que cerca de 50 bytes mostram 0.0 KB, o que é arredondamento, não um arquivo vazio.
Tamanho em Base64 e acréscimoO comprimento da parte Base64, sem o prefixo data:tipo;base64, e quanto ela é maior que o arquivo. Arquivos grandes ficam perto de 33 por cento; arquivos minúsculos mostram mais por causa do preenchimento (padding).
Nome do arquivo decodificadoO arquivo para download recebe o nome “decoded.”, seguido da extensão correspondente ao tipo MIME, como “decoded.png”, “decoded.txt” para “text/plain” ou “decoded.bin” quando nenhum tipo é especificado. Uma linha abaixo do botão exibe o nome do arquivo, seu tamanho e tipo.
Mensagem abaixo do botãoUm URI de dados que não possa ser lido, ou um código Base64 com caracteres fora do intervalo A–Z, a–z, 0–9, + e /, exibe uma mensagem abaixo do botão em vez de iniciar o download.
Dados que ficam no localA codificação usa o FileReader do navegador e a decodificação monta o arquivo na memória, então o arquivo e o texto colado não são enviados a lugar nenhum por esta ferramenta.

Mais exemplos

Texto de teste da RFC 4648

Entrada
A text file foobar.txt that contains only the six letters foobar, with no line break
Resultado

data:text/plain;base64,Zm9vYmFy e a linha Original: 0.0 KB | Base64: 0.0 KB (33% overhead). Zm9vYmFy é o vetor de teste publicado na RFC 4648 para foobar.

Decodificar um texto curto

Entrada
data:text/plain;base64,Zm9vYg==
Resultado

A função “Decode & Download” salva um arquivo de 4 bytes chamado decoded.txt, que contém o texto “foob”, e a linha abaixo do botão indica o nome do arquivo, seu tamanho e o tipo “text/plain”.

Imagem SVG com extensão incomum

Entrada
data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLz4=
Resultado

O navegador salva uma imagem SVG vazia de 41 bytes chamada decoded.svg+xml. Renomeie-a para .svg se quiser visualizá-la.

Perguntas frequentes

O que ele produz?

Um URI de dados no formato data:type;base64,data, utilizando o tipo MIME que seu navegador indica para o arquivo (application/octet-stream caso não indique nenhum). A codificação Base64 aumenta o tamanho dos dados em cerca de um terço, e trata-se de uma codificação que qualquer pessoa pode decodificar, não de uma criptografia.

Quais URIs de dados o Decode & Download consegue ler?

URIs de dados Base64, como data:image/png;base64,... ou data:text/plain;charset=utf-8;base64,..., inclusive aqueles com quebras de linha ou caracteres seguros para URL, e aqueles codificados por porcentagem sem ;base64; qualquer outra coisa exibe uma mensagem abaixo do botão. Arquivos decodificados a partir de anexos de phishing podem ser prejudiciais; portanto, verifique-os com o File Type Sniffer antes de abri-los.

O arquivo é enviado?

Não. O arquivo é lido por meio da API FileReader e o URI de dados é gerado nesta página; nada é enviado. Arquivos de até 50 MB são convertidos, pois um URI de dados maior poderia travar a aba.

Por que um e-mail ou uma página de phishing contém uma longa string data:...?

Anexos HTML e páginas de phishing costumam embutir logotipos, fontes, scripts ou arquivos inteiros como data URIs em Base64. Assim, o conteúdo viaja dentro da página em vez de ser carregado de um endereço separado. Decodificar a string aqui mostra o que está escondido nela sem abrir a página original.

Posso decodificar Base64 simples, sem o prefixo data:?

Sim, se você adicionar um. Coloque “data:application/octet-stream;base64” antes da sequência de caracteres e clique em “Decodificar e baixar”; você obterá um arquivo chamado decoded.bin. Para textos curtos, o Codificador/Decodificador Base64 é mais rápido.

Por que o acréscimo passa de 33 por cento em arquivos pequenos?

O Base64 transforma cada 3 bytes em 4 caracteres e completa o último grupo com sinais de =. Em um arquivo de poucos bytes, esse preenchimento é uma parte grande, então um arquivo de 1 byte mostra 300 por cento. A partir de alguns kilobytes, o valor fica perto de 33 por cento.

É seguro abrir um arquivo SVG ou HTML decodificado de uma mensagem suspeita?

Não no seu navegador normal. Arquivos SVG e HTML podem conter scripts e links que são executados ao abrir. Veja primeiro o tipo do arquivo e o hash, e abra esses arquivos apenas em uma sandbox ou em uma máquina de análise separada.

Explicação dos termos

Pesquisa do PhishDestroy