Dass die Verschlüsselung von Daten der Erhaltung einer Privatsphäre dient, bemerkt man spätestens, wenn ein USB-Stick verloren geht. Wird ein Laptop gestohlen, möchte man die private Fotosammlung sicher nicht im Internet sehen (abgesehen von den Fotos, die man eh' schon Facebook & Co. hochgeladen hat).
Investigative Journalisten, Rechtsanwälte und andere berufliche Geheimnisträger haben das Recht und die Pflicht, Daten über ihre Mandanten zu schützen. Sie sollten sich frühzeitig Gedanken über ein Konzept zur Verschlüsselung machen. Es ist wirklich ärgerlich, wenn die Rote Hilfe einen unverschlüsselten Datenträger mit Mitgliederdaten verliert. Das kann Konsequenzen haben!
Als Whistleblower sind besondere Anforderungen an die Datensicherheit zu stellen. Neben der sicheren Aufbewahrung kommt es auch darauf an, keine Spuren in Daten und auf den Rechnern zu hinterlassen. Im Fall Mannings konnten Forensiker viele Daten wiederherstellen.
Die Beispiele zeigen, dass unterschiedliche Anforderungen an eine Verschlüsselung bestehen können. Bevor man wild anfängt, alles irgendwie zu verschlüsseln, sollte man sich Gedanken über die Bedrohung machen, gegen die man sich schützen will:
Backups auf externen Medien enthalten wichtige, private Daten und sollten daher verschlüsselt sein. Dabei sollte die Wiederherstellung auch bei totalem Datenverlust möglich sein.
Es ist nicht sinnvoll, die Daten mit einem OpenPGP-Schlüssel zu chiffrieren oder Keyfiles zu verwenden, die nach einem Crash evtl. nicht mehr verfügbar sind.
Daten in der Cloud sollten ebenfalls transparent verschlüsselt werden. Außerdem sollte die Verschlüsselung die Synchronistion geänderter Dateien im Hintergrund nicht behindern.
Container-basierte Lösungen wie dm-crypt/LUKS oder Veracrypt sind für Daten in der Cloud weniger geeignet, da man nicht bei jeder Änderung den gesamten Container hochladen möchte. Besser geeignet sind Verzeichnis-basierte Ansätze wie ecryptfs (Linux) oder Cryptomator.
Passwortmanager wie KeepassXC können nicht nur Passwörter speichern sondern sind als hierachisch organisierten, verschlüsselte Datenbanken für viele sensible Textdaten geeignet.
Falls die Standardfelder nicht ausreichen, kann man für jedem Datensatz zusätzliche Felder definieren und auch Dateien als BLOB einfügen.
Für alle Schreib- und Leseoperationen wird das Verzeichnis B verwendet, wo man die Daten unverschlüsseltet sieht, sobald Cryptomator oder …cryptfs gestartet wurden.
CryFS hat nach Ansicht der Entwickler noch nicht die Stabilität einer Version 1.0 erreicht, ist aber schon nutzbar. Es arbeitet ähnlich wie ecryptfs oder Cryptomator mit zwei Verzeichnissen.
Es werden aber nicht nur die Dateien verschlüsselt sondern auch die Verzeichnisstruktur und Metadaten der Dateien wie Dateigröße verborgen. In dem Verzeichnis mit den verschlüsselten Dateien sieht man nur verschlüsselte Blöcke identischer Größe.
dm-crypt/LUKS arbeitet Container-basiert. Es ist zuerst ein Container fester Größe zu erstellen, der dann wie ein Datenträger in das Dateisystem eingebunden werden kann. Als Container können Partitionen auf Datenträgern (USB-Sticks, Festplatten) oder Dateien genutzt werden.
Ein Container nimmt immer die gleiche Menge an Platz ein, egal ob leer oder voll. Ist der Container verschlossen, kommt niemand an die dort lagernden Daten heran. Mit einem Schlüssel kann der Container geöffnet werden (gemounted: in das Dateisystem eingefügt) und jeder, der an einem offenen Container vorbeikommt, hat Zugriff auf die dort lagernden Daten. Als Schlüssel dient eine Passphrase und/oder Schlüsseldatei(en).
Der Zugriff auf Dateien innerhalb des geöffneten Containers erfolgt mit den Standardfunktionen für das Öffnen, Schließen und Löschen von Dateien. Auch Verzeichnisse können angelegt bzw. gelöscht werden. Die Ver- und Entschlüsselung ist transparent.
Veracrypt arbeitet wie dm-crypt/LUKS mit Containern. Zusätzlich bietet es mit versteckten Volumes eine Art doppelter Boden für den verschlüsselten Container. Der Zugriff auf diesen Bereich ist mit einem zweiten Schlüssel geschützt. Öffnet man den Container mit dem ersten Schlüssel, erhält man Zugriff auf den äußeren Bereich. Verwendet man den zweiten Schlüssel zum Öffnen des Containers, erhält man Zugriff auf den Inhalt im doppelten Boden.
Während ein Container leicht als verschlüsselter Bereich erkennbar ist, kann der doppelte Boden innerhalb eines Containers ohne Kenntnis des zweiten Schlüssels nicht nachgewiesen werden. Ist man zur Herausgabe der Schlüssel gezwungen, könnte man versuchen, nur den Key für den äußeren Container auszuhändigen und die Existenz des doppelten Bodens zu leugnen.
Ob es plausibel ist, die Existenz des doppelten Bodens zu leugnen, hängt von vielen Faktoren ab. Zeigt z.B. die Historie der geöffneten Dokumente einer Textverarbeitung, dass vor kurzem auf einen verschlüsselten Bereich zugegriffen wurde, und man präsentiert einen äußeren Container, dessen letzte Änderung Monate zurück liegt, trifft man wahrscheinlich auf einen verärgerten Richter. Auch der Such-Index verschiedener Programme für die Indexierung der Dokumente auf dem lokalen Rechner liefern möglicherweise Hinweise auf den versteckten Container.
Krypto-Algorithmen: Veracrypt bietet verschiedene Verschlüsselungsalgorithmen. Man kann bei einem Veracrypt Container von außen aber nicht erkennen, welche Cipher verwendet wurden. Beim Öffnen des Containers muss man alle Varianten durchprobieren bis eine passt.
Auch ein Angreifer, der mit Brute Force das Passwort erraten will, müsste eigentlich immer alle Varianten ausprobieren. Die gängigen Tools zum Knacken eines Veracrypt Containers wie Elcomsoft u.ä. verwenden häufig eine Abkürzung und probieren nur die Default Einstellung AES. Veracrypt Container mit den Default Einstellung für Cipher lassen sich 100-200x schneller mit Brute-Force Angriffen knacken als Container mit anderen Ciphern, schreibt Elcomsoft.
Um den maximal möglichen Schutz bei Veracrypt zu erreichen, sollte man beim Erstellen eines Containers also immer einen anderen Cipher für die Verschlüsselung auswählen und nicht den Defaultwert übernehmen. Dann muss auch ein Angreifer den langsamen Weg probieren alle Cipher testen. Welchen Cipher man wählt, ist dabei egal, Hauptsache nicht AES.