Hex-Encoder/Decoder

Hexadezimale (Hex-)Kodierung stellt Binärdaten mithilfe von 16 Symbolen (0-9 und A-F) dar. Jedes Byte wird zu zwei Hex-Zeichen. Dieses Tool dekodiert Hex-Strings, um den ursprünglichen Inhalt zu enthüllen, identifiziert Dateitypen anhand von Magic Bytes und bietet einen Hex-Editor-artigen Viewer für die Binärinspektion.

Haeufige Anwendungsfaelle

  • Hex-kodierte Daten aus APIs und Logs dekodieren
  • Binäre Datei-Header und Magic Bytes untersuchen
  • Netzwerkpaket-Payloads analysieren
  • Kryptographische Werte debuggen (Hashes, Schlüssel, IVs)
  • Rohe Binärdaten aus Datenbanken oder Dateien anzeigen
  • Hex-Dumps aus Debugging-Tools konvertieren

Funktionen

  • Hex-Strings in mehreren Formaten dekodieren (plain, mit Leerzeichen, 0x-Präfix, Doppelpunkt-getrennt, C-Array)
  • Hex-Viewer mit Offset, Hex-Bytes und ASCII-Darstellung
  • Automatische Erkennung des dekodierten Inhaltstyps (JSON, XML, Text usw.)
  • Verkettete Erkennung — automatische Inhaltstyperkennung mit "Dekodieren als X"-Button
  • Dateityp-Identifizierung anhand von Magic Bytes für Binärdaten
  • Virtuelles Scrollen für große Dateien mit verzögertem Chunk-Laden
  • Zwischen Hex-Formaten konvertieren (plain, mit Leerzeichen, 0x, Doppelpunkt, C-Array)
  • Text in verschiedenen Formaten zu Hex kodieren

Beispiele

JSON als Hex

Ausprobieren →

Ein Hex-String, der zu einem JSON-Objekt dekodiert wird.

7b226e616d65223a22746573742e6a736f6e227d

Hex mit Leerzeichen

Ausprobieren →

Durch Leerzeichen getrennte Hex-Bytes (üblich in Debugging-Ausgaben).

48 65 6c 6c 6f 2c 20 57 6f 72 6c 64 21

Hex-Bytes, die eine PDF-Dateisignatur darstellen.

25504446 2d312e34 0a312030 206f626a

C-Style-Array

Ausprobieren →

Hex-Bytes als C-Array formatiert.

0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x21

MAC-Adress-Format

Ausprobieren →

Durch Doppelpunkte getrennte Hex-Bytes wie eine MAC-Adresse.

de:ad:be:ef:ca:fe

Tipps

  • Hex-Kodierung verdoppelt die Datenmenge (jedes Byte wird zu 2 Zeichen).
  • Übliche Magic Bytes: PDF beginnt mit 25504446 (%PDF), ZIP mit 504B0304.
  • Bilddaten (PNG, JPEG usw.) werden automatisch erkannt und verwenden den Image Analyzer.
  • Das 0x-Präfix zeigt Hexadezimal in den meisten Programmiersprachen an.
  • MAC-Adressen und UUIDs verwenden Doppelpunkt- oder Bindestrich-Trennzeichen.
  • Hex ist nicht groß-/kleinschreibungsempfindlich: 0xFF entspricht 0xff.

Verstaendnis Hex-Encoder/Decoder

Hexadezimale (Hex-)Kodierung stellt Binärdaten in Basis-16-Notation dar, wobei jedes Byte exakt auf zwei Zeichen aus dem Satz 0-9 und A-F abgebildet wird. Diese direkte Byte-zu-Text-Zuordnung macht Hex zur Standarddarstellung für Binärdaten beim Debugging, in der Kryptographie, im Netzwerkbereich und in der systemnahen Programmierung.

Im Gegensatz zu Base64, das Byte-Grenzen mit seiner 6-Bit-Gruppierung verschleiert, wird jedes Paar von Hex-Zeichen auf genau ein Byte abgebildet, was das Lesen einzelner Werte trivial macht. Speicheradressen, Registerinhalte, Netzwerkpaket-Dumps, Datei-Header und kryptographische Werte werden alle konventionell in Hex dargestellt.

Hex-Strings kommen in vielen Formaten vor. Plain Hex (48656c6c6f) ist in APIs üblich. Durch Leerzeichen getrenntes Hex (48 65 6c 6c 6f) erscheint in Paketmitschnitten. Durch Doppelpunkte getrenntes Hex (48:65:6c:6c:6f) wird für MAC-Adressen und Zertifikat-Fingerprints verwendet. Das 0x-Präfix (0x48, 0x65) ist das Standard-Hex-Literal in C, JavaScript, Python und den meisten Sprachen. C-Style-Arrays ({0x48, 0x65}) betten Binärdaten in Quellcode ein.

Die Dateityp-Identifizierung basiert auf Magic Bytes — spezifischen Hex-Sequenzen am Anfang einer Datei, die ihr Format identifizieren. PDFs beginnen mit 25504446 (%PDF), PNGs mit 89504E47, ZIPs mit 504B0304 und ELF-Executables mit 7F454C46. Das Erkennen dieser Signaturen ist wesentlich für das Debuggen von Dateiverarbeitungscode und die Analyse von Binärdaten.

Hex und Base64 kodieren beide Binärdaten als Text, machen aber unterschiedliche Kompromisse. Hex bildet jedes Byte auf 2 Zeichen ab und verdoppelt damit die Datenmenge (100% Overhead), während Base64 alle 3 Bytes auf 4 Zeichen abbildet mit nur etwa 33% Overhead. Base64 ist platzsparender für große Daten und damit die bessere Wahl zum Einbetten von Binärinhalten in Textformate. Hex ist besser lesbar für die Inspektion auf Byte-Ebene und damit der Standard für Debugging, kryptographische Werte und Protokollanalyse, wo einzelne Byte-Werte wichtig sind.

Magic Bytes (auch Dateisignaturen genannt) sind spezifische Byte-Sequenzen ganz am Anfang einer Datei, die ihr Format unabhängig von der Dateierweiterung identifizieren. PNG-Dateien beginnen mit 89 50 4E 47, JPEG mit FF D8 FF und ZIP mit 50 4B 03 04. Der Unix-Befehl "file" verlässt sich auf Magic Bytes zur Erkennung von Dateitypen, und dieselbe Technik wird in diesem Tool verwendet, um Binärinhalte innerhalb von Hex-Daten zu identifizieren.

Hex ist nicht groß-/kleinschreibungsempfindlich, weil die Ziffern A-F die Werte 10-15 darstellen, unabhängig davon, ob sie groß- oder kleingeschrieben sind — 0xFF und 0xff bedeuten beide dezimal 255. Die Wahl zwischen Groß- und Kleinschreibung ist reine Konvention: Großbuchstaben sind in Spezifikationen und Hash-Ausgaben üblich, während Kleinbuchstaben in Webentwicklungskontexten wie CSS-Farben und URL-Kodierung verbreitet sind. Das 0x-Präfix zeigt ein hexadezimales Zahlenliteral in den meisten Programmiersprachen an, einschließlich C, C++, Java, JavaScript, Python, Go und Rust. Ohne das Präfix wäre ein Wert wie "10" mehrdeutig zwischen dezimal und hexadezimal; 0x10 macht es eindeutig hexadezimal (dezimal 16).

← Zurueck zu allen Tools