Open Source im professionellen Einsatz
Linux-Magazin 08/2005

Festplattenverschlüsselung mit DM-Crypt und Cryptsetup-LUKS: Technik und Anwendung

Geheime Niederschrift

,

Wer den Inhalt seiner Festplatten vor Dieben oder dem kontrollsüchtigen Chef verbergen will, braucht Verschlüsselungssoftware. Linux hat kürzlich auf diesem Gebiet viel dazugelernt: DM-Crypt und Cryptsetup-LUKS sind die neuen Meister im Hüten von Geheimnissen.

512

Im Hintergrund ein kratzendes Geräusch, dazu eindringlich pulsierende Musik. Ein grüner Laserstrahl aus einem silbernen Rohrstück trifft auf das Glas der Balkontür und nagt leise zischend ein rundes Loch hinein. Schnitt, nächste Szene: Die Filmheldin im schwarzen Catsuite schiebt eine knallgelbe Diskette in das Laufwerk eines PC und versteckt sich unter dem Schreibtisch. Jetzt kann der Zuschauer einen Blick auf den Monitor erhaschen. Dort blitzt ein dicker roter Balken: "Cracking".

Das ist Verschlüsselung à la Hollywood. Doch die Realität sieht anders aus. Mit starker Kryptographie, wie sie unter Linux beispielsweise DM-Crypt für Festplattenpartitionen einsetzt, müsste die Filmheldin zig Millionen Jahre unter dem Schreibtisch kauern, bevor sich der rote Balken ihrer Cracking-Software in ein grünes "Success" verwandelt.

Dieser Artikel gibt einen Einblick in die Technologie hinter DM-Crypt und seinem neuen Management-Tool LUKS (Linux Unified Key Setup) und zeigt, wie man sie einsetzt. Das Kernelmodul »dm-crypt« verschlüsselt Festplattenpartitionen auf Blockdevice-Ebene. Für die Applikation bleibt der Vorgang transparent, solange der Benutzer den Inhalt freigegeben hat.

DM-Crypt verschlüsselt das so genannte Backing-Device (die echte Festplatte) und gibt den Klartextinhalt über ein virtuelles Blockdevice unter »/dev/mapper« frei. Dieses Device kann der Benutzer wie ein herkömmliches Blockdevice verwenden, um darin ein Filesystem zu erstellen und zu mounten.

Auf dem Weg zu Cryptsetup

DM-Crypt setzt auf einem flexiblen Layer namens Device Mapper auf. Alle Device-Mapper-Module erhalten ihre Konfiguration über DM-Tables - einfache Textdateien, die angeben, wie der Device Mapper Zugriffe auf die Regionen der virtuellen Platte verarbeiten soll. Das Programm »dmsetup« liest diese Textdateien und übergibt ihre Information über »ioctl()«-Aufrufe an den Kernel.

Das DM-Table-Format ist für DM-Crypt unnötig unhandlich. Die Verschlüsselungssoftware erwartet den Key als Hex-Zeichenkette einer fixen Länge. Damit chiffriert das Modul die Daten des Blockdevice. Den Schlüssel in DM-Table-Dateien permanent abzulegen wäre aber ähnlich schlau wie einen Haustürschlüssel außen an die Türklinke zu hängen. Vielmehr ist es nötig, den Key vor jedem Mounten neu zu erstellen.

Da niemand allmorgendlich - vielleicht noch vor dem dritten Schluck Kaffee - bis zu 32 Hex-Ziffern fehlerfrei aus dem Gedächtnis tippen will, unterstützt ihn »cryptsetup« dabei. Dieses Tool leitet aus einem (einfacheren) Passwort einen kryptographischen Key ab und übergibt ihn dem Kernel. Abbildung 1 zeigt die Umgebung, in der Cryptsetup arbeitet.

Passwort und Schlüssel

Zwei wichtige Bereiche lassen sich bei Cryptsetup parametrisieren: Die Schlüsselgenerierung und das Verschlüsselungsverfahren. Ersteres bestimmt, wie Cryptsetup aus dem Passwort des Benutzers einen Schlüssel berechnet. Üblicherweise verwendet es einen Hash-Algorithmus. Das gibt dem Anwender die Freiheit, ein beliebig langes Passwort zu wählen. Der Hash komprimiert die Information immer auf eine bestimmte Anzahl von Bytes. Abbildung 1 zeigt Cryptsetup mit seinen Defaultwerten: Das Hash-Verfahren Ripemd-160 erzeugt einen 256-Bit-Schlüssel.

Beim Verschlüsselungsverfahren sind zwei Parameter zu wählen: Algorithmus und Modus. Cryptsetup übergibt diese Parameter zusammen mit dem abgeleiteten Schlüssel an den Kernel. Dort koordiniert das DM-Crypt-Modul den weiteren Ablauf. Zur Verschlüsselung greift es auf das bewährte Crypto-API zu.

Linux-Magazin kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Löchriger Käse

    Ob die aktuellen Crypto-Dateisysteme unter Linux wirksam schützen, hängt von den kryptographischen Qualitäten ab und davon, ob ihre Bedienung den Admins und Anwendern schmeckt. Oftmals sorgen Programmierfehler sogar für zusätzliche Sicherheitslöcher. Dieser Test deckt Schwächen auf.

  • Mobiler Datentresor

    Auf einem Notebook das Homeverzeichnis verschlüsseln ist nur die halbe Miete: Auch aus Log- und Konfigurationsdateien ziehen Diebe und unehrliche Finder Rückschlüsse. Schützen Sie mit DM-Crypt und LUKS die gesamte Festplatte vor fremden Blicken - das kann aber keine Distribution out of the Box.

  • Bitparade

    Wer die eigenen Datenbestände vor unbefugtem Zugriff schützen will, verschlüsselt seine Festplatten oder einzelne Partitionen. Außer dem plattformübergreifenden Truecrypt empfiehlt sich DM-Crypt, aber auch Ecryptfs oder das Windows-Tool Disk Cryptor haben einiges zu bieten.

  • Scheiben dicht

    Die verschlüsselte Festplatte im Server bleibt wirkungslos, wenn die wertvollen Daten auf CDs oder DVDs doch in die Hände von Spionen tröpfeln. Wegen der besonderen CD- und DVD-Dateisysteme ist es kniffelig, diese Medien mit einem wasserdichten und transparenten Crypto-Filesystem auszustatten.

  • Tooltipps

    Im Kurztest: Fstools 20160322, Sup 1.1, Mupdf 1.8, Cryptsetup 1.7.1, Netjukebox 6.09.2, Pass 1.6.5

comments powered by Disqus

Ausgabe 08/2016

Artikelserien und interessante Workshops aus dem Magazin können Sie hier als Bundle erwerben.