# Tutorial: Open-WebUI-USB-Stick verschlüsseln

Bezogen auf die Empfehlung aus dem Artikel
[„Open WebUI Portable auf dem USB-Stick"](https://www.wahl.work/open-webui-portable-usb.html).

## Warum Verschlüsselung?

Dein `start_webui.bat` enthält den OpenRouter-API-Key im Klartext, und im
`data\`-Ordner liegen alle Chat-Verläufe als SQLite-Datenbank. Ohne
Verschlüsselung kann jeder, der den Stick in die Hände bekommt, beides einfach
auslesen – z. B. an den nächsten Rechner stecken und die Datenbank öffnen.

## Welche Methode passt zu dir?

| Kriterium | BitLocker To Go | VeraCrypt-Container |
|---|---|---|
| Windows-Edition | **Nur Pro/Enterprise** – auch am Gast-PC zum Entsperren! | Alle Editionen, auch Home |
| Extra Software am Gast-PC | Nein (in Windows integriert) | Ja: portable VeraCrypt auf dem Stick |
| Admin-Rechte zum Entsperren | Nein (nur Passwort) | Nein (Container mounten) |
| Setup auf dem Stick | Bleibt unverändert liegen | Muss in den Container verschoben werden |
| Aufwand | Gering | Mittel |

**Empfehlung:**
- Du nutzt überall **Windows Pro/Enterprise** → **BitLocker To Go** (Methode A). Einfachste Lösung, der Stick bleibt genau wie er ist.
- Gast-PCs könnten **Windows Home** sein → **VeraCrypt** (Methode B). BitLocker-Sticks lassen sich auf Windows Home *nicht* öffnen.

> **Wichtig für beide Methoden:** Der API-Key bleibt zwar weiterhin in Klartextform in der Datei, ist aber nur noch *nach Passworteingabe* lesbar. Lag der Stick vorher unverschlüsselt herum, solltest du den API-Key bei OpenRouter einmal wechseln (neuen Key unter openrouter.ai erzeugen, alten widerrufen).

---

## Methode A: BitLocker To Go

**Voraussetzung:** Der PC, der den Stick benutzt, läuft mit Windows Pro oder Enterprise.

1. **Stick einstecken** und im Explorer öffnen.
2. **Rechtsklick auf das Laufwerk** (z. B. `E:\`) → **„BitLocker aktivieren"** (engl. „Turn on BitLocker").
3. **„Mit Passwort zum Entsperren des Laufwerks verwenden"** auswählen.
4. **Starkes Passwort** vergeben (mindestens 12 Zeichen, am besten eine Passphrase aus mehreren Wörtern).
5. **Wiederherstellungsschlüssel speichern:** Auf Papier ausdrucken oder im Passwort-Manager ablegen. **Nicht auf dem Stick selbst!** Ohne Schlüssel + Passwort sind die Daten bei Verlust unwiederbringlich weg.
6. **„Kompletten Laufwerk verschlüsseln"** wählen (nicht nur belegten Speicher – sonst bleiben Reste alter Daten lesbar).
7. **Verschlüsselungsmodus:** Für einen Stick, der an verschiedenen Windows-10/11-Rechnern laufen soll, **„Kompatibler Modus"** wählen. („Neuer Modus" nur, wenn du sicher bist, dass alle Ziel-PCs Windows 11 22H2+ verwenden.)
8. **„Verschlüsselung starten"** klicken. Je nach Stick-Größe dauert das Minuten bis Stunden.

**Fertig.** Ab sofort fragt Windows bei jedem Einstecken nach dem Passwort. Erst danach ist das Laufwerk sichtbar und du kannst `start_webui.bat` starten.

**Ablauf unterwegs:**
1. Stick einstecken → Passwort-Eingabedialog erscheint automatisch.
2. Passwort eingeben → Laufwerk wird als normales Laufwerk gemountet.
3. `start_webui.bat` ausführen, Browser auf `http://localhost:8080` öffnen.

---

## Methode B: VeraCrypt-Container

Funktioniert auf **jeder** Windows-Version – auch Home – und ohne Admin-Rechte.
Der Stick bekommt folgende Struktur:

```
USB-Stick (E:\)
├── VeraCrypt\            <- Portable VeraCrypt-Software (unverschlüsselt, nur die Software)
└── OpenWebUI.hc          <- Verschlüsselter Container (WinPython, data, start_webui.bat)
```

### Schritt 1: Portable VeraCrypt auf den Stick legen

1. Lade VeraCrypt von <https://www.veracrypt.fr/downloads> herunter („VeraCrypt Setup").
2. Installiere es einmalig auf deinem eigenen PC (das Installationsprogramm erlaubt auch „Extract").
3. Starte den Installer bzw. „Extract" so, dass die **portable Version** in den Ordner `E:\VeraCrypt\` auf dem Stick entpackt wird.
   → Damit ist VeraCrypt ohne Installation auf jedem Gast-PC lauffähig – es bleibt bei der „keine Admin-Rechte"-Philosophie des Tutorials.

> **Hinweis zum Stick-Dateisystem:** Ein VeraCrypt-Container ist eine einzelne Datei. Ist der Stick als FAT32 formatiert, sind Dateien auf **max. 4 GB** begrenzt – zu klein für das Setup. Prüfe in den Ordnereigenschaften das Dateisystem; bei FAT32 den Stick vorher auf **exFAT** umformatieren (Daten vorher sichern!).

### Schritt 2: Container erstellen

1. `E:\VeraCrypt\VeraCrypt-x64.exe` starten (auf 64-Bit-Windows; sonst `VeraCrypt.exe`).
2. **„Create Volume"** → **„Create an encrypted file container"** → **Next**.
3. **„Standard VeraCrypt volume"** → **Next**.
4. **Volume location:** Klicke „Select File" und gib `E:\OpenWebUI.hc` an → **Next**.
5. Verschlüsselungs-/Hash-Algorithmus: Standard (AES) lassen → **Next**.
6. **Größe:** Großzügig wählen. WinPython + Open WebUI brauchen gut 1–2 GB, dazu kommen deine Chat-Daten. Empfehlung: mindestens 8 GB, besser so viel wie der Stick hergibt – eine nachträgliche Vergrößerung ist umständlich. (Das Volume später ist kein Problem.)
7. **Passwort** wählen (mindestens 20 Zeichen, stark) → **Next**.
8. **Dateisystem:** `exFAT` (kompatibelste Wahl für einen Stick).
9. **Next** bis zum Bildschirm „Random Pool": Bewege die Maus einige Sekunden im Fenster, um Zufallsdaten zu sammeln → **Format**.
10. Der Container ist erstellt → **Exit**.

### Schritt 3: Setup in den Container verschieben

1. Wähle in VeraCrypt einen freien Laufwerksbuchstaben (z. B. `Z:`) → **„Select File"** → `OpenWebUI.hc` → **„Mount"** → Passwort eingeben.
2. `Z:` ist jetzt ein normales, aber verschlüsseltes Laufwerk.
3. Verschiebe **`WinPython\`**, den **`data\`-Ordner** und **`start_webui.bat`** nach `Z:\`.
   → Wichtig: Der `data\`-Ordner darf **nicht** auf dem Stick außerhalb liegen bleiben, sonst sind die Chats wieder unverschlüsselt.
4. **Test:** Öffne `Z:\start_webui.bat` per Doppelklick. Es muss wie gewohnt starten – das Skript nutzt `%~dp0`, also erkennt es automatisch den gemounteten Pfad `Z:\`.

### Schritt 4: Tägliche Nutzung

1. Stick einstecken.
2. `E:\VeraCrypt\VeraCrypt-x64.exe` starten (portabel, nichts wird installiert).
3. Buchstaben wählen → **Select File** → `OpenWebUI.hc` → **Mount** → Passwort eingeben.
4. Im Explorer zu `Z:\` → `start_webui.bat` starten → Browser auf `http://localhost:8080`.
5. Nach der Nutzung: In VeraCrypt den Laufwerksbuchstaben wählen → **Dismount**. Danach Stick per „Sicher entfernen" auswerfen.

> **Tipp:** Nutzt du denselben PC oft, kannst du nach dem Mounten eine Verknüpfung zu `Z:\start_webui.bat` auf den Desktop legen – damit du nicht jedes Mal durch die Ordner navigieren musst.

---

## Sicherheitshinweise (gilt für beide Methoden)

- **Passwort / Wiederherstellungsschlüssel nie auf dem Stick** ablegen (z. B. als `passwort.txt`). Sonst ist die Verschlüsselung wertlos.
- Schlüssel an einem zweiten, sicheren Ort aufbewahren: Papier oder Passwort-Manager. **Vergessen oder verloren = Daten für immer weg.**
- **API-Key rotieren:** Nach der Verschlüsselung bei OpenRouter einen neuen Key erzeugen und im Skript eintragen. Damit ist der alte, möglicherweise offen herumgelegene Key wirkungslos.
- **Optional, aber sauber:** Statt den Key fest ins `.bat` zu schreiben, könnte das Skript die Datei vor dem Start einmalig nach einem Schlüssel fragen. Das erhöht den Schutz bei gemeinsam genutzten PCs – bleibt aber auf Wunsch eine Übung für Fortgeschrittene.
