Dateiverschlüssellung

Bei der Datenverschlüsselung auf Datenträgerbasis (Datei-, Verzeichnis-, Partitions- oder Laufwerksverschlüsselung) gibt es erst seit NetBSD 2.0 mit CGD eine freie Lösung, die man als sicher bezeichnen kann. Alle unter Linux verfühgbaren Dateiverschlüsselungsmöglichkeiten haben ihre Schwächen, die mehr oder weniger Kritisch sind, wobei TrueCrypt auch recht gut sein soll (wobei TrueCrypt nicht wirklich frei ist und nicht mehr weiterentwickelt wird - VeraCrypt ist hier als Alternative zu nennen).

Da die wenigsten (darunter auch ich) längere Zeit NetBSD auf ihrem Desktop-Rechner betreiben wollen (ich habe es ein Jahr probiert), kommen wir am Ende meistens doch wieder zu Linux als Desktop- und Laptop-Betriebssystem zurück.

Aus diesem Grunde verwende ich auch nur eine (nicht die schlechteste) Dateiverschlüsselungsmöglichkeit unter Linux.

CGD, die Dateiverschlüsselung von NetBSD, möchte ich auch kurz vorstellen, allerdings habe ich sie nie eingesetzt.

In ZFS soll eine native Verschlüsselungsmöglichkeit implementiertwerden, die es aber auch unter Solaris nicht gibt. Sollte sie unter Solaris verfügbar sein, dann wird es leider noch eine ganze Zeit dauern bis sie unter FreeBSD verwendbar ist. Aus diesem Grund ist die Verschlüsselung mit ZFS auf nicht absehbare Zeit für mich uninteressant.

Sinnvoll sind (meiner Meinung nach) nur zwei Verschlüsselungsalgorithmen, da alle anderen momentan verfügbaren relativ unsicher sind:

  1. serpent (sehr sicher und nur 3% langsamer als der US-Standard AES/Rijndael)
    • serpent ist der sicherste Cipher in CryptSetup - ganzes Dateisystem verschlüsseln) → Linux
  2. twofish (sicher und schnell)
    • twofish ist der sicherste Cipher in GPG - einzelne Dateie verschlüsseln) → Linux + FreeBSD
  3. blowfish (TrueCrypt verwendet Blowfish mit 16 Runden im LRW-Modus)
    • blowfish ist der sicherste Cipher in openSSL - einzelne Dateie verschlüsseln) → Linux + FreeBSD

1998/1999 stellten sich Twofish, Serpent, Rijndael, MARS und RC6 dem Ausscheid zum AES (Advanced Encryption Standard). MARS, Twofish und Serpent wurden als "hoch-sicher" eingestuft, während Rijndael und RC6 "nur" die Bewertung "hinreichend-sicher" erhielten.

Der Advanced Encryption Standard (AES) ist ein symmetrisches Kryptosystem, das als Nachfolger für DES bzw. 3DES im Oktober 2000 vom National Institute of Standards and Technology (NIST) als Standard bekannt gegeben wurde. Nach seinen Entwicklern Joan Daemen und Vincent Rijmen wird er auch Rijndael-Algorithmus genannt (gesprochen wie dt. "Reindahl").

Und diese Bewertung liegt mittlerweile auch schon über 10 Jahre zurück… aus diesem Grund betrachte ich das beste auch nicht mehr als gut genug… aber etwas besseres gibt es noch nicht.

Wenigstens haben wir mit Serpent einen etwas besseren Algorithmus als AES, der aber nur 3% langsamer ist. Den Geschwindigkeitsnachteil wird man wohl in der Praxis nie bemerken und selbst bei Benchmarks mit der Lupe suchen müssen.