Criptografia negável

Em criptografia e esteganografia, é entendido como criptografia negável as técnicas de criptografia cujo resultado permita que a existência de um arquivo cifrado ou mensagem seja negável, de tal forma de que um adversário não seja capaz de provar que tais informações existam.[1]

Os usuários desse tipo de criptografia podem negar de forma convincente que um conjunto de dados esteja cifrado ou que eles sequer existam. Tal alegação pode ser verdadeira ou falsa, pois é impossível provar o contrário sem a cooperação dos mesmos, dado que eles também podem legitimamente não ter acesso ou ciência da existência dos dados. A criptografia negável prejudica a capacidade do acusador de afirmar que existam dados criptografados ou que a pessoa de posse deles seja capaz de decifrá-los.

Função

editar

Normalmente um texto cifrado pode ser decifrado para obter um único texto em claro e, portanto, uma vez decifrado, o usuário não pode afirmar que a mensagem decifrada é diferente do original. A criptografia negável permite encriptar um texto e obter, se necessário, uma alternativa de texto simples que tem a função de "engodo". O atacante, mesmo se ele é capaz de forçar o usuário a produzir um texto claro não pode perceber qualquer diferença real entre o texto em claro e as alternativas. O usuário pode sempre defender-se, de tempos em tempos, escolhendo se quer produzir, a partir do mesmo texto cifrado, o verdadeiro texto original ou outro texto de disfarce.

A noção de "criptografia negável" foi usada por Julian Assange e Ralf Weinmann no Rubberhose (software) e explicada em detalhe num artigo de Ran Canetti, Cynthia Dwork, Moni Naor, e Rafail Ostrovsky[2] em 1996.

Cenário

editar

A criptografia negável permite que o remetente da mensagem cifrada possa negar o envio dessa mensagem. Isto requer uma terceira pessoa de confiança. Aqui está um cenário possível:

  1. Alice é a esposa de Bob, que suspeita que sua mulher esteja envolvida em adultério. Ela quer se comunicar com seu amante Carl em segredo. Ela cria duas chaves, uma com a intenção de mantê-la secreta, e outra destinada a ser sacrificada. Ela passa a chave secreta (ou ambas) a Carl.
  2. Alice constrói uma mensagem inofensiva M1 para Carl (destinada a ser revelada a Bob no caso de emergência) e uma carta de amor de conteúdo incriminatório M2 para Carl. O texto M1 é cifrado com a chave K1 e M2 com a chave K2. No momento da criptografia M1 e M2 são mescladas em uma única mensagem cifrada que é enviada para Carl.
  3. Carl usa sua chave privada K2 para decifrar M2 e lê o texto secreto.
  4. Bob descobre a mensagem cifrada para Carl, torna-se suspeitoso e constrange Alice de decifrar a mensagem.
  5. Alice usa a chave de sacrifício K1 e a revela a Bob que lê o texto inofensivo M1. E porque Bob não sabe a chave de outro, ele tem que assumir que não há outra mensagem M2.

Outro cenário possível é que Alice cria uma mensagem cifrada com instruções secretas para Bob e Carl. A mensagem tem instruções diferentes e cada um destinatário não deve ficar a conhecer as instruções do outro. Carl pode receber a mensagem só por meio de Bob.

  1. Alice constrói a mensagem cifrada (M1 com K1 e M2 com K2) e a envia para Bob.
  2. Bob usa sua chave K1 e lê as instruções M1. Não pode ler M2.
  3. Bob envia a mensagem cifrada para Carl.
  4. Carl usa sua chave K2 e lê as instruções M2. Não pode ler M1.

Formas modernas de criptografia negável

editar

As modernas técnicas de criptografia negável exploram as propriedades de permutação pseudoaleatória de cifras por bloco, tornando-se impossível provar que o texto cifrado não corresponde a dados aleatórios, gerados por um gerador de números pseudoaleatórios criptograficamente seguro. Usa-se também este método em combinação com um ou mais dados chamariz que o usuário deseja manter plausivelmente segredos, e que serão revelados em caso de ataque, afirmando que isso é tudo que existe. Esta forma de criptografia negável às vezes é denotada como esteganografia.

