Це можна зробити за допомогою hdiutil і openssl. Суть рішення полягає у використанні -certificate
опції hdiutil
. Це поле очікує сертифікованого сертифіката DER, який буде використовуватися під час шифрування. Сертифікат може бути використаний пізніше для розшифрування тома за допомогою -recover
параметра hdutil
.
10-тирічна тривалість використовується у поданих нижче сертифікатах, за бажанням ви можете використовувати більш тривалі терміни. Я не перевіряв вплив сертифікату з простроченим терміном на здатність розшифровувати том.
Повністю перевірте, що ви можете розшифрувати за допомогою сертифікату відновлення, перш ніж довірити зашифрований том своїм даним!
Етапи:
Створіть орган сертифікації (CA), який використовуватиметься для підписання вашого сертифікату відновлення. Вам буде запропоновано пароль. Це має бути унікальним для цього ключа підписання. Створений ЦО можна використовувати для підписання багатьох сертифікатів.
% openssl genrsa -des3 -out ca.key 4096
% openssl req -new x509 -days 3650 -key ca.key -out ca.crt
Створіть захищений паролем запит на підписання сертифіката (csr). Запитаний пароль на цьому кроці - це ваш "ключ відновлення".
% openssl genrsa -des3 -out recovery.key 4096
% openssl req -new -key recovery.key -out recovery.csr
Створіть підписаний сертифікат у форматі PEM.
% openssl x509 -req -days 3650 -in recovery.csr \
-CA ca.crt -CAkey ca.key -set_serial 01 -out recovery.crt
Перетворити підписаний сертифікат у формат DER
% openssl x509 -in recovery.crt -inform pem \
-out recovery.der -outform der
З'єднайте сертифікат PEM та приватний ключ у пакет PKCS # 12. Пізніше цей пакет можна імпортувати в брелок на mac, де потрібно відновити об'єм. Захистіть цей пакет, оскільки з його допомогою можна отримати доступ до будь-якого зашифрованого тома за допомогою сертифіката, що міститься. Наприклад, покладіть його на привід великого пальця, який зберігається в надійному місці.
% openssl pkcs12 -export -in recovery.crt -inkey recovery.key -out recovery.p12
Скористайтеся hdiutil
як із параметрами, так -agentpass
і з -certificate
параметрами, щоб створити зашифрований том.
% hdiutil create -type SPARSE -encryption aes-256 \
-certificate ~/recovery.der -agentpass -fs HFS+J \
-volname "Secure Docs" -size 20g ~/Secure
Більше обговорення на цю тему можна знайти на веб-сайті: http://thelowedown.wordpress.com/2008/11/27/data-encryption-for-mac-osx-sparse-images-with-enterprise-recovery/
Наведені вище вказівки - це комбінація моїх власних приміток щодо створення сертифікатів для веб-сайтів, а також інструкцій на сайті вище.