Codificador Base64

5 de 2 calificaciones
Codificador Base64

El Codificador Base64 es una herramienta gratuita que convierte una cadena de texto en texto Base64 estándar.

¿Qué es Base64 y para qué sirve?

Base64 es un sistema de codificación de datos binarios a texto que representa los datos mediante letras, números y un pequeño conjunto de símbolos. Existe porque algunos sistemas pueden transmitir texto de forma fiable, pero podrían modificar o rechazar los datos binarios sin procesar.

El alfabeto Base64 estándar contiene letras mayúsculas y minúsculas, dígitos, signos de suma y barras diagonales. Al final puede aparecer un signo igual como relleno. El valor codificado suele ser más largo que el original, ya que cada grupo de tres bytes de entrada se convierte en cuatro caracteres Base64.

La entrada es Hello.

El resultado es SGVsbG8=.

Base64 trabaja con bytes, no con caracteres legibles para las personas. Los espacios, los signos de puntuación y los números se codifican como cualquier otra entrada. Las letras acentuadas, los emojis y los sistemas de escritura no latinos deben tener primero una codificación de caracteres, normalmente UTF-8. Distintas codificaciones de bytes generan resultados Base64 diferentes. Una entrada vacía produce un valor codificado vacío, mientras que una entrada muy larga genera una cadena proporcionalmente más extensa.

Base64 es un método de codificación, no de cifrado. Cualquiera que disponga de un decodificador puede recuperar los datos originales, por lo que no ofrece confidencialidad y no sirve para ocultar contraseñas, claves de API ni información personal.

Diagrama que muestra texto procesado por la herramienta Codificador Base64 en ambos sentidos

¿Cómo se usa el Codificador Base64?

Introduce la cadena que quieras codificar y consulta el valor convertido en el campo de resultado Base64 codificado. La herramienta utiliza la codificación Base64 estándar mediante la función base64_encode de PHP.

  1. Copia la cadena de origen exacta, incluidos los espacios o saltos de línea que deban conservarse.
  2. Copia el valor Base64 obtenido sin añadir comillas, espacios ni otros caracteres en blanco.
La herramienta Codificador Base64 en digily.link, con su formulario de entrada

El proceso se realiza en el servidor. La entrada se envía al servidor mediante HTTPS y no se almacena. Aunque HTTPS protege la solicitud mientras está en tránsito, evita enviar información secreta salvo que el sistema receptor necesite realmente Base64.

¿Para qué se utiliza Base64 en la práctica?

Base64 se utiliza cuando hay que transmitir datos binarios o bytes arbitrarios mediante un formato basado en texto. El sistema receptor debe saber que el valor está codificado en Base64 y decodificarlo en el momento adecuado.

  • Las URL de datos permiten insertar imágenes, fuentes u otros archivos codificados en Base64 directamente en HTML o CSS, junto con un tipo de medio.
  • Las cadenas de consulta a veces transportan tokens codificados o datos estructurados, aunque la variante Base64 segura para URL suele ser más adecuada.
  • El correo electrónico utiliza Base64 como una de las codificaciones de transferencia MIME para archivos adjuntos y partes de mensajes que no pueden enviarse de forma segura como texto sin formato.
  • Las cargas útiles JSON pueden representar como cadenas los bytes de imágenes, documentos o material criptográfico, ya que JSON no dispone de un tipo binario nativo.
  • La autenticación HTTP utiliza Base64 para el nombre de usuario y la contraseña en la autenticación Basic. El valor sigue siendo legible después de decodificarlo, por lo que sigue siendo necesario proteger la transmisión.
Ejemplo de resultado generado por la herramienta Codificador Base64

Cómo elegir entre Base64 estándar y Base64url

Esta herramienta genera Base64 estándar, apropiado para correo electrónico MIME, muchas API JSON y sistemas que solicitan expresamente el alfabeto Base64 habitual. El resultado estándar puede contener +, / y el carácter de relleno = al final.

Elige Base64url cuando el valor vaya a formar parte de una URL, un nombre de archivo, una cookie o un JSON Web Token. Esta variante sustituye + por - y / por _, y a menudo omite el relleno. No cambies de variante sin consultar las especificaciones del sistema receptor. Un decodificador que espere un alfabeto podría rechazar el otro.

¿Por qué Base64 no se decodifica o muestra caracteres ilegibles?

Base64 suele fallar al decodificarse porque la entrada utiliza una variante distinta de la esperada o se ha modificado durante la transmisión. Un valor Base64 válido también puede decodificarse como bytes binarios que parecen caracteres ilegibles al mostrarlos como texto.

  • Un alfabeto incorrecto es habitual cuando se envía una entrada Base64url a un decodificador estricto de Base64 estándar, o al contrario.
  • La ausencia de relleno puede provocar errores en los decodificadores que exigen completar la longitud con uno o dos signos de igual.
  • La doble codificación se produce cuando se vuelve a codificar un valor que ya estaba codificado. La primera decodificación devuelve entonces otra cadena con apariencia de Base64, en lugar del contenido original.
  • La modificación de caracteres puede ocurrir cuando un signo de suma de una cadena de consulta se interpreta como un espacio, o cuando al copiar se introducen saltos de línea y espacios.
  • El resultado binario puede parecer ilegible cuando se muestra como texto. Los bytes decodificados podrían corresponder a una imagen, un archivo comprimido, un PDF o un archivo cifrado que debe abrirse con la aplicación adecuada.

La herramienta Decodificación Base64 permite decodificar texto Base64 estándar. Si los bytes decodificados representan una imagen, Decodificación Base64 a imagen puede ser el siguiente paso más directo.

Preguntas frecuentes

¿Base64 conserva las mayúsculas y los saltos de línea?

Sí. Base64 conserva los bytes subyacentes, incluidas las mayúsculas, las minúsculas y los caracteres de salto de línea. Sin embargo, los finales de línea de Windows y los de estilo Unix utilizan secuencias de bytes diferentes, por lo que dos textos de varias líneas visualmente idénticos pueden generar valores codificados distintos.

¿Puedo pegar Base64 directamente en HTML o CSS?

Solo si añades la sintaxis que requiere el documento. Una URL de datos suele necesitar un tipo de medio y el marcador ;base64 antes de la carga útil codificada. Este codificador devuelve la carga útil, pero no construye la URL completa.

¿El mismo texto siempre genera el mismo valor Base64?

Generará el mismo valor siempre que los bytes de entrada sean idénticos. Una codificación de caracteres distinta, un espacio final invisible, una marca de orden de bytes o un cambio en el final de línea modificarán el resultado.

¿Base64 distingue entre mayúsculas y minúsculas?

Sí. Las mayúsculas y las minúsculas representan valores diferentes en el alfabeto Base64, por lo que cambiar unas por otras puede dañar los datos decodificados aunque la cadena siga pareciendo válida.

¿Puedo codificar un archivo con esta herramienta?

Esta herramienta está indicada para cadenas de texto, no para subir archivos. Pegar la representación textual de un archivo no equivale a codificar sus bytes sin procesar. Si otra aplicación necesita los bytes de un archivo en Base64, utiliza un codificador compatible con archivos y sigue los requisitos de esa aplicación respecto al alfabeto Base64 y el relleno.

Herramientas similares

Decodificación Base64

Convierte fácilmente cualquier entrada Base64 de vuelta a una cadena de texto legible de manera rápida y eficiente.

4,898
43

Herramientas populares