Hoje estava zapeando na tv com Mô e passamos por uma chamada do Olhar Digital para uma matéria sobre recuperação de dados.
Aí veio a pergunta de Mô:
Ué, mas quando eu mando apagar alguma coisa do computador, ele não apaga?
Sim, e não!
Expliquei pra ela o por quê e achei que essa deveria ser uma dúvida frequente pra usuários e resolvi escrever esse post.
Vou tentar explicar a grosso modo como funciona a deleção de arquivos.
A Resposta
Sim, logicamente e não, fisicamente.
A Memória
Primeiro precisamos entender um pouco sobre os tipos de memória que um computador usa.
São dois: a principal (RAM) e o Disco Rígido (HD):
A Memória Principal

Um Pente de Memória
A memória principal é chamada de Random Access Memory, ou memória de acesso aleatório e é composta completamente de componentes eletrônicos, por isso é extremamente rápida, porém tem uma capacidade reduzida. É um tipo de memória volátil, ou seja, quando o computador desliga, ela perde todos os dados guardados nela. Sem ela, o computador não funciona.
O HD
Os discos magnéticos são extremamente rígidos, por isso o nome do drive.
O HD é composto basicamente de discos magnéticos que giram e um braço mecânico com uma cabeça de leitura que se desloca sobre o disco magnético.
Por ter esse componente mecânico o HD é bastante lento, comparado à memória principal (cerca de um milhão de vezes mais lento). Apesar da velocidade relativamente baixa, HDs permitem o armazenamento muito maior do que a memória principal e por isso são o principal meio de armazenamento massivo hoje em dia. O Disco Rígido é uma memória não-volátil, ou seja, quando o computador é desligado, os dados persistem.
Trilhas (A) e Setores (C)
Os discos magnéticos são divididos em Trilhas, que por sua vez são divididas em setores, de tamanho configurável. Dentro e através dos setores ficam os dados referentes aos nossos vídeos, fotos, textos, etc.
Estes dados são gravados em bytes e para ler esses dados, o Sistema Operacional precisa informar a trilha, o setor, o byte de início e o quantos bytes serão lidos, o que se traduz, por exemplo, nisso:
A03FBB410012F144, que chamamos de endereço físico e é muito mais feio que C:\Meus documentos\xxx\videoSecreto.avi, que chamamos de endereço lógico.
O Sistema operacional conversa com o disco através de uma interface que sabe traduzir o endereço lógico para o endereço físico e além disso gerencia a escrita e a leitura através de um sistema de arquivos, que define um formato para os dados no Disco Rígido (daí o termo formatar). Este formato é puramente lógico, ou seja, não muda nada na estrutura física do disco. A grosso modo, é apenas a forma como o Sistema Operacional “enxerga” os dados no disco.
Além de outras funções, o sistema de arquivos é responsável por dizer onde se pode escrever no disco.
Apagando arquivos
Quando apagamos um arquivo através de um comando do Sistema Operacional, o que ocorre na verdade é a deleção lógica do arquivo, ou seja, todas as referências feitas para este arquivo pelo Sistema Operacional são apagadas e o espaço ocupado por este arquivo é marcado como livre pelo sistema de arquivos.
Aí é onde reside o problema: fisicamente os dados do arquivo ainda estarão no HD até que sejam reescritos.
Se um programa qualquer acessa o disco diretamente (sem passar pelo sistema de arquivos) e usa o endereço físico do arquivo, vai conseguir ler o arquivo que você apagou (se nada foi escrito em seu lugar, obviamente).
Deleção segura
É seguro concluir, então que uma maneira segura de deletar arquivos é além de apagá-los, escrever qualquer coisa no lugar deles. Assim, se algum programa tentar procurar algo no endereço físico de um arquivo que você deletou, encontrará uma sequência aleatória de bytes. Esta técnica é chamada de data shredding.
Existem muitas ferramentas capazes de fazer isso, você pode ver algumas aqui: http://en.softonic.com/windows/safe-delete.
Apesar de bem eficiente, os dados apagados com essa técnica podem ser recuperados, usando métodos de laboratório. A não ser que esse vídeo secreto seja algo digno de wikileaks, você não precisa se preocupar com isso
.
Outra maneira de evitar transtornos com ferramentas de recuperação de dados é usar criptografia no disco, pois mesmo recuperando os dados, eles estarão criptografados e se você tomou cuidado com sua chave privada, ninguém vai conseguir olhar seus segredos.

Esse não queria mesmo que assistissem o videoSecreto.avi :p
Obviamente, a maneira mais segura de apagar algum dado é destruí-lo. Se você realmente quer que ninguém veja seus dados, destrua-os. Destrua mesmo!
Pegue seu HD, dê 3 tiros, jogue ácido sulfúrico, bote no forno pré-aqucido, asse por uma hora, fatie-o em pedaços e depois jogue no fundo do oceano
.

#1 by brunobuss on 03/01/2011 - 08:40
Ótimo post
Criptografia++
Jogue no fundo do oceano–
Sobre a recuperação via laboratório, ela é possível se você fez apenas uma passagem de wipe sobreescrevendo com 0 tudo. Existem metodologias de varias passagens (sei la… 12, 15, 20, 200
) para destruir completamente a “memória magnética” do disco
Agora… o wipe parece funcionar bem para HDs, mas não para SSDs:
http://www.pcworld.idg.com.au/article/258066/ssds_hot_without_security_risks/
E quem sabe para flash memory em geral? (o pendrive que vive sendo perdido no LCI
[ ]‘s
#2 by Lond on 03/01/2011 - 08:50
Pois é, ainda nessa de Flash, como todos os dispositivos flash tem o problema de escrita máxima de arquivos, sempre que o controlador faz algum tipo de algoritmo de balanceamento, você corre o risco de ter seus dados em algum lugar do disco. A solução seria escrever um grande arquivo com zero em todos os bits na parte vazia do disco, de modo a garantir que isso limpe o disco, mas nem sei como é a recuperação em laboratório no caso de flash, se seria necessária mais de uma escrita
#3 by Felippe CFC on 03/01/2011 - 09:37
Otimo Post Macoli!
A criptografia nos HDs hj em dia ja chegou num nivel tao bom (pgp por exemplo) que a Polícia Federal brasileira nao teve acesso aos dados que estavam no laptop do banqueiro Daniel Dantas quando foi preso… Abaixo alguns links mostrando um belo exemplo de que funciona , mesmo que pro sirva com intuitos nao muito corretos
http://www.notebooks-site.com/blog/a-criptografia-dos-hds-do-daniel-dantas/
http://en.wikipedia.org/wiki/TrueCrypt (sim, o caso dele está até na wikipedia)
#4 by brunobuss on 03/01/2011 - 10:09
PGP != TrueCrypt
Ou melhor, TrueCrypt >>> PGP
Anyway, o TrueCrypt é de fato muito bom… eu uso ele no pendrive (bem, quando eu ainda tinha um eu usava…) e o fato de que o truecrypt é multi-plataforma é uma solução muito melhor que alguns da kingston que só funcionam no Windows por exemplo -_-’