segunda-feira, 6 de setembro de 2010

Quando a criptografia é boa...

Em um post de dezembro de 2008, comentei uma notícia acerca da investigação conduzida contra Daniel Dantas, em que se anunciava que o FBI iria ajudar a polícia brasileira a quebrar a criptografia de discos apreendidos em seu apartamento. Não havia notícia, até então, sobre o modo como tais arquivos haviam sido criptografados, se usando criptografia de boa ou má qualidade, ou qual produto. Mas, desde aquele momento, adiantei que, se usada boa criptografia, feita por produtos que não tenham "portas traseiras", os arquivos seriam potencialmente indecifráveis.

Em junho último, a imprensa noticiou (aqui ou aqui) que o FBI devolveu os HDs ao Brasil, sem sucesso. Segundo informado, os discos estão cifrados com o Truecrypt... hum... parece que é mesmo um osso duro de roer!

O Truecrypt é um software de criptografia de código aberto, qualidade que é normalmente incompatível com portas traseiras (pois poderiam ser descobertas por quem examinasse o código). Nem quem produz o programa tem condições de abrir arquivos cifrados com ele. Na verdade, qualquer um com conhecimento bastante em criptografia ou criptoanálise teria as mesmas possibilidades de quebrar o cifrado que o autor do software, já que todas as instruções do programa - sua maneira de operar, portanto - são públicas. E essa chance é próxima de zero. E só quem cifrou tem a senha, não há uma "chave-mestra" (o que seria uma das possíveis formas de "porta traseira").

Já experimentei o Truecrypt. Tenho-o instalado aqui... É um software bastante respeitado no universo de segurança da informação. Ele cria discos virtuais criptografados. Daí, "abre-se" o disco, salva-se o que quiser nele, como se fosse um disco comum, e uma vez fechado é um bloco intransponível a quem não tiver a senha de acesso.

Além disso, o Truecrypt fornece um recurso extremamente complicado para quem pretenda obrigar o "dono" do cifrado a abri-lo (seja por coação legal, supostamente "boa" se não estivermos falando de uma ditadura, seja por coação física ou moral feita por um criminoso): ele cria - ou não, pois isso é um recurso opcional - um disco virtual cifrado dentro de outro disco virtual cifrado, cada um com uma senha diferente. Como se fosse uma caixa dentro de uma caixa. Se usada a senha da "caixa" externa, ele a abre, sem dar indícios de que há uma "caixa" criptografada dentro dela (pois o disco interno, cifrado, é indistinguível de dados aleatórios do espaço não ocupado da "caixa" externa). É possível, então, deixar ali arquivos não tão importantes, como se esses fossem o objeto da proteção. Aparentemente, é impossível provar que há outro cifrado dentro do cifrado. É impossível provar se o usuário usou ou não usou esse recurso da "caixa dentro da caixa". Coagido - legal ou ilegalmente - a fornecer a senha, o usuário pode simplesmente entregar a senha do cifrado externo.

Por sua vez, se usada a senha da "caixa" interna, o Truecrypt a abre diretamente.

Conforme eu disse naquele post de 2008, se a criptografia fosse mesmo boa, como parece ser o caso, só restaria tentar um ataque de força bruta sobre a senha de acesso e tentar experimentar alguns zilhões de possibilidades. Pelo que dizem as reportagens, foi o que o FBI tentou fazer, sem sucesso, por meses a fio. Tentaram um ataque de "dicionário", isto é, de posse de um arquivo com algumas muitas e muitas palavras possíveis, experimentaram todas para ver se acertavam a senha. Se a senha fosse algo tolo, como um nome próprio, ou palavra regular de um idioma, possivelmente o FBI teria conseguido decifrar os arquivos após alguns meses de trabalho. De nada adianta a matemática ser boa se o usuário escolhe uma senha fraca...

Mas, se a senha for grande e formada por caracteres aleatórios, e memorizada pelo "dono" do cifrado, fica realmente muito difícil quebrar a proteção. Pelo visto, é o que acontece com os arquivos de Dantas...

Nessa altura dos acontecimentos, acho que o Governo deveria contratá-lo, como consultor de segurança da Receita Federal. Pelo visto, ele sabe bem como proteger um segredo!

Nenhum comentário: