ForHosting KIT · Entwickler-Tools

Base58Check-Encoder

Bitcoin-Adressdaten mit 21 Bytes werden zu 16UwLL9Risc3QfPqBUvKofHmBQ7wMtjvM, 33 Zeichen mit einer vier Byte langen doppelten SHA-256-Prüfsumme. Ein falsch abgeschriebenes Zeichen fällt so bei der Prüfung durch, statt falsche Bytes zu liefern. Kostenlos in Ihrem Browser.

  • Kostenlos
  • Läuft in Ihrem Browser
  • Ohne Anmeldung
  • Ihre Daten bleiben auf Ihrem Gerät
Nutzen Sie es über WebAPIE-MailTelegramApp bald
Wenn Sie eingeben
Berechnungsmodus
Encode
Ausgabeformat
Hex
Erhalten Sie
Ergebnis
16UwLL9Risc3QfPqBUvKofHmBQ7wMtjvM
Base58Check
16UwLL9Risc3QfPqBUvKofHmBQ7wMtjvM
Prüfsumme (hex)
d61967f6
Alphabetname
bitcoin

Base58Check ist das Bitcoin-Format von Binärdaten zu Text, das eine Nutzlast mit einer vier Byte langen Prüfsumme aus doppeltem SHA-256 umschließt und die gesamte Sequenz anschließend mit dem Bitcoin-Base58-Alphabet kodiert. Anders als bei reinem Base58 führt ein einziges vertauschtes Zeichen fast immer zum Fehlschlag der Prüfsummenprüfung, statt stillschweigend falsche Bytes zu dekodieren — entscheidend für Wallet-Adressen, WIF-Privatschlüssel und jede Zeichenkette, die Menschen von Hand kopieren.

Was Base58Check über Base58 hinaus leistet

Reines Base58 bildet Bytes auf achtundfünfzig eindeutige Zeichen ab, indem die Nutzlast als Big-Endian-Ganzzahl behandelt und wiederholt durch achtundfünfzig geteilt wird, mit dem Bitcoin-Alphabet ohne Null, großes O, großes I und kleines L. Diese Kodierung ist menschenfreundlich, schützt aber die Integrität nicht: ein falsch getipptes Glyph wird zu einer anderen gültigen Zeichenkette mit anderen Bytes. Base58Check schließt diese Lücke.

Vor dem Kodieren berechnet der Encoder SHA-256 der Nutzlast, dann SHA-256 dieses Digests und hängt die ersten vier Bytes des äußeren Hashs als Prüfsumme an. Der kombinierte Puffer — ursprüngliche Nutzlast plus diese vier Bytes — wird anschließend wie rohes Base58 kodiert, einschließlich der Konvention führende Nullen zu führenden Einsen. Beim Dekodieren läuft der Prozess rückwärts: Base58-Dekodierung liefert Bytes; die letzten vier sind die behauptete Prüfsumme; doppeltes SHA-256 der restlichen Nutzlast muss diesen vier Bytes entsprechen, sonst schlägt die Operation fehl.

Vier Prüfsummen-Bytes ergeben in der Praxis ungefähr eine Chance von eins zu vier Milliarden, dass ein Tippfehler mit einem Zeichen unentdeckt bleibt — deshalb standardisieren Bitcoin-P2PKH-Adressen, viele erweiterte Schlüssel und verwandte Werkzeuge diese Konstruktion. Diese Landing richtet sich an Personen, die online nach einem Base58Check-Encoder, Base58Check-Decoder oder Bitcoin-Prüfsummen-Konverter suchen; es ist kein reines Base58 ohne Prüfsumme, kein Base64 und kein vollständiger Adresstyp-Klassifikator, der Versionsbytes für jedes Netzwerk interpretiert.

Praxis-Tipps, klassische Vektoren und Unterschiede zu reinem Base58

Bevorzugen Sie encode, wenn Sie einen versionspräfixierten Hash oder eine andere binäre Nutzlast in Hex halten und eine einfügesichere Zeichenkette mit Integrität brauchen; bevorzugen Sie decode, wenn Sie bereits eine adressähnliche Base58Check-Zeichenkette haben und die Nutzlast nur bei intakter Prüfsumme zurückgewinnen müssen. Halten Sie Anfragen unter dem veröffentlichten Zeichenlimit; extrem lange Nutzlasten wachsen als große Ganzzahlen und sollten offline geteilt werden. Nutzen Sie das verwandte reine Base58, wenn Sie nur Alphabet-Konvertierung ohne Prüfsummen brauchen; nutzen Sie diese Base58Check-Fähigkeit, wenn Integrität zählt.

Beim Unterrichten zeigen Sie dieselbe Nutzlast mit und ohne Prüfsumme, damit Lernende sehen, warum Bitcoin-ähnliche Zeichenketten länger sind und warum ein Tippfehler mit einem Zeichen fast immer geschlossen fehlschlägt, statt die falsche Wallet zu öffnen.

Kopier-Einfüge-Integrität für Betriebswerkzeuge

Kodieren Sie versionierte binäre Labels, damit Mitarbeitende Zeichenketten einfügen, die bei Tippfehlern geschlossen fehlschlagen statt stillschweigend falsche Bytes zu dekodieren.

Was ist der Unterschied zwischen Base58 und Base58Check?

Base58 bildet nur Bytes auf das Bitcoin-Alphabet ab. Base58Check hängt zuerst vier Bytes des doppelten SHA-256 der Nutzlast an und kodiert dann Nutzlast plus Prüfsumme in Base58, damit decode die Integrität prüfen kann.

Welches Alphabet nutzt dieses Base58Check-Werkzeug?

Das Bitcoin-Alphabet: 123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz. Es schließt 0, O, I und l aus.

