Criptografia Numaboa
Criptografia Visual *
Sab 30 Dez 2006 23:34 |
- Detalhes
- Categoria: Esteganografia
- Atualização: Sexta, 17 Abril 2009 21:48
- Autor: vovó Vicki
- Acessos: 14085
A criptografia visual foi apresentada por Naor e Shamir na EUROCRYPT '94. Eles se fizeram a seguinte pergunta: é possível criar um esquema de troca de segredo baseado numa imagem que possa ser reconstruída "visualmente" através da superposição de duas imagens irreconhecíveis?
A resposta é SIM! Uma imagem (ou um texto transformado em imagem) pode ser fracionada em duas ou mais imagens que contenham parte da informação e impressas em transparências. Observando apenas uma das frações não é possível "ver" o que ela contém, mas, se as transparências forem superpostas, a imagem será revelada.
Fracionando os pixels
Os autores criaram o esquema mostrado na figura ao lado. O algoritmo especifica a codificação de cada um dos pixels da imagem. Um pixel P é repartido em dois sub-pixels e, cada um deles, vai para uma transparência. Se P for branco ou preto, é feito um "cara ou coroa" para escolher randomicamente uma das duas possibilidades.
Digamos que o primeiro pixel da imagem seja branco e que a primeira possibilidade tenha sido escolhida - o resultado será repetido na superposição e a cor será cinza. O mesmo acontece com a segunda possibilidade.
Se o primeiro pixel for preto e a primeira possibilidade tenha sido a escolhida, o resultado da superposição será preto. O mesmo acontece quando a segunda possibilidade for a escolhida.
Observe que o resultado é o mesmo para as imagens superpostas, mas é essencialmente diferente nas transparências. Dependendo do "cara ou coroa", transparências diferentes produzem o mesmo resultado na superposição. Esta é exatamente a segurança do método - a não existência de um padrão nas transparências produzidas!
Confira o método
Este é um aplicativo on line simplificado para ilustrar como as imagens podem ser geradas. Digite uma senha qualquer (que substitui o "cara e coroa") e um texto curto. Imprima o resultado e sobreponha as imagens da transparência (use um papel fino na impressora). O resultado deve ser o da imagem sobreposta.
Quanto maior a mensagem, maior é o tempo necessário para criar as imagens. Como este é apenas um exemplo da técnica, limitei o número de caracteres a 16. A senha não é necessária, mas aumenta a segurança do método pois os pixels randômicos são gerados a partir dela. Para randomizar foi usado um fluxo ARCFOUR conforme descrito por Bruce Schneier em Applied Cryptography.
Imprima o resultado e confira o método de Naor e Shamir
Fontes
- Applied Crytography de Bruce Schneier.
- Doug Stinson's Visual Cryptography.
- Javascript original do Dr. Leemon Baird, modificado por vovó Vicki.