Encodeur Base32

Encodez et décodez du Base32 avec les alphabets RFC 4648, Crockford ou z-base-32, remplissage et casse réglables, pour texte et fichiers, dans le navigateur.

Vos saisies et fichiers restent dans le navigateur

Saisissez du texte à encoder ou collez du Base32 à décoder, ou déposez un fichier ci-dessous.

Glissez et déposez un fichier ici

Si un fichier est sélectionné, il sera utilisé à la place de l'entrée texte.

Options de décodage

Le résultat encodé ou décodé s’affiche ici.

Sur cette page

Encodez du texte ou des fichiers en Base32 et décodez-les avec trois alphabets : RFC 4648, Crockford et z-base-32. Tout s'exécute dans votre navigateur grâce à un module WebAssembly compilé depuis Rust ; les secrets collés ne sont pas envoyés.

Fonctionnalité détaillée

Base32 stocke 5 bits par caractère et n'utilise que des lettres et des chiffres : le résultat résiste aux changements de casse et se tape ou se dicte facilement. L'alphabet RFC 4648 (A–Z, 2–7) sert aux secrets TOTP des applications d'authentification et aux adresses onion de Tor. Crockford (0–9, A–Z sans I, L, O ni U) est conçu pour les humains : au décodage, I et L valent 1, O vaut 0 et les tirets sont ignorés. z-base-32 utilise un alphabet en minuscules ordonné pour la lisibilité, sans jamais de remplissage.

Le remplissage = jusqu'à un multiple de 8 caractères peut être requis, optionnel ou absent. Casse des lettres force la sortie en majuscules ou en minuscules, Auto garde la casse habituelle de l'alphabet. Le décodage ignore la casse pour tous les alphabets et, avec Autoriser espaces/sauts de ligne, saute espaces et retours à la ligne.

Le texte est converti en octets dans le jeu de caractères choisi (UTF-8, UTF-16LE, UTF-16BE, ASCII ou ISO-8859-1). Les fichiers se choisissent ou se déposent sur la page et sont lus dans un Web Worker avec barre de progression et Annuler. Si les octets décodés ne forment pas un texte valide, l'outil le signale et Télécharger enregistre quand même les octets bruts.

Exemples pratiques

Trois alphabets : hello devient NBSWY3DP (RFC 4648), D1JPRV3F (Crockford) et pb1sa5dx (z-base-32).

Remplissage et casse : Hi donne JBUQ==== avec le remplissage Requis et JBUQ avec Sans remplissage ; avec Casse des lettres sur Minuscules, on obtient jbuq====.

Décodage insensible à la casse : JBSWY3DPEE====== comme jbswy3dpee====== donnent Hello! ; la version sans remplissage JBSWY3DPEE fonctionne aussi avec le remplissage Optionnel.

Tolérance de Crockford : avec l'alphabet Crockford, DIJPRV3F (lettre I au lieu de 1) et d1jp-rv3f (minuscules avec tiret) se décodent tous deux en hello.

Comment utiliser cet outil

  1. Saisir le texte ou choisir un fichier

    Tapez ou collez du texte dans Entrée (texte), ou déposez un fichier sur la page ou cliquez sur Choisir un fichier.

  2. Choisir l'alphabet et le remplissage

    Dans Alphabet, sélectionnez RFC 4648 (A-Z2-7), Crockford (0-9A-Z) ou z-base-32. Réglez Remplissage, Casse des lettres et Jeu de caractères du texte si le texte n'est pas en UTF-8.

  3. Encoder ou décoder

    Cliquez sur Encoder pour produire du Base32 ou sur Décoder pour retrouver le texte ou les octets. Utilisez le même alphabet que celui qui a produit la chaîne.

  4. Copier ou télécharger

    Copier place le résultat dans le presse-papiers, Télécharger l'enregistre dans un fichier ; une sortie binaire ne peut qu'être téléchargée.

Conseils et bonnes pratiques

  • Le Base32 est environ 60 % plus long que l'entrée (8 caractères pour 5 octets) ; si la casse n'a pas d'importance, Base64 est plus compact.
  • Les secrets TOTP des QR codes otpauth:// sont en Base32 RFC 4648, souvent sans remplissage : choisissez le remplissage Optionnel. JBSWY3DPEHPK3PXP donne 10 octets bruts, à enregistrer avec Télécharger.
  • Une entrée sans remplissage comme JBSWY3DPEE est refusée avec le remplissage Requis ; passez à Optionnel.
  • Les alphabets ne sont pas interchangeables : pb1sa5dx donne hello uniquement en z-base-32 et n'est pas valide en RFC 4648.
  • Les espaces et sauts de ligne des clés collées sont ignorés tant que Autoriser espaces/sauts de ligne est activé.