Soll die Nutzlast Hex oder Klartext sein?

Standard-format ist hex (Hex-Ziffern gerader Länge), passend zu Bitcoin-Werkzeugen. Setzen Sie format nur auf utf8, wenn die Nutzlast echter UTF-8-Text ist.

Was passiert, wenn die Prüfsumme beim Dekodieren nicht stimmt?

Der Decoder berechnet die doppelte SHA-256-Prüfsumme aus den Daten neu und vergleicht sie mit den vier gespeicherten Bytes. Weichen sie ab, bricht er mit einer klaren Meldung ab, statt Ihnen vermutlich falsche Bytes zu liefern.

Wie wahrscheinlich ist es, dass ein Tippfehler unbemerkt bleibt?

Sehr unwahrscheinlich. Die vier Prüfsummen-Bytes lassen etwa eine Chance von eins zu vier Milliarden, dass ein einzelnes falsches Zeichen unentdeckt bleibt. Ein vertauschtes Zeichen scheitert also fast immer an der Prüfung, statt falsche Bytes zu ergeben.

Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.

POSThttps://api.kit.forhosting.com/enc/base58-check

Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.

curl -X POST https://api.kit.forhosting.com/enc/base58-check \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"00010966776006953D5567439E5E39F86A0D273BEE"}'
{
  "text": "00010966776006953D5567439E5E39F86A0D273BEE"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "enc.base58_check",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.

pro Anfrage$0.002

Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.

HTTPCodeBedeutung
401unauthorizedDer API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer).
402insufficient_balanceIhr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht.
404unknown_typeUnbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog.
429rate_limitedZu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt.

Dieser Base58Check-Encoder nimmt eine Hex- oder UTF-8-Nutzlast entgegen und liefert eine Base58Check-Zeichenkette; der Decoder kehrt die Abbildung um, berechnet SHA256(SHA256(payload)) erneut und meldet einen klaren invalid_input-Fehler, wenn die gespeicherte Prüfsumme nicht passt.

Wie Sie die API aufrufen und was die Antwort enthält

Mit format utf8 wird text vor der Prüfsumme als UTF-8-Bytes kodiert. mode decode behandelt text als Base58Check-Zeichenkette im Bitcoin-Alphabet, prüft die Doppel-SHA-256-Prüfsumme und liefert die Nutzlast als Kleinbuchstaben-Hex, wenn format hex ist, oder als UTF-8-String, wenn format utf8 ist (binäre Nutzlasten, die kein gültiges UTF-8 sind, müssen hex verwenden). Senden Sie einen JSON-Body mit einem Pflicht-String-Feld text (Aliase input, value, data und payload), einem optionalen mode encode oder decode (Standard encode) und einem optionalen format hex oder utf8 (Standard hex). Leerzeichen im Hex werden entfernt; ungerade Länge oder Nicht-Hex-Ziffern liefern invalid_input. Bei erfolgreichem encode enthält die Antwort mode, format, input, result und base58check mit derselben kodierten Zeichenkette, payload_hex, checksum_hex, die Alphabet-Konstante und alphabet_name bitcoin, payload_bytes, output_length und eine kurze englische Meldung. Bei erfolgreichem decode erhalten Sie außerdem checksum_valid true, input_length und eine Bestätigung der Prüfung. Fehlgeschlagene Validierung — fehlendes text, schlechtes Hex, unbekannter mode oder format, ungültige Base58-Zeichen, zu kurze Nutzlasten für eine Prüfsumme oder Prüfsummen-Mismatch — liefert invalid_input und wird nie berechnet. Der Preis ist pauschal $0.002 pro erfolgreicher Anfrage mit Einheit item.

Praxis-Tipps, klassische Vektoren und Unterschiede zu reinem Base58

Roundtrip-Smoke-Tests sind unkompliziert: kodieren Sie die bekannte Hex-Nutzlast 00010966776006953D5567439E5E39F86A0D273BEE, bestätigen Sie das Ergebnis 16UwLL9Risc3QfPqBUvKofHmBQ7wMtjvM, dekodieren Sie diese Zeichenkette und bestätigen Sie payload_hex sowie checksum_hex d61967f6. Ändern Sie absichtlich das letzte Zeichen einer gültigen Zeichenkette und prüfen Sie, dass Ihr Client invalid_input mit einer Meldung behandelt, die empfangene und erwartete Vier-Byte-Prüfsummen nennt. Fehlgeschlagene Aufgaben mit invalid_input verbrauchen kein vorausbezahltes Guthaben, was explorative Skripte günstig hält, wenn Sie schlechte Prüfsummen testen.

Wallet- und Adress-Fixture-Tests

Erstellen Sie CI-Fixtures aus bekannten Hex-Nutzlasten, prüfen Sie, dass Base58Check-Encode mit golden Strings übereinstimmt, und lehnen Sie manipulierte Adressen per Prüfsummen-Mismatch ab.

Vermittlung von Doppel-SHA-256-Prüfsummen

Im Unterricht kodiert man einen klassischen Bitcoin-Vektor, prüft checksum_hex und ändert ein Zeichen, um invalid_input zu zeigen.

Was passiert, wenn die Prüfsumme nicht übereinstimmt?

decode liefert invalid_input mit einer Meldung, die empfangene und erwartete Vier-Byte-Prüfsummen in Hex nennt. Fehlgeschlagene Aufgaben werden nicht berechnet.

Ist der Base58Check-Encoder kostenlos?

Das Browser-Werkzeug ist kostenlos und läuft lokal. API-Aufrufe nutzen vorausbezahltes KIT-Guthaben zu $0.002 pro erfolgreicher Anfrage; invalid_input-Fehler werden nie berechnet.

Vollständige KIT-Dokumentation lesen →