Archivos y páginas

Conversor de archivos a Base64

Se ejecuta localmente

La herramienta en sí está en inglés; en esta página se explica en tu idioma.

Utiliza Conversor de archivos a Base64

Para qué sirve

Suelta o elige un archivo para obtenerlo como data URI en Base64, o pega una data URI para decodificarla y convertirla de nuevo en un archivo descargable.

Funciona íntegramente en tu navegador: no se sube nada de lo que introduzcas.

Cómo utilizar Conversor de archivos a Base64

  1. Elige o suelta un archivo. Haz clic en el recuadro de borde discontinuo para elegir un archivo, o arrástralo sobre él. Si sueltas varios archivos, solo se convierte el primero.
  2. Lee la data URI. El recuadro de debajo se rellena con data:tipo;base64, seguido del archivo codificado. La línea inferior muestra el tamaño original, el tamaño en Base64 y el aumento.
  3. Copia el resultado. Pulsa Copy (Copiar) para llevar toda la data URI al portapapeles, por ejemplo para pegarla en una página de prueba o en una nota de un caso.
  4. Pega una data URI para decodificarla. Para hacerlo al revés, pega un URI de datos en el cuadro inferior, como por ejemplo data:image/png;base64,... Se aceptan parámetros como ;charset=utf-8, saltos de línea, URI de datos en codificación Base64 aptos para URL y URI de datos con codificación en porcentaje.
  5. Descarga y comprueba el archivo. Pulsa Decode & Download (Decodificar y descargar) para guardar el archivo. Si procede de un correo o una página sospechosos, compruébalo con File Type Sniffer y File Hash antes de abrirlo.

Ejemplo

Una imagen pequeña

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

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

El cuadro que aparece a continuación se rellena con «data:image/png;base64,...» y una línea muestra el tamaño original, el tamaño en Base64 con la sobrecarga y la longitud total del URI de datos: el tamaño en Base64 es aproximadamente un tercio mayor que el del archivo.

Qué comprueba

SeñalQué significa
Tipo MIME después de data:Es el tipo que tu navegador indica para el archivo, que suele derivarse de la extensión del nombre. No demuestra lo que contiene realmente el archivo, así que un archivo renombrado conserva un tipo engañoso.
Tamaño originalEl tamaño del archivo en KB con un decimal. Los archivos de menos de unos 50 bytes muestran 0.0 KB, lo que se debe al redondeo, no a que el archivo esté vacío.
Tamaño en Base64 y aumentoLa longitud de la parte Base64, sin el prefijo data:tipo;base64, y cuánto mayor es que el archivo. Los archivos grandes se quedan cerca del 33 por ciento; los muy pequeños muestran más por el relleno.
Nombre del archivo decodificadoEl archivo descargado se denomina «decoded», seguido de una extensión correspondiente al tipo MIME, como «decoded.png», «decoded.txt» para «text/plain» o «decoded.bin» cuando no se especifica ningún tipo. En una línea situada debajo del botón se indica el nombre del archivo, su tamaño y su tipo.
Mensaje debajo del botónUn URI de datos que no se pueda leer, o un código Base64 que contenga caracteres distintos de A–Z, a–z, 0–9, + y /, mostrará un mensaje debajo del botón en lugar de iniciar la descarga.
Datos que se quedan en localLa codificación usa el FileReader del navegador y la decodificación genera el archivo en memoria, así que esta herramienta no envía a ningún sitio ni el archivo ni el texto pegado.

Más ejemplos

Texto de prueba de 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 y la línea Original: 0.0 KB | Base64: 0.0 KB (33% overhead). Zm9vYmFy es el vector de prueba publicado en RFC 4648 para foobar.

Decodificar un texto corto

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

La opción «Decodificar y descargar» guarda un archivo de 4 bytes llamado «decoded.txt» que contiene el texto «foob», y la línea situada debajo del botón indica el nombre del archivo, su tamaño y el tipo «text/plain».

Imagen SVG con una extensión poco habitual

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

El navegador guarda una imagen SVG vacía de 41 bytes llamada decoded.svg+xml. Renómbrala a .svg si quieres verla.

Preguntas frecuentes

¿Qué produce?

Un URI de datos con el formato «data:type;base64,data», utilizando el tipo MIME que tu navegador indica para el archivo (application/octet-stream si no indica ninguno). El código Base64 aumenta el tamaño de los datos en aproximadamente un tercio, y se trata de una codificación que cualquiera puede descifrar, no de un cifrado.

¿Qué URI de datos puede leer Decode & Download?

Los URI de datos Base64, como «data:image/png;base64,...» o «data:text/plain;charset=utf-8;base64,...», incluso si contienen saltos de línea o caracteres compatibles con URL, así como los codificados con el símbolo de porcentaje que no incluyan «;base64»; cualquier otra cosa generará un mensaje debajo del botón. Los archivos descodificados a partir de archivos adjuntos de phishing pueden ser peligrosos, así que compruébalos con File Type Sniffer antes de abrirlos.

¿Se sube el archivo?

No. El archivo se lee mediante la API FileReader y el URI de datos se genera en esta página; no se sube nada. Se convierten archivos de hasta 50 MB, ya que un URI de datos más grande podría bloquear la pestaña.

¿Por qué un correo o una página de phishing contienen una larga cadena data:...?

Los adjuntos HTML y las páginas de phishing suelen incrustar logotipos, fuentes, scripts o archivos completos como data URI en Base64. Así el contenido viaja dentro de la página en lugar de cargarse desde una dirección aparte. Decodificar aquí la cadena te muestra lo que esconde sin abrir la página original.

¿Puedo decodificar Base64 simple sin el prefijo data:?

Sí, si añades uno. Escribe «data:application/octet-stream;base64» al principio de la cadena y pulsa «Decodificar y descargar»; obtendrás un archivo llamado «decoded.bin». Para textos cortos, el codificador/decodificador Base64 es más rápido.

¿Por qué el aumento supera el 33 por ciento en archivos pequeños?

Base64 convierte cada 3 bytes en 4 caracteres y rellena el último grupo con signos =. En un archivo de pocos bytes ese relleno supone una gran parte, así que un archivo de 1 byte muestra un 300 por ciento. A partir de unos pocos kilobytes, la cifra se mantiene cerca del 33 por ciento.

¿Es seguro abrir un archivo SVG o HTML decodificado de un mensaje sospechoso?

No en tu navegador habitual. Los archivos SVG y HTML pueden contener scripts y enlaces que se ejecutan al abrirlos. Mira primero el tipo de archivo y el hash, y abre esos archivos solo en un sandbox o en un equipo de análisis aparte.

Explicación de los términos

Investigación de PhishDestroy