Наступні команди створять об'єм TrueCrypt із випадковим файлом ключів на пристрої $DEVPATH, * повністю перезаписуючи будь-яку інформацію на цьому диску / пристрої !!! ключ, який він використовував для його створення:
#!/bin/bash
# Source for random data. Use /dev/random for more secure but slower random data""
RAND=/dev/urandom
# Create a random keyfile:
KEYFILE=/tmp/scratch.key
dd if=$RAND of=$KEYFILE bs=1 count=4096
# Create a TrueCrypt volume on $DEVPATH using $KEYFIlE as the keyfile:
/Applications/TrueCrypt.app/Contents/MacOS/TrueCrypt -t -c \
-k $KEYFILE --volume-type=normal --quick --encryption=AES \
--hash=RIPEMD-160 --filesystem="none" --password="" \
--random-source=$RAND $DEVPATH
# Attach the TrueCrypt volume as a device:
/Applications/TrueCrypt.app/Contents/MacOS/TrueCrypt -t --mount \
-k $KEYFILE --password="" --protect-hidden=no \
--filesystem=none $DEVPATH
# Find the TrueCrypt device:
TCDEV=$(/Applications/TrueCrypt.app/Contents/MacOS/TrueCrypt -t -l | grep $DEVPATH | cut -d ' ' -f 3)
# Create a filesystem on the TrueCrypt device:
diskutil eraseVolume JHFS+ Scratch $TCDEV
# And destroy the key so this is a one-time use volume:
srm $KEYFILE
Зауважте, що:
- У створеному томі TrueCrypt використовується файл випадкового ключа без пароля. Файл випадкових ключів створюється компанією
dd if=$RAND of=$KEYFILE bs=1 count=4096. Видаліть цей рядок і вкажіть KEYFILE=статичний файл, якщо ви хочете контейнер для багаторазового використання. ОБОВ'ЯЗКОВО ТАКОЖ ВІДДАЛИТИСЯ ЛІНІЮ: srm $KEYFILE якщо ви це зробите, тому що ця лінія файлу БЕЗПЕЧНО ВИГРЯЗУЄТЬСЯ КЛЮЧОВИЙ ФАЙЛ !!! *
- Випадкові дані для цього сценарію надходять із випадкового джерела,
/dev/urandom що не блокує . Змініть на RAND=/dev/randomдля більшої безпеки, але сповільнення.
- Пристрій
$DEVPATH буде перезаписан Ця команда !!!! Будьте абсолютно впевнені, що знаєте, що робите. Щоб забезпечити безпеку, встановіть DEVPATHфайл, як-от /tmp/some_fileі додайте --size=nnnnрядок TrueCrypt, який створює об'єм, де nnnnрозмір байта файлу для створення. Видаліть --quickопцію. Це буде набагато повільніше.
- Це працює на Mac OS X. Для Linux використовуйте,
mkfs.ext3а не diskutil eraseVolume. Або просто використовувати mount -t tmpfsта зашифрований своп ;-)