tcplay ist eine 100% kompatible Open Source Alternative zu Truecrypt für Linux Nutzer. Ubuntu ab Version 13.04 (raring), Debian jessie und aktuelle Versionen von Linux Mint enthalten tcplay, es kann mit dem Paketmanager installiert werden. Für andere Distributionen steht die Software auf der Downloadseite zum selbst compilieren bereit. Zum Compilieren werden die dev-Pakete von cryptsetup 1.6 benötigt.

tcplay ist ein Kommandozeilen Tool, das den Device-Mapper des Linux Kernel nutzt. Mit zuluCrypt gibt es ein grafisches Interface, das auch dm-crypt verschlüsselte Container verwalten kann. zuluCrypt ist noch ein junges Projekt und bisher in keiner Linux Distribution enthalten.
zuluCrypt

Verschlüsselten Container mit tcplay erstellen

Um eine Partition zu verschlüsseln (z.B. auf einem USB-Stick) ist folgends Kommando einzugeben ("/dev/sdc1" ist dabei durch die zu verschlüsselnde Partition zu ersetzen): # tcplay --create --device=/dev/sdc1 --cipher=AES-256-XTS --pbkdf-prf=whirlpool Wenn man ein oder mehrere Keyfiles als Schlüssel verwenden möchte, kann der Parameter "--keyfile=Dateiname" beim Erstellen des Containers mehrfach angegeben werden.

Um eine Containerdatei zu verschlüsseln, ist als erstes eine leere Imagedatei zu erstellen (im Beispiel 100 MB) und mit losetup als Loop-Device einzuhängen. Danach kann tcplay das Loop-Device verschlüsseln: # dd if=/dev/random of=geheim.tc bs=1M count=100
# losetup /dev/loop1 geheim.tc
# tcplay --create --device=/dev/loop1 --cipher=AES-256-XTS --pbkdf-prf=whirlpool
Genau wie Truecrypt bietet tcplay die Möglichkeit, AES, Twofish oder SERPENT für die Verschlüsselung zu nutzen und mehrere Algorithmen zur Verschlüsselung zu kaskadieren. Folgende Werte können für den Parameter "--cipher" gesetzt werden: AES-256-XTS
TWOFISH-256-XTS
SERPENT-256-XTS
TWOFISH-256-XTS,AES-256-XTS
AES-256-XTS,SERPENT-256-XTS
SERPENT-256-XTS,TWOFISH-256-XTS
AES-256-XTS,TWOFISH-256-XTS,SERPENT-256-XTS
SERPENT-256-XTS,TWOFISH-256-XTS,AES-256-XTS
tcplay kann auch Hidden Volumes in dem verschlüsselten Container erstellen: # tcplay --create --device=/dev/sdc1 --cipher=AES-256-XTS --pbkdf-prf=whirlpool
--hidden --cipher-hidden=AES-256-XTS --pbkdf-prf-hidden=whirlpool [--keyfile-hidden=Datei]

Truecrypt Container mit tcplay öffnen

Mit der Kommando "--map" wird ein verschlüsselter Container geöffnet und dem Device-Mapper unterstellt. Dabei sind die Keyfiles (falls verwendet) als Parameter zu übergeben: # tcplay --map=truecrypt1 --device=/dev/sdc1 [ --keyfile=Datei ] Eine Container-Datei (z.B. "geheim.tc") ist zuerst als Loop-Device einzubinden: # losetup /dev/loop2 geheim.tc
# tcplay --map=truecrypt2 --device=/dev/loop2 [ --keyfile=Datei ]
Wenn man das Hidden Volume öffnen möchte, dann ist das gleiche Kommando zu verwenden. Es ist nur das Passwort und/oder Keyfile für das Hidden Volume zu verwenden.

Danach hat man über das Block-Device "/dev/mapper/truecrypt1" Zugriff auf den Inhalt des Container und kann die üblichen Linux-Tools verwenden, um es zu mounten oder beim ersten Öffnen nach dem Erstellen des Containers ein Dateisystem anzulegen (formatieren). Der Name "truecrypt1" ist nur ein Beispiel und kann frei gewählt werden.

Zum Formatieren kann ich die GNOME Datenträgerverwaltung "palimset" empfehlen, die man unter "Programme - System - Datenträgerverwaltung" findet. Wenn man den Datenträger auch unter Windows verwenden möchte, dann sollte man das Dateisystem FAT nutzen.

Mounten des geöffneten und formatierten Block-Devices auf der Kommandozeile z.B. mit: # mount /dev/mapper/truecrypt1 /mnt

Container schließen

Mit folgendem Kommando wird der Truecrypt Contyiner wieder geschlossen: # dmsetup remove truecrypt1
Lizenz: Public Domain