68 lines
2.6 KiB
Markdown
68 lines
2.6 KiB
Markdown
# fscalc
|
||
fscalc ist eine einfache, statische Weboberfläche zur Berechnung von Hex-Offsets innerhalb gängiger Dateisysteme. Das Projekt richtet sich an Entwickler, Forensiker und Systemadministratoren, die schnell Offset-Werte und Adressberechnungen für Dateisystemstrukturen benötigen.
|
||
|
||
## Hauptfunktionen
|
||
|
||
- Interaktive Berechnung von Hex-Offsets für verschiedene Dateisysteme
|
||
- **FAT12/16**: Klassische FAT-Dateisysteme mit festem Root-Directory
|
||
- **FAT32**: Erweiterte FAT-Version mit flexiblem Root-Directory
|
||
- **NTFS**: Windows New Technology File System
|
||
- **exFAT**: Extensible FAT mit Zeitstempel-Konverter
|
||
- Übersichtliche Anzeige und Export von berechneten Werten
|
||
- Integrierte Hilfswerkzeuge und Utilities (z.B. eingebettete CyberChef-Instanz)
|
||
- Hex-Rechner für schnelle Berechnungen
|
||
|
||
## Voraussetzungen
|
||
|
||
- Ein moderner Webbrowser (Chrome, Firefox, Edge)
|
||
- Node/Python o.Ä. sind nicht zwingend erforderlich, da die Oberfläche statisch ist.
|
||
|
||
## Installation / Lokale Nutzung
|
||
|
||
1. Repository klonen oder als ZIP entpacken.
|
||
2. Im Projektverzeichnis einen lokalen HTTP-Server starten und `webroot/` als Dokumenten-Root verwenden.
|
||
|
||
Beispiel mit Python 3 (im Projektroot ausführen):
|
||
|
||
```fish
|
||
python3 -m http.server --directory webroot 8000
|
||
```
|
||
|
||
Dann den Browser öffnen und zu `http://localhost:8000/` navigieren.
|
||
|
||
Alternativ kann jeder andere statische Server (z. B. `live-server`, `http-server` aus npm) verwendet werden.
|
||
|
||
## Projektstruktur (ausgewählte Dateien)
|
||
|
||
- `webroot/` – Statische Weboberfläche
|
||
- `index.html` – Startseite
|
||
- `js/calculator.js` – Kernlogik der Offset-Berechnungen
|
||
- `js/main.js` – Initialisierung und UI-Handling
|
||
- `js/utils.js` – Hilfsfunktionen
|
||
- `cyberchef/` – Eingebettete CyberChef-Instanz
|
||
|
||
## Nutzung / Beispiele
|
||
|
||
- Öffne die Startseite und wähle das gewünschte Dateisystem bzw. die Berechnungsoption.
|
||
- Gib die Ausgangsadresse/den Sektor und die benötigten Parameter ein.
|
||
- Die berechneten Hex-Offsets werden sofort berechnet und lassen sich kopieren oder lokal weiterverarbeiten.
|
||
|
||
### exFAT-Spezifika
|
||
|
||
Der exFAT-Tab enthält zusätzlich einen **Zeitstempel-Konverter**, der die komplexen exFAT-Zeitstempel dekodiert:
|
||
- Zeitstempel-Wert (4 Bytes) aus Datei-Einträgen
|
||
- Millisekunden-Feld (1 Byte)
|
||
- Zeitzone-Feld (1 Byte) mit UTC/Lokal-Kennzeichnung
|
||
|
||
Detaillierte Anleitung: Siehe `exFAT_ANLEITUNG.md`
|
||
|
||
## Dateisystem-Referenzen
|
||
|
||
- **FAT12/16/32**: Dokumentation in CheatSheet.md
|
||
- **NTFS**: Interne NTFS-Strukturen und MFT-Berechnungen
|
||
- **exFAT**: Vollständige Anleitung in `exFAT_ANLEITUNG.md` und Praktikumsdokument `Praktikum 0x05 exFAT (kommentiert).pdf`
|
||
|
||
## Lizenz
|
||
|
||
BSD-3-Clause (siehe LICENSE)
|