Cómo convertir entre dos codificaciones cualesquiera
- Pega tu cadena en la entrada. Con De en Detección automática, la línea de estado dice qué cree la herramienta que es: “Detectado: Base58 · ¿No es correcto? Leer como [Base64] …”.
- Si no acierta, pulsa uno de los botones Leer como o ajusta De tú mismo.
- Elige el destino en A. Los formatos están agrupados: texto, Base64, bytes y números, Base32, bases de números grandes, Base85/Base91/Base45, y codificaciones de correo, URL y heredadas.
- Las opciones de cada formato aparecen bajo su panel, por ejemplo Alfabeto para Base58 y Base62 o Relleno (=) para Base32 y Base64.
- ⇄ Intercambiar pasa la salida a la entrada e invierte los dos formatos. Copiar salida y Descargar recogen el resultado, y Guardar bytes descarga los bytes decodificados como archivo.
Toda conversión pasa por los bytes en bruto: se decodifica la entrada y los bytes se vuelven a codificar. El contador Bytes bajo la herramienta muestra cuántos hay, y a menudo es la forma más rápida de comprobar que una clave o un hash está completo. Las páginas específicas enlazadas arriba abren este mismo convertidor con los formatos ya elegidos.
Comparativa de las codificaciones
| Codificación | Alfabeto | Tamaño de salida | Sobrecarga | Uso típico |
|---|---|---|---|---|
| Hex / Base16 | 16 | 2 caracteres por byte | 100% | Hashes, depuración, volcados de bytes |
| Base32 | 32 | 8 por cada 5 bytes | 60% | Secretos TOTP, direcciones onion, ID sin distinción de mayúsculas |
| Base36 | 36 | ≈ 1,55 por byte | ≈ 55% | ID cortos y números sin distinción de mayúsculas |
| Base45 | 45 | 3 por cada 2 bytes | 50% | Códigos QR (certificados sanitarios de la UE) |
| Base58 | 58 | ≈ 1,37 por byte | ≈ 37% | Bitcoin, Solana, IPFS |
| Base62 | 62 | ≈ 1,34 por byte | ≈ 34% | URL e ID cortos |
| Base64 | 64 | 4 por cada 3 bytes | 33% | Correo, JSON, data URI, JWT, casi todo |
| Ascii85 / Z85 | 85 | 5 por cada 4 bytes | 25% | PDF, PostScript, Git, claves de ZeroMQ |
| basE91 | 91 | ≈ 1,23 por byte | 14–23% | Meter datos en ASCII imprimible lo más apretados posible |
| Uuencode / xxencode | 64 | 4 por cada 3 bytes más el marco de línea | ≈ 38% | Adjuntos antiguos de correo y Usenet |
La sobrecarga corresponde a datos aleatorios; en las bases de números grandes varía en uno o dos caracteres según el valor. Base45 parece derrochadora aquí, pero en el modo alfanumérico de un código QR sus 45 caracteres cuestan 5,5 bits cada uno, lo que la deja cerca del 3%.
Para una misma entrada, esta es la cadena de 5 bytes Hello en cada una:
| Hex | Base32 | Base36 | Base45 | Base58 | Base62 | Base64 | Ascii85 | basE91 |
|---|---|---|---|---|---|---|---|---|
48656c6c6f | JBSWY3DP | 3yud78mn | %69 VDL2 | 9Ajdvzr | 5TP3P3v | SGVsbG8= | 87cURDZ | >OwJh>A |
Tres formas de construir una base
Las codificaciones se dividen en tres grupos, y el grupo explica la mayor parte de su comportamiento.
Grupos de bits: hex, Base32, Base64, uuencode y xxencode. El tamaño del alfabeto es una potencia de dos, así que cada carácter lleva un número fijo de bits (4, 5 o 6). La codificación es rápida, funciona como flujo, y la longitud de la salida depende solo de la longitud de la entrada.
Bloques fijos: Base45 (2 bytes en 3 caracteres) y la familia Base85 (4 bytes en 5). El alfabeto no es una potencia de dos, así que cada bloque pequeño se convierte como un número. Sigue siendo rápido y apto para flujos, y la longitud vuelve a depender solo del tamaño de la entrada.
Números grandes: Base36, Base58 y Base62. Toda la entrada es un único número, escrito en la nueva base. Sirve cualquier tamaño de alfabeto y la salida no lleva relleno, pero cada byte afecta a cada carácter, los bytes cero iniciales necesitan un tratamiento especial y el coste crece con el cuadrado del tamaño. Este convertidor conserva los ceros iniciales como dígitos cero iniciales y limita estas bases a 64 KB de entrada.
basE91 queda entre los grupos: lee 13 o 14 bits cada vez, así que su longitud depende ligeramente del contenido.
Qué codificación elegir
- Programas que hablan con programas: Base64, o Base64URL dentro de URL y tokens. Todos los lenguajes lo traen de serie y nada más está tan extendido.
- Personas que leen, teclean o dictan el valor: Base32, preferiblemente la variante de Crockford, o Base36. Las dos ignoran mayúsculas y minúsculas; Crockford además evita letras que se confunden entre sí.
- ID opacos y cortos en URL: Base62 para la cadena más corta de letras y dígitos, Base58 si la gente puede copiarla a mano, ya que prescinde de
0,O,Iyl. - Un código QR: Base45 con el modo alfanumérico del QR.
- Cada byte cuenta y el canal es ASCII simple: Ascii85 o Z85 para bloques fijos, basE91 para unos pocos puntos porcentuales más.
- Inspeccionar bytes: hex. Ocupa el doble, pero cada byte son dos caracteres que puedes leer.
- Un sistema heredado lo pide: uuencode o xxencode, y nada nuevo.
La comparativa de hex, Base32, Base58 y Base85 profundiza en sus ventajas e inconvenientes frente a Base64.
Preguntas frecuentes
¿Cuál es la codificación de texto más compacta para datos binarios?
Entre las habituales, basE91 (alrededor de un 23% de sobrecarga con datos aleatorios), después la familia Base85 (25%) y luego Base64 (33%). Las codificaciones más compactas usan signos de puntuación que hay que escapar en JSON, HTML o la shell, y por eso Base64 suele salir más a cuenta.
¿Qué codificación es mejor para URL?
Base64URL para tokens generados por máquinas, porque es corta y está estandarizada. Base62 o Base58 cuando el valor solo debe contener letras y dígitos, y Base32 o Base36 cuando tiene que sobrevivir a cambios de mayúsculas y minúsculas. Base45 y Base85 contienen caracteres que necesitan codificación con porcentajes.
¿Por qué varía la longitud de la salida en Base58, Base62 y Base36?
Tratan la entrada como un único número grande, así que la longitud depende de su valor además del número de bytes. Base64, Base32 y hex asignan grupos de bits fijos y siempre dan la misma longitud para el mismo número de bytes.
¿Cómo decide la detección automática qué es mi cadena?
Comprueba la entrada contra las reglas de cada formato, desde las más características (delimitadores como <~ o begin 644) hasta las más genéricas, y decodifica con la primera que coincide. Una cadena corta puede ser válida en varios formatos; los botones Leer como te dejan elegir otra lectura.
¿Protegen los datos estas codificaciones?
No. Cualquiera puede revertir todas ellas sin ninguna clave. Solo hacen que los bytes sean imprimibles. Consulta codificación frente a cifrado.