Herramienta para codificar y decodificar Base64

BeetVPN

Conversor Base64:

Como su nombre indica, Base64 es una forma de representar datos en base 64. En lugar de contar de 1 a 10 o a 16, se utiliza un alfabeto de 64 caracteres. Un carácter número 65 sirve para terminar las secuencias Base64: el signo «=». El alfabeto Base64 incluye letras minúsculas, mayúsculas, números y los signos «+» y «/», para un total de 64 caracteres distintos. Base64 utiliza una representación binaria de 6 bits, lo que permite 64 estados diferentes.

Para convertir texto a Base64, primero se divide en «bloques» de 24 bits (3 bytes). Una vez creados, se asigna un valor Base64 a cada grupo de 6 bits. Por ejemplo, para la palabra «md5»:

ASCII: m d 5
Binary: |011011 01|0110 0100|00 110101|
Base 64: b W Q 1

Por tanto, la representación Base64 de la palabra «md5» es «bWQ1».

¿Qué ocurre si el número de bits no es exactamente múltiplo de 6 al formar los bloques de 24 bits? Los bits que faltan se rellenan con ceros. Por ejemplo, con «sha1» se procesan correctamente las tres primeras letras «sha» y queda un byte, que no es múltiplo de 6. Se añaden entonces cuatro bits «0» (8 + 4 = 6 × 2 = 12 bits) y después dos signos «=» para representar los dos caracteres que faltan hasta completar el bloque de 24 bits.

Esto permite saber, observando una cadena Base64, si el último bloque contenía 1, 2 o 3 bytes. Si contenía 3 bytes, el número de bits ya es múltiplo de 6 y no hace falta añadir «=». Si solo queda un byte, se añaden dos signos «=»; si quedan dos bytes, se añade uno.