Base58 Encode/Decode

Bitcoin-style alphabet, removes confusing 0/O/I/l characters

Encode Decode
Chars: {{ inputText.length }}
{{ error }}
Base64 Encode →

About Base58

Base58 is the encoding adopted in Bitcoin's design, using 58 characters (removing the four visually confusing characters 0, O, I, l). It is better than Base64 for representing long identifiers like cryptocurrency wallet addresses and transaction hashes, significantly reducing copy errors.

Base58 uses no padding; the output length is roughly proportional to the original byte count. Besides Bitcoin, it is also used by IPFS, Ripple and others (some variants like Base58Check add a checksum).

Examples

Input: Hello World → Output: 2NEwdFFHWmz7v6yCR5R9bQT9xuQ2

FAQ

Q: Can Base58 and Base64 be converted to each other?
A: Not directly, because their alphabets and encoding rules differ. To convert between them, first decode to the original bytes, then re-encode with the other method.
Q: Why doesn't Bitcoin use Base64?
A: Base64 includes characters like + / =, which are error-prone when copied, printed, or spoken. Base58 removes confusing characters, making addresses easier for humans to read and transcribe.