Base58

Wprowadzenie

Base58 to system kodowania binarnego na tekst, stworzony specjalnie dla Bitcoin. Jest to zmodyfikowana wersja Base64, z której usunięto znaki powodujące pomyłki (0, O, I, l).

Dlaczego Base58?

Zwykłe kodowanie Base64 zawiera znaki, które łatwo pomylić przy odczycie (np. 0 i O, 1 i l). Base58 eliminuje te znaki, dzięki czemu adresy Bitcoin są bardziej czytelne i mniej podatne na błędy.

Alfabet Base58

123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz

(Brak: 0, O, I, l)

Zastosowanie w Bitcoinie

  • Adresy Legacy (P2PKH) – zaczynają się od „1”
  • Adresy P2SH – zaczynają się od „3”
  • Private Key (WIF – Wallet Import Format)
  • Extended Public Keys (xpub, ypub, zpub)

Base58Check

Bitcoin nie używa czystego Base58, tylko Base58Check – wersja z wbudowaną sumą kontrolną (checksum). Dzięki temu adres z literówką jest automatycznie odrzucany.

Porównanie z innymi kodowaniami

  • Base58 – Bitcoin, Solana (częściowo)
  • Bech32 – nowoczesne adresy Bitcoin (bc1...)
  • Base64 – ogólne użycie w internecie
  • Hex – Ethereum (0x...)

Powiązane pojęcia

Bitcoin Address • Bech32 • Base58Check • WIF (Wallet Import Format) • HD Wallet • Checksum • Encoding