Outil pour décoder ou encoder avec la Base 92. Le code Base 92 permet de stocker de l'information binaire au format ASCII avec une perte de donnée minimale.
Code Base 92 - 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 !
L'alphabet de 92 caractères utilisé en Base 92 est indexé ainsi :
(vide) | ~ | 9 | + | 19 | 5 | 29 | ? | 39 | I | 49 | S | 59 | ] | 69 | h | 79 | r | 89 | | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | ! | 10 | , | 20 | 6 | 30 | @ | 40 | J | 50 | T | 60 | ^ | 70 | i | 80 | s | 90 | } |
1 | # | 11 | - | 21 | 7 | 31 | A | 41 | K | 51 | U | 61 | _ | 71 | j | 81 | t | ||
2 | $ | 12 | . | 22 | 8 | 32 | B | 42 | L | 52 | V | 62 | a | 72 | k | 82 | u | ||
3 | % | 13 | / | 23 | 9 | 33 | C | 43 | M | 53 | W | 63 | b | 73 | l | 83 | v | ||
4 | & | 14 | 0 | 24 | : | 34 | D | 44 | N | 54 | X | 64 | c | 74 | m | 84 | w | ||
5 | ' | 15 | 1 | 25 | ; | 35 | E | 45 | O | 55 | Y | 65 | d | 75 | n | 85 | x | ||
6 | ( | 16 | 2 | 26 | < | 36 | F | 46 | P | 56 | Z | 66 | e | 76 | o | 86 | y | ||
7 | ) | 17 | 3 | 27 | = | 37 | G | 47 | Q | 57 | [ | 67 | f | 77 | p | 87 | z | ||
8 | * | 18 | 4 | 28 | > | 38 | H | 48 | R | 58 | \ | 68 | g | 78 | q | 88 | { |
En pratique, seuls 91 signes sont utilisés dans les calculs de base, le 92ème (le tilde ~) n'est utilisé que pour signaler une chaine vide.
Pour encoder des données en Base 92, découper les données en blocs de 13 bits pour en faire 2 caractères en base 91 (oui 91 et non pas 92).
Exemple : dCode s'écrit en binaire (ASCII) 0110010001000011011011110110010001100101
Le découpage en bloc de 13 bits donne 0110010001000,0110110111101,1001000110010,1
La conversion de 0110010001000 (base 2) donne 3208 (base 10) soit 35×91+23. Le caractère 35 de la base 91 est E et le caractère 23 est 9 dont le bloc est codé E9.
Compléter le dernier bloc avec des 0 à droite. Compléter à 6 bits si le bloc contenait 6 bits ou moins, sinon compléter à 13 bits.
Exemple : Le dernier bloc 1 (de longueur 1 bit) est complété à 100000 (complété sur 6 bits) soit 32 en base 10, et le symbole 32 est B.
Le message codé complet est E9H]U3B
Pour chaque couple de caractère, noter la valeur de chaque symboles dans l'alphabet de la Base 92. Multiplier le premier par 91 et les additionner.
Exemple : Décoder 9A2?VBWl en le découpant en paires 9A 2? VB Wl. Le premier caractère 9 a pour index 23, et A pour code 31. Le calcul est 23×91+31=2124.
Pour chaque nombre obtenu, le convertir en binaire, en le complétant si besoin sur la gauche pour obtenir 13 bits.
Exemple : 2124 en base 10 correspond à 100001001100 en binaire, comme ce nombre ne fait que 12 bits, y rajouter un zéro initial soit 0100001001100
La suite binaire obtenue (par concaténation des nombres à 13 bits) correspond au message clair. Si le message était originellement codé en ASCII 8 bits, alors chaque octets correspond à un caractère ASCII.
Exemple : La suite binaire est 01000010,01100001,01110011,01100101,00111001,00110010 soit les 6 caractères Base92
Le message est composé des 91 caractères de l'alphabet Base92.
Le caractère ~ apparait seul ou n'apparait pas.
Si la longueur du message est impaire, alors le dernier caractère ne peut être que parmi les 64 premiers caractères de l'alphabet.
Chaque bloc de 13 bits peut coder 2^13 = 8192 valeurs, tandis que 2 caractères en base 91 codent 91^2=8281 valeurs. La perte d'encodage est donc minimisée pour un alphabet de 91 symboles.
dCode se réserve la propriété du code source pour "Code Base 92". Tout algorithme pour "Code Base 92", applet ou snippet ou script (convertisseur, solveur, chiffrement / déchiffrement, encodage / décodage, encryptage / décryptage, traducteur) ou toutes fonctions liées à "Code Base 92" (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 à "Code Base 92" 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 "Code Base 92" 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 : Code Base 92 sur dCode.fr [site web en ligne], consulté le 15/04/2025,