Logo

TrueCrypt — Ein Selbstversuch

Schlagwörter: Kryptografie, Truecrypt, Verschlüsselung

Die Preise für mobile Spe­icherg­eräte purzeln ja in der let­zten Zeit ins Boden­lose. Grund genug, mir einen Stick mit ca. 16 GB Spe­icher­vol­u­men zuzule­gen. Im Tem­pel des Geizes bekommt man den mit ver­sproch­ener Linux-Unterstützung für nicht mal 20 €. Alles in allem nicht schlecht und auch ein Linux-Iso kann so kom­plett gespe­ichert wer­den. Je größer der Stick ist, desto mehr Daten, auch pri­vater Natur, lassen sich darauf spe­ich­ern. Da der Stick allerd­ings ziem­lich klein und die Gefahr, ihn zu ver­lieren ziem­lich groß ist, sollen diese Daten vor den Blicken neugieriger Finder sicher ver­bor­gen wer­den. Das Werkzeug meiner Wahl ist da True­Crypt. Das [[Open Source]]-Tool ist unter Win­dows und auch unter Linux verbreitet.

Für mich ergibt sich fol­gende Aufgabenstellung:

  1. Der Stick soll unter Win­dows und Linux funktionieren.
  2. Auf dem Stick sollen Dateien mit einer Größe von über vier GB gespe­ichert wer­den können.
  3. Der Stick soll auch auf Sys­te­men ohne TrueCrypt-Installation funktionieren.

Laut den gängi­gen Anleitun­gen im Netz und der Fach­presse sollte das keine allzu große Hürde sein.

Um Punkt 1 zu erfüllen, muss der Stick also in einem nativen Windows-Format for­matiert wer­den. Das schränkt die Auswahl derzeit auf FAT und NTFS ein. Alle Linux-Dateisysteme fallen auf Grund fehlen­der Windows-Unterstützung aus. Obwohl es auch für Win­dows Ext-Treiber gibt, sehe ich in diesen eher Fluch denn Segen ( » nicht nativ auf Win­dows vorhan­den, kein­er­lei Rück­sicht­nahme auf die Linux-Dateirechte). Um der Forderung des zweit­ens Punk­tes zu entsprechen, fällt eben­falls FAT aus dem dem Raster. Das ist zwar auf den Wech­selme­dien ein weit ver­bre­it­etes Dateisys­tem, doch lei­der lassen sich dort keine Dateien spe­ich­ern, die größer als vier GB sind.

Um True­Crypt auch auf Rech­n­ern ohne eigene TrueCrypt-Installationen nutzen zu kön­nen, benötigt man sta­tisch kom­pilierte Bina­ries, die direkt vom Stick aus ges­tartet wer­den kön­nen. Logis­cher­weise darf der Teil, auf dem sie gespe­ichert sind, nicht ver­schlüs­selt sein. Also benötigt man  zwei Par­ti­tio­nen auf dem Stick. Alter­na­tiv kann man auch eine Par­ti­tion erstellen, die einen ver­schlüs­sel­ten Con­tainer enthält. Der Con­tainer sel­ber befindet sich auf dem unver­schlüs­sel­ten Laufw­erk und nimmt dort den größten Teil ein.

Soweit zu den Vorbe­din­gun­gen, nun geht es ans Eingemachte.

Ich entschließe mich für die erste Vari­ante der Stick­nutzung und will meinen Stick par­ti­tion­ieren. Dies hat den Vorteil, dass ich die Datei, die als Con­tainer dient, nicht aus Verse­hen löschen kann.  Also starte ich GParted — ein Tool zum Erstellen und Bear­beiten von Par­ti­tio­nen. Es ver­weigert mir allerd­ings die Dien­ste. Zunächst nehme ich an, dass es an den fehlen­den NTFS-Tools liegt. Doch auch nach deren Installationen:

sudo apt-get install ntfsprogs

