Criptografia · 11 min read · Jan 04, 2026
Tutorial do TrueCrypt: Criptografia de Dados Realmente Portátil
Tutorial do TrueCrypt: Criptografia de Dados Realmente Portátil
Uma breve apresentação das funções do programa
TrueCrypt é um software gratuito que criptografa dados “on-the-fly”. Neste momento, a versão mais recente lançada é a versão 4.3. Você pode criar um disco rígido criptografado, uma partição separada ou um diretório com o TrueCrypt. Ele não apenas criptografa o conteúdo dos arquivos, mas também seus nomes e os nomes dos diretórios em que estão. Além disso, não há como verificar o tamanho do diretório/HDD/partição criptografada. O TrueCrypt está disponível para Windows e Linux.
Vantagens do TrueCrypt:
- cria um disco rígido criptografado e o monta,
- criptografa um disco inteiro, partição/diretório selecionado e até mesmo um pen drive USB,
- a criptografia é automática, on-the-fly e transparente para o usuário
- não há como verificar o tamanho da partição/diretório criptografado,
- utiliza algoritmos de criptografia como: AES -256, Serpent, Twofish,
- permite a criação de um volume oculto,
- em uso, você não consegue distinguir entre o volume criado e dados comuns,
- é muito simples de usar,
- os discos virtuais criados com o TrueCrypt são completamente independentes do sistema operacional,
- as chaves de autorização podem ser mantidas em um pen drive USB.
- e muito mais…
Existem três maneiras de proteger os dados criptografados:
- com uma senha,
- com uma chave especial,
- com uma senha e uma chave.
O que é essa chave? A chave pode ser qualquer arquivo do seu disco rígido, por exemplo: *.avi, *.mpg ou *.txt e até mesmo um diretório inteiro contendo alguns arquivos. Aviso! Tenha cuidado ao usar um arquivo *.txt como chave, pois se você modificá-lo, a chave mudará e você não poderá descriptografar seus dados. O que acontece quando você perde sua chave? Você nunca recuperará seus dados! É por isso que sugiro usar ambos, a chave e a senha, como a melhor maneira. Nesse caso, se você perder sua chave, poderá trocá-la inserindo a senha correta e vice-versa. Naturalmente, não há solução ideal, pois você pode esquecer sua senha e perder sua chave ao mesmo tempo.
Uma breve comparação entre TrueCrypt e DM-Crypt
Na verdade, é muito difícil dizer qual desses programas é melhor. Após uma revisão trabalhosa das descrições de suas opções e deliberações sobre ambos, percebi que a melhor solução seria combinar os dois. Ambos permitem que você crie um chamado “container”, que é um arquivo criptografado que funciona como um diretório onde você pode armazenar seus arquivos privados (um recurso muito útil quando você não quer criptografar toda a partição). A grande vantagem desses programas é que eles podem criptografar dados enquanto os gravam em um CD/DVD. Uma leve desvantagem do TrueCrypt pode ser que, após recarregar o kernel, você pode ter que instalar o módulo do TrueCrypt novamente. Por outro lado — no TrueCrypt você pode usar simultaneamente diferentes algoritmos de criptografia! Ele também funciona no Windows, então se você usar ambos os sistemas, o TrueCrypt será uma escolha melhor.
Como escolher a melhor chave?
Pessoalmente, não recomendo escolher qualquer arquivo ou diretório do seu disco rígido como chave. A melhor maneira será usar um gerador de chaves especial embutido no TrueCrypt. RNG - Gerador de Números Aleatórios - é o recurso, ele cria alguns dados aleatórios com um tamanho máximo de 320 bytes e os salva em um arquivo previamente escolhido. Como os dados aleatórios são gerados? Se for Linux, o RNG usa /dev/random ou /dev/urandom, que representa todo o ruído gerado pelos dispositivos conectados ao seu PC, como o mouse e o teclado.
Como o TrueCrypt funciona?
Todo o processo de criptografia é transparente para o usuário. Ao copiar um arquivo para o disco criptografado, seus fragmentos constituintes (se for um arquivo grande, como um filme) são copiados para a RAM, depois criptografados e salvos no arquivo de destino. O processo de descriptografia é o mesmo. Primeiro, o arquivo, por fragmentos, é descriptografado para a RAM e, em seguida, é passado para o usuário. O TrueCrypt nunca salva dados não criptografados no disco, os dados criptografados são sempre armazenados na RAM. Este é um método muito seguro que impede o acesso acidental aos seus arquivos.
Download do TrueCrypt
A versão mais recente do programa você sempre encontrará em http://www.truecrypt.org. O TrueCrypt precisa de uma ferramenta chamada dmsetup para funcionar corretamente. O dmsetup é uma ferramenta que permite trabalhar com discos lógicos mapeados com o driver device-mapper. A versão mais recente do dmsetup está disponível em http://sources.redhat.com/dm/. A primeira coisa que você deve fazer após baixar a fonte é instalar o dmsetup:
tar -zxvf device-mapper.*your_version_no*
cd device-mapper.*your_version_no*
./configure
make
make install (como root ou sudo)Se tudo correr bem, tente instalar o TrueCrypt:
tar -zxvf truecrypt-*your_version_no*
cd truecrypt-*your_version_no*Entre no diretório linux e instale:
cd linux
./build.shVerificando requisitos de construção...
Construindo módulo do kernel... Pronto.
Construindo truecrypt... Pronto.Primeiro, o script verificará se seu sistema atende a todos os requisitos, ele informará se não conseguir encontrar a localização de um pacote. Aviso! Para instalar o TrueCrypt corretamente, você deve ter um kernel 2.6.5 ou mais recente.
Em seguida, você executa:
./install.sh *(como root ou sudo)*Verificando requisitos de instalação…
Testando truecrypt… Pronto.
Instalar binários em [/usr/bin]: pressione [Enter]
Instalar página do manual em [/usr/share/man]: pressione [Enter]
Instalar guia do usuário e módulo do kernel em [/usr/share/truecrypt]: [Enter]
Permitir que usuários não administradores executem o TrueCrypt [y/N]: para permitir que usuários não root usem o TrueCrypt, pressione [y], caso contrário, [N]
Instalando módulo do kernel… Pronto.
Instalando truecrypt em /usr/bin… Pronto.
Instalando página do manual em /usr/share/man/man1… Pronto.
Instalando guia do usuário em /usr/share/truecrypt/doc… Pronto.
instalando módulo de backup do kernel em /usr/share/truecrypt/kernel… Pronto.
Se tudo prosseguiu como acima, você pode continuar.
A geração da chave
Para gerar uma chave, digite:
truecrypt --keyfile-create key.txtClaro que você pode escolher outro nome para a chave e a extensão.
Seu mouse está conectado diretamente ao computador onde o TrueCrypt está sendo executado? Pressione “Y”, então você será solicitado a mover seu mouse.
Se tudo estiver OK, o seguinte texto será exibido: Arquivo de chave criado.
A criação do volume virtual
Para criar um novo volume, você deve considerar seu nome e tipo. Existem apenas dois tipos de volume: normal e oculto. Qual é a diferença entre eles? O oculto é apenas isso, oculto (a colocação é diferente - mais informações na página inicial do TrueCrypt).
Em um terminal, digite:
truecrypt -c home.txtVocê cria um volume chamado home.txt. A extensão fica a critério do usuário, eu escolhi *.txt, porque é mais difícil para um potencial hacker descobrir que é um volume.
Tipo de volume:
- Normal
- Oculto
Selecione [1]: selecione 1
Sistema de arquivos:
- FAT
- Nenhum
Selecione [1]: selecione 2, porque você criará um sistema de arquivos diferente de FAT
no seu volume, o padrão é FAT
Digite o tamanho do volume (bytes - size/sizeK/sizeM/sizeG): 10M -
agora você declara um tamanho para seu volume, eu escolhi 10 MB
Algoritmo de hash:
- RIPEMD-160
- SHA-1
- Whirlpool
Selecione [1]: escolha hash, sugiro SHA-1, o padrão é RIPEMD-160
Algoritmo de criptografia:
1 ) AES
2 ) Blowfish
3 ) CAST5
4 ) Serpent
5 ) Triple DES
6 ) Twofish
7 ) AES-Twofish
8 ) AES-Twofish-Serpent
9 ) Serpent-AES
10 ) Serpent-Twofish-AES
11 ) Twofish-Serpent Selecione [1]: escolha o algoritmo, o padrão é AES
Digite a senha para o novo volume ‘home.txt’: pressione [Enter] se você não quiser nenhuma senha
Reinsira a senha: pressione [Enter] novamente
Digite o caminho do arquivo de chave [nenhum]: aqui digite um caminho completo para a chave ou deixe vazio se você não tiver nenhuma chave
Digite o caminho do arquivo de chave [finalizar]: você será solicitado novamente a inserir o caminho. Caso tenha mais de uma chave, digite outro caminho, e se você inseriu todos os caminhos das chaves, deixe vazio e pressione [Enter]
O TrueCrypt agora coletará dados aleatórios.
Seu mouse está conectado diretamente ao computador onde o TrueCrypt está sendo executado? Pressione “Y” se seu mouse estiver diretamente conectado ao seu PC, mas tente pressionar “n” e veja o que acontece
Por favor, digite pelo menos 320 caracteres escolhidos aleatoriamente e pressione Enter: se você inserir menos do que o necessário, o programa mostrará quantos estão faltando
Agora o programa começará a criar seu volume. O tempo necessário para essa operação depende do seu CPU e do tamanho do volume. O script informará quando estiver completo (Volume criado). No diretório home do root deve haver um arquivo home.txt. Você pode tentar abri-lo em um processador de texto, minhas congratulações se você conseguir ler algo dele.
Mapeamento do volume e criação do sistema de arquivos.
Como você se lembra, você não escolheu o sistema de arquivos para seu volume durante o processo de criação. É por isso que você deve fazer isso agora. Isso é necessário porque o TrueCrypt usa a ferramenta Linux mount para montar um volume, que precisa ter um sistema de arquivos passado como opção.
Digite:
truecrypt /root/home.txt -k /root/keyDigite a senha para ‘/root/home.txt’: se não houver senha para este volume, apenas pressione [Enter]
OK. Para verificar se o mapeamento foi bem-sucedido, digite:
truecrypt -vl(mostra informações sobre dispositivos mapeados)
Se não houver informações, significa que algo deu errado.
Agora você cria um sistema de arquivos:
mkfs.ext3 /dev/mapper/truecrypt0Você pode escolher qualquer sistema de arquivos
O sistema de arquivos foi criado.Montando volumes criados
Agora que você criou um sistema de arquivos em seu volume e o mapeou, pode montá-lo em qualquer diretório.
Para fazer isso, digite:
truecrypt -d /dev/mapper/truecrypt0desmapeia o volume
mkdir encrypted -cria um diretório chamado “encrypted”, este é o diretório onde você vai montar o volume
truecrypt /root/home.txt -k /root/key /root/encryptedmonta o volume nos diretórios criptografados
Pronto! A partir de agora, todos os dados salvos no diretório “encrypted” serão criptografados.
Mas o que você deve fazer para criptografar um diretório já existente? Isso é muito simples. Basta mover os dados deste diretório, em seguida, montar o volume neste diretório e mover os dados de volta para este diretório. Lembre-se de fazer o volume adequadamente grande ao declarar seu tamanho, porque caso contrário, não acomodará todos os dados. O tamanho do volume deve ser um pouco maior do que o tamanho do diretório.
Montagem automática após a reinicialização.
Como você descobrirá, após uma reinicialização, você terá que montar o volume novamente. Há uma maneira simples de fazer isso. Navegando em um fórum na página inicial do TrueCrypt, encontrei duas soluções diferentes:
- adicionar um script a /etc/init.d ou /etc/rc.d,
- criar um arquivo de configuração no diretório home chamado .profile e editá-lo adequadamente.
Sugiro que você use a segunda maneira, que descrevo abaixo. Por quê? Há uma razão simples. Digamos que você protegeu o volume com uma chave e uma senha ou até mesmo apenas com uma senha. Nesse caso, ao executar scripts de inicialização colocados nos diretórios init.d ou rc.d, você terá que inicializar o TrueCrypt com o parâmetro -p e a senha estaria explicitamente escrita lá, o que não é a solução mais inteligente. Dessa forma, qualquer um poderia ler sua senha.
Talvez já exista um arquivo .profile em seu diretório home, mas se não:
touch .profile - cria um novo arquivo .profileAbra .profile em um editor e adicione a seguinte linha:
truecrypt /root/home.txt -k /root/key /root/encryptedSalve as alterações e saia do editor. Agora, toda vez que você fizer login no sistema, o TrueCrypt solicitará sua senha (que você não tem porque neste exemplo você está identificado apenas pela chave, então apenas pressione [Enter]) e o volume virtual será montado.
Posso manter a chave em um pendrive/pen drive USB?
Sim, há essa opção, e você pode acreditar que não é tão difícil. A primeira coisa que você deve fazer é montar automaticamente o pen drive na inicialização. Para fazer isso, você deve editar /etc/fstab. Em seguida, crie um novo diretório para o pen drive em /mnt:
mkdir /mnt/pendrivePrimeiro, você deve ver onde o pen drive está no sistema. Conecte o pen drive na porta USB e execute o seguinte comando:
dmesg > output.txtNo final do arquivo, deve haver uma linha como esta:
usb 1-1: configuração #1 escolhida entre 1 escolha
uba: uba1Como você pode ver, no meu PC, o pen drive USB está em /dev/uba1. Você pode tê-lo em /dev/sda*. Agora você deve modificar /etc/fstab. Adicione esta linha:
/dev/uba1 /mnt/pendrive auto defaults 0 0Em seguida, digite:
mount /mnt/pendriveO próximo passo é mover a chave para o pen drive e mudar a linha no seu arquivo .profile contendo o caminho para a chave /mnt/pendrive. Pronto!
Agora o sistema monta o volume virtual automaticamente após a reinicialização. Quais são as desvantagens da montagem automática? Digamos que você tenha um irmão muito curioso e não queira que ele tenha acesso a algumas partes do seu sistema (independentemente de estar trabalhando no Windows ou Linux). Se você se autorizar apenas com a chave, e ela estiver colocada em algum lugar no HDD, então após a inicialização, os dados são descriptografados. “Mas eu mantenho minha chave no pen drive USB”. E se você esquecer de retirá-lo do PC após o trabalho?
O futuro
No futuro próximo, os desenvolvedores do TrueCrypt estão planejando expandir suas funcionalidades:
- a versão do MAC OS,
- adicionar uma autorização externa (então haverá a possibilidade de descriptografia pela rede/Internet),
- construir uma GUI oficial para o TrueCrypt,
- e muito mais…
Existem camadas GUI não oficiais para o TrueCrypt? Claro que existem. Sugiro que você dê uma olhada na seguinte página da web: TruecryptGUI no GoogleCode. Para mais informações, visite o fórum do TrueCrypt.
Tradução para o inglês: Borys Musielak
Correção: T_ziel
Autor: Marcin Lipiec aka “lipiec”
Este texto foi publicado pela primeira vez em polishlinux.org
Receba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.