Ugrás a tartalomhoz
TextArray
100% helyi

Base58 kódolás és dekódolás

Kódolj szöveget Base58-ba a Bitcoin-ábécével, és fejtsd vissza.

Bemenet

Base58 kódolás és dekódolás

A Base58 az adatokat 58 gondosan kiválasztott karakterből álló tömör lánccá alakítja — ez a Bitcoin-ábécé: 123456789, A–Z és a–z, amelyből a 0, az O, az I és az l szándékosan hiányzik. Pontosan ezt a négy karaktert keverik össze az emberek felolvasáskor, papírról másoláskor vagy olyan betűtípusnál, ahol a nulla O-nak, a kis l pedig nagy I-nek látszik. Ezért a Base58 a választás mindenhol, ahol a végeredményt ember is átgépelheti: Bitcoin-címek, IPFS tartalomhashek és rövid azonosítók az URL-ekben.

Válassz irányt, és illeszd be a szöveget. A kódolás a bemenet UTF-8 bájtjait alakítja Base58-cá, a vezető nullbájtokból pedig vezető egyesek lesznek — pontosan úgy, ahogy a Bitcoin definiálja. A dekódolás megfordítja a folyamatot, és a bájtokat szövegként jeleníti meg; a beillesztett értékben lévő szóközök és sortörések nem számítanak, az ábécén kívüli első karaktert pedig a hibaüzenet megnevezi, így az eltévedt 0 vagy O azonnal megvan.

Két őszinte korlát is be van építve. A dekódolt Bitcoin-címek és hashek bináris adatok, nem szöveg — ha a dekódolt bájtok nem érvényes UTF-8-at adnak, az eszköz ezt megmondja, ahelyett hogy zagyvaságot írna ki. És mivel a Base58-nak nincsenek bájthatárra igazított blokkjai, az átalakítás költsége a mérettel meredeken nő, ezért a bemenet 100 kB-ra korlátozott — világos üzenettel, lefagyott lap helyett.

A Base64-gyel szemben a Base58 a + és a / jelet is kihagyja, így az értékek külön escapelés nélkül is megélnek az URL-ekben. Minden a böngésződben fut — semmi beillesztett adat nem töltődik fel sehová. Az eredményt másold ki, vagy töltsd le .txt fájlként.

Gyakori kérdések

Mire használják a Base58-at?
Mindenhol, ahol a kódolt értéket ember olvashatja, diktálhatja vagy gépelheti át: Bitcoin- és más kriptovalutacímek, IPFS tartalomazonosítók és rövid, URL-barát azonosítók. Az ábécé kerüli a nyomtatásban legkönnyebben összekeverhető karaktereket, így az érték túléli a papírt és a telefonos diktálást is.
Miért hiányzik a 0, az O, az I és az l?
Ezek a klasszikus összetéveszthető párok: a nulla és a nagy O, a nagy I és a kis l. A Base58 mind a négyet elhagyja, így az értékben semelyik két karakter nem keverhető össze. Ha a beillesztett értékben szerepel valamelyik, az másolási hiba — a hibaüzenet megnevezi a javítandó karaktert.
Miben különbözik a Base58 a Base64-től?
A Base64 ábécéje nagyobb, blokkjai bájthatárra esnek, ezért gyorsabb és kicsit tömörebb — viszont tartalmazza a 0, O, I, l, + és / karaktereket, amelyek embernek és URL-nek egyaránt kellemetlenek. A Base58 egy kevés méretet és sebességet cserél olyan értékekre, amelyeket biztonságos átírni és bárhová beilleszteni.
Miért jelzi a dekódolás, hogy az adat bináris?
A Base58 érték helyesen dekódolódott, de a kapott bájtok nem érvényes UTF-8 szöveget adnak. Bitcoin-címeknél és hasheknél ez normális — nyers bináris adatot kódolnak, verzióbájtot és kulcshasht, nem mondatokat. Ez az eszköz a dekódolt eredményt csak szövegként mutatja meg.
Feltöltődik valahová a szövegem?
Nem. A kódolás és a dekódolás teljes egészében a böngésződben fut, és az adataid soha nem hagyják el az eszközödet.