ForHosting KIT · Entwickler-Tools

Base16-RFC-4648-Encoder & -Decoder

Kodieren Sie Text als Base16 nach RFC 4648, dem standardisierten Hex in Großbuchstaben, bei dem jedes Byte zwei Zeichen ergibt: Aus Hello wird 48656C6C6F. Beim Dekodieren werden Auszüge mit Leerzeichen oder Doppelpunkten akzeptiert, Fehlerhaftes abgelehnt. 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
Text
Hello
Berechnungsmodus
Encode
Erhalten Sie
Ergebnis
48656C6C6F
Eingabe
Hello
Base 16
48656C6C6F
Hexadezimal
48656C6C6F

RFC 4648 Base16 ist die standardisierte Hexadezimalkodierung in Großbuchstaben: Jedes Eingabebyte wird zu genau zwei Zeichen aus dem Alphabet 0-9 und A-F, ohne Füllzeichen und ohne mehrdeutige Glyphen. Dieses Werkzeug kodiert reinen UTF-8-Text in diese kanonische Base16-Form und dekodiert Base16-Hex-Strings zurück zu Text, sodass Sie in beide Richtungen einfügen können, ohne eine Krypto-Bibliothek zu installieren. Die Kodierung gibt stets Großbuchstaben aus, wie der Standard es verlangt; die Dekodierung akzeptiert übliches Einfüge-Rauschen wie Leerzeichen, Doppelpunkte und gemischte Groß- und Kleinschreibung und normalisiert und validiert dann vor der Umwandlung.

Was RFC 4648 Base16 ist und wie das Alphabet funktioniert

Base16 ist in RFC 4648 als Binär-zu-Text-Kodierung definiert, die jedes Acht-Bit-Oktett auf zwei Symbole eines Alphabets aus sechzehn Zeichen abbildet: die Dezimalziffern null bis neun gefolgt von den lateinischen Großbuchstaben A bis F. Dieses Alphabet ist identisch mit der vertrauten Hexadezimalschreibweise in Großbuchstaben aus Protokolldokumenten, Paketmitschnitten und vielen Hardware-Handbüchern. Die Kodierung durchläuft die Eingabe von links nach rechts, teilt jedes Byte in ein hohes und ein niedriges Nibble und bildet jedes Nibble auf ein Alphabetzeichen ab, wodurch ein String entsteht, dessen Länge immer das Doppelte der Byteanzahl beträgt.

Es gibt kein Füllzeichen und keine Zeilenumbruchregel in der Kernkodierung; Verbraucher, die Zeilenumbrüche oder Trennzeichen brauchen, fügen sie nur zur Anzeige hinzu. Die Dekodierung kehrt die Abbildung um: Jeweils zwei aufeinanderfolgende Hex-Ziffern werden zu einem Byte. Implementierungen, die RFC-4648-Konformität beanspruchen, kodieren mit Großbuchstaben A–F; viele Decoder akzeptieren auch Kleinbuchstaben a–f für die Interoperabilität mit Werkzeugen, die gemischte Schreibweise ausgeben.

Leerzeichen und dekorative Trennzeichen wie Doppelpunkte, Unterstriche oder Bindestriche tauchen oft in manuell bearbeiteten Dumps auf und sollten vor den Längen- und Alphabetprüfungen entfernt werden; der verbleibende durchgehende String muss eine gerade Länge haben. Wenn ein Zeichen außerhalb von 0-9A-Fa-f erscheint oder die Ziffernzahl ungerade ist, muss der Decoder laut fehlschlagen.

Praktische Tipps, Grenzen und Unterschiede zu anderen Kodierungen

