TOP

Free exact browser converter

Base58 Encoder

Encode text or hex bytes using the Bitcoin Base58 alphabet. Preserve leading zero bytes as 1 characters. No Base58Check checksum is added.

No signupRuns locally in your browser

Interactive tool

Base58 Encoder

Ready

Processing mode

Choose a clear output representation.

Detailed conversion guide

How Base58 Encoder Works

Base58 interprets the bytes as an unsigned big-endian value, converts it into 58 alphabet symbols, and restores one leading 1 for every leading zero byte.

The Bitcoin alphabet omits 0, O, I and lowercase l. Text input is first encoded as UTF-8. Hex input 000001 produces 112 rather than discarding the first two zero bytes.

InputOutputMeaning
Hello9AjdvzrDefault example
helloCn8eVZgBoundary example

JavaScript Example

Runnable example for the default sample. The tool also validates its full input contract.

const bytes = new TextEncoder().encode(input);
const alphabet = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";
let n=0n,encoded="",zeros=0;
while(zeros<bytes.length && bytes[zeros]===0) zeros++;
for(const b of bytes) n=n*256n+BigInt(b);
while(n){encoded=alphabet[Number(n%58n)]+encoded;n/=58n;}
encoded="1".repeat(zeros)+encoded;

Formats, Boundaries and Limitations

This is plain Base58, with no network prefix or checksum added. It is not a Bitcoin address generator and does not prove that an address is valid or belongs to anyone.

Inputs are limited to 4 KiB to keep browser conversion responsive. Hex mode requires complete byte pairs and preserves byte order.

Related converters

Choose the tool that matches your text or byte workflow.

Advertisement

Sponsored link