Os comandos a seguir criarão um volume TrueCrypt com um arquivo de chave aleatório no dispositivo $DEVPATH
, * sobrescrevendo completamente qualquer informação nesse disco / dispositivo !!! * Ele anexará o contêiner TrueCrypt, criará um volume de formato HFS + neste dispositivo e destrua a chave usada para criá-lo:
#!/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
Observe que:
- O volume TrueCrypt que é criado usa um arquivo de chave aleatório sem senha. O arquivo de chave aleatório é criado por
dd if=$RAND of=$KEYFILE bs=1 count=4096
. Remova essa linha e aponteKEYFILE=
em um arquivo estático se você quiser um contêiner reutilizável. SEJA CERTO REMOVER A LINHA:srm $KEYFILE
se você fizer isso, porque essa linha de arquivo APAGA FIXAMENTE O ARQUIVO-CHAVE !!! * - Os dados aleatórios desse script são provenientes da fonte aleatória sem bloqueio
/dev/urandom
. Altere paraRAND=/dev/random
para mais segurança, mas lentidão. - O dispositivo
$DEVPATH
SERÁ SUBSCRITO POR ESTE COMANDO !!!! Esteja absolutamente certo de que você sabe o que está fazendo. Por segurança, definaDEVPATH
para um arquivo, como/tmp/some_file
e acrescente um--size=nnnn
à linha TrueCrypt que cria o volume, ondennnn
é o tamanho do byte do arquivo a ser criado. Remova a opção--quick
. Isso será muito mais lento. - Isso funciona no Mac OS X. No Linux, use
mkfs.ext3
em vez dediskutil eraseVolume
. Ou apenas usemount -t tmpfs
e swap criptografado; -)