Bevorzugen Sie encode, wenn Sie von lesbarem Text oder kurzen UTF-8-Nutzlasten ausgehen, die Sie als kanonischen Hex-Dump in Großbuchstaben für Spezifikationen, Tickets oder Unit-Tests brauchen. Round-Trip-Prüfungen sind der schnellste Smoke-Test: Kodieren Sie ein bekanntes Wort wie Hello, bestätigen Sie das klassische Ergebnis in Großbuchstaben 48656C6C6F, dekodieren Sie dann diesen String und bestätigen Sie, dass Sie die ursprüngliche Phrase Byte für Byte zurückerhalten. Halten Sie Nutzlasten unter dem veröffentlichten Zeichenlimit; Dumps von mehreren Megabyte gehören offline oder in dedizierte Binärwerkzeuge.

Dieses Werkzeug ist nicht Base64 oder Base64URL — jene Alphabete verwenden vierundsechzig Symbole mit Füllzeichen und dichterer Packung. Es ist auch nicht Base58, das mehrdeutige Glyphen für die menschliche Übertragung weglässt. Und es ist kein Basis-Konverter für Ganzzahlen oder Floats: Um eine einzelne Hex-Zahl in Dezimal oder Binär umzuwandeln, nutzen Sie die dedizierten Zahlenformat-Fähigkeiten, statt die Ziffern als opake Bytefolge zu behandeln.

Bevorzugen Sie Base16, wenn Sie einen 1:1 nibble-sichtbaren Dump brauchen, der zu RFC 4648 und zum Lehrbuch-Hex passt; bevorzugen Sie Base64, wenn Dichte wichtiger ist als Lesbarkeit. Zeigen Sie im Unterricht denselben Satz in Base16 und Base64 nebeneinander kodiert, damit Lernende sehen, warum Hex länger und immer von gerader Länge ist und warum A–F in Großbuchstaben die standardisierte Form in RFC 4648 Tabelle 5 ist.

Debugging eingefügter Logs und Paketmitschnitte

Fügen Sie Hex-Dumps mit Leerzeichen oder Doppelpunkten ein, dekodieren Sie sie zu lesbarem Text, wenn die Nutzlast UTF-8 ist, oder kodieren Sie nach Bearbeitungen erneut für Round-Trip-Prüfungen.

RFC 4648 und Hexadezimalschreibweise lehren

Im Unterricht wird Hello zu 48656C6C6F kodiert, das Alphabet 0-9A-F untersucht und dann ungerade Länge oder ungültige Zeichen erzwungen, um die strikte Validierung zu zeigen.

Welches Alphabet verwendet dieser Base16-Encoder?

Das Base16-Alphabet aus RFC 4648: 0123456789ABCDEF. Die Kodierung erzeugt stets A–F in Großbuchstaben; die Dekodierung akzeptiert auch a–f in Kleinbuchstaben und übliche Trennzeichen.

Ist Base16 dasselbe wie Base64?

Nein. Base16 bildet jedes Byte auf zwei Hex-Ziffern eines Alphabets aus sechzehn Symbolen ab. Base64 verwendet vierundsechzig Symbole, dichtere Packung und optionale Füllzeichen.

Wandelt dies große Hex-Ganzzahlen in Dezimal um?

Nein. Es behandelt die Eingabe als opake Bytefolge nach RFC 4648 Base16, nicht als eine einzelne Ganzzahl beliebiger Präzision. Nutzen Sie die Zahlenformat-Werkzeuge für Hex-zu-Dezimal ganzer Zahlen.

Kann ich Hex mit Leerzeichen, Doppelpunkten oder Kleinbuchstaben dekodieren?

Ja. Leerzeichen, Doppelpunkte, Unterstriche und Bindestriche werden entfernt, Kleinbuchstaben a bis f werden akzeptiert, sodass ein aus einem Protokoll kopierter Auszug direkt funktioniert. Übrig bleiben muss eine gerade Anzahl von Hex-Ziffern.

Was passiert bei einer ungeraden Zahl von Hex-Ziffern?

