Limpieza de Base64
Herramienta gratuita de limpieza Base64 online que elimina contenido inválido como saltos de línea, espacios en blanco y caracteres invisibles de cadenas Base64. Admite tres opciones independientes: eliminar espacios en blanco, eliminar caracteres especiales y completar automáticamente el padding, generando Base64 estrictamente conforme a RFC 4648.
Relacionado
¿Qué es la limpieza de Base64?
La limpieza de Base64 es la operación de eliminar todos los caracteres inválidos y redundantes de una cadena Base64. El objetivo es generar Base64 puro estrictamente conforme al estándar RFC 4648, facilitando la transmisión, almacenamiento y decodificación entre diferentes sistemas.
Por qué limpiar: el Base64 de diferentes fuentes suele contener caracteres inválidos mezclados. ① Saltos de línea (\n, \r\n) — archivos adjuntos de correo, campos de base de datos, salidas de registro; ② Espacios y tabuladores — pegado manual, copia desde Excel; ③ UTF-8 BOM (EF BB BF) — archivos de texto guardados por Windows; ④ Símbolos de ancho completo, puntuación china — errores de copiado y pegado. Todo esto provoca errores en el decodificador.
Tres opciones de limpieza: ① Eliminar espacios en blanco (\s \n \r \t) — procesa saltos de línea y espacios; ② Eliminar caracteres especiales — conserva solo el alfabeto Base64 A-Z a-z 0-9 + / = - _; ③ Completar automáticamente el padding — hace que la longitud del resultado sea múltiplo de 4. Las tres opciones se pueden marcar independientemente y combinar según sea necesario.
Usos típicos: ① Depuración de API — limpiar cuando el Base64 devuelto por interfaces de terceros da error al pegar; ② Importación a base de datos — eliminar espacios sobrantes al copiar desde Excel; ③ Preprocesamiento antes de decodificar — evitar que atob() lance InvalidCharacterError; ④ Normalización de JWT / Data URL — procesar diferencias de transmisión entre sistemas.
Casos de uso
- Preprocesamiento antes de decodificar: limpia Base64 con saltos de línea o espacios de interfaces de terceros, JWT y registros para que sea directamente decodificable, evitando InvalidCharacterError.
- Reparación de pegado desde Excel / correo: elimina espacios sobrantes, tabuladores y saltos de línea mezclados al copiar Base64 desde celdas de Excel o cuerpos de correo.
- Limpieza de token JWT: normaliza a una sola línea la cadena de tres segmentos JWT (header.payload.signature) con saltos de línea, eliminando espacios en blanco sobrantes.
- Procesamiento de archivos adjuntos MIME: limpia el formato de salto de línea automático cada 76 caracteres en Base64 de archivos adjuntos de correo, facilitando la decodificación posterior.
- Compatibilidad URL Safe: conserva los caracteres - y _ para que el Base64 en JWT, rutas URL y nombres de archivo no se elimine por error.
- Preprocesamiento antes de limpieza por lotes: úsalo junto con base64-format / base64-padding, limpiando primero antes de formatear o completar.
Cómo Usar
- Pega o ingresa la cadena Base64 con ruido (puede contener caracteres inválidos como saltos de línea, espacios, etc.).
- Marca las opciones de limpieza según sea necesario: eliminar espacios en blanco, eliminar caracteres especiales, completar automáticamente el padding (las tres están activadas por defecto).
- Visualiza la salida en el panel derecho: muestra en tiempo real el Base64 limpiado, conteo de caracteres, caracteres eliminados y legalidad de decodificación.
- Copia el resultado al portapapeles o descárgalo como archivo .txt para procesamiento posterior.
Características
- Opción eliminar espacios en blanco: elimina automáticamente \n, \r, \t y espacios, para escenarios como archivos adjuntos de correo y pegado desde Excel.
- Opción eliminar caracteres especiales: conserva solo los 66 caracteres Base64 legales A-Z a-z 0-9 + / = - _.
- Completar automáticamente el padding: se puede marcar para que la longitud del resultado sea múltiplo de 4, reparando errores de longitud.
- Tres opciones independientes y combinables: marcar según sea necesario, respondiendo flexiblemente a diferentes situaciones de contaminación.
- Conservación de caracteres URL Safe: no elimina - y _ por error, evitando la pérdida de caracteres en escenarios JWT / URL.
- Verificación de salida en tiempo real: usa atob() del navegador para detectar si la salida es decodificable, mostrando el estado en tiempo real.
- Conteo de caracteres y aviso de eliminación: muestra en tiempo real caracteres de entrada/salida, caracteres eliminados y estado de decodificabilidad.
- Procesamiento local en el navegador: todas las operaciones de limpieza se realizan en local, el Base64 original no se sube a ningún servidor.
Best Practices
Limpia primero, luego usa la herramienta de padding para rellenar
La limpieza solo elimina caracteres inválidos y opcionalmente completa el padding. Si el Base64 tiene simultáneamente saltos de línea y falta de padding, se recomienda marcar primero las tres opciones de limpieza, luego observar si la longitud de salida sigue sin ser múltiplo de 4. Si sigue habiendo anomalías de padding, usa la herramienta de padding dedicada.
Procesa por separado los tres segmentos del token JWT
JWT es un conjunto de tres segmentos Base64URL (header.payload.signature) conectados por puntos. Al limpiar, los tres segmentos deben eliminar espacios en blanco, pero no insertes caracteres adicionales entre segmentos, o la verificación de firma fallará. Se recomienda separar por puntos antes de pegar, limpiar cada segmento y luego concatenar.
Para entrada URL Safe no marques «eliminar caracteres especiales»
Base64 URL Safe usa - y _ en lugar de + y /. Esta herramienta conserva por defecto estos 4 caracteres, pero si configuras manualmente una lista blanca de caracteres más estricta (solo permite +/), la entrada URL Safe se dañará. Si no estás seguro del conjunto de caracteres, desactiva «eliminar caracteres especiales» y mantén solo «eliminar espacios en blanco».
Si sigue dando error después de limpiar → verifica codificación y BOM
Si atob() sigue lanzando InvalidCharacterError después de limpiar, puede ser por BOM UTF-8 (EF BB BF) o restos de orden de bytes UTF-16. La opción «eliminar espacios en blanco» de esta herramienta no se dirige al BOM; se recomienda volver a decodificar como UTF-8 con TextDecoder en la consola del navegador y luego limpiar de nuevo.
Identificación del origen del BOM: archivos txt guardados por Windows
Si el Base64 se obtuvo guardando como UTF-8 desde el Bloc de notas de Windows, los primeros 3 bytes (EF BB BF) son el BOM. Incluso después de limpiar espacios y saltos de línea, atob puede seguir fallando al reconocer. Solución: vuelve a guardar como UTF-8 sin BOM con VS Code o PowerShell.
Muestra comparaciones antes y después de la limpieza en enseñanza y demostraciones de documentación
La limpieza de Base64 es un problema común en la enseñanza. Se recomienda adjuntar tanto el Base64 antes como después de la limpieza al escribir documentación, junto con comparaciones de recuento de caracteres y estado de decodificabilidad, para que los lectores comprendan intuitivamente la función de cada opción.
Preguntas Frecuentes
¿La limpieza de Base64 cambia los bytes originales?
No. La limpieza solo elimina caracteres inválidos (espacios en blanco, saltos de línea, caracteres no Base64) y no modifica los caracteres válidos intermedios. Si solo se eliminan espacios en blanco y caracteres ilegales, el contenido de bytes antes y después de la limpieza es completamente idéntico. Si se marca «completar automáticamente el padding», solo se añaden = al final, sin afectar los bytes originales.
¿Cuál es la diferencia entre las tres opciones de limpieza?
Eliminar espacios en blanco: elimina \s \n \r \t (espacios, saltos de línea, retornos de carro, tabuladores). Eliminar caracteres especiales: conserva solo los 66 caracteres Base64 legales A-Z a-z 0-9 + / = - _. Completar automáticamente el padding: añade = al final para que la longitud sea múltiplo de 4. Las tres opciones son independientes y combinables.
¿Por qué atob() lanza InvalidCharacterError?
Causas comunes: ① Contiene caracteres chinos, emoticonos Unicode u otros caracteres no ASCII; ② Contiene saltos de línea o espacios (caso común al copiar desde Excel, pegar desde correo); ③ Mezcla de caracteres Base64URL (- / _); ④ La longitud no es múltiplo de 4. La limpieza de esta herramienta resuelve los primeros 3 problemas; la herramienta de completar padding resuelve el cuarto.
¿La limpieza elimina el padding?
No. El carácter = es un carácter Base64 legal, y la opción «eliminar caracteres especiales» de esta herramienta conserva explícitamente =. Si deseas eliminar el padding, usa la herramienta de padding dedicada (base64-padding) cambiando al modo «quitar relleno».
¿Cómo limpiar si contiene saltos de línea?
Con marcar «eliminar espacios en blanco» por defecto es suficiente. Los saltos de línea (\n / \r\n), tabuladores y espacios se eliminarán. Si necesitas conservar los saltos de línea (formato de archivos adjuntos de correo MIME), desactiva la opción «eliminar espacios en blanco».
¿Puede esta herramienta manejar UTF-8 BOM?
El BOM (EF BB BF) es el carácter Unicode U+FEFF. La opción «eliminar espacios en blanco» de esta herramienta usa la expresión regular \s \n \r \t que no incluye U+FEFF, por lo que el BOM puede permanecer. Si encuentras InvalidCharacterError causado por BOM, se recomienda eliminar primero el BOM con TextDecoder en código o en la consola del navegador.
¿Se convierten entre sí los caracteres URL Safe y Base64 estándar?
No. La opción «eliminar caracteres especiales» de esta herramienta conserva los cuatro caracteres + / - _, solo realiza eliminación de ruido sin conversión activa. Si necesitas conversión mutua entre URL Safe y caracteres estándar, usa la herramienta Base64URL dedicada (base64-url-safe).
¿Mi contenido se sube a algún servidor?
No. Toda la lógica de limpieza se ejecuta localmente en el navegador; la cadena Base64 original no sale de tu dispositivo. Puedes usarla con confianza para procesar datos sensibles (credenciales, claves, tokens).
¿Se pueden limpiar varios segmentos de Base64 a la vez?
Esta herramienta tiene una interfaz de limpieza de un solo segmento. Si necesitas limpiar varios segmentos de Base64, se recomienda llamar cíclicamente a la lógica de esta herramienta o usar la herramienta de línea de comandos correspondiente (como el comando base64). Para codificación/decodificación por lotes, usa base64-batch-encode / base64-batch-decode.
Solución de problemas
atob sigue dando error después de limpiar
Puede ser problema de longitud (no es múltiplo de 4) o restos de BOM / codificación. Primero confirma que está marcado «completar automáticamente el padding»; si sigue dando error, intenta volver a decodificar como UTF-8 con TextDecoder en la consola del navegador, eliminar el BOM y limpiar de nuevo.
La longitud cambió después de limpiar, pero la decodificación sigue fallando
Puede que el contenido original no sea Base64 estándar, por ejemplo Base32 / Base58 / Base85. Confirma el formato de codificación de los datos originales y cambia a la herramienta correspondiente. También puedes intentar probar si la cadena original se puede volver a codificar con btoa antes de atob.
Quedan muy pocos caracteres después de limpiar
Es muy probable que la opción «eliminar caracteres especiales» sea demasiado estricta y elimine también + / - _. Verifica si desactivaste por error la lista blanca de caracteres; esta herramienta conserva por defecto los 66 caracteres Base64 legales. Si la entrada es URL Safe, desactiva «eliminar caracteres especiales».
No hay ninguna salida después de pegar
Puede que la entrada sean solo espacios en blanco (contiene solo espacios / saltos de línea / tabuladores); la opción «eliminar espacios en blanco» de esta herramienta lo eliminará todo dejando una cadena vacía. Verifica que la entrada original contenga al menos un carácter Base64 (A-Z a-z 0-9 + / =).
Glosario
- UTF-8 BOM
- Marca de orden de bytes. Prefijo de 3 bytes (0xEF 0xBB 0xBF) que Windows añade al guardar texto UTF-8, que hace que el decodificador Base64 trate el primer carácter como un byte ilegal.
- URL Safe Base64
- Variante Base64 segura para URL definida en RFC 4648 §5, que reemplaza + y / por - y _. La opción «eliminar caracteres especiales» de esta herramienta conserva estos 4 caracteres para evitar borrados accidentales.
- Salto de línea
- \r\n (Windows) y \n (Unix / macOS). El Base64 MIME de archivos adjuntos de correo suele tener un salto de línea cada 76 caracteres, que debe eliminarse durante la limpieza.
- Caracteres Base64 válidos
- El conjunto de caracteres Base64 estándar es A-Z, a-z, 0-9, +, /, = (padding), más - y _ de la variante URL Safe, totalizando 66 caracteres legales.
- InvalidCharacterError
- Error de decodificación lanzado por atob() del navegador. Se activa cuando una cadena Base64 contiene caracteres fuera de la tabla de caracteres legales (chino, espacios en blanco, símbolos especiales, etc.).
Conjunto de caracteres Base64 y reglas de conservación
Tabla de caracteres legales que conserva la opción «eliminar caracteres especiales» de esta herramienta.
| Tipo de carácter | Caracteres | Regla de conservación |
|---|---|---|
Letras | A-Z, a-z | 52 caracteres, conservación obligatoria |
Números | 0-9 | 10 caracteres, conservación obligatoria |
Símbolos Base64 estándar | + / | 2 caracteres, conservación obligatoria |
Símbolos URL Safe | - _ | 2 caracteres, conservación obligatoria en escenarios URLSafe |
Padding | = | Relleno final, conservación obligatoria |
Espacios en blanco | espacios, \n, \r, \t | Eliminar según opción «eliminar espacios en blanco» |
Otros | Caracteres chinos / emoticonos / BOM, etc. | Eliminar según opción «eliminar caracteres especiales» |
5 fuentes comunes de contaminación Base64
Comprende cómo se mezclan contenido inválido en las cadenas Base64.
| Fuente de contaminación | Contenido mezclado | Opción recomendada |
|---|---|---|
Archivos adjuntos de correo | \r\n cada 76 caracteres | Eliminar espacios en blanco |
Pegado desde Excel / base de datos | Espacios antes/después / tabulador | Eliminar espacios en blanco |
Archivos txt de Windows | UTF-8 BOM (EF BB BF) | Eliminar caracteres especiales + eliminar BOM manualmente |
URL / nombres de archivo | Conflicto de caracteres + / | Conservar URLSafe (usar conversión base64-url-safe) |
Salidas de registro / trace | Prefijos / sufijos de depuración | Eliminar caracteres especiales |
Comparación de las 3 opciones de limpieza
Las tres opciones son independientes y combinables, usar según sea necesario.
| Opción | Comportamiento | Escenario típico |
|---|---|---|
Eliminar espacios en blanco | Elimina \s \n \r \t | Correo / Excel / registros |
Eliminar caracteres especiales | Conserva solo el alfabeto Base64 | Mezcla de caracteres chinos / emoticonos / BOM |
Completar automáticamente el padding | Añade = al final hasta múltiplo de 4 | Longitud no múltiplo de 4 |
Authoritative References
- Comparación segura de cadenas
- Conversor Binario
- Cifrado César
- Código Morse
- Hexadecimal
- Video a Base64
- Base64 a Video
- Imagen a Base64
- Base64 a imagen
- Texto a Base64
- Base64 a texto
- Verificador de hash de archivo
- Archivo a Base64
- Base64 a archivo
- Audio a Base64
- Base64 a Audio
- Cifrar y descifrar AES
- Cifrado y descifrado DES
- Codificador y Decodificador Base32
- Codificar y decodificar Base58
- Codificación Base64
- Decodificación Base64
- Comparador de Base64
- Divisor Base64
- Fusionar Base64 multilínea
- Formato Base64
- Validador de Base64
- Codificación Base64 por lotes
- Decodificador Base64 por lotes
- Limpieza de Base64
- Manejo de padding Base64
- Estadísticas de longitud Base64
- Base64 a Hexadecimal
- Conversor Base64 DataURL
- Convertidor Base64-Hex
- Codificador Base85
- Generador y validador HMAC
- Derivación de Clave PBKDF2
- Hash MD5
- Hash SHA-256
- SHA1 Hash
- Hash SHA512
- Decodificador, Verificador y Generador JWT
- Codificador y decodificador de entidades HTML
- Escape de Unicode
- Codificación URL
- Base64 URL Safe
- MIME Base64
- Ofuscador de Java
- Ofuscador de JS
- Ofuscador de PHP
- Ofuscador de Python