Encodeur / Décodeur Base58
Encodez du texte en Base58 ou décodez des chaînes Base58. Utilisé dans les adresses Bitcoin et les CID IPFS.
À propos de cet outil
Base58 est un schéma de codification de binaire à texte qui convertit les données brutes en une chaîne lisible par l'homme en utilisant 58 caractères alphanumériques. Contrairement à Base64, qui inclut des symboles qui peuvent être confus ou problématiques dans les URL et adresses, Base58 supprime les caractères comme 0 (zéro), O (O majuscule), I (I majuscule) et l (l minuscule) pour éviter l'ambiguïté visuelle. Cette codification est largement reconnue pour sécuriser les adresses de cryptomonnaies—notamment Bitcoin—et pour coder les identifiants de contenu dans IPFS, le Système de Fichiers Interplanétaire.
Pour utiliser cet encodeur, collez votre texte ou données brutes dans le champ d'entrée et cliquez sur le bouton d'encodage pour générer une chaîne Base58. Pour décoder, collez simplement une chaîne Base58 valide et cliquez sur décoder pour récupérer les données d'origine. L'outil fonctionne entièrement dans votre navigateur, traitant toutes les conversions instantanément sans envoyer quoi que ce soit aux serveurs externes. Ceci est particulièrement utile pour les développeurs travaillant avec des données blockchain, des systèmes adressés par contenu, ou toute application ayant besoin de vérifier les adresses Bitcoin, les hashes IPFS ou d'autres identifiants cryptographiques.
L'encodage Base58 est particulièrement précieux en cryptomonnaie et applications décentralisées car il réduit les erreurs de transcription lors du partage d'adresses manuellement ou via des portefeuilles papier. La suppression des caractères visuellement similaires rend les adresses Base58 beaucoup plus faciles à lire et vérifier à l'œil nu par rapport à Base64. Que vous soyez un développeur blockchain, un administrateur système gérant des nœuds IPFS, ou simplement quelqu'un curieux de savoir comment les adresses Bitcoin sont codées, cet outil rend l'encodage et le décodage Base58 transparents et accessibles.
Questions Fréquentes
Implémentation du Code
import base58 # pip install base58
# Encode text to Base58
text = "Hello, World!"
encoded = base58.b58encode(text.encode()).decode()
print(encoded) # JxF12TrwUP45BMd
# Decode Base58 back to text
decoded = base58.b58decode(encoded).decode()
print(decoded) # Hello, World!
# Manual implementation without library
ALPHABET = b"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"
def encode(data: bytes) -> str:
num = int.from_bytes(data, "big")
result = b""
while num > 0:
num, rem = divmod(num, 58)
result = bytes([ALPHABET[rem]]) + result
pad = len(data) - len(data.lstrip(b"\x00"))
return (b"1" * pad + result).decode()Comments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.