D3hex

Der erste datenflussbasierte Dateieditor

D3hex ist ein schneller und leichtgewichtiger Hex-Editor. Genauer gesagt, entwickelte er sich zu einem allgemeinen binären Datei-Editor und Viewer, der unter anderem einen Hex-Editor beinhaltet. Das Ziel der Software ist es, den Anwendern die Möglichkeit zu geben, jede beliebige Datei zu öffnen, zu interpretieren, anzusehen und zu bearbeiten. Ein wichtiges Element dieser Software ist der knotenbasierte Ansatz. Das heißt, alle Funktionen der Software stehen als einzelne Knoten zur Verfügung, die zur Erfüllung einer bestimmten Aufgabe kombiniert werden können.

  • Editiere Daten

    Editiere Daten wie mit jedem anderen Hexeditor

  • Steuere den Datenfluss

    Verbinde Knoten auf beliebige Art

  • Plotte Daten

    Visualisiere ein- oder zweidimensionale Daten

  • Arbeite mit Daten

    Wende eine Hashfunktion auf Daten an, oder interpretiere Daten als Zeichenkette oder Zahl

  • Suche und ersetze

    Zahlen, Zeichenketten und binäre Daten

Details

Beispiele für Knoten sind:

  • Quellen (Eine Datei, Zufallsdaten)
  • Hex-Editor
  • Viewer (Grafiken, Bildbetrachter)
  • Und vieles mehr

Im einfachsten Fall verbinden Sie einfach eine Quelle mit dem Hex-Editorknoten. Dies könnte in etwa so aussehen:

Der Knoten "Historie" dient zur Virtualisierung aller vom Knoten "Editor" durchgeführten Operationen. Auf diese Weise ist es möglich, Operationen rückgängig zu machen und zu wiederholen, bis Sie abschließend auf "Speichern" klicken. Ohne den Knoten "History" würden Sie direkt in die Datei "File" schreiben.

Merkmale

  • "Unbegrenzte" Datengröße ( ~ 9,2 Exabyte)
  • Die maximale Dateigröße ist nicht auf den Arbeitsspeicher beschränkt.
  • Einfügen und Löschen
  • Suchen und Ersetzen von Binärdaten, Ganzzahlen, Gleitkommazahlen, Zeichenketten, etc.
  • Öffnen und Bearbeiten des virtuellen Speichers von Prozessen
  • Netzwerkterminal zur Kommunikation mit jedem TCP- oder UDP-basierten Server
  • Prüfsummen- und Hashcode-Rechner
  • Anzeige der Daten als Grafik oder Bild
  • Binäre Verknüpfung von zwei Datenquellen (XOR, AND, OR)
  • Dateninspektor (Ganzzahlen, Gleitkommazahlen, Zeichenketten)

Zukunft

  • Knoten zum Komprimieren und Dekomprimieren von zlib- und/oder gzip-Streams
  • Knoten für Statistiken (Histogramm, Entropie, Mittelwert,....)
  • Knoten für mathematische Operationen
    • Grundlegende Mathematik
    • Kreuzkorrelation, Autokorrelation, Diskrete Fourier-Transformation, .....
  • Disassembler (Capstone Integration)
  • Audiowiedergabe
  • Knoten zum De- und Kodieren gängiger Dateiformate (mp3, jpeg, png,....)
  • Physische oder logische Laufwerke als Datenquelle
  • Wellengenerator (Sinus, Quadrat, Dreieck,....)
  • Knoten zum Vergleichen von Binärdaten
  • Texteditor
  • Zwischenablage als Datenquelle

Sprache

Die Software ist vollständig in PureBasic geschrieben, welches kompakte und native 32-Bit- und 64-Bit-Anwendungen erstellt. Es ist geplant, ein Plugin-System zu integrieren, das es erlaubt, die verfügbaren Knoten zu erweitern. Dann wäre es möglich, dass man in jeder beliebigen Sprache Knoten erstellen kann, welche C kompatible Shared Libraries (.dll-Dateien unter Windows, .so-Dateien unter Linux) erstellen kann. In Zukunft wird es auch möglich sein, auch mit Hilfe der Julia-Skriptsprache eigene Knoten zu erstellen.

Lizenz

D3hex wird unter der GPL veröffentlicht.

Download

Windows (x86 & x86-64)

Alle Veröffentlichungen sind als GitHub Release verfügbar.

Zum Installieren einfach den Ordner in der entsprechenden Zip-Datei an einen beliebigen Ort entpacken.