Encodeur et décodeur z-base-32

Convertissez du texte, des octets hexadécimaux ou des fichiers en z-base-32, et inversement. Son alphabet en minuscules exclut les caractères faciles à confondre, et la sortie ne nécessite aucun remplissage.

Fonctionne entièrement dans votre navigateur. Aucune donnée n’est envoyée.

Mode d’emploi

  1. Choisissez Encoder pour transformer du texte en z-base-32, ou Décoder pour retrouver le texte à partir du z-base-32.
  2. Laissez la variante z-base-32 sélectionnée et vérifiez que Remplissage est désactivé, car le format ne l’utilise pas.
  3. Saisissez ou collez vos données, ou ouvrez un fichier. Le résultat se met à jour pendant la saisie.
  4. Copiez le résultat ou téléchargez-le sous forme de fichier.

Qu’est-ce que z-base-32 ?

z-base-32 est un encodage Base32 conçu par Zooko Wilcox-O'Hearn pour être plus facile à lire, à écrire et à prononcer. Son fonctionnement est identique à celui du Base32 de la RFC 4648 : chaque caractère transporte 5 bits et 5 octets donnent 8 caractères. C’est l’alphabet qui le distingue :

ybndrfg8ejkmcpqxot1uwisza345h769

Il est entièrement en minuscules et exclut 0, 2, l et v, faciles à confondre avec o, z, 1 et u. Les caractères sont aussi réordonnés : la sortie z-base-32 ne ressemble en rien au Base32 standard des mêmes octets et ne peut pas être lue par un décodeur RFC 4648.

Il n’y a pas de remplissage : la longueur des données se déduit de celle de la chaîne. La spécification permet aussi d’encoder des suites de bits qui ne forment pas des octets entiers, si les deux parties s’accordent sur la longueur ; cet outil travaille toujours sur des octets entiers.

Où z-base-32 est utilisé

  • OpenPGP Web Key Directory (WKD). Pour publier une clé à une URL well-known, la partie locale de l’adresse e-mail est mise en minuscules et hachée avec SHA-1, puis le hachage de 20 octets est encodé en z-base-32 pour former un nom de fichier de 32 caractères.
  • ZRTP. La chaîne d’authentification courte que deux interlocuteurs lisent à voix haute pour détecter une attaque de l’homme du milieu peut être affichée en Base32 avec l’alphabet z-base-32 (RFC 6189).
  • Lightning Network. Les logiciels de nœud comme lnd et Core Lightning renvoient les messages signés sous forme de chaînes z-base-32.

Pour d’autres formats faciles à lire, comparez Crockford Base32, qui conserve l’ordre des chiffres et pardonne les fautes de frappe, et Base58, plus court mais sensible à la casse.

Spécifications

Alphabetybndrfg8ejkmcpqxot1uwisza345h769
Taille de sortie8 caractères pour 5 octets (160 %)
RemplissageAucun
Normez-base-32 (Zooko Wilcox-O'Hearn)
Sensible à la casseNon

Exemples

Entrée (UTF-8)Sortie
Hello, World!jb1sa5dxfoofq551pt1nn
Base64.isejozg3jsgozg1ha
你好h164b3pfzw

Questions fréquentes

z-base-32 est-il identique à Base32 ?

Non. Il utilise le même découpage en groupes de 5 bits que le Base32 de la RFC 4648, mais avec un alphabet différent et réordonné, et sans remplissage. Une chaîne z-base-32 doit être décodée avec un décodeur z-base-32.

z-base-32 est-il sensible à la casse ?

L’alphabet est en minuscules et la sortie est toujours en minuscules. Ce décodeur accepte aussi les entrées en majuscules et les convertit en minuscules avant le décodage.

Que se passe-t-il si ma chaîne se termine par des signes = ?

z-base-32 n’utilise pas de remplissage, mais si une chaîne se termine par des signes =, le décodeur les ignore tout simplement.

Comment obtenir un hachage WKD ?
WKD nécessite le hachage SHA-1 de la partie locale de l’adresse mise en minuscules, que cet outil ne calcule pas. Calculez le hachage ailleurs, collez-le ici comme entrée hexadécimale et encodez-le. GnuPG peut aussi afficher directement le hachage WKD avec son option --with-wkd-hash.