Hex-Encoder und -Decoder (Base16)

Wandeln Sie Text, Dateien oder Rohbytes in Hexadezimal um und zurück. Wählen Sie Groß- oder Kleinschreibung, ein Trennzeichen und ein 0x- oder \x-Präfix; der Decoder bereinigt gängige Hex-Formate automatisch.

Läuft vollständig in Ihrem Browser. Es wird nichts hochgeladen.

Anleitung

  1. Wählen Sie „Kodieren“, um Text in Hex umzuwandeln, oder „Dekodieren“, um Hex wieder in Text umzuwandeln.
  2. Geben Sie die Eingabe ein, fügen Sie sie ein oder klicken Sie auf „Datei öffnen“, um die Bytes einer Datei in Hex zu sehen.
  3. Legen Sie die Optionen fest: „Großbuchstaben“, ein „Trennzeichen“ („Ohne“, „Leerzeichen“ oder „Doppelpunkt“) und ein „Präfix“ („Ohne“, 0x oder \x).
  4. Kopieren Sie das Ergebnis oder laden Sie es als Datei herunter.

Was ist Hexadezimal (Base16)?

Das Hexadezimalsystem verwendet sechzehn Symbole, die Ziffern 0 bis 9 und die Buchstaben A bis F. Eine Hex-Ziffer enthält vier Bit, daher wird jedes Byte mit genau zwei Ziffern geschrieben, von 00 bis FF. Die Ausgabe ist doppelt so groß wie die Eingabe und damit größer als bei Base64 oder Base32, aber die Bytegrenzen bleiben sichtbar. Deshalb zeigen Debugger, Hex-Editoren und Netzwerktools Daten auf diese Weise an.

RFC 4648 standardisiert die Kodierung als Base16, mit einem Alphabet aus Großbuchstaben und ohne Auffüllung. In der Praxis sind Kleinbuchstaben genauso verbreitet, und Decoder, auch dieser, akzeptieren beides.

Wo Hex verwendet wird

  • Hashwerte und Schlüssel. Ein SHA-256-Hashwert umfasst 32 Bytes und wird als 64 Hex-Ziffern geschrieben. Kryptografische Schlüssel, UUIDs und Prüfsummen werden ebenfalls meist in Hex angezeigt.
  • Hardwareadressen. MAC-Adressen bestehen aus sechs Bytes in Hex, üblicherweise durch Doppelpunkte getrennt. Das Trennzeichen „Doppelpunkt“ erzeugt genau dieses Format.
  • Escape-Sequenzen. Strings in C, Python und JavaScript akzeptieren \x gefolgt von zwei Hex-Ziffern für ein einzelnes Byte, und genau das schreibt die Präfix-Option \x.
  • Webformate. CSS-Farben wie #FF8800 sind drei Bytes in Hex, und die Prozentkodierung in URLs schreibt Bytes als % plus zwei Hex-Ziffern.

Hex in Text dekodieren

Der Decoder ist bei der Formatierung tolerant. Er akzeptiert Groß- und Kleinbuchstaben, ignoriert Leerzeichen, Zeilenumbrüche, Kommas, Doppelpunkte, Semikolons und Bindestriche und entfernt die Präfixe 0x, \x, % und &#x. Ausgaben von xxd -p, MAC-Adressen, UUIDs, kommagetrennte 0x-Listen, %XX-Escapes und hexadezimale HTML-Entitäten können Sie unverändert einfügen. Jedes Byte braucht zwei Ziffern, daher wird eine ungerade Anzahl von Ziffern als Fehler gemeldet. Die Bytes werden als Text in der gewählten Zeichenkodierung angezeigt.

Um Hex ohne den Umweg über Text in eine andere Kodierung umzuwandeln, verwenden Sie Hex zu Base64 oder Base64 zu Hex.

Hex im Programmcode

# Python
'Hi'.encode().hex()                 # '4869'
bytes.fromhex('4869').decode()      # 'Hi'

// Node.js
Buffer.from('Hi').toString('hex')             // '4869'
Buffer.from('4869', 'hex').toString('utf8')   // 'Hi'

# Shell
printf 'Hi' | xxd -p                # 4869

Spezifikation

Alphabet0-9 A-F
Ausgabegröße2 Zeichen pro Byte (200 %)
AuffüllungKeine
StandardRFC 4648, Abschnitt 8
Groß-/Kleinschreibung relevantNein

Beispiele

Eingabe (UTF-8)Ausgabe
Hello, World!48656c6c6f2c20576f726c6421
Base64.is4261736536342e6973
你好e4bda0e5a5bd

Häufig gestellte Fragen

Wie wandle ich Hex in Text um?

Wechseln Sie zu „Dekodieren“ und fügen Sie den Hex-Wert ein. Leerzeichen, Doppelpunkte und die Präfixe 0x oder \x werden automatisch entfernt, und die Bytes werden als UTF-8-Text angezeigt, sofern Sie keine andere Zeichenkodierung wählen.

Sollte Hex in Groß- oder Kleinbuchstaben geschrieben werden?

Beide Schreibweisen stehen für dieselben Bytes. RFC 4648 verwendet Großbuchstaben, während viele Programmiersprachen Kleinbuchstaben ausgeben. Aktivieren Sie „Großbuchstaben“, wenn Ihr Zielsystem diese erwartet; der Decoder akzeptiert beides.

Warum ist Hex doppelt so lang wie das Original?
Jedes Byte wird zu zwei Zeichen, ein Zuwachs von 100 %. Base64 fügt nur etwa 33 % hinzu. Wenn die Größe wichtig ist, wandeln Sie die Bytes mit Hex zu Base64 um.
Ist das dasselbe wie die Umrechnung einer Zahl in Hex?
Nicht ganz. Dieses Tool kodiert eine Folge von Bytes, etwa die Bytes eines Textes. Um eine einzelne Ganzzahl umzurechnen, zum Beispiel 255 in FF, verwenden Sie den Zahlensystem-Konverter.