Was ist eCryptfs und wie funktioniert es?

Heutzutage, da Cyberangriffe immer häufiger auftreten, scheuen die Menschen keine Mühen, ihre vertraulichen Daten zu schützen. Und die Linux-Plattform bietet eine Vielzahl von Tools, die sie mithilfe der Verschlüsselung vor neugierigen Blicken schützen. Wer nicht den gesamten Laufwerksinhalt verschlüsseln möchte, kann sich für eCryptfs entscheiden, ein kryptografisches Dateisystem, das den selektiven Schutz bestimmter Dateien oder Verzeichnisse ermöglicht. Hier finden Sie kurze Informationen zu dieser Verschlüsselungssoftware und können sich mit ihrer Funktionsweise vertraut machen.

Letzte Aktualisierung:
20. Juli 2023

Lesezeit: 4 min

Was ist eCryptfs?

eCryptfs (Enterprise Cryptographic Filesystem) ist die gebräuchlichste Technologie für die Verschlüsselung auf Dateiebene unter Linux. Anstelle des gesamten Blockgeräts verschlüsselt sie den Inhalt einzelner Dateien, während diese auf das Laufwerk geschrieben oder von diesem gelesen werden, und speichert ihn auf dem vorhandenen regulären Dateisystem, wie ext4, XFS, Btrfs, JFS usw. Sie unterstützt auch einige vernetzte Dateisysteme wie NFS, CIFS und andere.

eCryptfs basiert auf Cryptfs von Erez Zadoks und dem FiST-Framework für gestapelte Dateisysteme. Es wurde ursprünglich im Jahr 2006 von Michael Halcrow und dem IBM Linux Technology Center veröffentlicht und wird heute von Dustin Kirkland und Tyler Hicks von Canonical Ltd, dem Unternehmen, das Ubuntu Linux betreibt, gepflegt.

Es ist möglich, die Verschlüsselung für eine gewünschte Datei oder einen gewünschten Ordner zu aktivieren. eCryptfs verschlüsselt sie/ihn mit einem eindeutigen, zufällig generierten Dateiverschlüsselungsschlüssel (auch als "Mount-Passphrase" bekannt). Standardmäßig ist dies eine 32-stellige Hexadezimalzeichenfolge. Aus Sicherheitsgründen wird der Benutzer aufgefordert, seine Sicherungskopie aufzubewahren.

alt

Der Dateiverschlüsselungsschlüssel selbst wird in verschlüsselter Form gespeichert. Der Vorgang seiner Verschlüsselung wird als "Verpackung" ("Wrapping" auf Englisch) bezeichnet. Dies erfolgt mithilfe eines separaten "verpackenden" Verschlüsselungsschlüssels (manchmal auch als "Master-Schlüssel" bezeichnet), der auf dem Passwort des Benutzers basiert (alternativ auch als "Login-Passphrase" bezeichnet). Der "verpackenden" Schlüssel wird ebenfalls gehasht, um eine 8-Byte-"Signatur" zu erhalten, die ihn eindeutig identifiziert.

Der resultierende verpackte Schlüssel wird in den Verschlüsselungsmetadaten gespeichert, die direkt dem Header der Datei hinzugefügt werden. Die "Signatur" wird ebenfalls im Header gespeichert und dient dazu, den richtigen "verpackenden" Schlüssel zu finden, der den Dateiverschlüsselungsschlüssel für die Entschlüsselung der jeweiligen Datei "entpacken" kann. Beide werden auch in der Datei "wrapped-passphrase" des jeweiligen ".ecryptfs"-Ordners gespeichert.

alt

Somit ist jede mit eCryptfs verschlüsselte Datei eigenständig und kann mit einem eindeutigen Verschlüsselungsschlüssel verknüpft sein. Solcher Schlüssel ist symmetrisch, was bedeutet, dass er den Inhalt der Datei sowohl verschlüsselt als auch entschlüsselt. Seine Länge hängt von der verwendeten Verschlüsselung ab, wobei die Standard- und empfohlene Einstellung AES-128 ist.

Optional kann auch der Name der Datei verschlüsselt werden, indem ein von derselben oder einer zusätzlichen Passphrase abgeleiteter Dateinamen-Verschlüsselungsschlüssel gebraucht wird.

Der beschriebene Mechanismus öffnet den Weg für eCryptfs:

  • um verschlüsselte Dateien und Ordner zusammen mit unverschlüsselten Dateien und Ordnern auf demselben Volumen zu speichern;

  • den Inhalt und Namen derselben Datei mit unterschiedlichen Passwörtern zu verschlüsseln;

  • um jedes Passwort zur Entschlüsselung zu akzeptieren, da möglicherweise eine Datei vorhanden ist, die mit einem bestimmten Passwort übereinstimmt. Wenn keine Übereinstimmung auftritt, bleibt die Datei einfach verschlüsselt.

Wie wird es auf einem Gerät aktiviert?

eCryptfs wird vom Kernel seit Version 2.6.19 als ecryptfs-Modul unterstützt. Derzeit dient es als Standardmethode zur Verschlüsselung des Home-Ordners des Benutzers in vielen Linux-Distributionen, darunter Ubuntu und ChromeOS.

Darüber hinaus wird eCryptfs häufig zur Verschlüsselung freigegebener Ordner auf NAS-Geräten verschiedener Anbieter wie Synology, QNAP, Asustor, TerraMaster und anderen eingesetzt. Es ist jedoch zu beachten, dass die Implementierungen erhebliche Unterschiede aufweisen können, die vom zugrunde liegenden System definiert werden.

Es gibt verschiedene Arten von Szenarien, in denen die eCryptfs-Verschlüsselung zum Einsatz kommt:

  • Der Benutzer kann sein /home-Verzeichnis während der Neu-/Installation des Systems verschlüsseln.

  • eCryptfs kann manuell aktiviert werden, indem das ecryptfs-utils-Paket installiert und dann die Verschlüsselung mit einer der verfügbaren Methoden initiiert wird (Ausführung des Mount-Befehls neben dem Flag -t und der Option encryptfs, mithilfe des Konfigurationstools ecryptfs-setup-private und anderer, abhängig vom jeweiligen System).

  • Auf unterstützten NAS-Geräten ist es möglich, einen neuen oder vorhandenen freigegebenen Ordner zu verschlüsseln, indem bei der Erstellung/Bearbeitung des angegebenen Ordners das entsprechende Kontrollkästchen aktiviert wird.

Die beschriebene Technologie wird für die Datenwiederherstellung und den Datenzugriff von den folgenden Softwareprodukten unterstützt: