Chemenu 2.1.0 - deterministischer Wissenskompiler
CI / verify (push) Failing after 32s
Release / release (push) Successful in 38s

Chemenu kompiliert Rohnotizen zu einem verlinkten, quellengebundenen Wiki:
raw/ -> types/ + tools/ -> kb/ -> reports/. Was mechanisch ist, macht
tools/wikitool; was Urteil braucht, macht ein Agent unter Contracts, deren
Grenzen in Code durchgesetzt sind statt im Prompt.

Dieser Commit ist der Startpunkt der oeffentlichen Historie. Die vorherige
Entwicklung fand in einer privaten Instanz statt und ist nicht Teil dieses
Repositorys; ihre Erzaehlung steht vollstaendig in CHANGES.md, das mit 44
Eintraegen von 0.1.0 bis 2.1.0 erhalten geblieben ist.

Der mitgelieferte Korpus ist ein Testbett und eine Demo: 170 Seiten ueber den
Stack selbst - Gates, Lint, Versionierung, Suche, das Wiki-Muster. Er
dokumentiert das Werkzeug mit den eigenen Mitteln des Werkzeugs.

Lizenz: AGPL-3.0 fuer den Stack (tools/, types/), CC-BY-4.0 fuer die Inhalte.
Die Grenze zwischen beiden ist der Dateiplan, den dist export berechnet -
siehe NOTICE.
This commit is contained in:
2026-09-01 16:24:34 +02:00
commit 18ae28f918
368 changed files with 50628 additions and 0 deletions
+157
View File
@@ -0,0 +1,157 @@
---
type: types/entity.md
entity_type: technology
tags: [encryption, storage, security, dm-crypt, luke, linux]
created: 2026-07-31
modified: 2026-08-29
related: [Arch Linux, LVM, SSD TRIM, AUR, makepkg]
sources: [Source - Arch Linux Cheat Sheet]
confidence: 0.90
confidence_base: 0.90
provenance: sourced
summary: Schutz ruhender Daten über das Kernelmodul dm-crypt und die LUKS-Schlüsselverwaltung zur transparenten Verschlüsselung von Speichergeräten unter Linux.
---
# Disk Encryption
**Typ:** technology
## Beschreibung
Disk-Verschlüsselung bietet Schutz ruhender Daten auf Speichergeräten durch kryptographische Algorithmen. Unter Linux wird dies hauptsächlich durch das **dm-crypt** Kernel-Modul kombiniert mit **LUKS** (Linux Unified Key Setup) zur Schlüsselverwaltung implementiert. Diese Technologie schützt sensible Daten auf SSDs und HDDs vor unbefugtem Zugriff, besonders wichtig für Laptops, externe Laufwerke und Server mit physischen Zugriffsproblemen.
## Kerndaten
- **Zweck:** Verschlüsselung gesamter Festplatte und Partitionen
- **Status:** Aktiv, weit verbreitet
- **Kernel-Modul:** dm-crypt (device-mapper Crypto Target)
- **Schlüsselverwaltung:** LUKS (Linux Unified Key Setup)
- **Verschlüsselungsalgorithmen:** AES, XTS, Serpent, Twofish, Camellia
- **Hash-Algorithmen:** SHA-256, SHA-512, SHA-1 (Legacy)
## Komponenten
### dm-crypt
Das device-mapper Crypto Target, das transparente Verschlüsselung von Block-Geräten bietet. Es arbeitet auf der Block-Geräte-Ebene und verschlüsselt/entschlüsselt Daten im laufenden Betrieb.
**Hauptmerkmale:**
- Transparente Verschlüsselung/Entschlüsselung
- Unterstützt mehrere Verschlüsselungsmodi (ECB, CBC, XTS usw.)
- Funktioniert mit beliebigen Block-Geräten
- Kann gesamte Festplatten oder einzelne Partitionen verschlüsseln
### LUKS (Linux Unified Key Setup)
Eine Spezifikation für Disk-Verschlüsselung, die eine standardisierte Methode zur Verwaltung von Verschlüsselungsschlüsseln bietet. LUKS fügt einen Header zum verschlüsselten Gerät hinzu, das die Schlüssel-Slots, Metadaten und Checksummen enthält.
**Hauptmerkmale:**
- Mehrere Schlüssel-Slots (bis zu 8 in LUKS1, mehr in LUKS2)
- Schlüssel-Slot-Verwaltung (hinzufügen, entfernen, Passphrasen ändern)
- Header-Backup und -Wiederherstellung
- Unterstützung für Schlüsseldateien
- Anti-Forensik-Funktionen (LUKS2)
## Einrichtung und Konfiguration
### Erstellen einer verschlüsselten Partition
```bash
# Erstelle LUKS-Container
cryptsetup luksFormat /dev/sdX1
# Öffne (entsperre) die verschlüsselte Partition
cryptsetup open /dev/sdX1 crypted
# Erstelle Dateisystem auf entschlüsseltem Gerät
mkfs.ext4 /dev/mapper/crypted
# Hänge das Dateisystem ein
mount /dev/mapper/crypted /mnt
```
### Ändern der Größe verschlüsselter Partitionen
Bei Verwendung von LUKS mit LVM (häufige Konfiguration) ist der Arbeitsablauf zum Größenändern:
1. **Ändere die Größe des zugrunde liegenden Block-Geräts** (z.B. VM-Festplatte erweitern)
2. **Ändere die Größe des LUKS-Containers**
3. **Ändere die Größe des LVM Physical Volume**
4. **Ändere die Größe des LVM Logical Volume**
5. **Ändere die Größe des Dateisystems**
**Beispiel für ESXi/SCSI:**
```bash
# SCSI-Bus neu scannen, um erweiterte Festplatte zu sehen
echo "1" > /sys/class/block/sdb/device/rescan
# Prüfe Festplattengröße
fdisk -l /dev/xyz
# Ändere Größe des LUKS-Containers
cryptsetup status crypted
cryptsetup resize crypted
cryptsetup status crypted
# Ändere Größe des LVM PV (siehe [[LVM]])
pvresize /dev/mapper/crypted
```
## SSD-TRIM-Unterstützung
SSD TRIM ermöglicht es dem Betriebssystem, der SSD mitzuteilen, welche Blöcke nicht mehr in Gebrauch sind und verbessert damit Leistung und Haltbarkeit. Bei verschlüsselten Festplatten erfordert TRIM-Unterstützung eine sorgfältige Konfiguration.
### Aktivieren von TRIM auf verschlüsselten SSDs
**Wichtig:** Das Zulassen von discard (TRIM) auf verschlüsselten Geräten kann Informationen über verwendete Blöcke verraten. Bedenke die Sicherheitsauswirkungen.
**Optionen:**
1. **Erlaube discard auf LUKS-Ebene:**
```bash
cryptsetup reencrypt --encrypt --reduce-device-size 16M --allow-discards /dev/sdX
```
2. **Verwende fstrim auf gemountettem Dateisystem:**
```bash
fstrim /mount/point
```
3. **Konfiguriere periodisches TRIM:**
```bash
# Aktiviere systemd-Timer
systemctl enable fstrim.timer
systemctl start fstrim.timer
```
**Referenz:** https://wiki.archlinux.org/title/Dm-crypt/Specialties#Discard/TRIM_support_for_solid_state_drives_(SSD)
## Beziehungen
- **Verwendet mit:** [[Arch Linux]] (häufige Distribution für Verschlüsselung)
- **Ergänzt:** [[LVM]] (Logical Volume Manager)
- **Verbessert durch:** [[SSD TRIM]] (Leistungsoptimierung)
und anderen Systemen
Ansatz
## Sicherheitsaspekte
### Best Practices
1. **Verwende starke Passphrasen:** Lange, komplexe Passphrasen mit hoher Entropie
2. **Backup LUKS-Header:** `cryptsetup luksHeaderBackup /dev/sdX1 --header-backup-file header.img`
3. **Mehrere Schlüssel-Slots:** Speichere Backup-Schlüssel in separaten Slots
4. **Schlüsseldateien:** Erwäge Schlüsseldateien für headless-Systeme
5. **Vermeide discard:** Für maximale Sicherheit, deaktiviere TRIM auf verschlüsselten Geräten
### Einschränkungen
- **Schützt nicht vor:** Evil-Maid-Angriffen, Keyloggern, Schulter-Blicken
- **Leistungs-Overhead:** Verschlüsselung/Entschlüsselung fügt CPU-Overhead hinzu (typischerweise 5-10%)
- **Wiederherstellung:** Verlorene Passphrase = verlorene Daten (kein Hintertür)
## Siehe auch
- [[LVM]] - Logical Volume Manager
- [[SSD TRIM]] - TRIM-Optimierung für SSDs
- [[Arch Linux]] - Distribution mit hervorragender Verschlüsselungsunterstützung
- [[Source - Arch Linux Cheat Sheet]]
- https://wiki.archlinux.org/title/Dm-crypt
- https://wiki.archlinux.org/title/LUKS
- https://gitlab.com/cryptsetup/cryptsetup