Outro exemplo de criptografia negável é o sistema de ficheiros criptográfico que utiliza o conceito de níveis abstratos, onde cada nível é cifrado com uma chave diferente, e com níveis adicionais especiais, com função de "chaff", preenchidos de dados aleatórios. O usuário armazena alguns ficheiros "chamarizes" em um ou mais níveis, negando a existência de outros níveis com ficheiros secretos, dizendo que o espaço restante é ocupado por níveis de chaff. Fisicamente, este tipo de sistema de ficheiros é armazenado em um único diretório que contém ficheiros de tamanho igual e de marca temporal casual. Os nomes são gerados por acaso - se eles pertencem às níveis de chaff - ou são hash criptográficos de cadeias que identificam os blocos. Sistema de ficheiros Rubberhose e PhoneBookFS utilizam essa abordagem.

Outro método utilizado por alguns software de criptografia de disco é a criação de um segundo volume cifrado dentro de um volume com funções de recipiente. O volume é formatado com dados aleatórios cifrados[3] e então inicializado com um sistema de ficheiros que o usuário preenche com dados plausivelmente sensíveis. Após, internamente ao volume recipiente se insere um segundo volume escondido com os dados segredos que o usuário queira armazenar. Como em outros exemplos, a proteção do volume cifrado traz força das propriedades de permutação pseudoaleatória de cifras por bloco.[4]

A integridade do volume cifrado depende da possibilidade de não aumentar o tamanho dos dados contidos no volume do recipiente, até chegando a sobrescrever o espaço oculto cifrado alocado no interior. Talvez, no tempo pode ser necessário "congelar" o volume recipiente para preservar aquilo escondido, correndo o risco de torná-lo suspeito por causa das marcas temporais de último acesso e modificação, nunca atualizadas. FreeOTFE e BestCrypt podem conter mais volumes cifrados no volume recipiente, TrueCrypt é limitado a um único volume escondido.[5]

Críticas

editar

A existência de um volume oculto pode ser afetada por implementações de criptografia com elementos previsíveis, ou por efeito de alguns ferramentas forenses que podem forçar a revelar a presença de dados cifrados, não-aleatórios.[6][7] Foi também sugerida a vulnerabilidade de volumes cifrados, se processados com o teste de ​​randomização chi-quadrado, e que seria necessária, depois de cada modificação de dados cifrados, uma inclusão de elementos de correção para reduzir o volume a um estado razoável de aleatoriedade.[8]

A criptografia negável foi também criticada por sua incapacidade de defender os usuários contra a coação e tortura (criptoanálise de mangueira de borracha). De fato, alguns usuários e os desenvolvedores têm medo de que a utilização mesma de instrumentos com apoio da criptografia negável possa empurrar os atacantes a não interromper as investigações, mesmo quando o usuário arremeda de cooperar, fornecendo a chave.[9]

Ver também

editar

Referências

  1. See http://www.schneier.com/paper-truecrypt-dfs.html. Retrieved on 2013-07-26.
  2. Ran Canetti, Cynthia Dwork, Moni Naor, Rafail Ostrovsky (10 de maio de 1996), «Deniable Encryption» (PostScript), ISBN 978-3-540-63384-6, Lecture Notes in Computer Science, 1294: 90-104, doi:10.1007/BFb0052229, consultado em 5 de janeiro de 2007 
  3. http://www.freeotfe.org/docs/Main/plausible_deniability.htm
  4. «Cópia arquivada» (PDF). Consultado em 5 de novembro de 2012. Arquivado do original (PDF) em 20 de janeiro de 2012 
  5. http://www.truecrypt.org/hiddenvolume
  6. Adal Chiriliuc, BestCrypt IV generation flaw, consultado em 23 de agosto de 2006 
  7. Encrypted hard drives may not be safe: Researchers find that encryption is not all it claims to be.
  8. MultiObfuscator - Manuale: Architettura e meccanismo di difesa dal test chi quadrato
  9. http://embeddedsw.net/doc/physical_coercion.txt Julian Assange: Physical Coercion]

Bibliografia

editar