stellt sich kein­er­lei Besserung ein. GParted weigert sich stand­haft, mir auf dem Stick zwei Par­ti­tio­nen einzurichten. Ein­mal meck­ert es herum, dass es keine zwei primären Par­ti­tio­nen auf einem Stick ein­richten kann, ein­mal passt es ihm nicht, dass ich eine primäre und darin zwei logis­che Laufw­erke ein­richten möchte.

So greife ich also wieder auf  das bewährte [[fdisk]] im [[Ter­mi­nal]] zurück. Damit lösche ich die beste­hende Par­tion­sta­belle und erstelle zwei NTFS-Partitionen. Anschließend ver­passe ich den neuen Par­ti­tio­nen noch das richtige Dateisystem:

sudo mkntfs –f –L name_der_partition /dev/sdc1

Dabei steht sdc für den USB-Stick und die Zahl 1 für dessen erste Par­ti­tion. Für die zweite muss der Schritt entsprechend angepasst wieder­holt wer­den. Somit ist für den Augen­blick der USB-Stick vorbereitetet.

Im fol­gen­den Schritt muss ich True­Crypt instal­lieren. Das dazu notwendige Paket lade ich mir von der Pro­jek­t­seite. Dort wähle ich Ubuntu x86 für mein 32-Bit Ubuntu aus und lade mir das gepackte File herunter. Zum Ent­packen gebe ich den fol­gen­den Befehl ein:

tar xvfz truecrypt-6.1a-ubuntu-x86.tar.gz

Dadurch erhalte ich eine aus­führbare Datei:

./truecrypt-6.1a-setup-ubuntu-x86

Anschließend öffnet sich eine Message-Box und inter­viewt mich zum weit­eren Vorge­hen. Mir bietet sich die Wahl zwis­chen dem sofor­ti­gen Instal­lieren oder der Erzeu­gung eines DEB-Pakets. Da ich mir vom let­zteren eine bessere Inte­gra­tion, sprich Ent­fer­nen und nochma­liges Instal­lieren, ver­spreche, wähle ich die Erzeu­gung des Pakets. Dieses [[dpkg|installiere]] ich dann folgendermaßen:

sudo dpkg –i /tmp/truecrypt_6.1a-0_i386.deb

Der Installer erstellt das Paket im Verze­ich­nis /tmp. Dort würde es automa­tisch beim näch­sten Sys­tem­start gelöscht werden.

Nach der Instal­la­tion starte ich True­Crypt über Anwen­dun­gen » Son­stige » True­crypt. Alter­na­tiv kann das Pro­gramm auch per true­crypt im Ter­mi­nal aufgerufen wer­den. Ich habe diese Anleitung (Seite wurde zwis­chen­zeitlich offline genom­men, so dass ich diese Anleitung dem­nächst sel­ber in Netz brin­gen werde, 19. Mai 2009) als Inspi­ra­tion genutzt. Dort wird der Weg beschrieben, wie man unter Win­dows einen TrueCrypt-Container auf einen USB-Stick bekommt. Das Ver­schlüs­seln einer Par­ti­tion läuft aber ähnlich ab. Daher ers­pare ich es mir, weiter in die Einzel­heiten einzusteigen. Viel besser kann man es kaum beschreiben.

Auch auf  der TrueCrypt-Seite erhält man ein voll­ständi­ges Tuto­r­ial, allerd­ings in englis­cher Sprache ver­fasst. Das Inter­face sel­ber ist eben­falls recht intu­itiv zu bedienen.

Kom­men wir also zu den Prob­le­men Evil .

Bei der Erstel­lung der ver­schlüs­sel­ten Par­ti­tion kommt irgend­wann die Frage auf, ob auch Dateien größer als vier GB gespe­ichert wer­den sollen. Gemäß meinen Vorüber­legun­gen sage ich artig Ja und bekomme im fol­gen­den Fen­ster nur noch ext2 und ext3 als ein­set­zbare Dateifor­mate ange­boten. Ich beginne, Schlimmes zu ahnen. Diese Ahnung bestätige ich mir, in dem ich einen Schritt zurück gehe. Ich erzähle True­Crypt, dass ich keine Dateien, die größer als vier GB sind, spe­ich­ern möchte. Klicke ich mich jetzt wieder einen Schritt weiter, bekomme ich auch FAT in der Auswahlliste ange­boten. Super — True­Crypt unter Ubuntu kann kein NTFS!

