dm-crypt

aus Wikipedia, der freien Enzyklopädie

Wechseln zu: Navigation, Suche

dm-crypt ist ein Kryptographie-Modul des Device Mappers im Linux-Kernel. Man kann mit dm-crypt Daten mit verschiedenen Algorithmen ver- und entschlüsseln, dies wird meist auf Partitionen oder andere Gerätedateien (engl. Devices) angewandt. Es wird hier also eine zusätzliche Schicht zwischen (verschlüsselten) (Roh-)Daten und dem Dateisystem aufgebaut. Für den Benutzer geschieht dies vollkommen transparent. dm-crypt eignet sich so zur Festplattenverschlüsselung von ganzen Partitionen oder Festplatten. dm-crypt unterstützt eine Vielzahl von Verschlüsselungsalgorithmen, da es die Crypto API des Linuxkernels nutzt.

Einen anderen Ansatz verfolgt die (transparente) Dateiverschlüsselung, bei der das Dateisystem für die Ver- und Entschlüsselung zuständig ist.

Inhaltsverzeichnis

[Bearbeiten] Anwendung

  • Festplattenverschlüsselung zum Schutz sensibler Daten gegen Diebstahl (insbesondere für mobile Geräte wie Notebooks).
  • Schutz gegen Datenwiederherstellung beim Verkauf oder der Entsorgung von Datenträgern. Hier wären sonst aufwändige Verfahren nötig, um die Daten sicher zu löschen, etwa das Überschreiben oder die physische Zerstörung des Datenträgers.

[Bearbeiten] Erweiterung mit LUKS

Eine gängige Erweiterung ist LUKS („Linux Unified Key Setup“), welche die verschlüsselten Daten um einen zusätzlichen Header erweitert, in dem Metadaten, sowie bis zu acht Schlüssel gespeichert werden. Vorteile gegenüber „reinem“ dm-crypt sind: ein standardisiertes Format, Informationen über die Art der Verschlüsselung im Header, Vergabe von bis zu acht Schlüsseln sowie die Änderung von Schlüsseln. Diese Funktionen wären mit dm-crypt alleine nicht möglich.

Durch den Header ist bei LUKS der nutzbare (verschlüsselte) Speicherplatz im Container geringer als die Containergröße, während bei reinem dmcrypt beide Größen identisch sind.

Da der Header, den LUKS in seine Partition oder Container schreibt, eine Klartext-Kennung enthält, ist ein automatisches Erkennen von LUKS-Partitionen und -Containern möglich. Dies ermöglicht einerseits ein komfortables Mounten von LUKS-Partitionen (z.B. von Boot- oder Installationsskripten), andererseits erregt diese Kennung auch die Aufmerksamkeit von Angriffsprogrammen, und sie verhindert zudem, dass der Einsatz von LUKS glaubhaft abgestritten werden kann. Im Header ist außerdem im Klartext der verwendete Verschlüsselungs- und Hash-Algorithmus sowie die Anzahl und Größe der verwendeten Schlüssel vermerkt, was einen Angriff ebenso erleichtern kann.

[Bearbeiten] Nachteile

[Bearbeiten] Datendurchsatz

Bedingt durch den zusätzlichen Rechenaufwand der Verschlüsselungsalgorithmen entstehen Performanceeinbußen, der Datendurchsatz sinkt gegenüber unverschlüsselten Datenträgern. Eine Verbesserung kann durch schnellere Prozessoren, Mehrkernprozessoren, der Optimierung der Algorithmen auf die jeweilige Architektur oder einer Implementierung als Hardwareverschlüsselung erreicht werden.

[Bearbeiten] Kryptographische Angreifbarkeit

Auf mit dm-crypt verschlüsselte Daten sind teilweise kryptographische Angriffe denkbar:[1]

[Bearbeiten] Alternativen

Für Linux gibt es beispielsweise LUKS und TrueCrypt als Alternativen. Mit FreeOTFE und TrueCrypt existieren auch kompatible Implementierungen für Microsoft Windows und Mac OS X.

[Bearbeiten] Literatur

  • Clemens Fruhwirth, Markus Schuster: Geheime Niederschrift. Festplattenverschlüsselung mit DM-Crypt und Cryptsetup-LUKS: Technik und Anwendung In: Linux-Magazin 08/2005. Linux New Media AG, S. 28-36, ISSN 1432-640X, online verfügbar
  • Frank Becker und Konrad Rosenbaum: „Plattenschlüssel – Crypto-Dateisysteme auf Linux“, Vortrag auf Chemnitzer Linuxtag 2005, online verfügbar (PDF, 400 kB)
  • Christian Ney, Peter Gutmann: Löchriger Käse. Verschlüsselte Filesysteme unter Linux In: Linux-Magazin 10/2006. Linux New Media AG, S. 36-44, ISSN 1432-640X, online verfügbar

[Bearbeiten] Weblinks

[Bearbeiten] Einzelnachweise

  1. Linux hard disk encryption settings, englisch
Persönliche Werkzeuge
Buch erstellen
Andere Sprachen