Historia, Tecnicas e Classificacao de Algoritmos Esteganograficos
Upcoming SlideShare
Loading in...5
×
 

Historia, Tecnicas e Classificacao de Algoritmos Esteganograficos

on

  • 3,827 views

Monografia entregue à FATEC-SP para obtenção do título de Tecnólogo em Processamento de Dados ...

Monografia entregue à FATEC-SP para obtenção do título de Tecnólogo em Processamento de Dados

Esteganografia pode ser definida como a ciência que estuda as formas de se esconder uma mensagem dentro de uma comunicação, ocultando a sua existência. Historicamente a esteganografia evoluiu em simultaneidade com a criptografia, ciência que se dedica a estudar formas de embaralhar o significado de uma mensagem, tornando-a de difícil entendimento a qualquer pessoa que não deva saber do conteúdo original. Ambas as ciências se complementam e seu uso conjunto enriquece a segurança da comunicação.
Nos dias atuais, a segurança da informação é um tema amplamente discutido e de grande relevância para a tecnologia da informação. Questões como a confidencialidade, integridade e autenticidade de uma mensagem, assim como a privacidade de uma comunicação são pontos que trazem preocupação para o cada vez crescente número de usuários da internet, que trocam milhões de mensagens a cada dia, sejam pessoais ou comerciais, que sua interceptação e divulgação poderiam comprometer grandes organizações e marcas mundialmente prestigiadas.
Em vista disto, neste trabalho, estudamos diversas técnicas de esteganografia, bem como sua evolução através da história, e propomos uma forma de classificá-las em subcategorias que reúnem técnicas cujas características básicas são similares. A partir desta classificação, pudemos evidenciar aspectos positivos e negativos de cada técnica e, aplicando o conceito de esteganografia em camadas, mostramos como o uso simultâneo de diversas técnicas de esteganografia pode fortalecer a segurança de um processo de comunicação.
Palavras-chave: Esteganografia, Criptografia, Criptologia.

Statistics

Views

Total Views
3,827
Views on SlideShare
3,827
Embed Views
0

Actions

Likes
1
Downloads
135
Comments
1

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

