Як я можу створити тимчасовий випадковий контейнер TrueCrypt через командний рядок?


0

Я хочу створити скрипт оболонки, який використовуватиме TrueCrypt для створення тимчасового одноразового контейнера із випадковим файлом ключа, який буде використовуватися для місця нуля. В основному я хочу еквівалентного монтування Linux tmpfs (із зашифрованим свопом), але для Mac OS X.

Як я можу генерувати об'єм TrueCrypt з файлом випадкових ключів під Mac OS X?


Як ви плануєте генерувати випадковий ключ? створити контейнер TrueCrypt досить просто, але коли ви згадуєте "випадковий" ключ, який вказує на незашифрований текстовий файл, який містить ваш ключ, який не здається гарною ідеєю.
Рамхаунд

dd if=/dev/urandom of=temp_keyfile bs=1 count=2048працював би.
Джош

@Ramhound дивись мою відповідь на те, що я намагався досягти
Джош,

Відповіді:


0

Наступні команди створять об'єм 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та зашифрований своп ;-)
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.