Outil pour chiffrer/convertir avec la base 58 composée des caractères alphanumériques sauf 0,O,I,l pour éviter les erreurs de lecture.
Base 58 - dCode
Catégorie(s) : Arithmétique, 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 58 est un système de codage qui permet de convertir des données binaires en une chaîne de caractères composée d'un ensemble spécifique de 58 caractères. En particulier, la base 58 utilise généralement les 62 caractères alphanumériques (26 lettres minuscules + 26 lettres majuscules + 10 chiffres) mais en y enlevant 0 (zéro), O (lettre o majuscule), I (lettre i majuscule) et l (lettre L minuscule) afin de limiter les potentielles erreurs de lecture (par un humain ou une machine).
La base 58 a été crée pour coder des grand nombres entiers, comme toute base en arithmétique, elle utilise des symboles pour les chiffres au delà de 9. En base 58, par défaut, les 58 symboles sont 123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz
La table de correspondance de la Base58 est
Index | Base58 | Index | Base58 | Index | Base58 | Index | Base58 |
---|---|---|---|---|---|---|---|
0 | 1 | 1 | 2 | 2 | 3 | 3 | 4 |
4 | 5 | 5 | 6 | 6 | 7 | 7 | 8 |
8 | 9 | 9 | A | 10 | B | 11 | C |
12 | D | 13 | E | 14 | F | 15 | G |
16 | H | 17 | J | 18 | K | 19 | L |
20 | M | 21 | N | 22 | P | 23 | Q |
24 | R | 25 | S | 26 | T | 27 | U |
28 | V | 29 | W | 30 | X | 31 | Y |
32 | Z | 33 | a | 34 | b | 35 | c |
36 | d | 37 | e | 38 | f | 39 | g |
40 | h | 41 | i | 42 | j | 43 | k |
44 | m | 45 | n | 46 | o | 47 | p |
48 | q | 49 | r | 50 | s | 51 | t |
52 | u | 53 | v | 54 | w | 55 | x |
56 | y | 57 | z |
Le chiffrement d'un nombre se fait en réalisant un changement de base.
Exemple : $ 1234_{10} = 21 \times 58^1 + 16 = \{21,16\}_{58} $ soit NH en utilisant les symboles de la base 58 (le 21ème symbole est un N et le 16ème symbole est un H).
Pour chiffrer un message, il est nécessaire de le convertir en un grand nombre, en utilisant un encodage comme la table ASCII ou Unicode.
Le déchiffrement de la Base 58 consiste en une conversion du message considéré en base 58.
Si le résultat attendu est un nombre alors convertir la base 58 en base 10 pour obtenir un entier.
Exemple : Le message en base 58 38 correspond au calcul $ 2 \times 58 + 7 = 123 $ soit 123 en base 10.
Si le résultat attendu est un message, alors convertir la base 58 en binaire ou hexadécimal et utiliser la table de codage souhaitée (ASCII ou Unicode) pour obtenir un message clair.
Le message est composé d'au plus 58 caractères distincts, et ne doit pas contenir de chiffre 0 (zéro), ni de lettre I (i majuscule), ni de lettre O (o majuscule) ni de lettre l (L minuscule).
Base58 est couramment utilisée dans les applications de cryptographie, les adresses de portefeuilles de crypto-monnaies (Bitcoin ou Ripple) ou dans les URL.
Toute référence au Bitcoin ou à son inventeur Satoshi Nakamoto, ou à d'autres cryptomonnaie comme Ripple est un indice.
L'alphabet de symboles utilisé pour coder la base 58 peut être complètement différent de 123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz.
Une variante classique est 123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ (majuscule et minuscule inversées, utilisée par Flickr) mais bien d'autres alphabet, y compris des alphabets désordonnés peuvent être utilisés.
Base58Check est un algorithme utilisé par la Blockchain Bitcoin pour les adresses BTC qui est basé sur Base58 y ajoutant des modificateurs comme un numéro de version et une somme de controle.
dCode se réserve la propriété du code source pour "Base 58". Tout algorithme pour "Base 58", applet ou snippet ou script (convertisseur, solveur, chiffrement / déchiffrement, encodage / décodage, encryptage / décryptage, traducteur) ou toutes fonctions liées à "Base 58" (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 58" 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 58" 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 58 sur dCode.fr [site web en ligne], consulté le 17/04/2025,