Le décodage Base64url restaure du texte UTF-8 à partir de chaînes Base64 sûres pour URL sans padding. Contrairement au Base64 standard, l’alphabet utilise - et _ au lieu de + et /, et le padding = est souvent omis pour que les jetons s’insèrent proprement dans les URL et segments JWT.
Fonctionnement
Chaque groupe de quatre caractères Base64url se mappe à trois octets d’origine. Le décodeur n’accepte que l’alphabet sûr pour URL (A–Z, a–z, 0–9, -, _) et un padding optionnel. Les symboles invalides sont rejetés avant toute sortie, ce qui aide à détecter les erreurs de copier-coller entre encodages standard et URL-safe mélangés.
Quand l’utiliser
- Lire les segments d’en-tête et de payload JWT après découpage sur les points
- Décoder des jetons sûrs pour URL issus de flux OAuth ou OpenID
- Vérifier les allers-retours après encodage avec l’outil compagnon from-text-to-base64url
- Inspecter des champs Base64url dans des réponses d’API sans écrire de script
Exemple
La forme Base64url de hello world se décode vers la phrase d’origine dans le champ de sortie. Les espaces autour de l’entrée collée sont ignorés pendant la validation.
Limites
Cela valide uniquement l’alphabet et le padding ; il ne vérifie ni les signatures JWT, ni l’expiration (exp), ni les claims d’audience (aud). Le décodage révèle le contenu à quiconque détient la chaîne—ce n’est pas du chiffrement. Les payloads binaires peuvent ne pas s’afficher en texte UTF-8 lisible.