Sie können keine in OS X verschlüsselte HFS + -Partition mithilfe mount
der Option " mounten " encryption=aes
. Der Grund ist, dass verschlüsselte HFS + -Partitionen und -Datenträger ein proprietäres Format verwenden.
Weder Cryptoloop noch Loop-AES, das sind die zugrunde liegenden Entschlüsselungsmethoden, die von mount
und verwendet werden encryption
, verstehen dieses Format.
Das habe ich herausgefunden:
Cryptoloop kann Partitionen oder Plattenimages einbinden, die als einzelner AES-Block verschlüsselt sind (dies wird als Einzeltastenmodus bezeichnet, siehe http://www.tldp.org/HOWTO/html_single/Cryptoloop-HOWTO/#cryptoloop-introduction ):
/dev/sdXX disk image /dev/loopX +-----------+ +-------------+ | | | | | | | | | | | unencrypted | | AES block | -AES passwd->AES key->decrypt I/O to loop device-> | partition | | | | | | | | | | | | | +-----------+ +-------------+
AES-Loop kann mit einem oder mehreren Schlüsseln verschlüsselte Partitionen oder Festplattenimages mounten:
/dev/sdXX disk image /dev/loopX +------------+ +-------------+ |AES block #1| | | +------------+ | | |AES block #2| | unencrypted | +------------+ -AES passwd->AES key(s)->decrypt I/O to loop dev-> | partition | |AES block #3| | | +------------+ | | | ... | | | +------------+ +-------------+
Auf der anderen Seite eine verschlüsselte HFS + -Partition:
- Enthält einen Header (Sie können ihn mit einem Dump sichern
xxd
) - verwendet mehrere Schlüssel undokumentiert (siehe http://events.ccc.de/congress/2006/Fahrplan/attachments/1244-23C3VileFault.pdf )
- Beginnend mit OS X 10.7 "Lion" wird es in eine CoreStorage Logical Volume Group eingeschlossen (siehe
man diskutil
oder https://developer.apple.com/legacy/library/documentation/Darwin/Reference/ManPages/man8/diskutil.8.html ) verwendet AES-XTS :
$ diskutil coreStorage list (...) +-> Logical Volume Family D1C4665F-EAC8-4DAB-B392-634842A59559 ---------------------------------------------------------- Encryption Status: Unlocked Encryption Type: AES-XTS (...)
was anscheinend weder von Cryptoloop noch von Loop-AES unterstützt wird.
Der Nachfolger von Cryptoloop dm-crypt
kann auch kein verschlüsseltes HFS + lesen.
Aber bevor alle Hoffnung verschwunden ist:
Eine Gruppe von kryptografischen Experten hat erstellt
vfdecrypt
(im Ubuntu-Paket enthaltendmg2img
, tar.gz ist hier: http://code.google.com/p/iphone-elite/downloads/list ), die verschlüsselte FileVault-Festplatten-Images entschlüsselt ( mit Gerätedateien arbeiten).Dieses Tool sieht sehr vielversprechend aus, funktionierte jedoch nicht mit mehreren verschlüsselten Festplattenimages, die ich unter
Disk Utility
OS X 10.8.2 "Mountain Lion" erstellt hatte. Andere Leute ( http://bre.klaki.net/blog/2011/08/17/ ) scheinen mit alten verschlüsselten Bildern Erfolg gehabt zu haben.Andere Experten arbeiten an einem Projekt
libfvde
( https://code.google.com/p/libfvde ), das den Befehlfvdemount
zum Lesen von mit FileVault verschlüsselten Systemdatenträgern enthält. Der limitierende Faktor ist hier "Systemvolumen". Partitionen auf Wechselmedien werden nicht unterstützt. Wenn Sie neugierig sind, finden Sie die Beschreibung hier: https://code.google.com/p/libfvde/wiki/Mounting#Mouting_the_system_volume . Der Quellcode kann hier heruntergeladen werden: https://code.google.com/p/libfvde/downloads/list .
Wie für die Fehlermeldungen, auf die Sie gestoßen sind:
Erster Fehler:
Error: Password must be at least 20 characters.
Überraschenderweise mount
erzwingt lange Kennwörter nicht nur für die Verschlüsselung, sondern auch für die Entschlüsselung, obwohl Sie möglicherweise nicht die zu entschlüsselnde Partition steuern können. Sie können dieses Problem nur umgehen, indem Sie die Quelle herunterladen, bearbeiten und neu kompilieren. (Andere Distributionen wie SuSE Linux Enterprise Server (SLES) haben diese Einschränkung nicht.)
Zweiter Fehler:
ioctl: LOOP_SET_STATUS: Invalid argument, requested cipher or key (256 bits) not supported by kernel
Sie müssen das Cryptoloop-Kernel-Modul laden:
$ sudo modprobe cryptoloop
Obwohl Sie das Paket installiert haben, verwenden loop-aes-utils
Sie kein Loop-AES.
Loop-AES verwendet mehrere modifizierte Benutzerraum Werkzeuge ( mount
, umount
, losetup
, swapon
und swapoff
, sofern durch loop-aes-utils
) und ein modifiziertes loop.ko
Kernelmodul. Aktuelle Ubuntu-Versionen kompilieren ein unverändertes loop
Modul in den Kernel:
$ cd /usr/src/linux-source-3.2.0/linux-source-3.2.0/drivers/block/ $ diff -q /tmp/loop.c-3.x.patched loop.c Files /tmp/loop.c-3.x.patched and loop.c differ
Daher kann Loop-AES nicht für Ubuntu verwendet werden. Sie müssen den Kernel wie folgt patchen und neu kompilieren: http://loop-aes.sourceforge.net/loop-AES.README . Deshalb mount
braucht es noch Cryptoloop.
Wenn Sie nach dem Laden noch eine ähnliche Fehlermeldung erhalten, wird cryptoloop.ko
der Verschlüsselungstyp möglicherweise nicht erkannt. Zum Beispiel hat mein Ubuntu 12.04 nicht erkannt aes-128
, aber aes
. SLES erkennt nur aes-128
.