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