Vous ne pouvez pas monter une partition HFS + chiffrée sous OS X en utilisant mount
l'option de encryption=aes
. La raison en est que les partitions et volumes HFS + chiffrés utilisent un format propriétaire .
Ni Cryptoloop ni Loop-AES , qui sont les méthodes de décryptage sous-jacentes utilisées par mount
et encryption
, ne comprennent ce format.
Voici ce que j'ai découvert:
Cryptoloop peut monter des partitions ou des images de disque cryptées comme un seul bloc AES (c'est ce qu'on appelle le mode à clé unique, voir 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 peut monter des partitions ou des images de disque chiffrées à clé unique (comme ci-dessus) et à clés multiples:
/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| | |
+------------+ | |
| ... | | |
+------------+ +-------------+
D'un autre côté, une partition HFS + chiffrée:
Le successeur de Cryptoloop,, dm-crypt
ne peut pas non plus lire le HFS + chiffré.
Mais avant tout espoir:
Quant aux messages d'erreur que vous avez rencontrés:
Première erreur:
Error: Password must be at least 20 characters.
Étonnamment, mount
applique les mots de passe longs non seulement pour le chiffrement mais aussi pour le déchiffrement , bien que vous ne puissiez pas avoir le contrôle sur la partition à déchiffrer. Vous ne pouvez contourner cette nuisance qu'en téléchargeant et en éditant la source et en recompilant. (D'autres distributions, comme SuSE Linux Enterprise Server (SLES), n'ont pas cette restriction.)
Deuxième erreur:
ioctl: LOOP_SET_STATUS: Invalid argument, requested cipher or key (256 bits) not supported by kernel
Vous devez charger le module du noyau Cryptoloop:
$ sudo modprobe cryptoloop
car bien que vous ayez installé le package, loop-aes-utils
vous n'utilisez pas Loop-AES.
Boucle-AES utilise plusieurs outils de l' espace utilisateur modifiés ( mount
, umount
, losetup
, swapon
et swapoff
, fournies par loop-aes-utils
) et une modification de loop.ko
module de noyau. Les versions récentes d'Ubuntu compilent un loop
module non modifié dans le noyau:
$ 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
donc Loop-AES ne peut pas être utilisé sur Ubuntu prêt à l'emploi. Vous devez patcher et recompiler le noyau comme expliqué ici: http://loop-aes.sourceforge.net/loop-AES.README . C'est pourquoi il a mount
toujours besoin de Cryptoloop.
Si vous obtenez toujours un message d'erreur similaire après le chargement, cryptoloop.ko
le type de cryptage peut ne pas être reconnu. Par exemple, mon Ubuntu 12.04 n'a pas reconnu aes-128
, mais aes
. SLES reconnaît seulement aes-128
.
aes256
au lieu deaes-256
?