auf Facebook teilen auf Google+ teilen auf LinkedIn teilen auf Pinterest teilen twittern
Werbehinweise
» Startseite » Software » Security » TrueCrypt 

Security

TrueCrypt

Nach einer mehrstündigen Suche im Web, nach Tipps, Anleitungen, etc. Ausschau haltend bin ich letztenendes bei TrueCrypt gelandet. Einer der letzten Suchbegriffkombinationen war »file encryption cross plattform transparent«, damit ist eigentlich ganz gut umrissen, was ich gesucht habe:

  • Container sollen angelegt werden können
  • Die Container sollen einfach auf eine CD/DVD gebrannt werden können
  • Die Daten sollen sowohl unter Linux (Fileserver) als auch unter Windows (Client für den Fall der Fälle) lesbar sein
  • idealerweise freie und kostenlose Software

Es gab einige kommerzielle Lösungen, jedoch mit nur mäßiger bzw. experimenteller Unterstützung für Linux. Andere kostenfreie Lösungen waren lediglich für Windows-PCs gedacht gewesen.

Die einzige Software, welche sowohl unter Windows als auch unter Linux verfügbar war: TrueCrypt.

Erste Schritte/Konzept

TrueCrypt kann auf der Website www.truecrypt.org heruntergeladen werden. Für diese Anleitung habe ich die Version 4.1 verwendet, sowohl unter Windows als auch unter Linux.

Hinweis im Dezember 2018

Die Anleitung habe ich in ihrer ersten Version im Frühjahr 2006 geschrieben. Damals war die Version 4.1 von TrueCrypt noch aktuell und TrueCrypt wurde bis Februar 2012 kontinuierlich verbessert und bis zur Version 7.1a auf vielen Seiten ausdrücklich empfohlen.

Mit der Version 7.2 wurde im Mai 2014 die Möglichkeit zum Verschlüsseln entfernt und das Programm ausschließlich auf das Entschlüsseln früher angelegter Container und verschlüsselter Partitionen reduziert. TrueCrypt wurde seitdem auf keiner der zahlreichen Plattformen weiterentwickelt.

Als Alternative zu TrueCrypt wird VeraCrypt empfohlen. VeraCrypt kann alte TrueCrypt-Verschlüsselungen entschlüsseln und bietet ein eigenes, verbessertes Containerformat an.

Die aktuelle Version vom 12. September 2018 trägt die Versionsnummer 1.23. VeraCryt gibt es für Windows, MacOS, Linux und FreeBSD.

Zunächst das Konzept von TrueCrypt bzw. der transparenten Datenverschlüsselung allgemein.

TrueCrypt kann entweder komplette Partitionen verschlüsseln, oder es werden sogenannte »Container« angelegt. Bei einem Container handelt es sich um eine Datei, welche nur von TrueCrypt und mit dem richtigen Passwort geöffnet werden kann. Ich habe die Verwendung von Containern vorgezogen, da ich so die Daten im Verschlüsselten Zustand auf eine CD oder auf eine DVD brennen kann.

Unabhängig davon ob nun eine komplette Partition oder ein Container verschlüsselt worden sind, der Ablauf ist immer identisch: Die Partition/der Container sind mit TrueCrypt zu »mounten«, also in das bestehende Dateisystem einzuhängen. Unter Windows wird der Partition/dem Container ein Laufwerksbuchstabe zugewiesen, unter Linux kann der Container wie gewohnt gemountet werden.

Wie sicher ist TrueCrypt?

Die Verschlüsselung der Partitionen/Container kann folgenden Algorithmen erfolgen: AES, Blowfish, Twofish, CAST5, Serpent und Triple DES. Auch eine Kaskadierung der genannten Algorithmen ist möglich, die Kaskaden sind jedoch von TrueCrypt vorgegeben.

TrueCrypt bietet mit dem sogenannten »plausible deniability«-Konzept eine weitere Sicherheit. Hierbei wird in eine bestehende Partition/einen bestehenden Container ein weiterer versteckt eingebunden. Wird man nun gezwungen die Verschlüsselung aufzuheben, bekommt der Uneingeweihte nur den Inhalt des ersten Containers zu sehen. Der zweite samt Inhalt bleibt verborgen.

Die wichtigen, vertraulichen Daten sind im scheinbar freien Speicherbereich des entschlüsselten Bereichs gespeichert.

Wichtiger Hinweis

Achtung! Die Daten sind selbstverständlich im gemounteten Zustand »verwundbar«. Sie können mit Viren/Würmern/Trojanern infiziert, ausgelesen oder verändert werden.

Verschlüsselte Bereiche auf einer Festplatte dienen nicht dazu, die Daten vor solchen Angriffen zu schützen. Im Falle eines unberechtigten Zugriffs, beispielsweise durch einen Festplattendiebstahl oder dem Einlegen einer Knoppix-CD um »mal bischen auf die Festplatte zu schauen«, sind die Daten sicher bzw. für den Angreifer unbrauchbar.

Gemountet sind die Daten ebenso unsicher wie der Rest der Maschine. Daher sind andere Sicherheitskonzepte wie Anti-Virus-Software, Firewall, Zugriffsbeschränkungen nicht etwa unerlässlich, sondern trotz Verschlüsselung sinnvoll und notwendig.

Wie funktioniert es?

Unter Windows ist eine GUI vorhanden, welche Schritt für Schritt durch das Anlegen einer Partition bzw. eines Containers führt. Die englischsprachige Anleitung (als .pdf im Downloadbereich der TrueCrypt-Website zu finden) erklärt dies sehr ausführlich. Um zu zeigen, dass es mit der deutschen Sprachdatei überhaupt kein Problem ist, selbst einen Container anzulegen, hier ein paar Bilder vom Ablauf (einfach auf das Bild klicken um es in Originalgröße angezeigt zu bekommen):

