Вы не можете смонтировать раздел HFS +, зашифрованный в OS X, используя mount
параметр encryption=aes
. Причина в том, что зашифрованные разделы и тома HFS + используют собственный формат.
Ни Cryptoloop, ни Loop-AES , которые являются основными методами дешифрования, используемыми mount
и encryption
, не понимают этот формат.
Вот что я узнал:
Cryptoloop может монтировать разделы или образы дисков, зашифрованные как один блок AES (это называется одноключевым режимом, см. 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 может монтировать одноключевые (как указано выше) и многоключевые зашифрованные разделы или образы дисков:
/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| | |
+------------+ | |
| ... | | |
+------------+ +-------------+
С другой стороны, зашифрованный раздел HFS +:
Преемник Cryptoloop, также dm-crypt
не может читать зашифрованный HFS +.
Но прежде чем вся надежда ушла
Что касается сообщений об ошибках, с которыми вы столкнулись:
Первая ошибка:
Error: Password must be at least 20 characters.
Удивительно, но mount
вводит длинные пароли не только для шифрования, но и для дешифрования , хотя у вас может не быть контроля над разделом для расшифровки. Вы можете обойти эту неприятность только путем загрузки и редактирования исходного кода и перекомпиляции. (Другие дистрибутивы, такие как SuSE Linux Enterprise Server (SLES), не имеют этого ограничения.)
Вторая ошибка:
ioctl: LOOP_SET_STATUS: Invalid argument, requested cipher or key (256 bits) not supported by kernel
Вам необходимо загрузить модуль ядра Cryptoloop:
$ sudo modprobe cryptoloop
потому что, хотя вы установили пакет, loop-aes-utils
вы не используете Loop-AES.
Петля-AES использует несколько измененных пользователем космических средств ( mount
, umount
, losetup
, swapon
и swapoff
, предоставляются loop-aes-utils
) и модифицированный loop.ko
модуль ядра. Последние версии Ubuntu компилируют неизмененный loop
модуль в ядро:
$ 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
поэтому Loop-AES нельзя использовать в Ubuntu из коробки. Вам нужно исправить и перекомпилировать ядро, как описано здесь: http://loop-aes.sourceforge.net/loop-AES.README . Вот почему mount
все еще нужен Cryptoloop.
Если вы все еще получаете похожее сообщение об ошибке после загрузки, cryptoloop.ko
тип шифрования может быть не распознан. Например, моя Ubuntu 12.04 не распознала aes-128
, но aes
. SLES только распознает aes-128
.
aes256
вместоaes-256
?