Conversor de Base32, Base58 y Ascii85
Codifica texto o bytes sin procesar como Base32, Base58, Ascii85 o Z85, o decodifica cualquiera de ellos, con el alfabeto y las reglas de relleno de cada codificación. La tabla de trabajo muestra cómo se convierten en caracteres los primeros bytes. Base64 la cubre el Codificador y decodificador de texto. Funciona en tu navegador; no se sube nada.
Letras de la A a la Z y dígitos del 2 al 7, cinco bits por carácter, con relleno = hasta un múltiplo de ocho caracteres. Al decodificar, la capitalización no importa.
Cómo se calculó
Los bytes se escriben como bits y se cortan en grupos de cinco. Cada grupo es un número del 0 al 31 y elige un carácter.
| Bits | Valor | Carácter |
|---|---|---|
| 01001 | 9 | J |
| 00001 | 1 | B |
| 10010 | 18 | S |
| 10110 | 22 | W |
| 11000 | 24 | Y |
| 11011 | 27 | 3 |
| 00011 | 3 | D |
| 01111 | 15 | P |
| 00101 | 5 | F |
| 10000 | 16 | Q |
| 10000 | 16 | Q |
| 00101 | 5 | F |
| 01110 | 14 | O |
| 11011 | 27 | 3 |
| 11011 | 27 | 3 |
| 10010 | 18 | S |
Mostrando las primeras 16 filas.
Cómo usar el conversor de codificaciones base
- 1. Elige una codificación. Base32, Base32 con el alfabeto hexadecimal extendido, Base58 con el alfabeto de Bitcoin, Ascii85 tal como lo usa Adobe, o Z85. Una nota debajo del menú describe la que has elegido.
- 2. Indica qué son los datos. Texto se lee como bytes UTF-8. Bytes hexadecimales permite codificar datos binarios cualesquiera, como una clave, escribiéndolos en pares como
86 4f d2 6f. - 3. Codifica o decodifica. Al codificar se obtiene un texto formado por el alfabeto de la codificación. Al decodificar se vuelve a bytes, que se muestran como texto o como hexadecimal. Los espacios y los saltos de línea de la entrada se ignoran.
- 4. Revisa las opciones. Base32 puede escribirse con o sin relleno
=. Ascii85 puede envolverse en<~y~>, y puede escribir cuatro bytes cero comoz.
Para qué sirven estas codificaciones
Ninguna de ellas es cifrado. Cada una convierte bytes, que pueden no ser imprimibles, en texto que puede pegarse en un correo, una URL, un código QR o un archivo de configuración, y cualquiera que conozca el nombre de la codificación puede revertirla. Se diferencian en el alfabeto que usan y en cuánto más largo es el texto que los datos.
| Codificación | Caracteres | Longitud frente a bytes | Hello, World se convierte en |
|---|---|---|---|
| Base32 (RFC 4648) | 32 | 8 ÷ 5 de largo | JBSWY3DPFQQFO33SNRSA==== |
| Base32 hexadecimal extendido | 32 | 8 ÷ 5 de largo | 91IMOR3F5GG5ERRIDHI0==== |
| Base58 (Bitcoin) | 58 | unas 1,37 veces | 2NEpo7TZsLBYdvo5V |
| Ascii85 (Adobe) | 85 | 5 ÷ 4 de largo | <~87cURD_*#4DfTZ)~> |
| Z85 (ZeroMQ) | 85 | 5 ÷ 4 de largo | nm=QNz.92jz/PV8 |
Base32
Base32 divide los bytes en grupos de 5 bits y escribe cada uno como uno de 32 caracteres, de la A a la Z y del 2 al 7. Usa solo los dígitos del 2 al 7, dejando fuera el 0, el 1 y el 8, que se parecen a la O, la I y la B, e ignora la capitalización, así que se puede leer en voz alta o teclear. El signo de relleno = redondea la longitud a un múltiplo de ocho. La RFC 4648 incluye vectores de prueba como foobar → MZXW6YTBOI======. Los secretos de las aplicaciones de autenticación y las direcciones «onion» de Tor son Base32.
Base58
Base58 trata toda la entrada como un único número grande y lo escribe en base 58, dejando fuera el 0, la O, la I, la l, y los símbolos + y /, de modo que el resultado puede copiarse con un doble clic y es difícil de leer mal. Cada byte cero inicial se escribe como el primer carácter, 1. El alfabeto de Bitcoin es uno de varios alfabetos Base58; los que usan Ripple y Flickr ordenan los caracteres de otra forma, así que comprueba cuál usan tus datos. Las direcciones de Bitcoin añaden además una suma de verificación y un byte de versión, un esquema llamado Base58Check, que esta herramienta no calcula.
Ascii85 y Z85
Ambas leen cuatro bytes como un número de 32 bits y lo escriben como cinco dígitos en base 85, por eso solo son un 25 % más largas que los datos. El Ascii85 de Adobe, usado en PostScript y PDF, usa los caracteres desde ! hasta u, abrevia cuatro bytes cero como z y suele envolver los datos entre <~ y ~>. Un grupo final de uno a tres bytes da un carácter más que bytes tiene. Z85, definido en la RFC 32 de ZeroMQ, usa un alfabeto distinto de 85 caracteres elegido para evitar comillas y barras invertidas en el código fuente, no tiene el atajo z ni grupo final corto, así que su entrada debe ser múltiplo de cuatro bytes. Su ejemplo de especificación son los ocho bytes 86 4f d2 6f b5 59 f7 5b, que se codifican como HelloWorld. Existen otros alfabetos base 85, como el de la RFC 1924 que usa Git, así que empareja el alfabeto con su fuente.
Preguntas frecuentes
- ¿Base32 o Base58 son cifrado?
- No. Son codificaciones: cualquiera puede revertirlas, porque el alfabeto y las reglas son públicos. Hacen que los datos sean imprimibles y más fáciles de copiar, no secretos.
- ¿Por qué Base58 deja fuera algunos caracteres?
- Para evitar caracteres parecidos y símbolos. Omite el 0 (cero), la O (o mayúscula), la I (i mayúscula) y la l (ele minúscula), que se confunden en muchas tipografías, y el + y la /, que rompen la selección con doble clic. Quedan 58 caracteres.
- ¿Cómo decodifico una cadena Base32?
- Elige Base32, cambia a Decodificar y pega la cadena. La capitalización no importa, y los signos = finales son opcionales. Si recibes un error que nombra caracteres, probablemente la cadena es Base32 con hexadecimal extendido, Base64 u otra codificación.
- ¿Qué diferencia hay entre Ascii85 y Z85?
- Ambas usan cinco caracteres por cada cuatro bytes, pero sus alfabetos difieren. Ascii85 usa los caracteres desde ! hasta u, tiene un atajo z para los ceros y puede llevar <~ y ~> alrededor. Z85 usa un alfabeto seguro para el código fuente y no tiene atajos.
- ¿Por qué Z85 dice que necesito un múltiplo de cuatro bytes?
- La especificación de Z85 no define relleno. Sus datos deben ser un número entero de grupos de 4 bytes, y su texto, un múltiplo de cinco caracteres. Añade los bytes tú mismo, o usa Ascii85, que admite un grupo final corto.
- ¿Cómo codifico una cadena Base64?
- Esta página no hace Base64. El Codificador y decodificador de texto convierte texto a Base64, URL y entidades HTML y viceversa, y la página del Cifrado XOR puede mostrar bytes hexadecimales en Base64.