CC Attribution-NonCommercial LicenseCC Attribution-NonCommercial License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
  • Muito completo. Parabéns!
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Historia, Tecnicas e Classificacao de Algoritmos Esteganograficos Historia, Tecnicas e Classificacao de Algoritmos Esteganograficos Document Transcript

  • FACULDADE DE TECNOLOGIA DE SÃO PAULO HISTÓRIA, TÉCNICAS E CLASSIFICAÇÃO DE ALGORITMOS ESTEGANOGRÁFICOS Nichols Aron Jasper Monografia apresentada à Faculdade de Tecnologia de São Paulo (FATEC-SP) para obtenção do Grau de Tecnólogo em Processamento de Dados. Orientador: Prof. Dr. Silvio do Lago Pereira São Paulo 2009
  • “A essência do conhecimento consiste em aplicá-lo, uma vez possuído.” Confúcio I
  • SUMÁRIO 1. Introdução ....................................................................................................... 1 1.1 Motivação .................................................................................................. 1 1.2 Objetivos ................................................................................................... 2 1.3 Organização .............................................................................................. 2 2. Criptologia ....................................................................................................... 4 2.1 Classificação da Criptologia ...................................................................... 4 2.2 Esteganografia .......................................................................................... 5 2.3 Criptografia ................................................................................................ 5 2.3.1 Cifras e Códigos ................................................................................. 6 2.3.2 Protocolos de Comunicação (Criptografia Simétrica e Assimétrica) ... 9 2.3.2.1 Criptografia Simétrica ................................................................. 10 2.3.2.2 Criptografia Assimétrica ............................................................. 11 2.3.3 Criptografia Quântica ........................................................................ 14 2.3.3.1 Criptografia Clássica X Criptografia Quântica ............................ 14 2.4 Criptoanálise ........................................................................................... 19 2.5 Considerações Finais .............................................................................. 19 3. Segurança da Informação ............................................................................. 20 3.1 Conceitos de Segurança da Informação ................................................. 20 3.1.1 Confidencialidade ............................................................................. 20 3.1.2 Integridade ........................................................................................ 21 3.1.3 Disponibilidade.................................................................................. 22 3.1.4 Autenticidade .................................................................................... 23 3.1.5 Não-Repúdio..................................................................................... 25 3.2 Considerações Finais .............................................................................. 26 4. História da Esteganografia ............................................................................ 27 4.1 Esteganografia na Idade Antiga .............................................................. 27 4.1.1 – Tabuletas de Demarato ................................................................. 27 4.1.2 – Histaeu e o Mensageiro ................................................................. 28 4.1.3 – Enéas, o Tático .............................................................................. 29 4.2 Esteganografia na Idade Média ............................................................... 30 4.2.1 Os Chineses ..................................................................................... 30 4.3 Esteganografia na Idade Moderna .......................................................... 31 4.3.1 Gaspar Schott – Schola Steganographica ........................................ 31 4.3.2 Johannes Trithemius......................................................................... 32 4.3.3 A Grelha de Cardano, Richelieu e Fleissner ..................................... 33 4.3.4 Giovanni Porta .................................................................................. 35 4.3.5 Francis Bacon ................................................................................... 35 4.3.6 John Wilkins ...................................................................................... 36 4.3.7 Maria, Rainha da Escócia ................................................................. 37 4.3.8 George Washington .......................................................................... 38 4.4 Esteganografia na Idade Contemporânea ............................................... 39 4.4.1 Pombos Correios em Paris ............................................................... 39 4.4.2 Códigos em Jornais .......................................................................... 40 4.4.3 Tapetes da Guerra Civil .................................................................... 40 4.4.4 Código Náutico ................................................................................. 41 II
  • 4.4.5 Micropontos e Segunda Guerra Mundial .......................................... 44 4.4.6 UUS Pueblo ...................................................................................... 45 4.4.7 Guerra do Vietnã............................................................................... 46 4.5 Considerações Finais .............................................................................. 47 5. Técnicas de Esteganografia.......................................................................... 48 5.1 Classificação da Esteganografia ............................................................. 48 5.2 Esteganografia Técnica ........................................................................... 48 5.2.1 Esteganografia Digital ....................................................................... 49 5.2.2 Tintas Invisíveis ................................................................................ 50 5.2.3 Lugares Escondidos ......................................................................... 50 5.2.4 Métodos Computacionais ................................................................. 51 5.2.5 Micropontos ...................................................................................... 51 5.2.6 Marcas D’água .................................................................................. 51 5.2.6.1 Classificação das Marcas D’água .............................................. 53 5.3 Esteganografia Lingüística ...................................................................... 53 5.3.1 Códigos Abertos ............................................................................... 53 5.3.2 Semagramas..................................................................................... 55 5.3.3 Anamorfose ...................................................................................... 57 5.4 Categorias de Esteganografia ................................................................. 59 5.4.1 Inserção ............................................................................................ 59 5.4.2 Sistemas de Substituição .................................................................. 59 5.4.3 Transformação de Domínio .............................................................. 61 5.4.4 Espalhamento de Espectro ............................................................... 61 5.4.5 Métodos Estatísticos ......................................................................... 62 5.4.6 Distorção ........................................................................................... 62 5.4.7 Geração de Cobertura ...................................................................... 62 5.4.7.1 Máscara Perceptiva.................................................................... 63 5.5 Problemas para esconder as informações .............................................. 63 5.6 Esteganálise ............................................................................................ 64 5.6.1 Ataques de Esteganálise .................................................................. 65 5.7 Considerações Finais .............................................................................. 66 6. Classificação de Algoritmos Esteganográficos ............................................. 67 6.1 Critérios Adotados ................................................................................... 67 6.2 Classificação e Algoritmos utilizados....................................................... 68 6.2.1 Classificação das Tintas Invisíveis.................................................... 70 6.2.2 Classificação dos Lugares Escondidos............................................. 71 6.2.3 Classificação da Esteganografia Digital ............................................ 72 6.2.4 Classificação dos Códigos Abertos................................................... 73 6.2.5 Classificação dos Semagramas ........................................................ 75 6.3 Combinação de Subcategorias ............................................................... 76 6.4 Considerações Finais .............................................................................. 78 7. Conclusão ..................................................................................................... 79 Referências Bibliográficas................................................................................. 81 Bibliografia Consultada ..................................................................................... 85 III
  • LISTA DE FIGURAS Figura 2.1 - Estrutura da Criptologia ................................................................... 4 Figura 2.2 - Funcionamento da Criptografia........................................................ 6 Figura 2.3 Cifra de Transposição ........................................................................ 7 Figura 2.4 Cifra de Substituição .......................................................................... 7 Figura 2.5 Disco de Alberti .................................................................................. 8 Figura 2.6 - Modelo simplificado de criptografia convencional .......................... 10 Figura 2.7: Processo de Criptografia Assimétrica ............................................. 12 Figura 2.8 – Processo de encriptação com o PGP ........................................... 13 Figura 2.9 – Processo de decriptação com o PGP ........................................... 14 Figura 2.10 – Polarização possível dos fótons.................................................. 16 Figura 2.11 – Medições corretas dos fótons ..................................................... 17 Figura 2.12 – Medições possíveis quando o filtro incorreto é escolhido. .......... 17 Figura 2.13 – Transmissão dos fótons entre Alice e Beto ................................. 18 Figura 2.14 – Criação da Chave após as medições dos fótons ........................ 18 Figura 3.1 – Confidencialidade das Informações .............................................. 21 Figura 3.2 – Integridade das Informações......................................................... 22 Figura 3.3 – Integridade das Informações......................................................... 23 Figura 3.4 – Autenticidade utilizando Chave Assimétrica ................................. 24 Figura 3.5 – Assinatura Digital utilizando algoritmos de chave pública ............. 25 Figura 3.6 – Conferência através da Assinatura Digital .................................... 25 Figura 4.1 – Exemplo de mensagem tatuada no corpo .................................... 29 Figura 4.2 – Bolo da lua atual ........................................................................... 30 Figura 4.3 – Foto de Partitura com a representação de notas e letras ............. 31 Figura 4.4 – Mensagem esteganografada pelo algoritmo “Ave Maria” ............. 33 Figura 4.5 – Exemplo da Grelha de Cardano.................................................... 34 Figura 4.6 – Exemplo da Grelha de Fleissner. .................................................. 34 Figura 4.7 – Alfabeto de Bacon......................................................................... 36 Figura 4.8 – Nomenclatura utilizada por Maria e seus conspiradores .............. 37 Figura 4.9 – Carta trocada entre Maria e seus conspiradores .......................... 38 Figura 4.10 – Página do livro de códigos utilizado entre Washington e os Culpers.............................................................................................................. 39 Figura 4.11 - Reúnam seus pertences para a viagem. ..................................... 40 Figura 4.12 – O caminho da liberdade .............................................................. 41 Figura 4.13 – Código Náutico (1/3) ................................................................... 42 Figura 4.13 – Código Náutico (2/3) ................................................................... 43 Figura 4.13 – Código Náutico (3/3) ................................................................... 44 Figura 4.14 – Foto dos prisioneiros do U.S. Navy Pueblo................................. 46 Figura 5.1 – Classificação da Esteganografia ................................................... 48 Figura 5.2 – Processo esteganográfico ............................................................ 49 Figura 5.3 – Exemplo de Marca D’Água ........................................................... 52 Figura 5.4 – Acróstico ....................................................................................... 54 Figura 5.5 – Hieróglifos egípcios....................................................................... 56 Figura 5.6 – Letra A representada por um relógio ............................................ 56 Figura 5.7 – Palavras transmitidas via um semagrama visual com relógios ..... 57 Figura 5.8 – Semagrama Textual com espaçamento entre palavra. ................. 57 IV
  • Figura 5.9– Os Embaixadores de Hans Holbein ............................................... 58 Figura 5.10– Detalhe do quadro escondido por técnica de anamorfose ........... 58 Figura 5.11 – Composição de um pixel em uma imagem em meio digital ........ 60 Figura 5.12 – Site www.spammimic.com .......................................................... 63 V
  • LISTA DE TABELAS Tabela 1 - Diferenças entre Esteganografia e Criptografia ................................. 5 Tabela 2 - Classificação das Cifras ..................................................................... 9 Tabela 3 - Algoritmos Simétricos ...................................................................... 11 Tabela 4 - Algoritmos Assimétricos .................................................................. 13 Tabela 5 - Alfabeto utilizado na Cifra de Bacon. .............................................. 35 Tabela 6 - “Tap Code” usado pelos prisioneiros no Vietnã ............................... 47 Tabela 7 - Diferenças entre Esteganografia e Marcas D’água.......................... 52 Tabela 8 - Subcategorias, Descrições e Algoritmos ......................................... 69 Tabela 9 - Classificação da subcategoria Tintas Invisíveis ............................... 70 Tabela 10 - Classificação da subcategoria Lugares Escondidos ...................... 71 Tabela 11 - Classificação da subcategoria Esteganografia Digital ................... 72 Tabela 12 - Classificação da subcategoria Códigos Abertos ............................ 73 Tabela 13 - Classificação da subcategoria Semagramas ................................. 75 Tabela 14 - Comparação das classificações das subcategorias....................... 76 Tabela 15 - Benefícios do uso combinado de Lugares Escondidos e Semagramas ..................................................................................................... 77 Tabela 16 - Benefícios do uso combinado de Tintas invisíveis e Códigos abertos .............................................................................................................. 77 Tabela 17 - Benefícios do uso combinado de Esteganografia digital e Lugares escondidos ........................................................................................................ 78 VI
  • LISTA DE SIGLAS BMP Bitmap CFB Cipher Feedback DES Data Encryption Standard (Padrão de Encriptação de Dados) DSS Digital Signature Standard (Padrão de Assinatura Digital) IDEA International Data Encryption Algorithm (Algoritmo de Encriptação de Dados Internacional) ISO International Organization for Standardization (Organização Internacional para Padronização) JPEG Joint Photographic Experts Group LSB Least Significant Bit (Bit menos significativo) MP3 MPEG-1/2 Audio Layer 3 NATO North Atlantic Treaty Organization (Organização do Tratado do Atlântico Norte) NBR Norma Brasileira OFB Output Feedback PCBC Propagating cipher-block chaining (corrente de blocos em propagação) PGP Pretty Good Privacy RC5 Rivest Cipher/ Ron's Code 5 RGB Padrão RGB – Red, Green, Blue RSA Iniciais do sobrenome de Ronald Rivest, Adi Shamir e Leonard Adleman WAV Formato de áudio WAVE VII
  • CURRICULUM VITAE Nichols Aron Jasper, nascido no dia 03 de junho de 1988, na cidade de São Paulo, São Paulo, cursa Processamento de Dados pela Faculdade de Tecnologia de São Paulo. VIII
  • RESUMO Esteganografia pode ser definida como a ciência que estuda as formas de se esconder uma mensagem dentro de uma comunicação, ocultando a sua existência. Historicamente a esteganografia evoluiu em simultaneidade com a criptografia, ciência que se dedica a estudar formas de embaralhar o significado de uma mensagem, tornando-a de difícil entendimento a qualquer pessoa que não deva saber do conteúdo original. Ambas as ciências se complementam e seu uso conjunto enriquece a segurança da comunicação. Nos dias atuais, a segurança da informação é um tema amplamente discutido e de grande relevância para a tecnologia da informação. Questões como a confidencialidade, integridade e autenticidade de uma mensagem, assim como a privacidade de uma comunicação são pontos que trazem preocupação para o cada vez crescente número de usuários da internet, que trocam milhões de mensagens a cada dia, sejam pessoais ou comerciais, que sua interceptação e divulgação poderiam comprometer grandes organizações e marcas mundialmente prestigiadas. Em vista disto, neste trabalho, estudamos diversas técnicas de esteganografia, bem como sua evolução através da história, e propomos uma forma de classificá-las em subcategorias que reúnem técnicas cujas características básicas são similares. A partir desta classificação, pudemos evidenciar aspectos positivos e negativos de cada técnica e, aplicando o conceito de esteganografia em camadas, mostramos como o uso simultâneo de diversas técnicas de esteganografia pode fortalecer a segurança de um processo de comunicação. Palavras-chave: Esteganografia, Criptografia, Criptologia. IX
  • ABSTRACT Steganography can be defined as the science that studies the ways of hiding a message within a communication, hiding its existence. Historically, steganography has evolved simultaneously with criptography, the science dedicated to studying ways to scramble the meaning of a message, making it difficult to understand to anyone who should not know the original content. Both sciences are complementary and their combined use enhances the security of communication. Nowadays, information security is a topic widely discussed and highly relevant to information technology. Issues such as confidentiality, integrity and authenticity of a message, as well as privacy of communication are points that bring concern to the ever growing number of Internet users, exchanging millions of messages each day, whether personal or business, which the interception and disclosure could compromise large organizations and prestigious brands worldwide. In front of this, in this work, we study various techniques of steganography, as well as its evolution through history, and propose a way to classify them in subcategories grouping techniques whose basic characteristics are similar. By using this classification, we can evince positive and negative aspects of each technique and, by applying the concept of steganography in layers, we also show how the simultaneous use of several techniques of steganography can strengthen the security of a communication process. Keywords: Steganography, Cryptography, Cryptology. X
  • 1. Introdução 1.1 Motivação Atualmente a nossa vida está cercada pela criptografia e esteganografia. Mesmo que muitos de nós não tenhamos conhecimento desse fato, boa parte das conexões feitas através da Internet são criptografadas de modo a prover maior segurança nas transações feitas entre cliente e servidor. Mas não podemos deixar de lado a importância da esteganografia no curso da história humana. Desde antes de Cristo as técnicas esteganográficas conseguem suprir um ponto que a criptografia não consegue: a ocultação da mensagem. Sendo a existência ou não da mensagem um ponto crucial para garantir a segurança da mesma, a Esteganografia foi e continua sendo de grande importância no cenário mundial. Durante milhares de anos, reis, rainhas e generais dependeram de comunicações eficientes de modo a governar seus países e comandar seus exércitos. Ao mesmo tempo, todos estavam cientes das conseqüências de suas mensagens caírem em mãos erradas, revelando segredos preciosos a nações rivais ou divulgando informações vitais para as forças inimigas [SINGH, 2008]. Por diversas vezes no decorrer da história, mensagens criptografadas foram interceptadas, mas não conseguiram ser descobertas graças à esteganografia, que tem auxiliado no segredo da existência de uma mensagem há vários séculos [KIPPER, 2004]. Apesar da importância da esteganografia, no entanto, não encontramos um material que reunisse as diversas técnicas existentes e que classificasse os algoritmos esteganográficos de modo a facilitar a criação de novos algoritmos a partir da combinação daqueles já existentes, utilizando qualidades e equilibrando as fraquezas inerentes a cada um. 1
  • 1.2 Objetivos Visto o vasto conteúdo existente sobre esteganografia foi constatado que, por mais profundas que fossem as publicações, todo o conhecimento estava espalhado, sem nenhuma publicação que agregasse toda essa vastidão de saber de forma centralizada e mantivesse a qualidade das publicações originais. Assim, a principal finalidade deste trabalho é realizar uma análise profunda de diversas técnicas de esteganografia usadas no decorrer da história e utilizar critérios de Segurança da Informação para classificar os diversos algoritmos correspondentes. A partir desta classificação, esperamos evidenciar aspectos positivos e negativos de cada técnica e mostrar como o uso simultâneo de diversas técnicas de esteganografia (em camadas) pode fortalecer a segurança de um processo de comunicação. 1.3 Organização O restante deste trabalho está organizado conforme descrito a seguir: 1. Introdução Apresentação da motivação para realização do trabalho, objetivos principais e organização do conteúdo. 2. Criptografia Apresentação de conceitos de criptografia, como origem, fundamentos e alguns algoritmos utilizados durante a história. 3. Segurança da Informação Definição dos conceitos de segurança da informação, sua relação com a os algoritmos criptográficos e esteganográficos. 4. História da Esteganografia Apresenta conceitos básicos sobre Esteganografia e retrata um pouco da história e personagens que contribuíram para a ciência esteganográfica ao longo dos séculos. 2
  • 5. Técnicas Esteganográficas Apresenta conceitos avançados sobre esteganografia, sendo este capítulo a compilação, adaptação e aprimoramento de diversos materiais, tentando abranger de forma clara e funcional diversas vertentes esteganográfica, além de mostrar o seu uso na atualidade. 6. Classificação dos Algoritmos Esteganográficos Classificação dos algoritmos apresentados segundo critérios de segurança da informação, eficiência e eficácia dos algoritmos e outros critérios mais específicos. 7. Conclusão Conclusão do trabalho com base nos resultados obtidos. 3
  • 2. Criptologia Neste capítulo são apresentadas diversas características da criptografia que posteriormente serão utilizadas para classificação dos algoritmos esteganográficos, já que muitas de suas utilizações combinam técnicas cripto-esteganográficas, ou seja, mesclam características da criptografia e da esteganografia. A seguir definiremos alguns conceitos para facilitarmos nossa classificação e estudo. 2.1 Classificação da Criptologia “A criptologia é a área de conhecimento em que estão reunidos os estudos da criptografia e da criptoanálise” [OLIVEIRA, 2005]. Nela estão inclusos conhecimentos de diversas ciências, como matemática e filologia, necessários aos estudos da criptografia, esteganografia e criptoanálise. A Figura 2.1 ilustra as subdivisões da criptologia, que terá seus conceitos tratados no decorrer do capítulo. Figura 2.1 - Estrutura da Criptologia Fonte: Própria. Baseado em TKOTZ, ALDEIA NUMABOA - Esteganografia. Disponível em: http://www.numaboa.com.br/criptologia/intro.php. Acesso em: 11/04/2009 4
  • 2.2 Esteganografia Esteganografia é a arte de esconder mensagens e informações, tendo como objetivo a comunicação em segredo. A esteganografia grava uma mensagem confidencial dentro de outra, que funciona como uma portadora, só que mais extensa. O objetivo é alterar a mensagem portadora de tal forma que o resultado seja imperceptível [PETRI, 2004]. Segundo KIPPER [2004], a esteganografia difere da criptografia nos seguintes aspectos, relacionados na Tabela 1. ESTEGANOGRAFIA CRIPTOGRAFIA Oculta a mensagem em outro objeto A mensagem é visível, mas cifrada de aparência inocente, como imagens, torna-se uma mistura de caracteres vídeos, sons ou arquivos. sem qualquer significado. Uma coleção de imagens, vídeos ou Pelo fato da existência da mensagem sons que não geram suspeitas. estar em evidência, a coleção de caracteres aleatórios gera muita suspeita e curiosidade. Requer cuidado quando reutilizar Requer cuidado ao reutilizar chaves. arquivos de som ou imagem. Não existem leis regulamentando ou Existem algumas leis que, inclusive, proibindo o uso de Esteganografia. proíbem seu uso. Tabela 1 - Diferenças entre Esteganografia e Criptografia 2.3 Criptografia A criptografia é uma ciência que, ao contrário da esteganografia, não se dedica a esconder a presença da mensagem secreta, mas tornar as mensagens ininteligíveis para pessoas externas à comunicação através de diversas transformações do texto original [KAHN, 1967]. A Criptografia se desenvolveu ao longo da história em paralelo com a Esteganografia, e tem o seu nome devido à junção das palavras Kryptos (oculto) e Graphein (Escrita), sendo a Criptografia a ciência que se dedica ao estudo das escritas secretas. O objetivo da criptografia não é ocultar a existência de uma mensagem, e sim esconder o seu significado – um processo conhecido como encriptação [SINGH, 2008]. O processo consiste em utilizar um algoritmo criptográfico em uma mensagem e transformá-la em uma mensagem criptografada ou texto cifrado. O processo inverso 5
  • consiste na utilização de um algoritmo descriptográfico que permite obter o texto original a partir do texto cifrado. A Figura 2.2 ilustra esse processo. Figura 2.2 - Funcionamento da Criptografia Fonte: http://www.lsi.usp.br/~elima/seguranca_cripto.html - Acessado em 04/05/2009. 2.3.1 Cifras e Códigos A criptografia trabalha com cifras e códigos. Um código envolve a substituição de uma palavra ou frase por uma palavra, um número ou símbolo. Uma alternativa ao código é a cifra, uma técnica que age num nível mais fundamental, onde as letras, no lugar de palavras, são substituídas [SINGH, 2008] Sendo assim, códigos trocam, por exemplo, “Ataque ao Anoitecer” por “Falcão Negro”, enquanto uma cifra utilizaria um algoritmo para transformar a representação da mensagem, e não seu significado, tornando-a algo como “fufacm fi feijumbmp”, um exemplo de cifra de substituição. As cifras podem ser subdivididas em dois ramos: conhecido como transposição e substituição. Na transposição, as letras da mensagem são simplesmente rearranjadas, gerando, efetivamente, um anagrama [SINGH, 2008]. Um dos exemplos da cifra de transposição é a cifra de colunas. Na cifra das colunas, o texto a cifrar é escrito por colunas, com passagem para a coluna seguinte sempre que se atingir o número máximo de linhas. Por exemplo, se tivermos três linhas, cada uma podendo ter 10 colunas e quisermos cifrar a mensagem: “ESTE TCC FALA DE ESTEGANOGRAFIA” ela ficaria dessa forma: 6
  • E E C L E T AG F S T F A E E N R I T C A D S G O A A Figura 2.3 Cifra de Transposição E seria lida da seguinte forma: EECLETAGFSTFAEENRITCADSGOAA Como vemos, sem o conhecimento do algoritmo de transposição não há como saber o real significado da mensagem. Nesse caso, sem saber que o número de linha é igual a 3, não é possível decifrar corretamente a mensagem. As cifras de substituição produzem criptogramas nos quais as letras do texto original, tratadas individualmente ou em grupos de comprimento constante, são substituídas por outras letras, figuras, símbolos ou uma combinação destes de acordo com um sistema predefinido e uma chave [TKOTZ, 2007a]. As cifras de substituição podem ser monoalfabéticas ou polialfabéticas. A Figura 2.4 mostra como a cifra de substituição funciona. Figura 2.4 Cifra de Substituição Fonte: http://pt.wikipedia.org/wiki/Cifra_de_substitui%C3%A7%C3%A3o – Acessado em 11/04/2009 Na primeira linha há um trecho do alfabeto normal, enquanto na segunda linha há o alfabeto deslocado 13 posições (processo denominado ROT13, pois rotaciona as 13 posições iniciais do alfabeto latino com as 13 posteriores). Em seguida, uma mensagem, “HELLO”, tem cada letra substituída por uma letra 13 posições à sua frente. Falando em termos de algoritmos computacionais, podemos dizer que LETRA = POSIÇÃO LETRA 7
  • + 13. Assim, a letra “A” se transformaria em “N” e a letra “B” se transformaria em “O”, seguindo o algoritmo por todo o alfabeto. Na substituição monoalfabética, também conhecida como substituição simples, substitui-se cada um dos caracteres do texto original por outro, de acordo com uma tabela pré-estabelecida, para se obter o texto cifrado. As cifras de substituição simples mais antigas são o Atbash e o Código de César. É utilizada até hoje em computadores, onde são substituídos bits ou blocos de bits em vez de caracteres [TKOTZ, 2003]. A substituição polialfabética utiliza mais de um alfabeto para realizar a cifragem, medida essa que pode ser implementada com o uso de uma palavra-chave que orientará a cifragem de cada letra da mensagem. A cifra polialfabética mais antiga utiliza pelo homem é o Disco de Alberti, criado por Leon Battista Alberti em 1466. Figura 2.5 Disco de Alberti Fonte: Criptografia numa boa - http://www.numaboa.com/criptografia/127-substituicao- polialfabetica/164-alberti - Acessada em 11/04/2009 O Disco de Alberti é composto por dois anéis concêntricos, um externo (fixo) e um interno (móvel). O anel externo é fixo, com 24 casas contendo 20 letras latinas maiúsculas (incluindo o Z, com U=V e excluindo H J K W Y) e os números 1, 2, 3, e 4 para o texto claro. O anel interno é móvel, com as 24 letras latinas minúsculas para o texto cifrado. As 20 letras maiúsculas estão em ordem alfabética e as 24 minúsculas estão desordenadas. Para cifrar o texto fixa-se uma letra minúscula como sendo o início de um alfabeto e deve-se escrever a letra maiúscula acima dela como sendo a letra que o irá representar. 8
  • As cifras também podem ser classificadas conforme a relação entre o tamanho final da mensagem cifrada e seu tamanho inicial, como vemos na Tabela 2: Tipo de Cifra Característica Monogrâmica Cada caractere do texto claro é substituído por outro, portanto o comprimento da mensagem cifrada é igual ao da mensagem original. Poligrâmica Grupos de caracteres do texto original são substituídos por um ou mais caracteres, podendo o texto cifrado não possuir o mesmo tamanho do texto original. Tomogrâmica São os sistemas nos quais cada letra é substituída por um grupo de duas ou mais letras ou símbolos, sendo o comprimento do texto cifrado necessariamente maior que o do texto original. Tabela 2 - Classificação das Cifras 2.3.2 Protocolos de Comunicação (Criptografia Simétrica e Assimétrica) Além da classificação das cifras segundo seu método ou relação do tamanho das mensagens, é possível classificá-las em relação às suas chaves. Com relação às chaves, existem dois tipos de criptografia: o sistema de chave simétrica e o sistema de chave assimétrica, que diferem na quantidade de chaves utilizadas e em seus algoritmos. Uma chave criptográfica é o valor numérico ou código usado com um algoritmo criptográfico para transformar, validar, autenticar, cifrar e decifrar dados [ICPBRASIL, 2009]. Outra forma de classificar as cifras é baseada na forma como elas tratam cada letra da string original. Nos criptosistemas onde temos cada letra sendo tratada individualmente pelo algoritmo para a geração do texto cifrado, nós temos o que é chamado de Cifra de Fluxo. [STIMSON, 1995]. Computacionalmente as cifras de fluxo não são amplamente utilizadas pela dificuldade de se implementar um gerador randômico para cada bit da mensagem. 9
  • As cifras de bloco operam em blocos de tamanho fixo, geralmente de 64 ou 128 bits. Caso a mensagem a ser cifrada possua um tamanho maior do que o bloco do algoritmo são utilizados os chamados modos de operação, que são as formas algorítmicas de como o problema será tratado. Entre os modos de operação1 mais conhecidos estão o algoritmo de Feistel, o PCBC, o CFB e o OFB [TKOTZ, 2005a]. 2.3.2.1 Criptografia Simétrica A Criptografia Simétrica, também conhecida por Criptografia Convencional ou Criptografia de Chave Privada, é um método que faz uso de uma chave secreta ou chave única para realizar os processos de encriptação e decriptação [PETRI, 2004]. A questão de simetria se refere ao fato de a mesma chave ser utiliza no processo de conversão do texto plano em texto cifrado e do texto cifrado em texto plano. Nesse sistema, o usuário que cifra a mensagem também pode decifrá-la, já que a chave que se encontra em sua posse serve para ambas as operações. A chave precisa ser mantida em segredo, para que haja segurança no sistema. A Figura 2.6 ilustra como ocorre o processo simétrico de criptografia, onde Alice e Beto utilizam a mesma chave, Alice para criptografar e Beto para descriptografar a mensagem. Figura 2.6 - Modelo simplificado de criptografia convencional Fonte: MISAGHI [2001] O maior problema da criptografia simétrica reside na distribuição de chaves. Uma vez descoberta uma das chaves, todo o processo se torna inseguro, pois qualquer pessoa poderia cifrar ou decifrar as mensagens. 1 Para uma explicação gráfica das cifras de bloco, consulte: ftp://ftp.registro.br/pub/gts/gts14/02-a-Modos-Operacao-Block-Cipher.pdf - Acesso em 06/12/2009. 10
  • Conforme [SINGH, 2008] salienta, a distribuição de chaves pode parecer uma questão banal, mas é um problema crucial para os usuários da criptografia simétrica. A Tabela 3 descreve algum dos principais algoritmos simétricos utilizados na atualidade: Algoritmo Tamanho Descrição da Chave DES (Data Encryption 64 BITS É um codificador composto, que cifra blocos de 64 bits (8 caracteres) em blocos de 64 bits, Standard) para isso se utiliza de uma chave composta por 56 bits, com 8 bits de paridade totalizando 64 bits. Utiliza o Algoritmo de Feistel. DES Triplo 112 BITS Alternativa do DES original, com variação de três diferentes chaves. O DES é aplicado três vezes, com a mesma chave ou com chaves diferentes. IDEA 128 BITS A filosofia que norteou este projeto foi "misturar operações de grupos algébricos diferentes" para misturar os caracteres iniciais de forma a ficarem incompreensíveis. RC5 Tamanho A mensagem original é fornecida ao algoritmo sob a forma de dois blocos de w variável bits, correspondendo ao alinhamento mais conveniente para o sistema em causa, os valores típicos para w são: 16, 32 e 64. A mensagem cifrada possui forma idêntica. Tabela 3 - Algoritmos Simétricos 2.3.2.2 Criptografia Assimétrica Segundo MISAGHI [2001], na Criptografia Assimétrica, também chamada de Criptografia de Chave Pública, utiliza-se de duas chaves matematicamente relacionadas 11
  • uma chave pública e outra chave privada. Se for utilizada a chave pública para cifrar, deve-se utilizar a chave privada para decifrar, e vice-versa. A idéia de um sistema onde o problema das distribuições de chaves, inerente aos sistemas simétricos, fosse superado foi uma das maiores revoluções da criptografia desde o seu surgimento [SINGH, 2008]. Há controvérsias sobre sua origem: há dúvidas se ela teria sido concebida por Whitfield Diffie, Martin Hellman e Ralph Merkle, por volta de 1975 nos EUA ou por James Ellis, criptógrafo britânico, no final da década de 1960. Como James trabalhava para o serviço secreto da Inglaterra, seus avanços tiveram que permanecer em sigilo durante vários anos. Independente de quem iniciou a revolução, o trabalho dos acadêmicos envolvidos deve ser reconhecido, sobretudo por terem trabalhado de forma independente de um dos maiores avanços criptográfico da história, pois ambos os estudos se desenvolveram sem o conhecimento um do outro, dos lados opostos do Atlântico. A imagem a seguir ilustra seu funcionamento: Figura 2.7: Processo de Criptografia Assimétrica Fonte: MISAGHI [2001] Na criptografia de chave pública os seguintes passos são seguidos: 1) Cada usuário gera um par de chaves que será utilizado para cifrar e decifrar; 2) Cada usuário disponibiliza a sua chave pública em um local público, para que todos que queiram enviar uma mensagem tenham acesso; 3) A chave privada do usuário deve ser mantida em um local seguro, de forma que somente o próprio usuário tenha acesso; 12
  • 4) Quando A deseja enviar uma mensagem para B, ela utiliza a chave pública do B para cifrar a mensagem; 5) Quando B recebe esta mensagem, ele poderá decifrá-la utilizando a sua chave privada. Sendo mantida em segredo, somente B poderá decifrar a mensagem com sua chave privada. Alguns dos principais algoritmos de chave pública são comentados na Tabela 4. Algoritmo Descrição RSA O pioneiro das chaves públicas é o padrão atual para criptografia de chave assimétrica. Tem sua base em funções modulares baseadas em números primos, são também conhecidas como função de mão única, dado que a volta do algoritmo demanda um esforço computacional altíssimo. El Gamal Utilizadas em assinaturas digitais, que consistem na criação de um código a partir de uma chave privada, que autentica um e DSS documento de modo que qualquer tentativa de modificação é detectada, além de verificar o remetente com um “RG digital”. Tabela 4 - Algoritmos Assimétricos Vale ressaltar que há algoritmos, como o PGP (Pretty Good Privacy), que mescla algoritmos simétricos (IDEA) e algoritmos assimétricos (RSA), para garantir a autenticidade e a privacidade das mensagens. As Figuras 2.8 e 2.9 ilustram o processo de ida e volta do PGP. Figura 2.8 – Processo de encriptação com o PGP Fonte: Cryptography - Intro To Cryptography – PGP Corporation, 2003, p.14 13
  • Figura 2.9 – Processo de decriptação com o PGP Fonte: Cryptography - Intro To Cryptography – PGP Corporation, 2003, p.14 2.3.3 Criptografia Quântica Analisaremos os princípios básicos da criptografia quântica, para que nossa classificação dos algoritmos cripto-esteganográficos seja mais completa e atualizada. A Criptografia Quântica trata da utilização de princípios físicos da matéria para permitir criar uma chave secreta que não pode ser quebrada, tendo como seu principal pilar teórico o princípio da incerteza de Heisenberg [NETO E DUARTE, 2003]. A física clássica presumia ser possível, para um sistema microscópico, determinar por meio de observação, de forma precisa, a posição e o momento de um objeto, por exemplo, um elétron [NETO E DUARTE, 2003]. Porém um alemão ousou refutar esse paradigma e criou um princípio que levaria o seu nome. Segundo o princípio da incerteza, não se pode conhecer com precisão absoluta a posição ou o momento (e, portanto, a velocidade) de uma partícula. Isto acontece porque, para medir qualquer um desses valores, acabamos os alterando com nossa interferência nos sistemas, e isto não é uma questão de medição, mas sim de física quântica e da natureza das partículas [SANTOS E ALVES, 2007]. Por exemplo, ao medirmos a posição da Lua através de reflexão de radar, a perturbação que causamos em função da massa da Lua pode ser desprezada. Já em sistemas quânticos microscópicos a influência é relevante [NETO E DUARTE, 2003, p.4]. 2.3.3.1 Criptografia Clássica X Criptografia Quântica A criptografia clássica possui alguns pontos falhos, independente da cifra, simétrica ou assimétrica, que for utilizada no processo. 14
  • “Em relação aos algoritmos de chave simétrica, o problema reside em como manter um canal seguro para a troca de chaves, visto que sua interceptação já coloca em risco todo o processo. Já os algoritmos de chave pública têm sua segurança baseada na intratabilidade computacional pelo fato de que os algoritmos de fatoração para os computadores atuais são de ordem exponencial, o que praticamente invalida a quebra do protocolo” [UFCG, 2002]. Porém, com o advento dos computadores quânticos2, esse tempo deve diminuir exponencialmente, pois para algumas aplicações, sua velocidade deverá ser muito superior às máquinas modernas [BELISÁRIO, 2009]. As operações que hoje são realizadas de forma seqüencial seriam realizadas de forma simultânea, seguindo os princípios da física quântica (superposição de estados e a existência de muitos universos) [SINGH, 2008]. Uma saída para esses problemas é encontrada na Criptografia Quântica cuja segurança é baseada nas leis da Física Quântica, e promete que: 1) Se alguém interceptar a troca de chaves será possível detectar sua presença. 2) Se as chaves são usadas no método simétrico, então segurança completa é obtida. [UFCG, 2002]. Sendo assim, a idéia da Criptografia Quântica está justamente na utilização de propriedades quânticas, como enunciada no princípio de Heisenberg. Desse modo, se algum espião tentar ler a informação que está sendo enviada através de um canal quântico, irá modificá-la (ele irá “distorcer” a interpretação de alguns fótons), sendo possível perceber sua presença. A computação quântica introduz o conceito de qubit (bit quântico), que além dos dois estados tradicionais de um bit pode estar num estado de superposição coerente de ambos [SCHNEIDER, 2005]. Os números quânticos descrevem as energias dos elétrons nos átomos e são de enorme relevância quando se trata de descrever a posição dos elétrons nos átomos. Existem quatro números quânticos, mas a criptografia quântica se baseia em um deles, o número quântico do Spin, que se refere a duas orientações possíveis para o eixo do spin de um elétron. Os valores possíveis são +1/2 e -1/2, que indicam o sentido de rotação do elétron sobre o seu próprio eixo [JÚNIOR, 2009]. O primeiro algoritmo de criptografia quântica foi proposto por Bennett e Brassard em 1984 e apresentava as seguintes bases para codificação dos qubits: 2 Um computador quântico é um dispositivo que executa cálculos fazendo uso direto de propriedades da mecânica quântica, O principal ganho desses computadores é a possibilidade de resolver em tempo eficiente, alguns problemas que na computação clássica levariam tempo impraticável, como por exemplo: fatoração, busca de informação em bancos não ordenados etc. Em 2009, data desta monografia, a prática da computação quântica ainda é, ao menos publicamente, incipiente. 15
  • “A base retilínea consiste nos estados de polarização3 horizontal (0°, representado por ) e vertical (90°, representado por ), representando 0 e 1, respectivamente. Assim, se Alice deseja enviar um "0" a Beto, ela envia um fóton no estado polarizado , se deseja enviar um "1", envia o estado . A base diagonal consiste também em dois estados ortogonais sendo um estado polarizado em 45° (representado por ) e o outro polarizado em 135° (representado por ), representando 0 e 1 respectivamente. Assim, se Alice deseja enviar um "0" a Beto, ela envia um fóton no estado polarizado e se deseja enviar um "1", envia o estado ” [UFCG,2002]. A Figura 2.10 ilustra melhor a representação dos bits: Figura 2.10 – Polarização possível dos fótons Fonte: Certinews – Sérgio Leal, 2003 – Disponível em https://www.certisign.com.br/certinews/edicoes/certnews_06/sleal.htm - Acessado em 21 de Abril de 2009 “O conceito principal para o funcionamento da criptografia quântica é o fato de que um qubit não pode ser observado sem que isso promova alterações em seu valor. Essa afirmação baseia-se no Princípio da Incerteza de Heisenberg.” [LEAL, 2003] O processo de transmissão entre o emissor e o receptor é detalhado a seguir: O emissor passa, então a enviar uma série deles anotando a polarização de cada um deles na ordem em que vai ser enviada. O receptor, por sua vez, prepara uma série de filtros adequados para medir a polarização dos fótons e passa a efetuar as medidas anotando também a ordem que utilizou nos filtros e o resultado que obteve. Após uma série de alguns fótons ele vai ter várias medidas nas quais os fótons passaram através dos filtros (aqui cabe ressaltar que esses fótons, agora, estão todos alterados pelas medidas efetuadas e qualquer pessoa que tivesse acesso à mensagem não conseguiria mais recuperar seu conteúdo original) e pode se comunicar com o emissor através de qualquer canal público (telefone, e-mail, carta, etc.) enviando, não os resultados que obteve, mas os filtros que adotou para cada medida. Assim o emissor pode, analisando esta informação dizer para ele (através do próprio canal público) quais destas medidas 3 O ângulo que o campo elétrico de um fóton faz em relação ao seu plano de deslocamento é chamado de plano de polarização e é com essas características que iremos transmitir as informações de uma forma totalmente segura. NETO, 2004 em http://www.numaboa.com/criptografia/cripto-papers/627-criptografia- quantica. 16
  • foram corretas e, a partir daí, ambos têm uma chave para transmitir suas mensagens de forma segura. [NETO, 2004] As Figuras 2.11 e 2.12 ilustram o processo de como um filtro pode ser utilizado para medir a polarização de um fóton. Na Figura 2.11, temos a ocorrência de uma medição correta e na figura 2.12 às conseqüências de uma medição incorreta. Figura 2.11 – Medições corretas dos fótons Fonte: Certinews – Sérgio Leal, 2003 – Disponível em https://www.certisign.com.br/certinews/edicoes/certnews_06/sleal.htm - Acessado em 21 de Abril de 2009 Figura 2.12 – Medições possíveis quando o filtro incorreto é escolhido. Fonte: Certinews – Sérgio Leal, 2003 – Disponível em https://www.certisign.com.br/certinews/edicoes/certnews_06/sleal.htm - Acessado em 21 de Abril de 2009 A Figura 2.13 ilustra o processo de transmissão entre Alice e Beto. 17
  • Figura 2.13 – Transmissão dos fótons entre Alice e Beto Fonte: Certinews – Sérgio Leal, 2003 – Disponível em https://www.certisign.com.br/certinews/edicoes/certnews_06/sleal.htm - Acessado em 21 de Abril de 2009 Após a transmissão dos fótons, a criação da chave é explicada na Figura 2.14. Onde as medições corretas são utilizadas para formar a chave: Figura 2.14 – Criação da Chave após as medições dos fótons Fonte: Teixeira, Braga e Freire – Seminário de Sistemas de Computação – FATEC-SP Durante a transmissão dos fótons, caso haja uma tentativa de interceptação da mensagem em trânsito, haverá uma alteração nos qubits, o que possibilitará a detecção por meio das partes envolvidas na mensagem. 18
  • Para resumir, a criptografia quântica é um sistema que garante a segurança das mensagens tornando difícil, para Eva (uma espiã), ler com precisão as comunicações entre Alice e Beto (O emissor e o destinatário legítimo de uma comunicação). Além disso, se Eva tentar grampear a linha, os dois serão capazes de detectar sua presença. Com a criptografia quântica, Alice e Beto se comunicam em completa privacidade, utilizando um bloco de única vez4 para cifrar a mensagem. [SINGH, 2008, p.375]. 2.4 Criptoanálise A criptoanálise é a ciência de “quebrar” os métodos criptográficos, para que se possa decifrar e ler as mensagens anteriormente criptografadas [TKOTZ, 2005b]. Em outras palavras, a criptoanálise estuda todos os procedimentos necessários para tentar comprometer as técnicas criptográficas, para decifrar uma mensagem secreta sem ter o conhecimento inicial da chave. A criptoanálise se divide na Criptoanálise Clássica, utilizada nas cifras consideradas clássicas, as cifras de substituição e transposição [ALMEIDA, 2002], As cifras clássicas são normalmente examinadas com a Análise de Freqüência, uma técnica que analisa o texto cifrado em busca de padrões que possam indicar traços sobre a mensagem original. A criptoanálise moderna tem um objetivo diferente, que é a descoberta da chave criptográfica utilizada por um determinado algoritmo criptográfico, utilizando a menor quantidade possível de recursos como processamento, memória e número de mensagens claras/cifradas [SIMPLICIO JUNIOR, 2008]. A criptoanálise surge em um contexto onde a maioria das cifras atuais e as que estão por vir serão executadas por computadores ou máquinas similares, onde novos métodos de criptoanálise se fazem necessários. 2.5 Considerações Finais Após abordarmos diversos conceitos da criptologia, possuímos o arcabouço necessário para a continuidade do estudo principal deste material, a classificação de diversos algoritmos cripto-esteganográficos, que utilizará diversos conceitos apresentados nesse capítulo para calcular a robustez desses algoritmos. 4 Um bloco de única vez é uma chave aleatória que é utilizada apenas uma única vez, para cifrar uma mensagem, e é destruída em seqüência [SINGH, 2008, p. 139] 19
  • 3. Segurança da Informação Neste capítulo serão tratados os conceitos principais da segurança da informação, para que possamos classificar os algoritmos em quesitos como confidencialidade, integridade, autenticidade, disponibilidade e outros aspectos. 3.1 Conceitos de Segurança da Informação Segundo a norma brasileira ISO 27002, a “Segurança da Informação é a proteção das informações contra os vários tipos de ameaças as quais estão expostas, para garantir a continuidade do negócio, minimizar o risco ao negócio, maximizar o retorno sobre os investimentos e as oportunidades de negócio.” [NBR ISO 27002, 2007, p.10]. A segurança da informação se dedica a proteger as informações registradas independente de onde estiverem, seja em mídias impressas, nos discos rígidos ou na memória de seus detentores. Mas o que seria a informação? Conforme consta no dicionário Aurélio, “informação é o conjunto de dados acerca de alguém ou de algo.” [AURÉLIO, 1999]. Proteger a informação de uma ameaça inclui evitar o seu corrompimento, o seu acesso às pessoas não autorizadas e seu furto ou deleção indevida. A segurança da informação está baseada em três conceitos fundamentais, que são discutidos a seguir. 3.1.1 Confidencialidade Confidencialidade: “A tramitação das informações deve contar com a segurança de que elas cheguem ao destino sem que se dissipem para outros meios ou lugares onde não deveriam passar, ou seja, só devem ter acesso a elas as entidades legítimas autorizadas a manuseá-las.” [PEIXOTO, 2006, p.38]. Recursos como a criptografia e a esteganografia podem ajudar a garantir a confidencialidade de uma informação. “Perda de confidencialidade significa perda de segredo. Se uma informação for confidencial, ela será secreta e deverá ser guardada com segurança, e não divulgada para pessoas não-autorizadas.” [ACAD. LAT. DE SEG. INFO, 2007, p.20]. A Figura 3.1 resume aspectos gerais da confidencialidade. 20
  • Figura 3.1 – Confidencialidade das Informações Fonte: Introdução à Segurança da Informação – Módulo 1 – Academia Latina de Segurança da Informação – Microsoft Technet, 2007, p.20 3.1.2 Integridade Integridade: “É a propriedade que garante que as informações não tenham sofrido nenhum tipo de modificação ou alteração, comprometendo sua real veracidade, levando à perda da integridade que continham quando partiram da origem.” [PEIXOTO, 2006, p.39]. Não podemos, no entanto, confundir a integridade com a exatidão de uma mensagem, pois esta, segundo o dicionário MICHAELIS [MICHAELIS, 2009], significa o seguinte: 1. Caráter ou qualidade de exato. 2. Rigor na determinação de medida, peso, valor etc.; precisão Como vemos, são conceitos distintos. Se errarmos ao gravarmos a idade de uma pessoa de 20 anos em nosso banco de dados, colocando, por exemplo, 40 anos, e requisitarmos essa informação para alguma função, ela deverá ser retornada com o valor 40 para permanecer íntegra. “Buscar a integridade é tentar assegurar que apenas as pessoas ou sistemas autorizados possam fazer alterações na forma e no conteúdo de uma informação, ou que alterações causadas por acidentes ou defeitos de tecnologia não ocorram, assim como no ambiente no qual ela é armazenada e pela qual transita, ou seja, em todos os ativos.” [ACAD. LAT. DE SEG. INFO, 2007, p.19]. A Figura 3.2 ilustra demais aspectos da integridade das informações. 21
  • Figura 3.2 – Integridade das Informações Fonte: Introdução à Segurança da Informação – Módulo 1 – Academia Latina de Segurança da Informação – Microsoft Technet, 2007, p.18 3.1.3 Disponibilidade Disponibilidade: “De nada adiantaria termos a confidencialidade e a integridade das informações se tais informações não estiverem disponíveis para serem acessadas. Talvez um dos grandes desafios seja justamente conseguir manter toda a estrutura de passagem das informações de forma confiável e íntegra [...]” [PEIXOTO, 2006, p.39. A disponibilidade é propriedade que garante que a informação esteja sempre disponível para o uso legítimo, ou seja, por aqueles usuários autorizados pelo proprietário da informação. A Figura 3.3 detalha outros aspectos da disponibilidade das informações. 22
  • Figura 3.3 – Integridade das Informações Fonte: Introdução à Segurança da Informação – Módulo 1 – Academia Latina de Segurança da Informação – Microsoft Technet, 2007, p.23 “A disponibilidade da informação deve ser considerada com base no valor que a informação tem e no impacto resultante de sua falta de disponibilidade.” [ACAD. LAT. DE SEG. INFO, 2007, p.24]. Deste fato, segue que o algoritmo específico a ser empregado para a segurança da informação, seja ele cripto ou esteganográfico, deve ser escolhido de acordo com o valor da informação que se pretende proteger. 3.1.4 Autenticidade A autenticidade é a garantia de que a informação é de fato originária da procedência alegada [MARCIANO, 2006, p. 64], ou seja, que a informação é realmente proveniente do emissor que alega ser a origem da mensagem. Pensando em algoritmos criptográficos, “as chaves são aplicadas no sentido inverso ao da confidencialidade. O autor de um documento utiliza sua chave privada para cifrá-lo de modo a garantir a autoria em um documento ou a identificação em uma transação. Esse resultado só é obtido porque a chave privada é conhecida exclusivamente por seu proprietário.” [ITI, 2005, p. 04]. A Figura 3.4 ilustra o processo de garantia de autenticidade utilizando os algoritmos de chave assimétrica. Qualquer pessoa que possuir a chave pública de Alice poderá decifrar o documento, sabendo que a sua origem é realmente Alice ou alguém que tem a posse de sua chave privada. 23
  • Figura 3.4 – Autenticidade utilizando Chave Assimétrica Fonte: ITI – Certificação Digital – 2005 p.5 – Disponível em http://www.iti.gov.br/twiki/pub/Certificacao/CartilhasCd/brochura01.pdf - Acessado em 26/04/2009. Outro método para garantir a autenticidade é baseado no uso de uma função de resumo, ou hash. “Hashs são funções criptográficas que pegam uma mensagem de tamanho variável e calculam, através de um algoritmo, um resumo da mensagem com tamanho fixo.” [STIMSON, 1995, p.317]. “Este Hash pode ser comparado a uma impressão digital de um documento, pois cada documento possui um valor único de resumo e até uma pequena alteração no documento, como a inserção de um espaço em branco, resulta em um resumo completamente diferente. Quando utilizado em conjunto com os algoritmos de chaves públicas (Algoritmo + Hash), o método recebe o nome de Assinatura Digital.” [ITI, 2005, p.6]. Sucintamente o algoritmo para gerar a assinatura digital de um arquivo é descrito da seguinte forma por Simplício Júnior [2008, p.27]: “O procedimento para sua geração consiste no cálculo de um resumo criptográfico de tamanho fixo (também conhecido como hash) da mensagem que se deseja assinar. O hash é então criptografado com a chave privada do autor da mensagem. O resultado é a assinatura digital da mesma: como apenas este indivíduo tem acesso à sua chave privada, apenas ele seria capaz de criar tal assinatura, que pode ser verificada por meio de sua chave pública.” A Figura 3.5 ilustra como é gerada a Assinatura Digital. 24
  • Figura 3.5 – Assinatura Digital utilizando algoritmos de chave pública Fonte: ITI – Certificação Digital – 2005 p.6 – Disponível em http://www.iti.gov.br/twiki/pub/Certificacao/CartilhasCd/brochura01.pdf - Acessado em 26/04/2009. A Figura 3.6 ilustra o processo de verificação de autenticidade baseado na comparação entre valor de hash gerado a partir de um documento e aquele gerado a partir da assinatura digital. Figura 3.6 – Conferência através da Assinatura Digital Fonte: ITI – Certificação Digital – 2005 p.7 – Disponível em http://www.iti.gov.br/twiki/pub/Certificacao/CartilhasCd/brochura01.pdf - Acessado em 26/04/2009. 3.1.5 Não-Repúdio “Não-repúdio ou irretratabilidade é garantia de que não se pode negar a autoria da informação, ou o tráfego por ela percorrido.” [MARCIANO, 2006, p.64]. O repúdio é a capacidade de negar que algo tenha ocorrido. Um exemplo é quando um usuário faz um pedido e um sistema diz não ter feito. Os algoritmos utilizados para realizar uma assinatura digital provêm essa qualidade para a mensagem, não podendo a sua origem ser negada. Aplicando o conceito aos algoritmos cripto-esteganográficos, um algoritmo que provenha irretratabilidade deve ser capaz de identificar, sem sombra de dúvida, a 25
  • origem da mensagem que foi processada para gerar a mensagem escondida ou codificada. 3.2 Considerações Finais Agora que apresentamos os principais critérios de Segurança da Informação, aos quais os algoritmos cripto-esteganográficos visam oferecer para fornecer segurança a uma mensagem, estamos aptos para entrar no tema principal deste trabalho, a esteganografia, que será analisada nos três próximos capítulos, conceitos, história e classificação dos algoritmos esteganográficos. 26
  • 4. História da Esteganografia O capítulo tratará da história da esteganografia, explicando diversos algoritmos puramente esteganográficos ou cripto-esteganográficos, algoritmos estes que serão classificados posteriormente em nossa análise. 4.1 Esteganografia na Idade Antiga Segundo COTRIM [1999], a idade Antiga compreende o período entre a invenção da escrita, atribuída aos sumérios, por volta de 3500 a.C. e o ano de 476 d.C., com a deposição do último imperador romano por Odoacro, rei dos germanos hérulos. Durante esse período, as principais civilizações que se desenvolveram foram as localizadas na Mesopotâmia (Sumérios, Acádios, Assírios etc), a Egípcia, a Grega, a Persa e a Romana. Entretanto, o primeiro registro do uso da Esteganografia se dá a mais de 3000 anos do início da idade antiga, e é o alvo do nosso próximo tópico. 4.1.1 – Tabuletas de Demarato Aos gregos são creditados os primeiros registros históricos do uso da esteganografia, documentados durante o conflito entre a Grécia e a Pérsia, durante o século V a.C. por Heródoto [KIPPER, 2004]. Xerxes, o tirano rei da Pérsia, começou a construir a nova capital de seu império, Persepólis. Para adornar a cidade, começaram a chegar diversos presentes de todo o império, com a exceção de duas cidades-estado, Atenas e Esparta. Determinando a combater tal insolência, Xerxes começou a reunir um grande exército, para lançar um ataque-surpresa sobre as cidades-estado. Em 480 a.C., ele estava pronto para lançar o ataque [SINGH, 2008]. Contudo, os preparativos tinham sido testemunhados por Demarato, um grego que fora expulso de sua terra natal, mas que, apesar de seu exílio, ainda sentia lealdade para com a Grécia e decidiu enviar uma mensagem avisando os espartanos dos planos de Xerxes. O problema era com mandar a mensagem sem levantar suspeita. Sobre isso, SINGH [2008] transcreveu o algoritmo explicado por Heródoto: 27
  • O perigo de ser descoberto era grande; havia apenas um modo pela qual a mensagem poderia passar: isso foi feito raspando a cera de um par de tabuletas de madeira, e escrevendo o que Xerxes pretendia fazer, depois a mensagem foi coberta novamente com cera. Deste modo, as tabuletas pareceriam estar em branco e não causariam problemas com os guardas ao longo da estrada. Quando a mensagem chegou ao seu destino, ninguém foi capaz de perceber o segredo, até que, pelo que entendi, a filha de Cleômenes, Gorgo, que era casada com Leônidas, adivinhou e contou aos outros que se eles raspassem a cera encontrariam alguma coisa escrita na madeira. Isto foi feito, revelando a mensagem, então transmitida para os outros gregos. [SINGH, 2008, p.20]. Como resultado do aviso, os gregos começaram a se armar e em 23 de setembro de 480 a.C. conseguiram preparar uma armadilha para os Persas, na baía de Salamina, onde conseguiram aplicar uma derrota humilhante às formidáveis forças persas. 4.1.2 – Histaeu e o Mensageiro Heródoto também narra outro incidente no qual a ocultação da mensagem permitiu a transmissão segura de uma mensagem. É a história de Histaeu, que queria encorajar Aristágora de Mileto a se revoltar contra o rei persa. KIPPER [2004] descreve da seguinte forma: Para transmitir as instruções de forma segura, Histaeu raspou a cabeça de seu mensageiro, escreveu a mensagem em sua cabeça e esperou que o cabelo crescesse novamente. Quando seu mensageiro chegou a seu destino, teve sua cabeça raspada e a mensagem se tornou do conhecimento de seu destinatário. O maior problema deste método é a rapidez para o funcionamento do método, visto que o crescimento do cabelo não é algo que possamos considerar rápido, apesar da eficácia do método. A Figura 4.1 demonstra o uso de tatuagens para transmitir mensagens, mas neste caso perde-se boa parte da discrição, que pode facilitar a detecção da mensagem. 28
  • Figura 4.1 – Exemplo de mensagem tatuada no corpo Fonte: http://escafandro.blogtv.uol.com.br/2008/07/21/tatuagem-literaria-suas-frases- preferidas-perto-do-coracao - Acessado em 02/05/2009 Outro método similar a esses eram práticas que consistiam em matar um animal, um coelho, por exemplo, e esconder a mensagem dentro do mesmo. Apesar da mensagem estar segura, a utilização do animal como meio esteganográfico pode despertar suspeitas dependendo do contexto. Atualmente, esse método não é o mais discreto possível. 4.1.3 – Enéas, o Tático Enéas, o Tático, é um dos gregos mais famosos por ter escrito On the Defense of Fortified Places (Sobre a Defesa de Lugares Fortificados), o primeiro manual de instrução para comunicação segura [JÚNIOR E AMORIM, 2008, p.35]. Dentre os diversos métodos citados no livro, Enéas desenvolveu um disco de madeira com furos representando letras do alfabeto grego, que codificavam e decodificavam a mensagem através da passagem de um cordão pelos buracos, que indicava a seqüência das letras. Outro método criado por Enéas será abordado posteriormente, quando foi utilizado massivamente na Era Vitoriana, o código dos jornais. 29
  • 4.2 Esteganografia na Idade Média COTRIM [1999] define a idade média como o período iniciado com a desintegração do império romano do ocidente (em 476 d.C.) e a tomada da capital do império romano do oriente, Constantinopla, pelos turcos em 1453 d.C. 4.2.1 Os Chineses “Na China antiga, mensagens eram escritas sobre seda fina e o pequeno retalho era recoberto por cera. Para transportar a mensagem oculta, um mensageiro era obrigado a engolir a bolinha, ir até o destinatário e entregá-la após expeli-la.” [JÚNIOR E AMORIM, 2008, p.36]. Esse método é similar ao usado por Histaeu, onde a mensagem era escrita no corpo de um mensageiro e ele era usado como meio de transporte. Outra técnica na história chinesa foi a utilização dos “Bolos da Lua” durante a dinastia Yuan, quando a China estava sob o Império Mongol. Os líderes da rebelião contra o império mongol decidiram se utilizar do festival da Lua para coordenar seu ataque, aproveitando-se da tradição do bolo da lua. Os rebeldes inseriram mensagens dentro dos bolos e as levaram, sem levantar suspeitas, a todos que precisavam ter conhecimento de seus planos. Os rebeldes obtiveram sucesso em seu ataque e derrubaram o governo, que se seguiu da dinastia Ming [KIPPER, 2004]. A Figura 4.2 mostra um pedaço do bolo da lua, distribuído ainda hoje no festival da lua, evento chinês que ainda hoje relembra a queda do império mongol, que contou com a ajuda dos bolos da lua. Figura 4.2 – Bolo da lua atual Fonte: http://luckytastebuds.files.wordpress.com/2009/01/moon_cake.jpg - Acessado em 02/05/2009 30
  • 4.3 Esteganografia na Idade Moderna A idade moderna, segundo COTRIM [1999], começa logo após as diversas crises européias (econômica, política e religiosa), tendo como marco inicial a queda de Constantinopla e se encerra em 1789, com a Revolução Francesa. Nesse período diversos algoritmos esteganográficos foram criados por religiosos e cientistas, que se preocupavam em transmitir mensagens longe dos olhos atentos do tribunal da inquisição e entidades governamentais, que eram implacáveis contra qualquer sinal de heresia ou traição. 4.3.1 Gaspar Schott – Schola Steganographica Gaspar Schott, cientista alemão, escreveu Schola Steganographica em 1665, onde descrevia em oito lições diversos métodos esteganográficos, sendo que o mais famoso era o de esconder informações secretas através de partituras musicais onde as notas representariam as letras da mensagem original. Ao ser tocada ela poderia ou não ser harmoniosa, o que poderia levantar suspeitas a ouvidos treinados musicalmente. [JÚNIOR E AMORIM, 2008]. A Figura 4.3 mostra uma das páginas do livro, que mostra como as notas poderiam representar as letras do alfabeto latino. Figura 4.3 – Foto de Partitura com a representação de notas e letras Fonte: http://petitcolas.net/fabien/steganography/steganographica/octava-3.html - Acessado em 02/05/2009 31
  • 4.3.2 Johannes Trithemius O monge Johannes Trithemius foi responsável pela criação de diversos métodos cripto-esteganográficos, muitos deles utilizados nos três volumes de seu principal livro, Steganographia5, que foi interpretado erroneamente por muitos séculos como um livro demoníaco, já que as mensagens originais do livro, que estavam criptografadas nos nomes dos anjos citados, não eram conhecidas [KIPPER, 2004]. Uma das invenções mais criativas de Johannes é a cifra “Ave Maria”. TKOTZ [2007b] explica e exemplifica o algoritmo da seguinte forma: “Este sistema é composto por 14 alfabetos nos quais a cada letra corresponde uma palavra ou grupo de palavras. O resultado da encriptação acaba sendo um texto (mais ou menos) coerente, em Latim, como se fosse uma oração ou glorificação religiosa.” Veja a seguir um dos alfabetos de Ave Maria: A: no céu B: para todo o sempre C: um mundo sem fim D: numa infinidade E: perpetuamente F: por toda a eternidade G: durável H: incessantemente I-J: irrevogavelmente K: eternamente L: na sua glória M: na sua luz N: no paraíso O: hoje P: na sua divindade Q: em Deus R: na sua felicidade S: no seu reino T: na sua majestade U-V-W: na sua beatitude X: na sua magnificência Y: ao trono 5 O Livro completo em latim pode ser encontrado em http://www.esotericarchives.com/tritheim/stegano.htm 32
  • Na sua majestade um mundo sem fim, um mundo sem fim Uma infinidade, perpetuamente Perpetuamente, no seu reino, na sua majestade perpetuamente, durável no céu, no paraíso hoje, durável na sua felicidade, no céu por toda a eternidade, irrevogavelmente no céu. Figura 4.4 – Mensagem esteganografada pelo algoritmo “Ave Maria” A mensagem acima significa TCC DE ESTEGANOGRAFIA. Apesar de ser uma cifra poderosa, é o tempo necessário para o envio de grandes mensagens, o que inviabiliza a transmissão de uma mensagem muito longa. 4.3.3 A Grelha de Cardano, Richelieu e Fleissner A Grelha de Cardano, que recebe o nome de seu inventor, Girolamo Cardano (1501-1576) consiste numa folha de material rígido na qual existem aberturas retangulares da altura de uma linha de texto e de comprimento variável, colocadas em intervalos irregulares [TKOTZ, 2005c]. Quando a grelha era posicionada da maneira correta, a mensagem original era revelada. Anos mais tarde, a idéia da Grelha foi adaptada pelo Cardeal de Richelieu (1585-1642), que escrevia uma mensagem qualquer com sentido e depois preparava uma grelha específica com a mensagem original. A Figura 4.5 demonstra o uso da Grelha para esteganografarmos a mensagem “TCC DE ESTEGANOGRAFIA”. Na grelha percebemos os buracos feitos na cor branca, e o papel íntegro na cor cinza. A mensagem original é vista na parte inferior da imagem. 33
  • Figura 4.5 – Exemplo da Grelha de Cardano. Uma variação da Grelha de Cardano foi utilizada por Eduard Baron (Freiherr) von Fleissner von Wostrowitz, um comandante da cavalaria austríaca, que utilizou uma forma giratória de grelha. Uma grade giratória sempre é composta por um quadrado dividido em um número par de células: um quadrado com 4 células (2x2), com 16 células (4x4), com 36 células (6x6) etc. Fleissner sugere usar como grade um cartão em que algumas das células são vazadas de modo que, girando-se o cartão 90 graus cada vez, ao completar 4 posições (ou 360 graus), todas as células do quadrado tenham ficado descobertas uma vez [TKOTZ, 2005d]. A Figura 4.6 ilustra a grelha utilizada por Fleissner. Figura 4.6 – Exemplo da Grelha de Fleissner. A mensagem era escrita a cada 4 letras (ou o número de linhas e colunas da matriz, 2x2, 6x6 etc) e era feita uma rotação da grelha, para que a mensagem fosse 34
  • embaralhada. Sua criptoanálise é feita através da análise da freqüência e do índice de coincidência6. 4.3.4 Giovanni Porta O cientista italiano Giovanni Porta desenvolveu um método para que mensagens fossem escondidas dentro de ovos cozidos. JÚNIOR E AMORIM [2008, p.38] nos descrevem da seguinte forma: “O processo consiste em escrever sobre a casca do ovo cozido com uma tinta contendo uma onça (28,35g) de Alúmen, Sulfato Duplo de Potássio e Alumínio Hidratado, diluída em cerca de meio litro de vinagre. A solução penetrava na casca e se depositava sobre a superfície branca do ovo, a clara cozida. Depois, bastava o destinatário descascar o ovo para ler a mensagem.” 4.3.5 Francis Bacon A cifra de Bacon foi criada por volta do ano de 1600 e mistura técnicas de substituição e esteganografia. Bacon utilizava uma técnica de substituição com um alfabeto onde cada letra consistia em uma seqüência de letras a e b, I era igual a J e U igual a V. A Tabela 5 ilustra esse alfabeto [TKOTZ, 2005e]. Letra Grupo Binário Letra Grupo Binário A aaaaa 00000 N abbaa 01100 B aaaab 00001 O abbab 01101 C aaaba 00010 P abbba 01110 D aaabb 00011 Q abbbb 01111 E aabaa 00100 R baaaa 10000 F aabab 00101 S baaab 10001 G aabba 00110 T baaba 10010 H aabbb 00111 U/V baabb 10011 I/J abaaa 01000 W babaa 10100 K abaab 01001 X babab 10101 L ababa 01010 Y babba 10110 M ababb 01011 Z babbb 10111 Tabela 5 - Alfabeto utilizado na Cifra de Bacon. 6 Mais informações e exemplos sobre o índice de coincidência são encontrados em http://www.numaboa.com/criptografia/criptoanalise/1048-quebra-geometrica. 35
  • A cifra possuía duas fases, a primeira de substituição, onde cada letra do texto era substituída por sua equivalente no alfabeto de Bacon. Utilizaremos a notação binária para representar a e b, sendo a=1 e b=0, pelo entendimento ser mais próximo à realidade dos computadores. Com a palavra CIFRA, teríamos: CIFRA = 00010 01000 00101 10000 00000 Bacon então utiliza uma fase esteganográfica para esconder a mensagem, ocultando-a em um texto comum. O grande truque de Bacon residia em sua escrita, que continha duas formas para cada letra, maiúsculas e minúsculas, representando a presença de um a ou um b. A Figura 4.7 nos ilustra esse alfabeto. Figura 4.7 – Alfabeto de Bacon Fonte: http://www.numaboa.com/criptografia/supercifragens/331-cifra-de-bacon - Acessado em 10/05/2009 O texto original era resgatado quando as seqüências de as e bs eram reescritas de acordo com a Tabela 1. Deve-se atentar ao fato de que qualquer alfabeto poderia ser utilizado, o que dificultaria mais a volta, tornando possíveis criptoanálises com um resultado sem nexo. 4.3.6 John Wilkins Em 1641 o bispo John Wilkins foi o autor anônimo do livro The Secret and Swift Messenger (O Mensageiro Secreto e Rápido), aonde sugeria a utilização de suco de cebola, Alúmem, Sal de Amônia e um suco destilado de “bioluminescência”, extraído 36
  • de alguns tipos de insetos, para criar uma tinta que brilhasse apenas no escuro [KIPPER, 2004]. Atualmente há diversas técnicas que se originaram dessa idéia, como as tintas invisíveis que são visualizadas por meio de calor ou luz ultravioleta. 4.3.7 Maria, Rainha da Escócia Uma conspiração começada no campo ideológico envolvendo a rainha Elizabeth, não aceita pelos nobres ingleses católicos por ser protestante, levou ao uso de técnicas de criptografia e esteganografia para tentar levar ao trono Maria, prima de Elizabeth, mas de religião católica [KIPPER, 2004]. Maria utilizou mensagens criptografadas para se comunicar com seus conspiradores, que eram escondidas (esteganografadas) em barris de cerveja. Embora sua técnica fosse segura, Walsingham, secretário da rainha Elizabeth, interceptou e utilizou criptógrafos para decifrarem uma série de mensagens, que serviram de provas para a execução de Maria e seus conspiradores [SINGH, 2008]. A Figura 4.8 mostra a nomenclatura, alfabeto que consiste de palavras e frases, que era utilizado para a comunicação de Maria e seus conspiradores [SINGH, 2008]. A Figura 4.9 mostra uma das cartas decodificadas que Maria trocava com seus conspiradores. Figura 4.8 – Nomenclatura utilizada por Maria e seus conspiradores Fonte: http://www.simonsingh.net/The_Black_Chamber/z_cipherimages/maryqueenimage.gif - Acessado em 03/05/2009 37
  • Figura 4.9 – Carta trocada entre Maria e seus conspiradores Fonte: http://www.hamletdarcy.com/files/2007/MaryDecodingKey.jpg - Acessado em 03/05/2009 4.3.8 George Washington Durante a época da guerra de independência, Benjamin Tallmage organizou um grupo de espiões conhecido como The Culpers, porque o nome código de cada membro era Samuel Culper. Eles deveriam infiltrar-se nas forças britânicas e transmitir informações para George Washington e os outros para obterem informações sobre as forças inglesas. Washington e os Culpers utilizaram diversas técnicas para se comunicar, como o uso de tintas invisíveis, mas um uso que se destacou foi o de utilizarem números para representar palavras, segundo um livro compartilhado entre ambos [KIPPER, 2004]. A Figura 4.10 mostra uma página desses livros. 38
  • Figura 4.10 – Página do livro de códigos utilizado entre Washington e os Culpers Fonte: http://www.newsday.com/community/guide/lihistory/ny-history- hs417a,0,6764482.story - Acessado em 03/05/2009 4.4 Esteganografia na Idade Contemporânea É conhecida como Idade Contemporânea o período seguinte à Revolução Francesa, que marcou a superação do feudalismo pelo capitalismo, período este que se segue até os dias de hoje [COTRIM, 1999]. No início dessa época os algoritmos ainda são um pouco rústicos, mas como veremos no próximo capítulo, o uso de meios computacionais permitiu o desenvolvimento de métodos seguros e eficazes de se utilizar a esteganografia no século XXI. 4.4.1 Pombos Correios em Paris Durante a guerra franco-prussiana, 1870-1871, Paris esteve completamente cercada e todas as suas comunicações regulares com o resto da França estavam cortadas. Toda essa eficiência do cerco prussiano era devida à movimentação de suas tropas, que se moveram para Paris seis semanas antes do início do confronto. Os parisienses tentaram se comunicar através de mensageiros humanos e até por cachorros que saíam da cidade via balões, mas ambas as comunicações não lograram êxito [KIPPER, 2004]. 39
  • Desesperados com o cerco, os parisienses tentaram uma opção inusitada: transmitir mensagens através de pombos correios. Em 27 de setembro de 1870 o primeiro pombo conseguiu sair de Paris com uma mensagem. Em 1 de outubro do mesmo ano ele retornou. Apesar de diversos pombos nunca terem voltado, o método funcionou muito bem durante o conflito, onde mais de 95000 mensagens foram entregues através de suas viagens [KIPPER, 2004]. 4.4.2 Códigos em Jornais Durante a era Vitoriana os jornais podiam ser enviados sem nenhum custo pelos cidadãos da Inglaterra. As classes mais pobres se aproveitaram desse fato para enviar códigos nos jornais. O processo era simples: as pessoas faziam furos imperceptíveis em cima das letras dos jornais, que quando colocadas em seqüência, revelavam o texto da mensagem. Durante a 2ª Guerra Mundial e a Guerra Fria o código em jornais também foi utilizado, mas com o uso de tintas invisíveis ou marcas especiais feitas nos jornais. Esse método entrou em desuso na atualidade, pois ele não consegue mesclar eficiência e rapidez na transmissão das mensagens [KIPPER, 2004]. 4.4.3 Tapetes da Guerra Civil Durante a Guerra Civil Americana (1861-1865) foi utilizada pelos escravos uma técnica para ajudá-los a conquistar a sua liberdade. Tapetes feitos de retalhos eram estendidos ao sol para secar, passando mensagens sem gerar suspeitas [JÚNIOR E AMORIM, 2008]. As Figuras 4.9 e 4.10 ilustram dois retalhos utilizados pelos escravos. Figura 4.11 - Reúnam seus pertences para a viagem. Fonte: KIPPER, Gregory. Investigator's Guide to Steganography. p. 28. 40
  • Figura 4.12 – O caminho da liberdade Fonte: KIPPER, Gregory. Investigator's Guide to Steganography. p. 29. 4.4.4 Código Náutico Outra forma de comunicação por meio de bandeiras ou símbolos com significado é o código de bandeiras, que foi e é usado atualmente por embarcações para se comunicarem. Foi idealizado em 1738 pelo capitão francês Mahe de la Bourdonnais e, após passar por diversos aprimoramentos, feitos por Lord Richard Howe, Sir Home Pophan e o capitão Frederick Marryat, entre outros. Em 1870 foi publicado o International Code of Signals, conhecido até hoje pelo mesmo nome. Após algumas modificações, foi adotado como código internacional em 1934 [TKOTZ, 2007c]. A Figura 4.13 mostra o código NATO (ou OTAN, organização do tratado do atlântico norte) as bandeiras e o significado adotado. Lembrando que há significados diferentes quando combinações de bandeiras são utilizadas. Veremos mais adiante que esse tipo de esteganografia é conhecido por semagrama. 41
  • Figura 4.13 – Código Náutico (1/3) Fonte: http://www.anbg.gov.au/flags/signal-meaning.html e http://pt.wikipedia.org/wiki/C%C3%B3digo_internacional_de_navega%C3%A7%C3%A3o_mar %C3%ADtima – Acessados em 12/09/09 42
  • Figura 4.13 – Código Náutico (2/3) Fonte: http://www.anbg.gov.au/flags/signal-meaning.html e http://pt.wikipedia.org/wiki/C%C3%B3digo_internacional_de_navega%C3%A7%C3%A3o_mar %C3%ADtima – Acessados em 12/09/09 43
  • Figura 4.13 – Código Náutico (3/3) Fonte: http://www.anbg.gov.au/flags/signal-meaning.html e http://pt.wikipedia.org/wiki/C%C3%B3digo_internacional_de_navega%C3%A7%C3%A3o_mar %C3%ADtima – Acessados em 12/09/09 4.4.5 Micropontos e Segunda Guerra Mundial Os micropontos são fotografias que foram reduzidas para imagens com cerca de 1 milímetro de diâmetro, se tornando microfotografias. Os micropontos ficaram populares e foram muito utilizados na 2ª Guerra Mundial, onde eram colados em pontos finais das frases ou no pingo de alguma letra i da mensagem. O processo consistia em fotografar a mensagem e depois reduzi-la ao tamanho aproximado de um selo. Em seguida a imagem é reduzida por um microscópio reverso, ficando com um milímetro de diâmetro. Essa imagem ou o seu negativo era então colocada com o auxílio de uma seringa ou agulha na mensagem que iria servir como portadora e enviada ao seu destino [KIPPER, 2004]. Durante a 2ª Guerra Mundial, após o conflito em Pearl Harbor, diversos meios suspeitos de conterem mensagens esteganografadas foram criteriosamente analisados nos Estados Unidos. Jogos de xadrez enviados por cartas, palavras cruzadas eram examinados ou removidos das correspondências, assim como papéis em branco enviados pelo correio eram testados com a suspeita de tintas invisíveis e fotos eram também examinadas minuciosamente; todas as mensagens em outras línguas foram 44
  • proibidas, bem como textos que não fossem claros. Qualquer menção a espécies de flores ou e listas de natal das crianças também foram analisadas com o objetivo de impedir que qualquer informação que comprometesse a segurança nacional fosse passada de forma esteganográfica com o auxílio do correio nacional [KIPPER, 2004]. Outros métodos utilizados na 2ª Guerra Mundial foram Transmissão de informações através de receitas de bordado e crochê Listas de importação de bonecas (onde cada tipo de boneca especificava um tipo de navio). Os micropontos também são usados atualmente em impressoras modernas, onde minúsculos pontos amarelos são colocados em cada página. Os pontos são pouco visíveis e contém diversas informações, como a data e a hora que a impressão está sendo feita [FONSECA, 2007]. 4.4.6 UUS Pueblo O navio Pueblo era uma embarcação norte-americana enviada em uma missão de inteligência na costa da Coréia do Norte, em 1968. No início daquele ano, o navio foi atacado pelos norte-coreanos, o que provocou a morte de um tripulante e a captura dos outros 82 membros por mais de 11 meses, o que gerou um curioso episódio esteganográfico [KIPPER, 2004]. Uma fotografia da tripulação, tirada na tentativa de demonstrar que os prisioneiros estariam colaborando, passou mensagem contrária porque as posições das mãos dos tripulantes transmitiam um gesto que dizia “snow job”, que no inglês americano coloquial significava que havia coerção para impedi-los de dizer a verdade. A Figura 4.14 ilustra esse momento. 45
  • Figura 4.14 – Foto dos prisioneiros do U.S. Navy Pueblo Fonte: http://bp1.blogger.com/_lEtkuz8ScYM/R4yzo8S41LI/AAAAAAAAAsA/V_XgTSY1Jh0/s1600- h/USS+Pueblo+3A.JPG – Acessado em 16/05/2009 4.4.7 Guerra do Vietnã Durante a Guerra do Vietnã, os prisioneiros que eram guardados na prisão de Hoa Lo, conhecida pelos americanos como “Hanói Hilton”, utilizaram um código para se comunicar que consistia em bater em barras de metal certo número de vezes para transmitir letra por letra de uma mensagem. Cada letra se localizava em uma matriz 5x5 com as 26 letras do alfabeto (K era representado por C), aonde era necessário que se batesse o número da linha e o número da coluna pausadamente, para representar a letra pretendida na comunicação. A Tabela 6 representa a matriz usada pelos prisioneiros no Vietnã. Os pontos representam o número de batidas e o espaço em branco significa a pausa que sinalizava a mudança da linha para a coluna. Uma pausa com tempo dobrado significava a mudança de letra [KIPPER, 2004]. 46
  • A B C, K D E .. . .. . ... . .... . ..... F G H I J .. . .. .. .. ... .. .... .. ..... L M N O P ... . ... .. ... ... ... .... ... ..... Q R S T U .... . .... .. .... ... .... .... .... ..... V W X Y Z ..... . ..... .. ..... ... ..... .... ..... ..... Tabela 6 - “Tap Code” usado pelos prisioneiros no Vietnã Para transmitir a palavra “HELP”, por exemplo, a seguinte seqüência de batidas seria transmitida: .. ...(H) . .....(E) ... .(L) ... .....(P) 4.5 Considerações Finais Analisamos diversos algoritmos esteganográficos que nos mostram a grande importância histórica desse segmento da Criptologia. Posteriormente os analisaremos de forma a encontrarmos traços que possam propiciar a criação e o aperfeiçoamento dos algoritmos existentes, com novas técnicas ou com técnicas híbridas que conciliem as vantagens de algoritmos distintos. 47
  • 5. Técnicas de Esteganografia Explanaremos nesse capítulo sobre as técnicas e métodos utilizados para esconder mensagens, começando pelas técnicas atuais e depois se estendendo a técnicas mais antigas, mas não menos eficientes. 5.1 Classificação da Esteganografia Há basicamente dois tipos de esteganografia, lingüística e técnica, que foram alinhadas em uma classificação hierárquica por BAUER [2002] e revisada por ARNOLD [2003]. A Figura 5.1 mostra esta classificação. Figura 5.1 – Classificação da Esteganografia 5.2 Esteganografia Técnica Envolve o uso de meios técnicos para disfarçar a existência de uma mensagem. Podem ser meios físicos, como a Grelha de Cardano ou químicos, como com o Ovo de Giovani Porta, que são utilizados para esconder a mensagem. De certa forma as técnicas de esteganografia lingüística também estão nessa classificação, mas veremos mais adiante o que a distingue e a faz estar em uma classificação única [KIPPER, 2004]. 48
  • 5.2.1 Esteganografia Digital “Na esteganografia existe um esquema básico de montagem do objeto estegano- gráfico (stego-object), que é composto por um objeto portador (cover-object) e uma chave esteganográfica (stego-key)” [JÚNIOR E AMORIM, 2008, p.48]. O objeto portador da mensagem pode ser qualquer tipo de dado que possa ser manipulado pelo computador, como uma imagem ou um arquivo de som. Para que a mensagem seja protegida é necessária uma chave esteganográfica (stego-key) que, como na Criptografia, é secreta e protege os dados de invasores ou de qualquer pessoa que não está devidamente autorizada a obter o conteúdo original da mensagem, podendo ser um número aleatório destinado a inserir e extrair a mensagem do objeto portador, sendo basicamente uma chave simétrica [KIPPER, 2004]. A Figura 5.2 elucida como o processo de esteganografia em meios digitais. Na Figura vemos que há um dado a ser embutido, um objeto portador e uma chave. O dado é embutido no portador e só poderá ser recuperado, em teoria, com o uso da chave que foi usada no processo de composição do estego-objeto, como é mostrado no lado direito desta figura. Figura 5.2 – Processo esteganográfico 49
  • Há apenas três maneiras de esconder uma mensagem digital em objeto portador: 1) Injeção: Os dados a serem escondidos são diretamente injetados no objeto portador, o que normalmente aumenta o tamanho do objeto portador e gera suspeita quando ao uso da esteganografia. 2) Substituição: Os dados a serem escondidos substituem parte dos dados existentes no objeto portador. Isto impede que o tamanho do objeto portador aumente significativamente, mas pode acarretar em perda da qualidade do mesmo. 3) Geração: O objeto portador é gerado somente para esconder a mensagem secreta, podendo ser um arquivo qualquer, sem nenhuma informação relevante [KIPPER, 2004]. 5.2.2 Tintas Invisíveis Segundo [JÚNIOR E AMORIM, 2008, p. 52] as tintas invisíveis “consistem em compostos químicos, geralmente um ácido ou uma base, que ao serem submetidos ao calor, algum tipo de luz ou algum indicador de pH, têm suas propriedades alteradas tornando-os visíveis.” As tintas invisíveis podem ser feitas com diversos materiais, desde fluídos corpóreos como urina e saliva, líquidos como suco de limão ou laranja, vinagre, mel e diversos outros compostos químicos. 5.2.3 Lugares Escondidos Os lugares escondidos foram e continuarão a ser utilizados como forma de esconderijo para mensagens secretas. Os lugares variam desde rolhas de barris, como no caso da rainha Maria, até a sola de um sapato, uma tatuagem no corpo de uma pessoa ou um fundo falso de uma mala. Apesar de ser um método de simples execução, é um método muito eficaz de esteganografia [KIPPER, 2004]. É utilizado atualmente por muitos criminosos, como os traficantes de drogas e de obras de arte, que utilizam fundos falsos ou compartimentos secretos para armazenar os itens ilegais. 50
  • 5.2.4 Métodos Computacionais Todos os métodos computacionais, desde a substituição de bits e a adição de bits entre outros, se encaixam como esteganografia técnica. Por sua velocidade e facilidade para transportar grandes quantidades de informação são métodos muito eficazes e amplamente utilizados na atualidade [KIPPER, 2004]. 5.2.5 Micropontos O último tipo de esteganografia técnica são os micropontos. Sua definição e uso se encontram no item 4.4.4 desta monografia. 5.2.6 Marcas D’água Marca d’água é um sinal inserido dentro de um dado digital (áudio, imagens, vídeo, e texto) que pode ter sua presença detectada posteriormente para garantir a origem (autenticidade) de um arquivo ou documento. [MESQUITA NETO, 2007]. As marcas d’água mais antigas datam de cerca de 1300 D.C. Seu uso foi expandido na Europa onde as marcas eram utilizadas principalmente para distinguir diferentes fabricantes de papel. Apesar de serem relacionadas com a esteganografia, as marcas d’água possuem um objetivo diferente [KIPPER, 2004]. É importante notar que as técnicas de marca d’água derivam da esteganografia, tendo, porém grandes diferenças relacionadas por Kipper, 2004, e Mesquita Neto, 2007, ilustradas na Tabela seguinte. 51
  • ESTEGANOGRAFIA MARCAS D’ÁGUA Possui baixa ou nenhuma robustez É projetada para ser robusta Tenta esconder a existência da Nem sempre é invisível, podendo não informação embutida esconder a sua existência. O dado externo (objeto portador) é O dado interno (marca d’água, por apenas um contêiner normalmente exemplo) é um dado adicional para sem importância. O dado interno proteger o dado externo e provar sua (dado embutido) é que possui propriedade e origem. Ambos são importância importantes Normalmente não reside no Projetada para permanecer no hospedeiro após o término da hospedeiro permanentemente para comunicação (após o destino receber que possa ser extraída para comprovar e ter acesso a mensagem da origem) a propriedade de um arquivo digital. Usuários mal intencionados querem Usuários mal intencionados querem detectar a esteganografia para obter a remover a marca d’água para mensagem que está escondida impossibilitar a verificação de autenticidade Tabela 7 - Diferenças entre Esteganografia e Marcas D’água A noção de robustez contra ataques é aplicada tanto na esteganografia quanto nas marcas d’água. Mesmo se a presença da mensagem secreta for conhecida, deverá ser muito difícil para um atacante destruir a marca d’água sem o conhecimento da chave que é usada para sua remoção [KATZENBEISSER e PETITCOLAS, 2000]. Uma marca d’água robusta será, portanto, difícil de ser retirada ou removida sem comprometer drasticamente o conteúdo que pretende se preservar [KIPPER, 2004]. A Figura 5.3 exemplifica o uso de uma marca d’água. Figura 5.3 – Exemplo de Marca D’Água 52
  • 5.2.6.1 Classificação das Marcas D’água Há basicamente duas classificações quanto às marcas d’águas. Elas podem ser frágeis ou robustas, visíveis ou invisíveis [KIPPER, 2004]. Frágeis: Marcas aonde pequenas alterações ao conteúdo conseguem destruir a informação embutida. Robustas: São difíceis de remover ou danificar, apresentando resistências a diversos tipos de ataques, como a compressão do estego-objeto e translações ou rotações na imagem. Visíveis: Marcas d’água normalmente robustas e claramente visíveis. São difíceis de serem removidas, pois não fazem parte da imagem a qual sobrepõe. Podem ser sólidas ou semitransparentes, como os logos das emissoras de televisão que aparecem durante sua transmissão. Invisíveis: Possui o propósito de identificar a autoria ou verificar a integridade de um documento, que pode ser uma imagem digital ou de uma cédula monetária, por exemplo. Normalmente a verificação da existência de uma marca d’água invisível exige a utilização de uma chave, denominada de chave de marca d’água, que apenas afeta o conteúdo embutido no arquivo e não toda a informação. 5.3 Esteganografia Lingüística A esteganografia lingüística pode ser definida como qualquer forma de esteganografia que utilize uma linguagem, e não uma ferramenta, como cobertura para esconder o segredo [KIPPER, 2004]. Exemplos desse método são os métodos utilizamos por Trithemius e por Gaspar Schott, em sua Schola Steganographica. Há basicamente dois grandes grupos na esteganografia lingüística, os códigos abertos e os semagramas. 5.3.1 Códigos Abertos Nesse tipo de esteganografia o texto é escrito de forma legível e bem construída Segundo KESSLER [2004] os códigos abertos escondem a mensagem em um texto legítimo, de forma que o mesmo não levanta suspeita no leitor. O texto pode guardar a mensagem através de metáforas (técnica chamada de mascaramento), letras do texto secreto em certa posição (por exemplo, apenas a terceira letra de cada palavra será 53
  • usada para obtenção da mensagem secreta, reescrita com as letras secretas na ordem correta, método conhecido como Cifras Nulas ou Acrósticos) ou palavras escritas de forma vertical ou diagonal [KIPPER, 2004]. A Figura 5.4 mostra um exemplo de acróstico, cuja leitura feita de cima para baixo considerando somente a primeira letra revela a palavra SEMAGRAMA. Os acrósticos foram muito populares entre os poetas da renascença italiana e ainda podem ser encontrados em diversos poemas da atualidade [KIPPER, 2004]. Figura 5.4 – Acróstico Outra forma de código aberto são as pistas, ou seja, palavras com significado previamente combinado entre o emissor e o receptor. Por exemplo, durante uma guerra a palavra “Coruja” pode significar “ataque ao anoitecer”. Outro tipo de código aberto é o Código de Jargões, uma forma de comunicação, onde há uma substituição de uma palavra ou frase, de modo que a mensagem possa ser passada “em aberto” e não despertar a atenção dos que estão próximos. Próxima a cifra de substituição, palavras são trocadas ao invés de letras para esconder uma mensagem secreta [JÚNIOR E AMORIM, 2008]. Métodos como a Grelha de Cardano pertencem também aos códigos abertos, em uma subclassificação chamada de cifras de grelha, onde a mensagem é escondida através do mecanismo da grelha. Para maiores detalhes sobre a utilização das grelhas consulte o item 4.3.3, que explica sobre diversas grelhas utilizadas na idade moderna. 54
  • 5.3.2 Semagramas Segundo TKOTZ [2005f], a palavra semagrama vem do Grego, onde sema significa sinal e grama significa escrito ou desenhado. Semagramas são signos ou símbolos utilizados para esconder informação. Os semagramas podem ser visuais, quando um objeto de uso cotidiano é utilizado para esconder a mensagem, como a posição dos ponteiros de um relógio, ou textuais, quando a aparência de uma mensagem textual é modificada, como a mudança da fonte dos títulos ou o espaçamento extra entre os caracteres de uma mensagem [KESSLER, 2004]. Singh [2008] nos conta que os estudiosos do século XVII discutiram por muitas vezes a respeito dos hieróglifos, alegando que eram semagramas, onde cada símbolo representava uma idéia completa. Porém, essa idéia começou a cair quando o lingüista francês Jean-François Champollion, em 1822, utilizou as pesquisas incipientes de outros estudiosos para provar ao mundo que os hieróglifos eram uma linguagem fonética, onde cada símbolo representava um fonema, e não um conjunto de semagramas. A seguir temos na Figura 5.5 mostra uma série de hieróglifos. Na Figura 5.6 e 5.7 temos a utilização de um semagrama visual composto por relógios, onde a posição dos ponteiros representa as letras do alfabeto. Utilizamos nesse semagrama a seguinte convenção: a posição do ponteiro pequeno indica se a letra representada faz parte das 11 primeiras letras do alfabeto (A-K) ou das 11 próximas letras (L-V). Se o ponteiro pequeno estiver no número 12, serão usadas as primeiras 11 letras. Se estiver no número 6, serão usadas as 11 letras posteriores. Dessa maneira, teremos a letra “A” representada conforme a Figura 5.6, com o ponteiro menor no número 12 e o ponteiro maior no número 1. É importante lembrar que nessa convenção o ponteiro dos segundos não possui utilidade. A Figura 5.7 mostra como a palavra “Bom dia” poderia ser esteganografada por esse método. 55
  • Figura 5.5 – Hieróglifos egípcios Fonte: http://denialaccess.blogspot.com/2008/05/criptografia.html - Acessado em 27 de setembro de 2008 Figura 5.6 – Letra A representada por um relógio 56
  • B O M D I A Figura 5.7 – Palavras transmitidas via um semagrama visual com relógios Outro método utilizado é o espaçamento textual. Figura 5.8 mostra como o espaçamento da mensagem pode ser utilizado para esconder uma informação. ESTE..TCC...TRATA..DE..ESTEGANOGRAFIA...A..ESTEGANOGRAFIA..É...COM POSTA...DE..DIVERSAS..TÉCNICAS..QUE...PERMITEM...QUE...UMA..MENSAG EM...SEJA...ESCONDIDA..E..TRANSPORTADA...EM..SEGURANÇA...ATÉ..SEU... DESTINO. 0 1 Figura 5.8 – Semagrama Textual com espaçamento entre palavra. 5.3.3 Anamorfose “Uma anamorfose é uma figura aparentemente disforme que, por reflexão de um determinado sistema óptico, produz uma imagem regular do objeto que representa.” 57
  • [LIMA, 2007]. A palavra anamorfose vem do grego e significa “mudança de forma” [KIPPER, 2004]. As técnicas esteganográficas que utilizam a anamorfose visam esconder uma mensagem na imagem através de uma distorção na imagem, de modo que somente quem conhecer a técnica empregada saberá para enxergar a informação escondida. As Figuras 5.9 e 5.10 mostram um exemplo de anamorfose utilizado no quadro Os Embaixadores de Hans Holbein, de um pintor alemão nascido no final do século XV que passou a maior parte de sua carreira na Inglaterra. Figura 5.9– Os Embaixadores de Hans Holbein Fonte: http://entrelinhas.livejournal.com/66925.html - Acessado em 31 de maio de 2009 Figura 5.10– Detalhe do quadro escondido por técnica de anamorfose Fonte: “Anamorfose: A matemática na anamorfose” - Rosmari Aparecida Ferreira Lima, 2007, p.4 A seguir estudaremos outra forma de classificação da esteganografia, utilizada por KIPPER [2004]. 58
  • 5.4 Categorias de Esteganografia Essencialmente, todos os métodos de esteganografia são semelhantes; porém, cada um deles possui características próprias, que podem ser usadas para classificá-los em diversas categorias. As seis categorias de esteganografia são [KIPPER, 2004]: 1. Inserção 2. Sistemas de Substituição; 3. Transformação de Domínio; 4. Espalhamento de Espectro (Spread Spectrum); 5. Métodos Estatísticos; 6. Distorção; 7. Geração de Cobertura (Cover Generation). 5.4.1 Inserção A esteganografia por inserção introduz a mensagem secreta diretamente no arquivo de cobertura. O problema reside no fato de tornar o arquivo de cobertura e, o que pode alterar o objeto portador consideravelmente, tornando fácil a detecção do conteúdo secreto [KIPPER, 2004]. 5.4.2 Sistemas de Substituição Em um sistema de substituição, bits redundantes ou desnecessários da mensagem portadora são substituídos por bits da mensagem secreta. A principal técnica de substituição consiste em usar uma chave esteganográfica para ocultar uma mensagem, de forma aleatória, nos bits menos significativos do objeto portador (LSB - Least Significant Bit – Bit Menos Significativo). COUTINHO [2008] explica o princípio da técnica LSB da seguinte forma: Em uma imagem digital mapeada em bits, cada pixel (menor ponto da figura) é representado por uma seqüencia de bits. Na representação True Color, por exemplo, cada pixel é formado pela combinação das cores vermelho, verde e azul, com 8 bits cada, ou seja, 2^8 = 256 valores possíveis para cada cor, num total de 24 bits para representar cada pixel. O número de cores diferentes nessa representação é 2^24, aproximadamente 16.7 milhões. Uma alteração, por exemplo, nos 4 bits menos significativos de uma cor representaria uma diferença de apenas 2^4 = 16 no valor da mesma, quase imperceptível a alguém observando a imagem. (...) Com essa técnica, em uma imagem de 2 megapixels, cerca de 2 milhões de pixels, tirada por uma câmera fotográfica digital comum, seria possível ocultar aproximadamente 3 milhões de 59
  • caracteres, cerca de 75% do número de caracteres do texto da Vulgata Clementina, texto da Bíblia em latim escrito por São Jerônimo e revisto durante a Reforma Católica, que tem pouco mais de 4 milhões e 200 mil caracteres, sem alterar significativamente a aparência da imagem. A Figura 5.11 nos mostra um exemplo da composição de uma imagem em pixels, onde há as tonalidades de vermelho (Red), verde (Green) e azul (Blue). Figura 5.11 – Composição de um pixel em uma imagem em meio digital Fonte: http://www.gta.ufrj.br/grad/08_1/estegano/TcnicasModernas.html - Acessado em 17/05/2009 Por exemplo, no sistema RGB, a cor do pixel destacado na Figua 5.2 é represen- tada por um conjunto de três bytes, cujos valores são 179, 172 e 128. Convertendo estes valores para binário, temos: 179 (R) 10110011 172 (G) 10101100 128 (B) 10000000 Então, supondo que o bit menos significativo destes bytes sejam modificados, passamos a ter: 10110010 178 (R) 10101101 173 (G) 10000001 129 (B) Como podemos perceber, a modificação destes bits causaria uma alteração quase imperceptível na cor do pixel indicado na Figura 5.10. Por outro lado, a modificação dos bits mais significativos (aqueles mais à esquerda) causaria uma alteração drástica na cor deste pixel. Pelo fato da esteganografia em imagens digitais ocultar a mensagem secreta simulando ruído, que portará a informação secreta, existem imagens que são melhores 60
  • candidatas a portarem mensagens do que outras. COUTINHO [2008] aborda o assunto da seguinte maneira: Desenhos gerados em computadores apresentam, geralmente, pouca variabilidade de cores e nenhum ruído se comparados a fotografias digitais. Pixels desses desenhos, se alterados, chamarão atenção para si, por introduzirem um ruído artificial em uma imagem em este que não existia. De maneira análoga, existem regiões de fotografias com menos ruído e variabilidade de cores e luminosidade do que outras e pixels dessas regiões são piores candidatos a portadores de dados secretos do que pixels de regiões de descontinuidades, por exemplo. Existem técnicas sofisticadas que analisam imagens de forma a escolher pares de pixels gerados pseudo-aleatoriamente, embutindo dados no melhor candidato e deixando o outro inalterado. 5.4.3 Transformação de Domínio Transformação de domínio é uma técnica de esteganografia muito eficiente, que consiste na inserção da mensagem secreta nos espaços de transformação, que são espaços onde o formato original guarda certas informações que serão irrelevantes após a conversão, gerados durante a conversão de tipo de um arquivo de imagem (por exemplo, de BMP 7 para JPEG8) ou som (por exemplo, de WAV 9 para MP3) [KIPPER, 2004]. Nesta técnica, a diferença de tamanho (quantidade de bits) entre o formato original e o formato compactado é utilizada para inserir a mensagem secreta sem levantar suspeita [JÚNIOR E AMORIM, 2008]. 5.4.4 Espalhamento de Espectro Duas técnicas distintas são empregadas com energia eletromagnética gerada 10 numa determinada largura de banda e domínio de freqüência, são elas: seqüência direta (direct sequence) e salto de freqüência (frequency hopping) [JÚNIOR E AMORIM, 2008]. No método de seqüência direta, o fluxo de informação é dividido em pedaços que são alocados a diferentes canais de freqüência num espectro. 7 BMP – Mapa de Bits 8 JPEG - Joint Photographic Experts Group – Formato compactado do BMP 9 WAV - WAVEform audio format é um formato-padrão de arquivo de áudio de diversas empresas. 10 A Largura de Banda, Banda de Passagem ou Bandwidth (termo original em inglês) é a medida da capacidade de transmissão de um determinado meio, conexão ou rede, determinando a velocidade que os dados passam através de desta rede especifica. – Fonte: http://www.guiadocftv.com.br/modules/smartsection/item.php?itemid=14 – Acessado em 18/07/2009 61
  • Salto de freqüência é uma técnica que divide um espectro em quantas freqüências de broadcast11 forem possíveis, e os dados são transmitidos através dessas freqüências [KIPPER, 2004]. 5.4.5 Métodos Estatísticos Sistema de regime binário que funciona com base na capacidade do receptor de distinguir se houve mudança de bit (0 ou 1) no objeto que carrega a mensagem. Uma mudança no meio resulta no bit “1” e a ausência de mudança indica “0”. Um bom exemplo é a comunicação por sinais luminosos, como ocorre na fibra óptica: quando ocorre uma mudança no meio com um sinal luminoso é identificado o bit “1”, quando não há alteração o receptor interpreta aquele bit como “0”. 5.4.6 Distorção Este método cria uma mudança no objeto portador como, por exemplo, um ruído num arquivo de áudio ou um efeito desfocado num arquivo de imagem, e esconde a informação nesta mudança. Normalmente a distorção criada no objeto esteganográfico impossibilita a recuperação do estado original, sem a presença de distorção [JÚNIOR E AMORIM, 2008]. 5.4.7 Geração de Cobertura Diferentemente dos demais métodos apresentados anteriormente, que usam objetos portadores já existentes, na geração de cobertura, um objeto portador é especialmente criado, com o único propósito de esconder alguma informação. Um exemplo desta técnica é o chamado SPAM12 Mimic, um método onde uma pequena mensagem é escondida dentro de outra gerada sobre demanda e enviada na forma de SPAM para uma grande quantidade de pessoas. Ela somente será descoberta por uma pessoa que conheça e suspeite da utilização da técnica dentro do SPAM. 11 Uma freqüência de Broadcast é utilizada quando se deseja que a mensagem seja enviada para vários destinos. Todos os destinos que estiverem naquela freqüência conseguiram entender a mensagem que for enviada 12 Segundo o site http://www.antispam.br/conceito/, spam é o termo usado para referir-se aos e-mails não solicitados, que geralmente são enviados para um grande número de pessoas. 62
  • A Figura 5.12 apresenta a tela do site http://www.spammimic.com/ onde está disponível uma aplicação web que gera o objeto portador de uma mensagem secreta. Figura 5.12 – Site www.spammimic.com Fonte: http://www.spammimic.com/ - Acessado em 24 de maio de 2009 5.4.7.1 Máscara Perceptiva Ocorre quando um sinal ou som torna-se imperceptível ou de difícil compreensão a um observador graças à presença de outro sinal no meio. Um exemplo desta técnica é reproduzido em filmes de espionagem aonde um personagem quer ser comunicar com outro sabendo que está em um ambiente monitorado, provocando ruídos para que sua conversa não seja detectada ou que seja incompreensível aos autores da monitoração. 5.5 Problemas para esconder as informações A primeira consideração a ser feita quando se utilizam técnicas esteganográficas é determinar o nível de visibilidade da mensagem. Isso se faz analisando se o processo que adiciona o dado no objeto portador o distorce a tal ponto que seja facilmente detectado durante sua transmissão. Se o objeto for distorcido de forma inaceitável para transmissão da mensagem, o portador não é suficiente para carregar toda a informação que nele foi embutida. Se a distorção for aceitável, o portador possui um nível de 63
  • visibilidade baixo, que possibilita a transmissão da mensagem de uma forma com segurança aceitável [KIPPER, 2004]. Outro conceito associado ao processo esteganográfico é a robustez do método utilizado. Entende-se por robustez a capacidade de resistência da mensagem secreta a mudanças feitas no objeto portador, de forma que um método esteganográfico robusto mantém a integridade da mensagem mesmo que o objeto portador seja submetido a certos efeitos adversos. Porém, temos uma relação entre robustez e o payload 13 da mensagem secreta. Normalmente temos a seguinte relação, feita por KIPPER [2004]: Maior robustez = Menor Payload Menor robustez = Maior Payload Um último ponto a se considerar é a dependência de formatos (no caso da esteganografia computacional) que pode acabar destruindo a mensagem escondida. Mudanças de formatos, como a compactação do formato BMP para JPEG pode acabar destruindo os bits que fazem parte da mensagem que estiver oculta no objeto portador [KIPPER, 2004]. 5.6 Esteganálise Os estudos e pesquisas que se destinam a revelar a existência de mensagens secretas dentro de um objeto recipiente é denominada esteganálise [PETRI, 2004]. Trataremos nesse tópico da esteganálise com foco computacional. Normalmente a esteganálise se destina somente a verificar a existência de uma mensagem escondida e não de revelar seu conteúdo. Muitas vezes o conteúdo pode estar criptografado, o que exigiria técnicas de criptoanálise para que fosse possível obter o conteúdo original. Há técnicas de esteganálise que visam apenas detectar a presença ou ausência de uma informação secreta no objeto analisado, mas sem se preocupar com seu conteúdo. Essas técnicas são classificadas como esteganálise passiva. As técnicas que se destinam 13 Termo utilizado para designar a carga útil de um pacote de dados, desconsiderando-se as informações de roteamento e de cabeçalho, ou seja, o tamanho da mensagem esteganográfica. Quanto maior a carga útil maior será o conteúdo que poderá ser enviado. Fonte: http://www.babylon.com/definition/Payload/Portuguese - Acessado em 31 de maio de 2009. 64
  • a extrair uma cópia, às vezes aproximada, da mensagem secreta fazem parte da esteganálise ativa [CHANDRAMOULI 2002]. A esteganálise tenta identificar se alguma das características de uma imagem ou arquivo pode ter sido alterada por uma mensagem que foi embutida, ou seja, tenta verificar rastros que foram deixados pelo processo de esteganografia. Segundo WAYNER [2002] “As técnicas de esteganálise possuem algumas limitações. Muitas delas, por exemplo, foram feitas especialmente para determinados algoritmos e softwares de esteganografia que já são previamente conhecidos; ou seja, quando essas mesmas técnicas são aplicadas aos resultados de outro algoritmo ou software, elas têm grande probabilidade de falhar”. Caso o esteganalista consiga identificar a existência da mensagem pode utilizar os seguintes métodos, segundo WAYNER [2002], para manipular o arquivo que a contém: Destruir o conteúdo – Pode-se destruir o arquivo, eliminando seu conteúdo. Adicionar novas informações – Consiste em sobrescrever as informações do arquivo com um programa igual ou diferente ao que foi utilizado no processo esteganográfico anterior. Alterar o formato do arquivo – Extensões diferentes armazenam os dados de forma diferentes, o que pode resultar na visualização de dados que estão esteganografados. Comprimir o arquivo – Baseia-se no fato de que algoritmos de compressão tentam remover informações extras ou redundantes do arquivo, onde é geralmente escondida a informação. 5.6.1 Ataques de Esteganálise Basicamente há três tipos de ataques de esteganálise em ambientes computacionais: Ataques Visuais – Consistem em avaliar o arquivo visualmente, em busca de detalhes que revelem algum traço de esteganografia. Mudanças perceptíveis em cores podem endossar a presença de alguma informação secreta. Marcas d’água em arquivos de áudio também podem atestar a existência de alguma mensagem. 65
  • Ataques Estruturais - Os ataques estruturais dizem respeito a identificar se há mudanças na estrutura dos arquivos que sugerem algum tipo de modificação via algum processo esteganográfico. A técnica de bit menos significativo (LSB) pode não ser eficiente em formatos de imagens que possuem uma pequena palheta de cores, pois seria possível detectar as mudanças. Ataques Estatísticos – São técnicas que se destinam à análise estatística dos dados de um arquivo, medindo a quantidade de redundância de dados ou distorção do mesmo. Em imagens pode-se medir o número de pares de cores próximas, as quais se distinguem no máximo de uma unidade em cada uma das componentes vermelho, verde e azul (padrão RGB) [UFRJ, 2006]. Segundo Wayner, 2002, as melhores técnicas de esteganálise são aquelas direcionadas especificamente a um determinando algoritmo, pois a sua chance de sucesso é maior. 5.7 Considerações Finais Este capítulo se destinou a apresentar uma visão técnica e de médio aprofundamento sobre a esteganografia, e muitos desses conceitos serão utilizados em nosso capítulo posterior, Classificação de Algoritmos Esteganográficos. 66
  • 6. Classificação de Algoritmos Esteganográficos Neste capítulo, propomos uma classificação dos algoritmos apresentados nos Capítulos 4 e 5, em função das características apresentadas por cada um deles. Esta classificação tem como objetivo oferecer subsídio para a escolha do algoritmo mais apropriado para uma determinada aplicação, ou mesmo para a escolha de algoritmos que poderiam ser combinados a fim de obtermos uma maior segurança da informação a ser esteganografada. 6.1 Critérios Adotados A classificação proposta é baseada nos critérios de segurança da informação apresentados no Capítulo 3: Confidencialidade: Capacidade de o algoritmo garantir a confidencialidade das informações. Certos algoritmos esteganográficos conseguem preservar o segredo carregado nas mensagens mesmo quando sua existência é conhecida. A classificação é baseada nos algoritmos em si e não com seu uso aliado a técnicas criptográficas auxiliares. Pode também ser entendido como a robustez do algoritmo. Integridade: Capacidade de o método garantir a ausência de modificações ou alterações na mensagem durante o seu armazenamento, transmissão ou recebimento. Algoritmos que utilizam objetos portadores perecíveis, como o Ovo de Giovani Porta não conseguem garantir a integridade de forma tão razoável quanto o uso de materiais não perecíveis, como as técnicas usadas por Trithemius, transcritas em papel. Autenticidade: Característica do algoritmo que permite alegar a procedência da mensagem. Métodos como a anamorfose conseguem garantir a autenticidade através de marcas deixadas durante sua construção, como a assinatura do pintor que produziu a obra. E outros critérios, explicados a seguir: Informatizável: Característica do algoritmo que o permite ser reproduzido em ambiente computacional. As grelhas podem ser reproduzidas em um programa, enquanto as tintas invisíveis, por se utilizarem de métodos físicos, não possuem essa propriedade. 67
  • Complexidade: Grau de dificuldade para que o procedimento esteganográfico seja realizado. Quanto maior o grau de dificuldade, mais habilidoso e conhecedor da técnica o emissor da mensagem terá de ser para empregá-la e também para o destinatário obter a mensagem após a sua chegada. Capacidade: Refere-se à capacidade de informação que pode ser armazenada no objeto portador. Em códigos abertos a informação secreta exige que a mensagem portadora seja grande o suficiente para carregar o segredo e não despertar suspeitas sobre a esteganografia. Em contrapartida, a esteganografia digital pode guardar grandes mensagens em um objeto portador que não cause suspeitas da comunicação secreta. Outro nome para capacidade do algoritmo seria payload, ou a carga útil do objeto portador. Não-perceptividade: Capacidade do algoritmo de, após sua aplicação, tornar o estego-objeto imperceptível à utilização dos cinco sentidos humanos (visão, audição, tato, olfato e paladar). É baseado na idéia de esconder a presença da esteganografia através da exploração de falhas ou deficiências inerentes a esses sentidos. 6.2 Classificação e Algoritmos utilizados Iremos nos basear na classificação de BAUER [2002], revisada ARNOLD [2003], para organizar os algoritmos que explicamos ao longo dessa monografia. Usaremos subcategorias da classificação original para enquadrarmos nossos algoritmos. A Tabela 8 nos mostra as principais características de cada subcategoria e os algoritmos estudados que estão englobados na mesma. 68
  • SUBCATEGORIA DESCRIÇÃO ALGORITMOS TINTAS Algoritmos que se  Bioluminescência de INVISÍVEIS utilizam de tintas John Wilkins especiais que  Ovo de Giovani Porta escondem a informação a ser transmitida LUGARES Algoritmos que têm  Tabuletas de Demarato ESCONDIDOS como característica a  Mensageiro de Histaeu inserção da mensagem  Bolo de lua chinês secreta dentro de um  Maria, Rainha da objeto portador Escócia aparentemente  George Washington e inocente que servirá os Culpers para o transporte da  Pombos Correios mensagem.  Micropontos  Prisioneiros da Guerra do Vietnã ESTEGANOGRAFIA Algoritmos que se  LSB (Least Significant DIGITAL utilizam dos meios Bit) computacionais para  Marcas D’Água sua realização CÓDIGOS Textos escritos de  Gaspar Schott – Schola ABERTOS forma legível que Steganographica possuem uma  Johannes Trithemius - mensagem secreta Cifra de Ave Maria escondida por meio de  Cifra de Bacon algum algoritmo  Código de Jargões conhecido entre a  Acrósticos origem e o destino  Grelhas de Cardano, Richelieu e Fleissner  Disco de Enéas  Códigos de Jornais SEMAGRAMAS São signos ou símbolos  Tapetes da Guerra Civil utilizados para  Código Naútico esconder informação.  Anamorfose Podem ser visuais ou  UUS Pueblo textuais. Tabela 8 - Subcategorias, Descrições e Algoritmos Para cada par subcategoria critério avaliado, atribuímos uma valoração cujo significado é explicado a seguir: Baixo: o algoritmo não consegue ou fornece mecanismos muito precários para atender ao critério. Médio: o algoritmo atende ao critério, mas possui características que podem diminuir sua conformidade com um nível baixo de esforço. 69
  • Alto: o algoritmo atende bem ao critério estabelecido, conseguindo preservar as características dele durante a comunicação. As cores de fundo de cada critério remetem a um ponto fraco ou forte do algoritmo. Células com fundo vermelho apresentam um ponto fraco da subcategoria, enquanto uma célula verde denota um ponto forte do algoritmo. Uma célula amarela significa que a subcategoria atende de forma satisfatória, mas não completa, ao critério avaliado. 6.2.1 Classificação das Tintas Invisíveis A Tabela 9 mostra a classificação e justificativa para a subcategoria Tintas Invisíveis. SUBCATEGORIA ESTEGANOGRÁFICA X CRITÉRIOS – Tintas Invisíveis Confidencialidade Integridade Autenticidade Informatizável Capacidade Não-perceptividade Complexidade Média Média Baixa Não Baixa Média Baixa Tabela 9 - Classificação da subcategoria Tintas Invisíveis Justificativa: As tintas invisíveis apresentam atualmente uma complexidade baixa na execução, visto que há diversos mecanismos como canetas que já permitem que a escrita seja feita de forma que só possa ser observada sob certo tipo de iluminação. Garantem uma confidencialidade e integridade de nível médio, pois conseguem guardar o sigilo da mensagem e sua integridade no transporte, mas geram muitas suspeitas, já que a interceptação de um papel aparentemente “limpo” é algo suspeito. Métodos como o Ovo de Giovani Porta não garantem tal integridade, já que “escreve” dentro de um meio perecível. A autenticidade pode ser garantida com uma assinatura comum, mas que normalmente não apresenta alto grau de adulteração. A informatização não é possível, visto que se utiliza de diversos meios físicos, como a tinta, para sua perpetração. Um método que bem representa a categoria é a forma como John Wilkins utilizava tintas bioluminescentes. Após a extração da tinta e a formulação da tinta, a complexidade se reduz a escrever normalmente a mensagem em um papel ou similar. A confidencialidade é bem fornecida, apesar de que o tráfego de uma folha vazia, como dissemos, gera suspeita sobre a ocultação de algo. A autenticidade está reduzida a uma 70
  • assinatura da origem e a informatização não é possível pela necessidade de uma forma física para o transporte. A capacidade para transportar a mensagem secreta é baixa, visto que o transporte de uma grande mensagem esteganografada com esse método gerará suspeitas caso os papéis ou similares sejam interceptados. Esteganografar com esse método pode não gerar suspeitas auditivas ou visuais, mais a utilização do tato ou do olfato pode revelar características como sobressaltos nos papéis ou um cheiro da tinta utilizada, como a tinta de suco de limão 14, fazendo com que esses algoritmos tenham uma não-perceptividade média. 6.2.2 Classificação dos Lugares Escondidos A Tabela 10 mostra a classificação e justificativa para a subcategoria Lugares Escondidos. SUBCATEGORIA ESTEGANOGRÁFICA X CRITÉRIOS – Lugares Escondidos Confidencialidade Integridade Autenticidade Informatizável Capacidade Não-perceptividade Complexidade Média Alta Baixa Não Alta Média Média Tabela 10 - Classificação da subcategoria Lugares Escondidos Justificativa: Lugares escondidos são técnicas esteganográficas que guardam de forma razoável o sigilo da mensagem secreta, já que normalmente não levantam suspeitas de possíveis interceptadores. Mas, com a interceptação da mensagem, normalmente seu conteúdo é revelado. A integridade é classificada como média, pois os lugares escondidos normalmente são meios não-perecíveis e que não levantam suspeitas, o que pode garantir a integridade no tráfego da mensagem. A autenticidade, no entanto, é baixa, já que apenas marcas com baixa robustez, como assinaturas físicas, podem ser deixadas para atestar a origem. A informatização não é possível devido à utilização de objetos portadores físicos e métodos que os utilizam intrinsecamente para o sucesso do transporte. A complexidade é média, já que a maioria dos algoritmos exige um conhecimento e habilidade da origem para o envio da mensagem. 14 http://cienciahoje.uol.com.br/view/2241 - Palavras invisíveis - Explicação sobre a utilização da tinta de limão. 71
  • Um bom exemplo é a utilização de pombos correios para a transmissão de mensagens. A confidencialidade média, pois o meio de transmissão, apesar de não levantar suspeitas, não é robusto a ataques caso seja interceptado. A integridade é alta, visto que os pombos são um meio durável, apesar de estar sujeito a fatores naturais e humanos que possam interferir em sua missão, e capaz de transmitir a forma de maneira segura da origem ao destino. A complexidade no geral é média, pois algumas exigem técnicas como o treinamento de pombos ou a redução fotomecânica para micropontos, enquanto outras se resumem a simples fundos falsos em bolsas ou malas. A capacidade á alta, pois grande quantidade de informação pode trafegar de forma escondida, como as informações trafegadas dentro dos bolos de lua chineses ou dentro de micropontos. A não-perceptividade se resume a utilização de um objeto portador que não gere suspeitas durante o tráfego, sendo assim, a mensagem secreta normalmente não possui outra camada de proteção além da falta de desconfiança de um possível interceptador do estego-objeto, sendo classificada como média. 6.2.3 Classificação da Esteganografia Digital A Tabela 11 mostra a classificação e justificativa para a subcategoria Esteganografia Digital. SUBCATEGORIA ESTEGANOGRÁFICA X CRITÉRIOS – Esteganografia Digital Confidencialidade Integridade Autenticidade Informatizável Capacidade Não-perceptividade Complexidade Alta Alta Alta Sim Alta Alta Alta Tabela 11 - Classificação da subcategoria Esteganografia Digital Justificativa: A esteganografia digital utiliza as mais recentes tecnologias computacionais e conseguem se aproveitar delas para garantir uma grande robustez e integridade das mensagens esteganografadas. Normalmente os métodos são de difícil detecção, sendo ela possível somente através de técnicas de esteganálise computacional. A autenticidade é alcançada normalmente por métodos de verificação de marca d’água ou de cálculos de hash, para validação da origem. Os métodos informatizáveis normalmente apresentam alta complexidade, o que exige um conhecimento computacional do método e dos conceitos de esteganografia. 72
  • Um bom exemplo é a utilização de marcas d’água robustas e invisíveis nas mensagens. A confidencialidade é alta, visto que não há suspeita de sua existência e, caso haja a detecção, há robustez aos ataques de esteganálise. A integridade é alta, pois consegue garantir a ausência de modificação durante o transporte e a existência da mensagem. A autenticidade é alta, visto que métodos quase indubitáveis como hash e assinatura digital podem ser utilizados. A complexidade, no entanto, é alta, visto que sua utilização correta é difícil para usuários que não conheçam os conceitos arraigados ao seu funcionamento. A capacidade é alta, pois podem ser transmitidas grandes quantidades em pequenos arquivos, mas, como bem lembram Petitcolas e Katzenbeisser, 2000, há um conflito de escolha entre o tamanho do payload, a quantidade de informação escondida, e a robustez do algoritmo, ou seja, quanto maior for a quantidade de bits da mensagem secreta dentro do objeto portador digital, maior será a chance de a esteganografia ser revelada. A não-perceptividade á alta, pois utilizamos atualmente dois sentidos humanos quando manipulamos arquivos digitais, a visão e a audição, e a esteganografia digital normalmente não altera o objeto portador suficientemente para causar distorções perceptíveis a esses sentidos. 6.2.4 Classificação dos Códigos Abertos A Tabela 12 mostra a classificação e justificativa para a subcategoria Códigos Abertos. SUBCATEGORIA ESTEGANOGRÁFICA X CRITÉRIOS – Códigos Abertos Confidencialidade Integridade Autenticidade Informatizável Capacidade Não-perceptividade Complexidade Alta Média Baixa Sim Baixa Média Média Tabela 12 - Classificação da subcategoria Códigos Abertos Justificativa: Os códigos abertos conseguem garantir uma alta confidencialidade por transmitirem a mensagem secreta na mesma camada de visão da mensagem portadora, sendo difícil a distinção de ambas por um interceptador. Algoritmos como o das Grelhas de Cardano podem tornar a mensagem resultante em algo incompreensível, enquanto a Cifra de Bacon pode ser transmitida em uma mensagem compreensível e com nexo. Ambas as técnicas são difíceis de serem 73
  • detectadas sem um bom conhecimento de um interceptador. A integridade é média, pois normalmente o meio para transmissão é o papel, que pode ser danificado com facilidade. Em meios digitais, a integridade da informação pode ser preservada com maior facilidade. A autenticidade ainda fica limitada a assinaturas manuais, um mecanismo pouco seguro para garantir a origem da mensagem. A informatização é possível, pois os métodos normalmente seguem seqüências de procedimentos que podem ser algoritmizados, visto que não dependem inerentemente de um objeto portador físico. A complexidade é baixa, pois os métodos se utilizam de técnicas textuais que trabalham com o objeto portador, a mensagem clara, de forma a esteganografar uma mensagem secreta. As técnicas textuais apresentam uma baixa complexidade, visto que o trabalho com textos se dá mais facilmente do que com outras habilidades, como a esteganografia digital ou o uso de tintas invisíveis. Um bom exemplo é a Cifra de Bacon. O texto secreto é enviado às claras e sem levantar suspeitas. Existe um grau razoável de robustez, visto que o formato das letras que carregam a mensagem secreta e alfabeto binário para cada letra pode variar, complicando uma possível tentativa ilegítima de conhecer o conteúdo da mensagem. A integridade fica preservada pela durabilidade do meio, normalmente papel, e pela dificuldade de alterar a mensagem de forma a que permaneça algum sentido após a alteração. Entretanto, caso descoberta a esteganografia, a remoção de parte da mensagem pode ser feita com a eventual remoção de apenas uma parte do texto que contenha um pedaço do código aberto utilizado. A alteração do conteúdo também não é simples, já que é envolve um processo de esteganálise ou criptoanálise para o entendimento do algoritmo. A autenticidade é baixa, já as formas de certificar a origem são manuais. Em meios digitais a autenticidade é alta, graças a técnicas como hash ou a assinatura digital. A complexidade é baixa, visto que a compreensão e utilização da técnica não exigem é de difícil execução, como a esteganografia digital. A capacidade é semelhante às tintas invisíveis, mas é menor devido a necessidade de misturar o texto secreto com uma mensagem de cobertura que ainda proporcione uma mensagem com sentido ao leitor, não despertando suspeitas imediatas de que há esteganografia presente no documento. A não-perceptividade é média, pois, no geral, há códigos abertos como as cifras nulas e os acrósticos que apresentam padrões visíveis no texto, enquanto há códigos que 74
  • asseguram uma passagem imperceptível, como a Cifra de Ave Maria de Trithemius e a Cifra de Bacon. 6.2.5 Classificação dos Semagramas A Tabela 13 mostra a classificação e justificativa para a subcategoria Semagramas. SUBCATEGORIA ESTEGANOGRÁFICA X CRITÉRIOS – Semagramas Confidencialidade Integridade Autenticidade Informatizável Capacidade Não-perceptividade Complexidade Alta Média Média Sim Baixa Baixa Baixa Tabela 13 - Classificação da subcategoria Semagramas Justificativa: Os semagramas conseguem garantir um alto sigilo na transmissão das mensagens, pois a mensagem secreta resiste a uma possível interceptação já que a sua posse não contém a mensagem em si e sim um código que só será entendido corretamente pelas partes conhecedoras do código. A integridade é média porque a mensagem é normalmente passada por fotos, quadros ou meios cuja adulteração sem detecção é difícil, visto que o código normalmente é particular e guarda particularidades bem conhecido das partes. A autenticidade é maior do que aquela garantida pelos métodos que utilizam uma simples assinatura, que pode ser forjada facilmente, pois é possível utilizar assinaturas ou marcações mais sofisticadas nas imagens, pinturas ou símbolos utilizadas na transmissão dos códigos. A informatização é possível graças a não inerência de meio físico para confecção do semagrama e seqüência ordenada e algoritmizável de procedimentos. A complexidade é baixa, já que somente é necessária a definição de símbolos, gestos e figuras e atribuições de significados entre os participantes legítimos da comunicação. Um exemplo são os sinais náuticos. A confidencialidade é alta já que a mensagem não levanta grandes suspeitas e o significado não é conhecido mesmo com a interceptação da mensagem. A integridade é média, pois o código é bem conhecido entre as partes, evidenciando qualquer alteração e é transmitido por um meio não perecível. A autenticidade é garantida pela padronização do método, como é o caso do código náutico, ou por assinaturas sofisticadas, como em quadros que contém anamorfose. 75
  • A capacidade dos semagramas é baixa porque o transporte de uma grande quantidade informação nos signos e símbolos sem despertar razoável suspeita em sua transmissão é algo muito difícil. Podemos ver como exemplo as imagens feitas com anamorfose. Qualquer distorção notória na imagem despertará os olhos de um atento observador. A não-perceptividade é baixa, já que o símbolo que carrega um significado oculto é facilmente visualizado durante sua transmissão, como os códigos náuticos dispostos nos navios e os antigos símbolos utilizados durante os escravos da guerra civil americana. 6.3 Combinação de Subcategorias A Tabela 14 compara as classificações feitas. Nela podemos ver que é possível juntar algoritmos das diversas subcategorias. SUBCATEGORIA ESTEGANOGRÁFICA X CRITÉRIOS Confidencialidade Integridade Autenticidade Informatizável Capacidade Não-perceptividade Complexidade Tintas Invisíveis Média Média Baixa Não Baixa Média Baixa Lugares Escondidos Média Alta Baixa Não Alta Média Média Esteganografia Digital Alta Alta Alta Sim Alta Alta Alta Códigos Abertos Alta Média Baixa Sim Baixa Média Média Semagramas Alta Média Média Sim Baixa Baixa Baixa Tabela 14 - Comparação das classificações das subcategorias Três exemplos de fusão de algoritmos são apresentados a seguir. As tabelas abaixo de cada combinação resumem os benefícios agregados. Semagramas e Lugares Escondidos: A combinação de símbolos como os tapetes da guerra civil e a utilização de lugares escondidos como as rolhas utilizadas pela rainha da Escócia conferem à mensagem níveis altos de Confidencialidade e Integridade. A autenticidade da mensagem é incrementada e a complexidade final do método ainda é satisfatória. Além disso, os lugares escondidos conseguem fortalecer a baixa capacidade e não-perceptividade que encontramos quando utilizamos os 76
  • semagramas. A capacidade dos semagramas não se altera, visto que seu significado é que conte a mensagem e não sua quantidade. SUBCATEGORIA ESTEGANOGRÁFICA X CRITÉRIOS Confidencialidade Integridade Autenticidade Informatizável Capacidade Não-perceptividade Complexidade Lugares Escondidos Média Alta Baixa Não Alta Média Média Semagramas Alta Média Média Sim Baixa Baixa Baixa TOTAL Alta Alta Média Não Baixa Média Média Tabela 15 - Benefícios do uso combinado de Lugares Escondidos e Semagramas Tintas invisíveis e Códigos Abertos: A utilização desta combinação permite a transmissão de uma mensagem com alguns caracteres da mensagem secreta escondidos por tinta invisível e outros visíveis a olho nu. A confidencialidade da mensagem fica alta e a integridade, apesar de média, é satisfatória para o envio, pois a existência de duas camadas de esteganografia dificulta a adulteração completa da mensagem. Quanto à capacidade e não-perceptividade, a fusão das técnicas não fortalece o processo esteganográfico. SUBCATEGORIA ESTEGANOGRÁFICA X CRITÉRIOS Confidencialidade Integridade Autenticidade Informatizável Capacidade Não-perceptividade Complexidade Tintas invisíveis Média Média Baixa Não Baixa Média Baixa Códigos Abertos Alta Média Baixa Sim Baixa Média Média TOTAL Alta Média Média Não Baixa Média Média Tabela 16 - Benefícios do uso combinado de Tintas invisíveis e Códigos abertos Esteganografia Digital e Lugares Escondidos: A utilização conjunta de técnicas das duas subcategorias proporciona um arquivo armazenado em mídia (CDs, pen-drive etc) transportado em locais não triviais, como no um fundo falso de uma mala ou dentro de um bolo ou outro alimento, com os devidos cuidados de temperatura e umidade que uma mídia digital necessita para sua preservação. Teremos com a camada extra de esteganografia um obstáculo a mais para a detecção da mensagem secreta e sua conseqüente quebra via esteganálise, permitindo que a mídia seja 77
  • trafegada a longas distâncias sem levantar suspeitas, já que nem sempre a esteganografia digital é invisível, coisa que um lugar escondido pode ajudar adicionando uma camada de “invisibilidade” à mídia, já que sua existência não é facilmente detectada. A capacidade e a não- perceptividade são reforçadas pela camada digital da combinação das técnicas. SUBCATEGORIA ESTEGANOGRÁFICA X CRITÉRIOS Confidencialidade Integridade Autenticidade Informatizável Capacidade Não-perceptividade Complexidade Esteganografia Digital Alta Alta Alta Sim Alta Alta Alta Lugares Escondidos Média Alta Baixa Não Alta Média Média TOTAL Alta Alta Alta Não Alta Alta Alta Tabela 17 - Benefícios do uso combinado de Esteganografia digital e Lugares escondidos 6.4 Considerações Finais A classificação dos algoritmos esteganográficos tem como objetivo agrupar os diversos algoritmos encontrados na literatura, em função de suas principais caracterís- ticas (confidencialidade, integridade, autenticidade, possibilidade de informatização e complexidade). Com base nesta classificação, podemos escolher métodos esteganográfi- cos a serem utilizados conjuntamente (combinando suas características mais fortes), visando aumentar a segurança das mensagens transmitidas. 78
  • 7. Conclusão Nos dias atuais, a segurança da informação é um tema amplamente discutido e de grande relevância para a tecnologia da informação. Questões como a confidencia- lidade, integridade e autenticidade de uma mensagem, assim como a privacidade de uma comunicação são pontos que trazem preocupação para o cada vez crescente número de usuários da internet, que trocam milhões de mensagens a cada dia, sejam pessoais ou comerciais, que sua interceptação e divulgação poderiam comprometer grandes organi- zações e marcas mundialmente prestigiadas. Além do seu uso para fins legais, a esteganografia é amplamente utilizada por organizações criminosas, que visam utilizá-la para criarem um canal de comunicação seguro para trocar suas informações. Forças policiais de diversas esferas governamentais tentam constantemente interceptar e obter o conteúdo original de tais mensagens visto que diversos crimes e atentados poderiam ser evitados com a sua obtenção. Em vista disto, neste trabalho, estudamos diversas técnicas de esteganografia, bem como sua evolução através da história, e propomos uma forma de classificá-las em subcategorias que reúnem técnicas cujas características básicas são similares. Esta classificação foi feita segundo sete critérios, que permeiam as áreas de Segurança da Informação (confidencialidade, integridade e autenticidade) e da própria Estegano- grafia (informatizável, complexidade, capacidade e não-perceptividade). A partir da classificação proposta, pudemos evidenciar aspectos positivos e negativos de cada técnica e, aplicando o conceito de esteganografia em camadas, também discutimos como o uso simultâneo de diversas técnicas de esteganografia pode fortalecer a segurança de um processo de comunicação. Consideramos que o estudo de como o processo em camadas ocorre é importante para tornar as comunicações mais seguras e também para o processo inverso, isto é, auxiliar os profissionais a realizar a esteganálise tendo em mente o processo em camadas, onde diversas técnicas podem ser utilizadas para esconder a existência da mensagem e embaralhar seu conteúdo, isto quando esteganografia e criptografia forem utilizadas simultaneamente. 79
  • Podem se considerar sugestões de trabalho futuro para o tema: Testar diversas combinações possíveis de algoritmos e verificar os efeitos positivos e negativos que subcategorias distintas inserem na comunicação. Desenvolver sistemas de esteganálise que busquem sinais de esteganografia em camadas. Desenvolver sistemas que permitam as combinações possíveis de técnicas aqui supracitadas para esteganografar arquivos digitais. 80
  • Referências Bibliográficas ACAD. LAT. DE SEG. INFO. Academia Latina de Segurança da Informação. Disponível em: < https://www.technetbrasil.com.br/academia2007/seguranca/Home.aspx> Acesso em 11 nov. 2009. ALMEIDA, J.C.B. (2002) Cifras clássicas. Universidade do Minho, Portugal. ARNOLD, M., SCHMUCKER, M., and WOLTHUSEN, S. D. (2003) Techniques and Applications of Digital Watermarking and Content Protection. Artech House, Norwood, Massachusetts. AURÉLIO (1999) Novo Dicionário Aurélio – O Dicionário da Língua Portuguesa. BAUER, F. L. (2002) Decrypted Secrets: Methods and Maxims of Cryptology, 3rd ed. Springer- Verlag, New York. BELISÁRIO, R. (2009) Imagens quânticas, computadores quânticos. Disponível em: < http://afisicasemove.blogspot.com/search/label/C%20- %20Computa%C3%A7%C3%A3o%20qu%C3%A2ntica > Acesso em 12 abr. 2009 CHANDRAMOULI, R. (2002) A Mathematical Approach to Steganalysis. SPIE Security and Watermarking of Multimedia Contents IV, Califórnia. COTRIM, G. (1999) História Global – Brasil e Geral. Ed. Saraiva, São Paulo. COUTINHO, P.S. (2008) Técnicas Modernas de Esteganografia. Disponível em < http://www.gta.ufrj.br/grad/08_1/estegano/TcnicasModernas.html > Acesso em 14 nov. 09 FONSECA, T.C. (2007) Esteganografia. Disponível em < http://www.gta.ufrj.br/grad/07_2/thiago_castello/index.html> Acesso em 26 abr. 2009. ICPBRASIL. Glossário ICP Brasil. Disponível em < http://www.iti.gov.br/twiki/pub/Certificacao/Glossario/glossario_iti.pdf > Acesso em 25 out. 2009 ITI. Instituto Nacional de Tecnologia da Informação. Disponível em < http://www.iti.gov.br/twiki/pub/Certificacao/CartilhasCd/brochura01.pdf > Acesso em 26 abr. 2009. JÚLIO, E; BRAZIL, W. e ALBUQUERQUE, C. (2007) Esteganografia e suas aplicações. Universidade Federal Fluminense. JÚNIOR, J.G.R. e AMORIM, E. S. (2008) Esteganografia: integridade, confidencialidade e autenticidade. São Bernardo do Campo. 81
  • JÚNIOR, O.A. (2009) Números quânticos. Universidade Federal do Triângulo Mineiro. Disponível em <http://www.uftm.edu.br/disfisicoquimica/material/AVIdisfisicoquimica090310102848.pdf> Acesso em 25 out. 2009. KAHN, D. (1967) The Codebreakers – The Story of Secret Writing. New York, New York, U.S.A. KESSLER, G. C. (2004) An Overview of Steganography for the Computer Forensics Examiner. Disponível em < http://www.fbi.gov/hq/lab/fsc/backissu/july2004/research/2004_03_research01.htm > - Acessado em 03 jun. 2009. KIPPER, G. (2004) Investigator's Guide to Steganography. Auerbach Publications. LEAL, S. Certinews- Criptografia Quântica. Disponível em < https://www.certisign.com.br/certinews/edicoes/certnews_06/sleal.htm> Acesso em 21 abr. 2009. LIMA, R. A. F. (2007) Anamorfose: A matemática na anamorfose. UNIMESP. MARCIANO, J.L.P. (2006) Segurança da Informação - uma abordagem social. Universidade de Brasília, Brasília. MESQUITA NETO, T. (2007) Uma aplicação de técnicas de ocultação de dados para armazenamento e recuperação de informações em arquivos multimídia. Unioeste - Universidade Estadual do Oeste do Paraná, Paraná. MICHAELIS. Moderno Dicionário da Língua Portuguesa. Disponível em < http://michaelis.uol.com.br/moderno/portugues/index.php?lingua=portugues- portugues&palavra=exatid%E3o > Acesso em 11 nov. 2009. MISAGHI, M. (2001) Avaliação de Modificações do Cifrador Caótico de Roskin. Florianópolis. Dissertação (Mestrado em Ciência da Computação) – Centro Tecnológico, Universidade Federal de Santa Catarina. Acesso em 05 abr. 2009. NBR ISO 27002. ABNT NBR ISO/IEC 27002:2005 - Código de Prática para a Gestão da Segurança da Informação. NETO, F.C.J; DUARTE, O.C.M.B (2003). Criptografia Quântica para Distribuição de Chaves. Universidade Federal do Rio de Janeiro. NETO. (2004) Criptografia Quântica. Disponível em: <http://www.numaboa.com/index.php?option=com_content&view=article&id=627&Itemid=145> Acesso em 12 abr. 2009. OLIVEIRA, B.G. (2005) Fundamentos da Criptologia. Parte I – Introdução e Histórias. Universidade Federal do Rio de Janeiro, GRIS-2005-A-003. PEIXOTO, M. C. P. (2006) Engenharia Social & Segurança da Informação na gestão corporativa. Brasport. Rio de Janeiro. 82
  • PETITCOLAS, F.A.P. e KATZENBEISSER, S. (2000). Information Hiding Techniques for Steganography and Digital Watermarking. Artech House. PETRI, M. (2004) Esteganografia. Instituto Superior Tupy, Joinville. REZENDE, P. A.D. (2000) Criptografia e Segurança na Informática. Copymarket, Universidade de Brasília, Brasília. RIBEIRO, J.T. (2007) Criptografia: Técnicas de Data Mining para Criptoanálise. SANTOS, B.R e ALVES, R, S. Princípio da Incerteza de Heisenberg. Disponível em <http://www.gta.ufrj.br/grad/07_1/quantica/PrincpiodaIncertezadeHeisenberg.html> Acesso em 25 out. 2009. SCHNEIDER, G.G. (2005) Arquitetura de Computadores Quânticos. Universidade Federal do Rio Grande do Sul, Porto Alegre. SIMPLÍCIO JÚNIOR, M.A. (2008) Algoritmos criptográficos para redes de sensores. São Paulo. SINGH, S. (2001) O Livro dos Códigos - A Ciência do Sigilo: do Antigo Egito à Criptografia Quântica. Ed. Record, Rio de Janeiro. STINSON, D. (1995) Cryptography - Theory and Practice. CRC Press. TEIXEIRA, M.A.O; BRAGA, F.A.A e FREIRE, P.H. (2007) Apresentação sobre Criptografia na disciplina Sistemas Computacionais. FATEC São Paulo, São Paulo. TKOTZ, V. (2003) As substituições monoalfabéticas. Disponível em < http://www.numaboa.com/criptografia/substituicoes/monoalfabeticas> Acesso em 25 out. 2009. TKOTZ, V. (2005a) Modos de operação das cifras de bloco. Disponível em < http://www.numaboa.com/criptografia/bloco/355-modos-de-operacao> Acesso em 25 out. 2009. TKOTZ, V. (2005b) O que é criptoanálise. Disponível em < http://www.numaboa.com/criptografia/criptoanalise/307-Criptoanalise> Acesso em 25 out. 2009. TKOTZ, V. (2005c) A Grelha de Cardano (e de Richelieu). Disponível em < http://www.numaboa.com/criptografia/esteganografia/163-grelha-de-cardano> Acesso em 25 out. 2009. TKOTZ, V. (2005d) A grade giratória de Fleissner. Disponível em < http://www.numaboa.com/criptografia/transposicoes/418-grade-giratoria> Acesso em 25 out. 2009. TKOTZ, V. (2005e) A Cifra de Bacon. Disponível em < http://www.numaboa.com/criptografia/supercifragens/331-cifra-de-bacon> Acesso em 25 out. 2009. 83
  • TKOTZ, V. (2005f) Criptografia - Semagrama. Disponível em < http://www.numaboa.com/glossarios/cripto> Acesso em 25 out. 2009. TKOTZ, V. (2007a) Cifras de Substituição. Disponível em < http://www.numaboa.com/criptografia/substituicoes> Acesso em 25 out. 2009. TKOTZ, V. (2007b) Ave Maria de Trithemius. Disponível em < http://www.numaboa.com/criptografia/esteganografia/613-Ave-Maria> Acesso em 25 out. 2009. TKOTZ, V. (2007c) Semáforos de bandeiras. Disponível em < http://www.numaboa.com/criptografia/codigos/codigos-abertos/700-semaforos> Acesso em 25 out. 2009. UFCG. Grupos de Métodos Formais. Disponível em < http://www.dsc.ufcg.edu.br/~gmf > Acesso em 12 abr. 2009. UFRJ – UNIVERSIDADE FEDERAL DO RIO DE JANEIRO. (2006) Esteganálise. Disponível em: < http://www.gta.ufrj.br/grad/09_1/versao-final/stegano/esteganalise.html > Acesso em: 14 nov. 2009. WAYNER, P. (2002) Disappearing Cryptography: Information Hiding: Steganography & Watermarking. 2nd. ed. Morgan Kaufmann, San Francisco, California. 84
  • Bibliografia Consultada SCHNEIER, B. Applied Cryptography. 2nd. ed. Wiley, 1995. MARINE WAY POINTS. Nautical Flags and their meanings. Disponível em: < http://www.marinewaypoints.com/learn/flags/flags.shtml > Acesso em 06 dez. 2009. RAMOS, A. Modos de Operação de Cifras de Bloco. Disponível em: < ftp://ftp.registro.br/pub/gts/gts14/02-a-Modos-Operacao-Block-Cipher.pdf > Acesso em 06 dez. 2009. KRZYZANOWSKI, P. Distributed Systems and Steganography. Disponível em: < http://www.slideshare.net/sriprasanna/steganography-distributed-computing > Acesso em 06 dez. 2009. GODOI, T.O. Esteganografia – Um estudo sobre ocultação de informações em mídia sonora. Faculdade Cenecista Nossa Senhora dos Anjos. Gravataí, 2008. WESTPHAL, K. Steganography Revealed. Disponível em: < http://www.securityfocus.com/infocus/1684 > Acesso em 07 dez. 2009 STEGOARCHIVE.COM. Steganography Software. Disponível em: < http://home.comcast.net/~ebm.md/stego/software.html> Acesso em 07 dez. 2009 85