Comment décoder des chaînes Base64 (et des payloads JWT)
Base64 est un encodage réversible, pas du chiffrement. Décodez-le en une étape, gérez Unicode correctement et lisez les sections JWT qui utilisent Base64url.
Ce qu’est vraiment Base64
Base64 fait correspondre des données binaires à 64 caractères ASCII imprimables. C’est totalement réversible et sans clé, donc c’est un encodage, pas un chiffrement — ne l’utilisez jamais pour « cacher » des secrets.
Encoder et décoder
Dans le navigateur, encodez avec btoa et décodez avec atob. Pour du texte non ASCII, faites un aller-retour par UTF-8 pour que des caractères comme é, ü ou 你 survivent au lieu de devenir des octets corrompus.
Lire un JWT
Un JWT, ce sont trois sections Base64url séparées par des points : header, payload et signature. Décodez les deux premières pour lire les claims. La signature est binaire et n’est pas faite pour être lue par un humain.
Base64 vs Base64url
Base64 standard utilise + et / avec un padding =. La variante URL-safe Base64url les remplace par - et _ et supprime le padding pour que la valeur passe sans risque dans une URL ou un JWT.
Décoder n’est pas vérifier
Décoder un JWT révèle les claims mais ne dit rien sur son authenticité. N’importe qui peut forger un token dont le payload dit "role":"admin" ; seule la signature, vérifiée avec la clé de l’émetteur, prouve que le token est réel. Ne prenez jamais une décision de confiance sur un token non vérifié.
Claims JWT courants et leur sens
iss est l’émetteur, sub le sujet (id utilisateur), aud l’audience visée, exp l’expiration (secondes Unix), iat la date d’émission, nbf « not before » et jti un id unique. Les claims personnalisés cohabitent avec ceux-ci. Vérifiez toujours exp et aud côté serveur, pas seulement côté client.
Padding et variantes URL-safe
Base64url arrive souvent sans le padding =. Pour décoder dans du code, complétez la longueur à un multiple de 4 avec des =, remplacez - par + et _ par /, puis lancez un décodeur Base64 normal. atob ne prend pas Base64url directement — la conversion doit être faite avant.
Guides de réparation JSON
Pôles thématiques
- JSON Parse Errors: Read the Message, Jump to the Fix
- Fix Invalid JSON: From 'What's Wrong' to a Clean File
- JSON Formatter, Validator, Viewer: Pick the Right Tool
- Repair LLM JSON Output: Handling Almost-JSON from AI
- Privacy: JSON Tools That Don't Leave Your Browser
- JSON Interop: YAML, CSV, XML, JWT, Schema
Guides spécifiques
- Encodage URL : encodez les paramètres de requête et les chemins
- Convertir YAML en JSON (et éviter les erreurs d’indentation)
- Convertir JSON en CSV : aplatir un tableau d’objets
- Convertir JSON en XML : racine, attributs et tableaux
- Échapper du JSON comme littéral de chaîne (et décoder du JSON doublement encodé)
- Corriger les virgules finales en JSON
- Corriger les guillemets simples en JSON
- Corriger les clés sans guillemets en JSON
- Réparer le JSON produit par un LLM
- Corriger l’erreur de parse JSON : Expected Property Name
- JSON vs littéral d’objet JavaScript
- Validez le JSON avant les requêtes API
- Formateur JSON vs JSON Repair
- Corriger les erreurs JSON Unexpected Token
- Convertisseur JSON vers objet JavaScript