Encodage Basic
Authorization = 'Basic ' + Base64(UTF-8(identifiant + ':' + mot de passe))
Encodez un nom d’utilisateur et un mot de passe en UTF-8 puis en Base64 pour obtenir l’en-tête HTTP Authorization: Basic, avec des exemples curl et fetch prêts à coller, ou collez un en-tête Basic existant pour retrouver l’identifiant et le mot de passe.
Base64 n’est pas un chiffrement : n’importe qui peut décoder ces identifiants. N’envoyez l’en-tête Basic qu’en HTTPS.
Cet outil construit l’en-tête HTTP `Authorization: Basic …` à partir d’un nom d’utilisateur et d’un mot de passe, et fait aussi l’inverse : il décode un en-tête Basic pour afficher les identifiants qu’il contient. Il sert aux développeurs qui testent une API, un webhook ou un répertoire protégé par .htpasswd, et aux personnes qui déboguent une requête refusée en 401.
Le schéma Basic est défini par la RFC 7617 : le client concatène l’identifiant, un deux-points et le mot de passe, encode cette chaîne en octets UTF-8, puis en Base64. L’exemple de la RFC, `Aladdin:open sesame`, donne `QWxhZGRpbjpvcGVuIHNlc2FtZQ==`, soit l’en-tête `Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==`. L’outil applique exactement cette méthode et propose en plus une commande curl et un appel fetch qui envoient cet en-tête.
Le décodage suit le chemin inverse : l’outil accepte l’en-tête complet ou la seule valeur Base64, la décode en UTF-8 et sépare l’identifiant du mot de passe au premier deux-points. Cela montre bien que Base64 n’est pas un chiffrement : n’importe qui interceptant l’en-tête lit le mot de passe en clair. Basic Auth ne doit donc circuler que sur HTTPS, et le serveur doit stocker le mot de passe sous forme de hash (bcrypt dans .htpasswd, par exemple), jamais la valeur Base64.
Entrez le nom d’utilisateur et le mot de passe : l’outil produit la valeur Base64 et l’en-tête Authorization: Basic correspondant.
Reprenez l’en-tête seul, la commande curl ou l’appel fetch prêts à coller dans votre terminal, votre code ou votre outil d’API.
Collez un en-tête `Authorization: Basic …` existant, ou uniquement sa partie Base64, pour afficher l’identifiant et le mot de passe qu’il contient.
Authorization = 'Basic ' + Base64(UTF-8(identifiant + ':' + mot de passe))
Générez l’en-tête ou la commande curl pour interroger une API qui attend Basic Auth, comme l’API Jira Cloud avec une adresse e-mail et un jeton d’API.
Décodez l’en-tête Authorization envoyé par votre client pour vérifier que l’identifiant, le mot de passe et le séparateur sont bien ceux attendus par le serveur.
De nombreux services demandent la valeur complète de l’en-tête Authorization pour appeler un endpoint protégé : générez-la sans script ni terminal.
Entrée
Opération : Générer ; Identifiant : Aladdin ; Mot de passe : open sesameRésultat
Identifiants en Base64 : QWxhZGRpbjpvcGVuIHNlc2FtZQ== ; En-tête Authorization : Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==Elle n’offre aucune confidentialité par elle-même : Base64 se décode instantanément et l’en-tête est envoyé à chaque requête. Sur HTTPS, le transport est chiffré et Basic reste acceptable pour une API interne, un préproduction ou un outil d’administration. Pour une application grand public, préférez des jetons (OAuth 2.0, clés d’API révocables) et une limitation des tentatives.
Retirez le préfixe « Basic », décodez la valeur en Base64 puis lisez le texte UTF-8 obtenu : la partie avant le premier deux-points est l’identifiant, le reste le mot de passe. L’outil le fait automatiquement quand vous collez l’en-tête ou sa valeur.
Oui. La RFC 7617 permet au serveur d’annoncer charset="UTF-8", et l’outil encode toujours en UTF-8, ce qui gère les accents et les emoji. Un deux-points est accepté dans le mot de passe, mais pas dans le nom d’utilisateur.
Basic transmet l’identifiant et le mot de passe eux-mêmes, encodés en Base64. Bearer transmet un jeton opaque ou un JWT émis par un serveur d’autorisation, qui peut expirer ou être révoqué sans changer le mot de passe. Les deux passent dans l’en-tête Authorization et exigent HTTPS.
Il n’existe pas de déconnexion standard : le navigateur garde les identifiants en mémoire et les renvoie tant que la session dure. Fermer complètement le navigateur, utiliser une fenêtre privée ou provoquer une nouvelle réponse 401 sont les seules solutions pratiques.
Non. Le fichier .htpasswd, côté serveur, stocke un hash du mot de passe (bcrypt ou APR1-MD5), tandis que l’en-tête Basic, côté client, transporte le mot de passe en clair encodé en Base64. Cet outil produit l’en-tête envoyé par le client, pas l’entrée .htpasswd.
Outils associés
Des outils similaires ou complémentaires à celui-ci.
Encodez un texte en Base64 ou décodez une chaîne Base64 pour retrouver son contenu d’origine.
Générez une commande cURL complète à partir d’une requête HTTP.
Construisez des en-têtes HTTP personnalisés et récupérez une sortie prête à utiliser dans vos requêtes.
Apprenez à construire une CSP progressive, comprendre ses directives et éviter les politiques trop permissives ou cassantes.
Comprenez HSTS, Referrer-Policy, Permissions-Policy, protections de framing et isolation cross-origin avant de les déployer.
Comprenez comment OAuth 2.0, PKCE, JWT, JWK et JWKS s’articulent sans les confondre : autorisation, jetons, clés publiques et vérification.
Comprenez les différentes couches de sécurité d’un site Web : HTTPS, en-têtes HTTP, CSP, SRI, authentification, mots de passe et intégrité.