Saltar al contenido

A–Z a–z 0–9 + / = · base64url

Codificador y decodificador Base64

Base64 escribe bytes como texto con 64 caracteres imprimibles: los 5 bytes de "Hello" se convierten en SGVsbG8=. Escribe texto o elige un archivo para codificarlo, o pega Base64 para volver a obtener texto o una descarga.

Todo se ejecuta en esta pestaña y no se sube nada. Base64 es una codificación, no un cifrado: cualquiera puede revertirla.

Scanned by NortonTM Safe Web

De un vistazo

Precio
Sin coste
Cuenta
No hace falta
Estándares
RFC 4648 (Base64 y Base64url), RFC 2045 (MIME), RFC 2397 (URI de datos)
Cambio de tamaño
4 caracteres por cada 3 bytes
Límite
10 MB para un texto o un archivo
Subida
Ninguna: el texto y los archivos se quedan en la pestaña de tu navegador

Ejemplos de Base64

Cada valor de abajo lo produce el codificador de esta página. El texto se codifica primero como UTF-8.

Texto en Base64 y Base64url
TextoBase64Base64url sin rellenoTamaño en UTF-8
HelloSGVsbG8=SGVsbG85 B
Hello, World!SGVsbG8sIFdvcmxkIQ==SGVsbG8sIFdvcmxkIQ13 B
GrüßeR3LDvMOfZQ==R3LDvMOfZQ7 B
€4oKs4oKs3 B
FB FF+/8=-_82 B
Vectores de prueba de la RFC 4648
EntradaBase64LongitudCaracteres de relleno
fZg==42
foZm8=41
fooZm9v40
foobZm9vYg==82
foobaZm9vYmE=81
foobarZm9vYmFy80

Cómo codificar y decodificar Base64

1

Elige una dirección

Elige Codificar para convertir texto o un archivo en Base64, o Decodificar para recuperar el original a partir de Base64. El botón de intercambio pasa el resultado a la otra dirección.

2

Introduce los datos

Escribe o pega texto, o suelta un archivo de hasta 10 MB. Para decodificar, pega Base64 en el alfabeto estándar o en el URL-safe, con o sin relleno =, o un URI de datos.

3

Copia el resultado

Copia o descarga el resultado. Si los bytes decodificados no son texto, la página muestra los primeros bytes en hexadecimal, indica el tipo de archivo cuando lo conoce y te permite guardar los bytes como archivo.

Cómo funciona Base64

Base64 (RFC 4648) divide la entrada en grupos de 3 bytes, es decir, 24 bits, y escribe cada grupo como 4 caracteres de 6 bits tomados de un alfabeto de 64 caracteres: A–Z, a–z, 0–9, + y /. Por eso la salida es aproximadamente un tercio mayor que la entrada. Cuando la entrada no es múltiplo de 3 bytes, los signos = completan el final hasta un múltiplo de 4 caracteres, así que los 5 bytes de Hello dan 8 caracteres que terminan en un =.

Base64url, definido en la misma RFC, sustituye + por - y / por _ para que el texto sea seguro en una URL o en un nombre de archivo, y formatos como JWT omiten el relleno =. Esta página lee cualquiera de los dos alfabetos, con o sin relleno, e ignora los espacios y los saltos de línea. El texto se convierte primero a UTF-8, así que € pasa a ser los 3 bytes E2 82 AC y 4oKs en Base64. El límite es de 10 MB para un texto o un archivo.

Preguntas sobre Base64

¿Cómo codifico texto a Base64?

Escribe o pega el texto en el modo Codificar. El Base64 aparece mientras escribes: Hello da SGVsbG8=. El texto se escribe primero como UTF-8, así que los caracteres fuera de ASCII usan más de un byte: € son 3 bytes y da 4oKs.

¿Qué diferencia hay entre Base64 y Base64url?

Base64url cambia dos caracteres: - sustituye a + y _ sustituye a /. Los bytes FB FF son +/8= en Base64 y -_8= en Base64url. La forma URL-safe está pensada para URL, nombres de archivo y JWT, y a menudo omite el relleno =.

¿Por qué Base64 termina con signos =?

Son relleno. Base64 trabaja con grupos de 3 bytes y 4 caracteres. Si el último grupo tiene 1 byte, dos signos = lo completan: f da Zg==. Si tiene 2 bytes, lo completa un =: fo da Zm8=. Un múltiplo de 3 bytes no necesita ninguno: foo da Zm9v.

¿Base64 es cifrado?

No. Base64 es una codificación reversible sin clave, así que cualquiera puede decodificarla, y no protege los datos. Hace que los datos binarios se puedan colocar sin problemas en texto, como el correo, JSON, XML o un URI de datos.

¿Cuánto más grandes hace Base64 mis datos?

Aproximadamente un tercio más: cada 3 bytes pasan a ser 4 caracteres, así que 3000 bytes dan 4000 caracteres. Los saltos de línea cada 76 caracteres (MIME, RFC 2045) o cada 64 caracteres (PEM, RFC 7468) añaden un poco más.

¿Por qué al decodificar dice que los bytes no son texto UTF-8 válido?

El Base64 en sí es correcto, pero los bytes que contiene no son texto. Pueden ser una imagen, un archivo comprimido u otro formato binario. Entonces la página muestra los primeros 64 bytes en hexadecimal, indica el tipo de archivo si lo conoce y ofrece los bytes como descarga.