Einiger­maßen gefrustet starte ich Win­dows XP. Das sollte schließlich NTFS kön­nen. Dem fol­gen Ernüchterung #2 und #3. Zum einen kann Win­dows keine zwei Par­ti­tio­nen auf einem USB-Stick erken­nen, eben­sowenig wie einen USB-Stick überhaupt par­ti­tion­ieren .  Da scheint es für Win­dows einen gewalti­gen Unter­schied, zwis­chen einer USB-Festplatte und einem USB-Stick zu geben. Ich bin hel­lauf begeis­tert Mad . Aber mehr noch — Win­dows ist überhaupt nicht dazu in der Lage, überhaupt einen USB-Stick mit NTFS zu for­matieren. Zumin­d­est schließe ich das aus dem Ver­hal­ten der Daten­trägerver­wal­tung, die mir nur FAT anbi­etet Monkey .

Immer­hin lerne ich so auch True­Crypt unter Win­dows ken­nen, dass doch einiges an Funk­tio­nen mehr bietet, als seine Ver­sion für Linux. Allerd­ings bringt mich das nicht viel näher an mein Ziel Sad .

Meinen ursprünglichen Plan werfe ich als über den Haufen. Die Sache mit der Par­ti­tion­ierung scheit­ert an Win­dows Unver­mö­gen, die Par­ti­tio­nen zu erken­nen. Um die Auf­gabe zu bewälti­gen, bleibt mir nur ein Vorgehen:

  1. Ubuntu starten
  2. Par­ti­tion­sta­belle des Sticks löschen und eine neue Par­ti­tion mit NTFS erstellen (s. oben). Diese kann Win­dows zwar weder erstellen noch for­matieren, aber wenig­stens erken­nen und damit arbeiten.
  3. Win­dows booten, True­Crypt starten und den Stick mit einem ver­schlüs­sel­ten Con­tainer versehen

Bei Punkt 3 müssen allerd­ings einige MB frei bleiben, um die TrueCrypt-Binarys dort able­gen zu kön­nen. Mit denen soll der Stick dann auch auf Rech­n­ern ohne TrueCrypt-Installation nutzbar gemacht werden.

Dafür bietet True­Crypt unter Win­dows den Punkt: Tools » Trav­eller Disk Setup… . Damit wer­den auf dem nicht ver­schlüs­sel­ten Teil des Sticks alle notwendi­gen Daten gespe­ichert, um ihn unter Win­dows nutzbar zu machen. Soll das Ganze auch unter Linux funk­tion­ieren, benötigt man vorkom­pilierte Bina­ries. Diese kann man entweder sel­ber erstellen. Wenn man davon keine Ahnung hat, so wie ich Angel , kann man sich die auch von der aktuellen Lin­uxUser (2.2009) besorgen.

Ist der Stick erstellt, so sollte man drin­gend die Funk­tion Backup Vol­ume Header… unter Tools nutzen. Der Header ist ein rel­a­tiv schnell zer­stör­barer Teil des ver­schlüs­sel­ten Laufw­erks, ohne den sich aber der Inhalt nicht mehr entschlüs­seln lässt. Daher sollte man den Header unbe­d­ingt nach der Erstel­lung der Ver­schlüs­selung sich­ern. Dazu eignet sich unter Ubuntu (ab Ver­sion 8.10)  z.B. das .Pri­vate–Verze­ich­nis im Benutzerverzeichnis.

Fazit

Nach allem, was ich in den let­zten Tagen gese­hen habe, funk­tion­iert True­Crypt wirk­lich recht ein­fach. Dabei bietet das Open Source-Tool unter Win­dows einen viel größeren Funk­tion­sum­fang. Dage­gen bietet Linux flex­i­blere Werkzeuge, etwa um USB-Sticks auf ihren Ein­satz vorzubereiten.

