Base58 Encoder & Decoder

Encode text to Base58 or decode Base58 to UTF-8 text in your browser. Choose raw Base58 or Base58Check with a checksum; all processing stays on your device.

Input
0 chars · 0 bytes
Try:
Result
✓ Big-integer binary-to-text encoding ✓ Used by Bitcoin and other crypto addresses ✓ UTF-8 and Unicode support ✓ Client-side processing only
Examples
Encode text to Base58
Variant: Base58 (raw)
Input Hello, World!
Output 72k1xXWG59fYdzSNoA

Raw Base58 of the UTF-8 bytes.

Decode Base58
Variant: Base58 (raw)
Input 72k1xXWG59fYdzSNoA
Output Hello, World!

Decoding restores the original text.

Encode text with Base58Check
Variant: Base58Check (checksum)
Input Hello
Output 1vSxRbq6DSYXc

Base58Check adds version byte 0x00 and a four-byte checksum before encoding the UTF-8 text.

Decode Base58Check
Variant: Base58Check (checksum)
Input 1vSxRbq6DSYXc
Output Hello

The checksum is verified before the original UTF-8 text is returned.

How Base58 encoding works

Base58, also written as Base 58, is a binary-to-text encoding that represents bytes as a large number in base 58. Its Bitcoin alphabet deliberately omits the easily confused characters 0, O, I, and l. That makes a Base58 string more practical to read, copy, and transcribe than encodings that include those symbols.

Unlike Base32 or Base64, Base58 encoding does not split data into fixed-size bit groups. It treats the complete byte sequence as one large integer, repeatedly divides it by 58, and maps the remainders to the Base58 alphabet. Leading zero bytes are preserved as leading 1 characters.

This tool converts the UTF-8 bytes of the text you enter. Select Base58 (raw) for a direct byte-to-Base58 conversion, or select Base58Check when you need the tool’s checksum format. The conversion happens locally in your browser; nothing is sent to a server.

Base58Check, P2PKH, and P2SH

Base58Check first prefixes the payload with a version byte, then appends the first four bytes of a double SHA-256 hash as a checksum before Base58 encoding. On decoding, this tool verifies that checksum and rejects a value that does not match it. A checksum helps detect accidental changes; it does not encrypt the data or prove who created it.

Bitcoin commonly represents legacy P2PKH and P2SH addresses with Base58Check. Those names describe address types, not different Base58 alphabets. This page is a text conversion tool: its Base58Check option always uses version byte 0x00 and returns the decoded payload as UTF-8 text, so it should not be used to generate, classify, or validate arbitrary cryptocurrency addresses, wallets, transactions, or private keys.

FAQ

Base58Check prepends a version byte and appends a 4-byte checksum (double SHA-256) before Base58 encoding. The checksum lets software reject mistyped addresses. It is used by Bitcoin addresses and WIF private keys.

The digits 0, capital O, capital I and lowercase l are omitted because they are easily confused in many fonts, which reduces transcription errors when copying addresses by hand.

No. Base58 is an encoding, not encryption or hashing. Anyone who has a Base58 string can decode it if they know it represents text or bytes. Do not use Base58 to protect passwords, secrets, or private keys.

Raw Base58 directly represents the input bytes. Base58Check adds a version byte and a four-byte double-SHA-256 checksum before encoding, so decoding can detect an invalid or mistyped value. Use the same variant for encoding and decoding.

The tool can verify and decode only its own Base58Check text format, which uses version byte 0x00 and expects the payload to be UTF-8 text. P2PKH and P2SH are Bitcoin address formats with network- and type-specific version bytes, so this tool is not an address validator or wallet utility.

A raw Base58 string may contain a character outside the Base58 alphabet, such as 0, O, I, or l. With Base58Check, decoding also fails when the checksum does not match. Whitespace is ignored, but the remaining characters and the selected variant must be correct.
Related tools

Binary Converter Online

Convert text into 8-bit binary groups and decode binary bytes back into readable text.

ASCII Converter

Convert ASCII characters and numeric codes for protocol and parser workflows.

JWT Decoder Online

Decode JWT tokens in-browser and inspect header, payload, claims, and expiration data.