Weboberflaeche: self-contained, client-side, CLI-kompatibel
Eine einzelne index.html ohne Framework/CDN. Krypto + LSB-Steganografie laufen komplett im Browser (iOS-tauglich). Format-identisch zum CLI; Byte-Interop in beide Richtungen per Node-Test gegen das Python-CLI abgesichert (laedt den Krypto-Kern direkt aus der ausgelieferten index.html). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
35
README.md
35
README.md
@@ -96,6 +96,41 @@ Vor der LSB-Einbettung wird ein kleiner Header vorangestellt:
|
||||
|
||||
Die Bits werden linear (MSB zuerst) in die LSBs der R/G/B-Kanäle geschrieben.
|
||||
|
||||
## Weboberfläche (`web/index.html`)
|
||||
|
||||
Eine **einzige, self-contained HTML-Datei** — kein Framework, kein CDN, kein
|
||||
Build. Verschlüsselung und Steganografie laufen zu 100 % im Browser
|
||||
(client-side): Pad, Klartext und Nachricht verlassen das Gerät nie. Ein Server,
|
||||
der die Datei ausliefert, ist ein reiner „dummer" Fileserver und sieht nichts.
|
||||
|
||||
* **Überall erreichbar, iOS inklusive.** Nutzt nur Safari-Standard-APIs
|
||||
(Canvas, FileReader, `crypto.getRandomValues`).
|
||||
* **Format-kompatibel zum CLI.** Am Terminal verstecken, am Handy im Browser
|
||||
aufdecken — und umgekehrt. Byte-Interop ist per Test abgesichert
|
||||
(`web/_interop_test.mjs` lädt exakt den Krypto-Kern aus der ausgelieferten
|
||||
`index.html` und prüft beide Richtungen gegen das Python-CLI).
|
||||
* **Offset-Tracking** merkt sich pro Pad (via `localStorage`) den nächsten
|
||||
freien Offset. Achtung: Der Zähler ist pro Browser/Gerät. Wer abwechselnd über
|
||||
mehrere Instanzen sendet, muss den Offset manuell synchron halten — sonst
|
||||
droht Pad-Wiederverwendung.
|
||||
|
||||
### Deployment
|
||||
|
||||
Es ist eine statische Datei — einfach irgendwo hinlegen:
|
||||
|
||||
```bash
|
||||
# lokal testen
|
||||
python3 -m http.server -d web 8000 # -> http://localhost:8000
|
||||
|
||||
# produktiv: web/index.html hinter einen beliebigen Webserver / Static-Host
|
||||
```
|
||||
|
||||
### ⚠️ iOS-Eigenheit
|
||||
|
||||
Stego-Bild über **„In Dateien sichern"** ablegen und als **Datei** teilen —
|
||||
nicht in „Fotos" speichern. iOS re-komprimiert Bilder aus der Fotos-Mediathek
|
||||
und würde die Nachricht zerstören.
|
||||
|
||||
## Grenzen / Hinweise
|
||||
|
||||
- **Steganografie versteckt, authentifiziert aber nicht.** Ein Angreifer, der
|
||||
|
||||
Reference in New Issue
Block a user