TrueCrypt einfach installieren und dann Starten. Nach dem Doppeklick auf das Icon präsentiert sich das Programm wie auf dem hier abgebildeten Screenshot. Um einen neuen Container anzulegen, einfach auf Volume erstellen klicken. Im folgenden Fenster wird man gefragt ob man ein einfaches Volume oder ein sogenanntes »hidden Volume« entsprechend des bereits erwähnten »plausible deniability«-Konzepts erstellen will. Ich habe mich für ein normales Volume entschieden und demnach mit Weiter bestätigt.
Nun noch den Speicherort des Volumes auswählen. Entweder eine Datei für einen Container oder eine komplette Partition. Für den Container kann eine Datei ausgewählt werden, der Speicherort ist zweitrangig, da Dateien nunmal einfach woandershin kopiert oder verschoben werden können. Wiederum nach der Auswahl mit Weiter bestätigen. Nun wird man nach der Verschlüsselungsart bzw. der Verschlüsselungsstärke (Kaskadierung) gefragt. Den gewünschten Algorithmus bzw. die gewünschte Kombination als Kaskadierung auswählen und mit Weiter bestätigen.
Ein Container muss nicht zwangsläufig eine komplette Partition ausfüllen. Ich habe für diese Anleitung einen kleinen Container mit lediglich 10 MB Größe angelegt. Mehr als groß genug für ein Passwortarchiv und/oder GnuPG-Keyrings. Hat man die gewünschte Größe angegeben geht es mit Weiter weiter. Die obligatorische Frage nach dem Passwort. Bezüglich des Passworts habe ich mich ja schon an dieser Stelle zur Genüge ausgelassen. Nach der Eingabe mit Weiter bestätigen.
Nun wird der Container formatiert. Da ich auch von Linux aus auf den Container zugreifen will, habe ich ihn mit FAT formatiert. Natürlich fehlen in diesem Fall der Datei jegliche linuxspezifischen Zugriffsrechte, jedoch werden in solchen Containern vermutlich nur Nutzdaten und keine Programme und Scripte gesichert. Bei einem 10 MB Container ist das Formatieren sehr schnell erledigt. Bei größeren Containern oder gar ganzen Partitionen dauert es entsprechend länger. Ein weiterer Vorteil der Container gegenüber einer Partition: Einfach den Container kopieren, schon hat man zwei davon.
Nach dem Bestätigen der Zusammenfassung mit OK kann man wählen, ob man noch einen Container oder eine Partition erstellen möchte, oder aber ob man damit vorerst fertig ist. Nun kann unten der Container ausgewählt und anschließend gemountet werden. Unter Windows wird er als Laufwerk mit entsprechendem Buchstaben eingehängt.
Unter Windows wird der gemountete Container wie eine Festplatte bzw. Partition angezeigt und eingebunden. Auf dem Screenshot als Laufwerk e:\. Natürlich auch unter Linux kein Problem: Nur eben nach /mnt/truecrypt gemountet. Mehr dazu im nächsten Abschnitt.

Man kann mit dem gemounteten Container so arbeiten, als würde es sich um ein Laufwerk handeln. Dies bezeichnet man als »transparent encryption«.

Im Gegensatz zu in manchen Foren vorgeschlagenen Lösungen wie passwortgeschützte .rar- oder .7zip-Archive kann ohne großen Aufwand direkt mit den Daten gearbeitet werden.

Verwendungszwecke gibt es zuhauf. Ich empfehle beispielsweise Passwörter in solche Container abzulegen, eventuell natürlich nochmals durch einen »Passwortsafe« geschützt, beispielsweise Password Safe.

Und unter Linux?

Bei den früheren Versionen (ich hatte mit Version 4.1 für Linux begonnen), handelte es sich lediglich um ein Kommandozeilentool. GUI war noch keine verfügbar. Der Funktionsumfang war leider ebenfalls eingeschränkt, so konnte man mit TrueCrypt unter Linux damals nur komplette Partitionen verschlüsseln, allerdings keine einzelnen Container anlegen.

In der Version 5.0a für Ubuntu war eine GUI dabei, welche dem Funktionsumfang der Variante für Windows nicht nachsteht:

Gemountet werden zumindest bei mir unter Ubuntu die Container nach /media/truecryptn wobei »n« die »Slotnummer« angibt. Die GUI fragt sowohl nach dem Passwort vom Container wie auch nach dem Systempasswort (Root-Passwort) damit das Volume eingebunden werden kann.

Einen bereits existierenden Container von der Kommandozeile oder per Script zu mounten ist dafür sehr simpel:

 ~$ truecrypt --filesystem vfat --mount-options \
"rw,sync,uid=turanga,umask=0007" \
/home/data/versteck /mnt/truecrypt/
Enter password for '/home/turanga/versteck':
~$ mount
[...]
/dev/mapper/truecrypt0 on /mnt/truecrypt type vfat \
(rw,sync,uid=1000,umask=0007)

Natürlich ist die uid anzupassen, aber das sollte ja selbstverständlich sein. Das »sync« Flag ist optional, allerdings sollte es verwendet werden wenn man Medien benutzt, welche entfernt werden könnten. Beispielsweise USB-Devices, Firewire oder Ähnliches.

Die Entwicklung von TrueCrypt schreitet stetig voran. Ich hatte lange keine vollständige Partition oder gar einen kompletten Datenträger mit TrueCrypt verschlüsselt. Inzwischen ist dies jedoch als Eintrag in meinem Blog nachzulesen: TrueCrypt: Eine komplette Partition bzw. Festplatte verschlüsseln.


 
 
Das Generieren dieser Seite dauerte genau 0.09955 Sekunden.