#527 · Herramienta para desarrolladores

Generador Base64 aleatorio

Crea bytes aleatorios con Web Crypto y los codifica como Base64 estándar o Base64URL. La configuración permite controlar tamaño, cantidad y padding para adaptarse a cabeceras, tokens opacos, nonces y fixtures que esperan una representación textual compacta.

Datos de entrada

JSON de generación
Espacio publicitario

Cómo usar esta herramienta para desarrolladores

  1. Configura bytes y count.
  2. Activa urlSafe para sustituir + y / por - y _.
  3. Decide si quieres conservar el padding =.
  4. Genera y copia las cadenas.

Qué hace esta herramienta para desarrolladores

Genera bytes con crypto.getRandomValues y los codifica en Base64. Base64URL cambia dos caracteres del alfabeto y suele omitir padding cuando se usa en URLs o tokens.

Codificar en Base64 no añade entropía ni cifra el contenido; solo cambia la representación de los bytes.

Si el valor funciona como secreto, su seguridad depende de los bytes aleatorios y de cómo se almacene y transmita, no de usar Base64.

Ejemplo

Entrada

{"bytes":16,"count":1,"urlSafe":true,"padding":false}

Salida esperada

Ejemplo: pK9Q5_bZ0Y3yD1N2mT7xVQ

Casos de uso

  • Generar tokens opacos.
  • Crear nonces para protocolos web.
  • Preparar fixtures Base64URL.
  • Comparar longitudes entre hex y Base64.

Consejos para obtener resultados fiables

  • Usa Base64URL cuando el valor deba viajar sin escape en URL o query string.
  • No confundas Base64 con cifrado.
  • Evita modificar o truncar la cadena si necesitas todos los bits generados.
  • Guarda secretos fuera de logs y repositorios.

Detalles del procesamiento

Los bytes se convierten a una cadena binaria por bloques y después se pasan a btoa. Para Base64URL se reemplazan caracteres y se elimina padding solo si lo solicita la configuración.

La salida puede requerir padding en sistemas estrictos. La página limita tamaño y cantidad para no crear cargas innecesarias en el navegador.

Preguntas frecuentes

¿Cómo generar un token Base64URL sin padding?

Configura urlSafe en true y padding en false. Los bytes aleatorios se codifican con - y _ y se eliminan los = finales.

¿Base64URL es más seguro que Base64 normal?

No. Ambos son codificaciones; la diferencia es compatibilidad con URLs y algunos protocolos, no seguridad criptográfica.

¿Cuántos caracteres Base64 salen de 32 bytes?

Base64 representa grupos de 3 bytes en 4 caracteres; 32 bytes producen 44 caracteres con padding estándar y normalmente 43 sin padding.

¿Puedo decodificar el valor generado en otro lenguaje?

Sí, siempre que uses la misma variante Base64 o Base64URL y gestiones correctamente el padding esperado por la biblioteca.

¿Por qué no debo usar Math.random para generar estos tokens?

Math.random no está diseñado como CSPRNG. La herramienta usa crypto.getRandomValues para obtener bytes adecuados a usos que requieren aleatoriedad fuerte.

Módulos de procesamiento

MóduloFunción
RNG del navegadorGenera bytes con Web Crypto.
Codificador Base64Convierte bytes a representación estándar.
Adaptador URL-safeAplica alfabeto -/_ y padding configurable.

Explorar la categoría

Más utilidades de identificadores, hashes y seguridad en Hash, ID y seguridad.