Sollte man spezielle Wün­sche, siehe oben, haben, kann es aber auch leicht etwas kom­plizierter wer­den. Prinzip­iell müsste Win­dows (XP) nur mal ler­nen, vernün­ftig mit den immer größer wer­den­den USB-Sticks umzuge­hen. Ander­sherum müsste True­Crypt nur an die eigene Funk­tionsvielfalt unter Win­dows anknüpfen oder wenig­sten den Umgang mit NTFS unter Linux ler­nen. Ich bin ges­pannt, wer dabei schneller ist Smile . Vielle­icht ist Vista da auch mal seinem Ahn in etwas voraus.

Apro­pos Linux: Unter Open­SUSE 11.1 war es mir in ver­schiede­nen Ver­suchen abso­lut unmöglich, den erstellen NTFS-Container zu öffnen. Open­SUSE stürzte repro­duzier­bar direkt nach der Passwort-Eingabe ab. Einige Recherche im Netz ergab, dass die ver­wen­dete Ver­sion des ntfs-3g–Treibers nicht vernün­ftig mit True­Crypt arbeitet. Allerd­ings brachten auch Ver­suche mit anderen, aktuelleren Ver­sio­nen keinen Erfolg.

Sollte man allerd­ings etwas flex­i­bler in seinen Ansprüchen sein, bieten sich fol­gende Lösun­gen zum flex­i­bleren Ein­satz an:

  1. Ver­wen­dung von FAT, um den Stick unter Win­dows und Linux zu ver­wen­den. Dabei bleiben die Ein­schränkun­gen, die Par­ti­tion­ierung betr­e­f­fend, allerd­ings bestehen.
  2. Ver­wen­dung von EXT2/3, wenn der Stick nur unter Linux einge­setzt wer­den soll. Er lässt sich dann prima par­ti­tion­ieren, Win­dows erhält aber grund­sät­zlich keinen Zugriff auf die Daten, da es das Dateifor­mat des Sticks nicht versteht.

Dabei gehen die Ein­satzmöglichkeiten von True­Crypt weit über das hier ange­sproch­ene hin­aus. So lassen sich auch Sys­tem­plat­ten ver­schlüs­seln (etwa beim Ein­satz von Note­books). Der Schutz durch die Passphrase kann durch Key­files ersetzt oder ergänzt wer­den. Weit­er­hin lassen sich die ver­schlüs­sel­ten Daten auch kom­plett in einem ver­steck­ten, ver­schlüs­sel­ten Container-File verbergen.

Mit True­Crypt wird das Ver­schlüs­seln von Daten­trägern ähnlich ein­fach, wie der Ein­satz von [[OTR]] oder [[GnuPG]] beim Chat­ten bzw. im Mail-Verkehr. Umso unver­ständlicher, dass immer wieder Nachrichten durch die Medien geis­tern, die ver­lauten, dass hochsen­si­ble und geheime Daten auf ver­lorenge­gan­genen Daten­träger ihren Weg in die Öffentlichkeit fanden…

Geschrieben am 08.02.2009 von Sven in Aktuelles, Linux, Programmtipp, Windows · 1 Kommentar
Weder Pings noch Kommentare sind erlaubt.

Ein Kommentar auf “TrueCrypt — Ein Selbstversuch”

  1. norwied sagt:

    Hallo,
    sehr schönes Tuto­r­ial, hab ich mit viel Inter­esse gele­sen.
    Mich hat allerd­ings Deine Äußerung, das Win­dows XP keine USB Sticks mit NTFS for­matieren will, etwas stutzig gemacht. Es geht schon, mit nem kleinen Trick:
    http://www.winsupportforum.de/forum/hardware-allgemein/1478-usb-stick-ntfs-formatieren.html

    Kurz, den Daten­träger nicht für “schnelles Ent­fer­nen” opti­mieren, son­dern für “Leis­tung optimieren”.

    Grüße
    norwied


Diese Seite und ihr Inhalt unterliegen, sofern nicht anders gekennzeichnet, einer Creative Commons-Lizenz.
cclicense
top