Outil pour décoder/encoder avec la Base-32 selon Crockford. La Crockford's Base32 est une variante de la base 32 créee par Douglas Crockford améliorant son usage par l'homme.
Base-32 Crockford - dCode
Catégorie(s) : Codage de Caractères
dCode est gratuit et ses outils sont une aide précieuse dans les jeux, les maths, les énigmes, les géocaches, et les problèmes à résoudre au quotidien !
Une suggestion ? un problème ? une idée ? Écrire à dCode !
La base-32 imaginée par Douglas Crockford est une variante de la base 32 (norme RFC 3548) voulant optimiser l'écriture et la lecture par l'homme et y ajoutant une somme de controle (checksum).
La Crockford base-32 utilise 32 caractères 0123456789ABCDEFGHJKMNPQRSTVWXYZ soit les 36 caractères alphanumériques excluant I,L,O pour ne pas les confondre des chiffres et la lettre U ce qui permet d'éviter des jeux de mots (U=You).
Crockford propose optionnellement une somme de controle modulo 37 avec 5 autres caractères : *~$=U
comme Le message clair est traité comme une chaine binaire et découpée en blocs de 5 bits (complétée si besoin de 0).
Exemple : base est encodé en ASCII (8-bits) 01100010 01100001 01110011 01100101, la découpe donne les blocs 01100,01001,10000,10111,00110,11001,01000 (avec trois 0 ajoutés à la fin)
Chaque bloc de 5 bits est encodé via l'alphabet de Crockford par son caractère correspondant :
00000 | 0 | 00001 | 1 | 00010 | 2 | 00011 | 3 |
---|---|---|---|---|---|---|---|
00100 | 4 | 00101 | 5 | 00110 | 6 | 00111 | 7 |
01000 | 8 | 01001 | 9 | 01010 | A | 01011 | B |
01100 | C | 01101 | D | 01110 | E | 01111 | F |
10000 | G | 10001 | H | 10010 | J | 10011 | K |
10100 | M | 10101 | N | 10110 | P | 10111 | Q |
11000 | R | 11001 | S | 11010 | T | 11011 | V |
11100 | W | 11101 | X | 11110 | Y | 11111 | Z |
Exemple : Le message codé est C9GQ6S8
Le message binaire original est encodé comme un (très grand) entier dont est calculé sa valeur modulo 37 (37 est le plus petit nombre premier suivant 32).
Exemple : base encodé en binaire 01100010011000010111001101100101 (base 2) correspond à 1650553701 (en décimal) et 1650553701 mod 37 = 18 qui se code 18=J donc le caractère de controle est J
Exemple : Le message codé avec le caractère de controle est C9GQ6S8J
Le déchiffrement par base-32 de Crockford débute par une conversion des caractères en format binaire via la table de correspondance
0 | 00000 | 1 | 00001 | 2 | 00010 | 3 | 00011 |
---|---|---|---|---|---|---|---|
4 | 00100 | 5 | 00101 | 6 | 00110 | 7 | 00111 |
8 | 01000 | 9 | 01001 | A | 01010 | B | 01011 |
C | 01100 | D | 01101 | E | 01110 | F | 01111 |
G | 10000 | H | 10001 | J | 10010 | K | 10011 |
M | 10100 | N | 10101 | P | 10110 | Q | 10111 |
R | 11000 | S | 11001 | T | 11010 | V | 11011 |
W | 11100 | X | 11101 | Y | 11110 | Z | 11111 |
Exemple : Le message 6CS0 correspond donc à 00110,01100,11001,00000
La chaine binaire obtenue est ensuite interprétée (selon l'encodage ou le format utilisé)
Exemple : 00110011,00110010,0000 correspond au code ASCII de la chaine 32
Le message est composé des caractères alphanumériques majuscules à l'exception de I, L, O. Il est également possible d'y trouver les caractères *~$=U en fin de codage et parfois le tiret - est utilisé pour favoriser la lecture.
Originellement la Base 32 est créee pour exprimer des grands nombres, comme des clés publiques de chiffrement.
Plus d'infos ici
dCode se réserve la propriété du code source pour "Base-32 Crockford". Tout algorithme pour "Base-32 Crockford", applet ou snippet ou script (convertisseur, solveur, chiffrement / déchiffrement, encodage / décodage, encryptage / décryptage, traducteur) ou toutes fonctions liées à "Base-32 Crockford" (calculer, convertir, résoudre, décrypter / encrypter, déchiffrer / chiffrer, décoder / encoder, traduire) codés en langage informatique (Python, Java, C#, PHP, Javascript, Matlab, etc.) ou toute base de données, ou accès API à "Base-32 Crockford" ou tout autre élément ne sont pas publics (sauf licence open source explicite type Creative Commons). Idem avec le téléchargement pour un usage hors ligne sur PC, mobile, tablette, appli iPhone ou Android.
Rappel : dCode est une ressource éducative et pédagogique, accessible en ligne gratuitement et pour tous.
Le contenu de la page "Base-32 Crockford" ainsi que ses résultats peuvent être copiés et réutilisés librement, y compris à des fins commerciales, à condition de mentionner dCode.fr comme source.
L'export des résultats est gratuit et se fait simplement en cliquant sur les icônes d'export ⤓ (format .csv ou .txt) ou ⧉ copier-coller.
Pour citer dCode.fr sur un autre site Internet, utiliser le lien :
Dans un article scientifique ou un livre, la citation bibliographique recommandée est : Base-32 Crockford sur dCode.fr [site web en ligne], consulté le 17/04/2025,