Herramientas de desarrollo · JWT decodificador
Por qué un decodificador JWT no necesita servidor: verificación con el panel de red
· Cómo funciona
jwt privacidad procesamiento del navegador
Dividir una cadena y decodificar base64url es un trabajo trivial para un navegador, por lo que no hay ninguna razón técnica para que un decodificador envíe su token a ninguna parte. Esta publicación muestra cómo confirmar que una herramienta la mantiene local.
¿A dónde va mi token cuando presiono decodificar? — la pregunta que hay que hacerle a cada herramienta en línea
Antes de usar cualquier decodificador en línea, pregunte qué recibe la cadena después de presionar el botón. Una JWT puede ser una credencial de portador activa, por lo que una carga puede exponer mucho más que reclamos legibles. Una página no debería recibir tokens de producción simplemente porque su interfaz parezca un formateador de texto.
La propia advertencia de ToolAcre es más estricta que una promesa de marketing: no pegue tokens de producción en ninguna herramienta web, incluida esta. Utilice un ejemplo caducado, rotado o sintético. La implementación se ejecuta localmente, pero las extensiones del navegador, los scripts circundantes y el dispositivo siguen siendo parte del entorno en el que debe confiar.
El trabajo involucrado: división de cadenas, decodificación de URL base64 y análisis JSON, todas las capacidades estándar del navegador
La decodificación real consta de operaciones de cadena y primitivas del navegador. El código recorta un prefijo de portador opcional, lo divide en puntos, normaliza el alfabeto base64url, restaura el relleno, invoca `atob`, convierte bytes a través de un estricto UTF-8 TextDecoder y analiza los dos primeros resultados como objetos JSON.
Ninguno de esos pasos requiere un servicio remoto. Las filas de NumericDate utilizan la implementación de fecha local, las filas de reclamo se ensamblan a partir del objeto analizado y la salida se asigna como texto. La fuente no importa ninguna biblioteca de verificación y no solicita ninguna clave pública o secreta porque la inspección es la única operación que se ofrece.
Cómo verificar: abra el panel de red, pegue un token, decodifique y esté atento a las solicitudes
Abra las herramientas de desarrollo antes de ingresar datos de prueba inofensivos, borre la lista de redes, realice la decodificación y luego inspeccione las nuevas solicitudes. Busque URL, métodos y cuerpos de solicitud para el token o una subcadena distintiva. Una solicitud que ocurre al mismo tiempo no es automáticamente una carga; probar si los bytes de credenciales están presentes.
Mantener la prueba controlada. Cargue la página primero para que las solicitudes de activos se hayan resuelto, utilice un marcador sintético único en la carga útil y evite las credenciales reales. Si el marcador aparece en el cuerpo de una solicitud, URL o encabezado, el valor abandonó la ruta de decodificación local. Si no es así, la observación respalda únicamente esa sesión.
Una estricta Política de seguridad de contenido limita los destinos; esta página todavía carga scripts divulgados
La página generada incluye una Política de seguridad de contenido cuya `connect-src` permite destinos propios, de blobs y de datos en lugar de API remotas arbitrarias. Esto restringe significativamente las conexiones ordinarias iniciadas por scripts, pero no justifica la afirmación del esquema de que "no hay scripts, etiquetas o análisis de terceros". El producto más amplio puede cargar scripts de Google revelados.
CSP es una defensa en profundidad, no una prueba de que cada componente ejecutable merece una credencial. Puede limitar los destinos mientras los puntos finales propios siguen permitidos y las extensiones operan con diferentes privilegios. Lea la política junto con la evidencia y la fuente de la Red; no colapse esas observaciones separadas en "nada podrá leer este campo".
El descodificador no almacena ningún token, pero una prueba de recarga no puede demostrar que todos los componentes circundantes sean inofensivos.
El panel JWT mantiene su token en el valor del editor y no llama a localStorage o sessionStorage. Al borrar el panel se eliminan sus valores actuales y una recarga no contiene una función que restaure el token. Ese hecho fuente más limitado respalda una afirmación de no persistencia sobre el panel en sí.
Un editor en blanco después de la recarga es una evidencia útil, pero no una auditoría de almacenamiento universal. El historial del navegador, los administradores del portapapeles, las extensiones, las capturas de pantalla y las funciones del sistema operativo se encuentran fuera de este módulo. Por lo tanto, las comprobaciones de red y almacenamiento deben describirse como observaciones reproducibles, no como una garantía de cada capa del dispositivo.
Ejemplo resuelto: distinguir el tráfico de página normal de una solicitud que lleva datos simbólicos
Para una verificación realizada, cargue el decodificador JWT de ToolAcre, espere a que finalice la actividad de la página inicial y borre la lista de solicitudes. Pegue la muestra caducada incorporada u otro token no confidencial, presione Decodificar y filtre para obtener una palabra de carga útil única. Las filas de encabezado, carga útil, nota del algoritmo y tiempo deben aparecer sin una solicitud que lleve ese marcador.
No llame al panel "vacío" si los análisis, la conexión del sitio o las solicitudes de activos están visibles. Registre exactamente lo que sucedió: puede existir tráfico normal de la página, mientras que ninguna solicitud inspeccionada incluyó el token sintético. Esa distinción es una prueba más contundente que ocultar filas no relacionadas para que un reclamo de privacidad parezca absoluto.
Lo que esto no cubre: extensiones del navegador y administradores del portapapeles, que se encuentran fuera del control de la página.
Este procedimiento no puede inspeccionar una extensión de navegador maliciosa, el historial del portapapeles o un sistema operativo comprometido. Tampoco puede probar qué funcionará el código después de una implementación futura. Repítalo con la versión y el entorno que desea utilizar y prefiera un script local que usted controle cuando sea inevitable tener material de credenciales real.
El panel Red tampoco convierte afirmaciones decodificadas en hechos verificados. Incluso cuando el token permanece en la pestaña, ToolAcre no lo autentica. El procesamiento local reduce una ruta de divulgación; no establece la integridad de la firma, la identidad del emisor, la idoneidad de la audiencia o la autorización.
El código local ToolAcre realiza la decodificación, pero un token activo aún no pertenece a un sitio web
ToolAcre realiza su división, conversión de bytes y JSON análisis en el código del navegador, y su fuente específica de la herramienta no contiene operaciones de carga ni persistencia. Puede probar ese comportamiento utilizando datos sintéticos y herramientas de desarrollo en lugar de aceptar una insignia o un eslogan de privacidad al pie de la letra.
La conclusión correcta sigue siendo conservadora: verificar la ruta local, pero mantener los tokens de acceso en vivo fuera de los sitios web. Una herramienta del lado del cliente que solo descodifica puede ser apropiada para diagnósticos descartables; no es una bóveda de credenciales, un verificador ni un servicio de autorización.