Estándar Web y Especificación RFC

Base64 vs Base64URL — Diferencias Técnicas y Estándares

Entienda la diferencia entre Base64 estándar y Base64URL seguro para web: reemplazo de caracteres y JWT.

Por Qué el Base64 Estándar se Rompe en URLs

El Base64 estándar (RFC 4648 §4) utiliza el alfabeto de 64 caracteres A-Z, a-z, 0-9, +, /, con = utilizado como relleno de bytes final.

Sin embargo, cuando se pasan cadenas Base64 estándar en parámetros de consulta HTTP, segmentos de ruta URI o cookies web:

  • El signo más + es interpretado automáticamente por los servidores web como un espacio (%20), corrompiendo la carga útil.
  • La barra diagonal / es interpretada por los enrutadores web como un delimitador de ruta, alterando la lógica de enrutamiento.
  • El signo igual = se utiliza como separador de parámetros clave-valor en cadenas de consulta.

Sustituciones de Caracteres del Alfabeto (RFC 4648 §5)

CaracterísticaBase64 EstándarBase64URL (Seguro para URL)
Índice 62+ (más)- (guión)
Índice 63/ (barra)_ (guión bajo)
Carácter de Relleno (=)Obligatorio (Longitud % 4 == 0)Omitido o Sin Relleno

Probar Herramientas en Línea

¿Necesita convertir entre formatos Base64? Use nuestra suite de herramientas 100% en el cliente: