Base58 Encoder / Decoder

Encode text to Base58 and decode Base58 back to text. Supports both Bitcoin and Flickr alphabets with arbitrary-precision BigInt arithmetic.

Character Set (bitcoin)123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz
13 characters

Frequently Asked Questions

Base58 is a binary-to-text encoding scheme that uses 58 alphanumeric characters. It was designed to avoid visually ambiguous characters (0, O, I, l) and non-alphanumeric characters (+, /) found in Base64, making it ideal for human-readable identifiers like Bitcoin addresses.
Both use 58 characters but in a different order. Bitcoin's alphabet starts with '123456789ABCDEFGH...' and is used in Bitcoin addresses and IPFS hashes. Flickr's alphabet starts with '123456789abcdefgh...' (lowercase first) and is used in Flickr short URLs.
Base58 is slightly less space-efficient than Base64 but avoids confusing characters (0/O, I/l) and special characters (+, /). Base64 is better for data transmission; Base58 is better for human-readable identifiers and addresses.
Yes. Base58 can encode arbitrary binary data. This tool encodes text by first converting it to UTF-8 bytes, then applying the Base58 algorithm. For binary data, you would need to provide the raw bytes directly.
Base58 encoding requires arbitrary-precision integer arithmetic because the input bytes are treated as a single large number that is repeatedly divided by 58. JavaScript's built-in BigInt provides this capability without any external libraries.