Die Eingabe wird mit einer klaren Meldung abgelehnt, statt still verfälscht zu werden. Dasselbe gilt für Zeichen außerhalb von 0 bis 9 und A bis F sowie für Bytes, die keinen gültigen UTF-8-Text 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/base16-rfc4648

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/base16-rfc4648 \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"Hello"}'
{
  "text": "Hello"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "enc.base16_rfc4648",
  "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.

max_chars100000
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.

Fehlerhafte Eingaben — eine ungerade Anzahl von Hex-Ziffern, ein Zeichen außerhalb des Alphabets oder Bytes, die kein gültiges UTF-8 sind — liefern einen klaren invalid_input-Fehler statt stiller Korruption.

So rufen Sie die API auf und was die Antwort enthält

Der Standardmodus ist encode: Die UTF-8-Bytes von text werden zu einem Base16-String in Großbuchstaben nach dem RFC-4648-Alphabet. Der Modus decode behandelt text als Base16-Nutzlast — optional mit Leerzeichen oder Doppelpunkt-Trennzeichen und gemischter Schreibweise — und liefert nach der Normalisierung den wiederhergestellten UTF-8-String. Senden Sie einen JSON-Body mit dem Pflicht-String-Feld text (Aliase input, value und data) und einem optionalen mode, der encode oder decode ist. Die Eingabelänge ist auf hunderttausend Zeichen begrenzt, damit eine einzelne Anfrage den Worker-Speicher mit pathologischen Dumps nicht erschöpft. Bei Erfolg mit encode enthält die Antwort mode, input, result sowie base16 und hex mit demselben kodierten String, alphabet mit der Sechzehn-Zeichen-Konstante 0123456789ABCDEF, alphabet_name mit dem Wert rfc4648_base16, standard mit RFC 4648 Base16, input_bytes als UTF-8-Byteanzahl, output_length als Anzahl der kodierten Zeichen und eine kurze englische Meldung. Bei Erfolg mit decode enthält die Antwort mode, input, result und text mit dem dekodierten UTF-8-String, base16_normalized mit der durchgehenden Großbuchstabenform, dieselben Felder alphabet und standard, input_length, output_bytes und eine passende Meldung. Eine fehlgeschlagene Validierung — fehlendes text, text als Nicht-String, überlange Eingabe, ein unbekannter mode, eine ungerade Hex-Länge, ein ungültiges Base16-Zeichen oder dekodierte Bytes, die kein gültiges UTF-8 sind — liefert invalid_input und wird nie berechnet. Der Preis ist ein Pauschalbetrag von $0.002 pro erfolgreicher Anfrage mit der Einheit item und einem marginalen Stückpreis von null.

Praktische Tipps, Grenzen und Unterschiede zu anderen Kodierungen

Senden Sie absichtlich einen Hex-String ungerader Länge oder eine Nicht-Hex-Glyphe wie G oder Z in einer decode-Anfrage, um sicherzustellen, dass Ihr Client invalid_input und die Fehlermeldung mit der genannten Regel verarbeitet. Fehlgeschlagene Aufgaben, die invalid_input zurückgeben, verbrauchen kein Prepaid-Guthaben, was explorative Skripte günstig hält, wenn Sie fehlerhaftes Hex testen.

Protokoll- und Fixture-Hex-Dumps in Tests

Erzeugen Sie kanonisches Base16 in Großbuchstaben aus Fixture-Text und prüfen Sie, dass decode dieselben UTF-8-Bytes in CI ohne Krypto-Abhängigkeit wiederherstellt.

Was passiert, wenn ich einen Hex-String ungerader Länge oder ein Nicht-Hex-Zeichen dekodiere?

Die API liefert invalid_input, erklärt die ungerade Länge oder nennt das fehlerhafte Zeichen und seinen Index, und erinnert daran, dass Base16 eine gerade Anzahl von 0-9A-F-Ziffern braucht. Fehlgeschlagene Aufgaben werden nicht berechnet.

Ist der Base16-Encoder kostenlos?

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

Vollständige KIT-Dokumentation lesen →