Seja Bem-Vindo. Este site tem recursos de leitura de texto, basta marcar o texto e clicar no ícone do alto-falante   Click to listen highlighted text! Seja Bem-Vindo. Este site tem recursos de leitura de texto, basta marcar o texto e clicar no ícone do alto-falante

AULA 02 – SEGURANÇA DA INFORMAÇÃO

Técnicas clássicas de encriptação

A encriptação simétrica, também chamada de encriptação convencional ou encriptação de chave única, era o único tipo em uso antes do desenvolvimento da encriptação por chave pública na década de 1970. Esse continua sendo de longe o mais usado dos dois tipos de encriptação. Avaliaremos diversas cifras simétricas. Começaremos olhando um modelo geral para o processo de encriptação simétrica; isso nos permitirá entender o contexto dentro do qual os algoritmos são usados. Em seguida, examinaremos diversos algoritmos em uso antes da era do computador. Finalmente, estudaremos rapidamente uma técnica diferente, conhecida como esteganografia. Introduziremos as duas cifras simétricas mais utilizadas: DES e AES.

Antes de começar, definiremos alguns termos. Uma mensagem original é conhecida como texto claro (ou plaintext), enquanto a mensagem codificada é chamada de texto cifrado (ou ciphertext). O processo de converter um texto claro em um texto cifrado é conhecido como cifração ou encriptação; restaurar o texto claro a partir do texto cifrado é decifração ou decriptação. Os muitos esquemas utilizados para a encriptação constituem a área de estudo conhecida como criptografia. Esse esquema é designado sistema criptográfico ou cifra. As técnicas empregadas para decifrar uma mensagem sem qualquer conhecimento dos detalhes de encriptação estão na área da criptoanálise, que é o que os leigos chamam de “quebrar o código”. As áreas da criptografia e criptoanálise, juntas, são chamadas de criptologia.

MODELO DE CIFRA SIMÉTRICA

Um esquema de encriptação simétrica possui cinco itens (Figura Modelo simplificado da encriptação simétrica):

  • Texto claro: essa é a mensagem ou dados originais, inteligíveis, que servem como entrada do algoritmo de encriptação.
  • Algoritmo de encriptação: realiza diversas substituições e transformações no texto claro.
  • Chave secreta: também é uma entrada para o algoritmo de encriptação. A chave é um valor independente do texto claro e do algoritmo. O algoritmo produzirá uma saída diferente, dependendo da chave usada no momento. As substituições e transformações exatas realizadas pelo algoritmo dependem da chave.
  • Texto cifrado: essa é a mensagem embaralhada, produzida como saída do algoritmo de encriptação. Ela depende do texto claro e da chave secreta. Para determinada mensagem, duas chaves diferentes produzirão dois textos cifrados distintos. O texto cifrado é um conjunto de dados aparentemente aleatório e, nesse formato, ininteligível.
  • Algoritmo de decriptação: esse é basicamente o algoritmo de encriptação executado de modo inverso. Ele apanha o texto cifrado e a chave secreta e produz o texto claro original.

Existem dois requisitos para o uso seguro da encriptação simétrica:

  1. Precisamos de um algoritmo de encriptação forte. No mínimo, gostaríamos que o algoritmo fosse tal que um oponente que conheça o algoritmo e tenha acesso a um ou mais textos cifrados seja incapaz de decifrar o texto cifrado ou descobrir a chave. Esse requisito normalmente é indicado de maneira mais forte: o oponente deverá ser incapaz de decriptar o texto cifrado ou descobrir a chave, mesmo que possua diversos textos cifrados com seus respectivos textos claros.
  2. Emissor e receptor precisam ter obtido cópias da chave secreta de uma forma segura e mantê-la protegida. Se alguém conseguir descobrir a chave e o algoritmo, toda a comunicação usando essa chave poderá ser lida.
Modelo simplificado da encriptação simétrica
Modelo simplificado da encriptação simétrica

Consideramos que é impraticável decriptar uma mensagem com base no texto cifrado, mais o conhecimento do algoritmo de encriptação/decriptação. Em outras palavras, não precisamos manter o algoritmo secreto, mas apenas a chave secreta. Essa característica da encriptação simétrica é o que a torna viável para uso generalizado. Que o algoritmo não precisa ser mantido secreto significa que os fabricantes podem desenvolver, e têm realmente desenvolvido, implementações de chip de baixo custo com algoritmos de encriptação de dados. Esses chips são encontrados com facilidade e estão incorporados em diversos produtos. Com o uso da encriptação simétrica, o principal problema de segurança consiste em manter o sigilo da chave.

Vejamos mais de perto os elementos essenciais de um esquema de encriptação simétrica, usando a Figura Modelo de criptossistema simétrico. Uma origem produz uma mensagem em texto claro, X = [X1 , X2 , …, XM]. Os M elementos de X são letras em algum alfabeto finito. Tradicionalmente, o alfabeto consiste de 26 letras maiúsculas. Hoje, o alfabeto binário {0, 1} em geral é utilizado. Para a encriptação, uma chave na forma K = [K1 , K2 , …, KJ] é gerada. Se isso acontecer na origem da mensagem, então ela também precisa ser fornecida ao destino através de algum canal seguro. Como alternativa, um terceiro poderia gerar a chave e oferecê-la com segurança à origem e ao destino.

Com a mensagem X e a chave de encriptação K como entradas, o algoritmo de encriptação produz o texto cifrado Y = [Y1, Y2, …, YN]. Podemos escrever isso como:

Y = E(K, X)

Um oponente, observando Y, mas não tendo acesso a K ou X, pode tentar recuperar X ou K, ou ambos. Considera-se que o oponente conhece os algoritmos de encriptação (E) e decriptação (D). Se o oponente estiver interessado apenas nessa mensagem em particular, então o foco do ataque é recuperar X, gerando uma estimativa de texto claro X. Normalmente, porém, o oponente está interessado em ser capaz de ler também mensagens futuras, quando se faz uma tentativa de recuperar K, gerando uma estimativa K.

Modelo de criptossistema simétrico
Modelo de criptossistema simétrico

Criptografia

Os sistemas criptográficos são caracterizados ao longo de três dimensões independentes:

  1. O tipo das operações usadas para transformar texto claro em texto cifrado. Todos os algoritmos de encriptação são baseados em dois princípios gerais: substituição, em que cada elemento no texto claro (bit, letra, grupo de bits ou letras) é mapeado em outro elemento, e transposição, em que os elementos no texto claro são rearranjados. O requisito fundamental é que nenhuma informação seja perdida (ou seja, que todas as operações sejam reversíveis). A maioria dos sistemas envolve vários estágios de substituições e transposições (sendo chamados de sistemas de produto).
  2. O número de chaves usadas. Se tanto o emissor quanto o receptor utilizarem a mesma chave, o sistema é considerado de encriptação simétrica, de chave única, de chave secreta ou convencional. Se emissor e receptor usarem chaves diferentes, o sistema é considerado de encriptação assimétrica, de duas chaves ou de chave pública.
  3. O modo em que o texto claro é processado. Uma cifra de bloco processa a entrada de um bloco de elementos de cada vez, produzindo um de saída para cada de entrada. Uma cifra em fluxo processa os elementos da entrada continuamente, proporcionando a saída de um elemento de cada vez.

Criptoanálise e ataque por força bruta

Em geral, o objetivo de atacar um sistema de encriptação é recuperar a chave em uso, em vez de simplesmente recuperar o texto claro a partir de um único texto cifrado. Existem duas técnicas gerais para o ataque a um esquema de encriptação convencional:

  • Criptoanálise: os ataques criptoanalíticos utilizam-se da natureza do algoritmo, e talvez de mais algum conhecimento das características comuns ao texto claro, ou ainda de algumas amostras de pares de texto claro-texto cifrado. Esse tipo de ataque explora as características do algoritmo para tentar deduzir um texto claro específico ou a chave utilizada.
  • Ataque por força bruta: o atacante testa todas as chaves possíveis em um trecho do texto cifrado, até obter uma tradução inteligível para o texto claro. Na média, metade de todas as chaves possíveis precisam ser experimentadas para então se obter sucesso.

Se algum dos tipos de ataque tiver sucesso na dedução da chave, o efeito é catastrófico: todas as mensagens futuras e passadas, encriptadas com essa chave, ficam comprometidas.

Primeiro, consideramos a criptoanálise, e depois os ataques por força bruta.

O Quadro tipos de ataque sobre mensagens encriptadas resume os diversos tipos de ataques de criptoanálise, baseados na quantidade de informação conhecida pelo criptoanalista. O cenário mais difícil surge quando a única informação disponível é apenas o texto cifrado. Em alguns casos, nem sequer o algoritmo de encriptação é conhecido, mas em geral podemos considerar que o oponente sabe qual é o algoritmo usado para a encriptação. Um ataque sob essas circunstâncias é a técnica de força bruta de testar todas as chaves possíveis. Se o espaço de chaves for muito grande, isso se torna impraticável. Assim, o oponente precisa contar com uma análise baseada apenas no texto cifrado, geralmente aplicando diversos testes estatísticos a ele. Para usar essa técnica, o oponente necessita ter alguma ideia geral do tipo de texto claro que está encoberto, como um texto em inglês ou francês, um arquivo EXE, um código fonte em Java, um arquivo de contabilidade, e assim por diante.

O ataque apenas com texto cifrado é o mais fácil de ser defendido, pois o oponente tem a quantidade mínima de informação para trabalhar. Em muitos casos, porém, o analista tem mais informações. Ele pode ser capaz de capturar uma ou mais mensagens de texto claro, além de suas encriptações. Ou então pode saber que certos padrões de texto claro aparecerão em uma mensagem. Por exemplo, um arquivo codificado no formato Postscript sempre começa com o mesmo padrão, ou pode ter um cabeçalho ou banner padronizado para uma mensagem de transferência eletrônica financeira, e assim por diante. Todos esses exemplos são de texto claro conhecido. Ciente disso, o analista pode ser capaz de deduzir a chave com base no modo como o texto claro conhecido é transformado.

Bastante relacionado ao ataque de texto claro conhecido é o que poderia ser chamado de ataque de palavra provável. Se o oponente estiver trabalhando com a encriptação de alguma mensagem de texto geral, ele talvez tenha pouco conhecimento do que está nela. Porém, se o oponente estiver atrás de alguma informação muito específica, então partes da mensagem podem ser conhecidas. Por exemplo, se um arquivo de contabilidade estiver sendo transmitido, o oponente pode conhecer o posicionamento de certas palavras-chave no cabeçalho do arquivo. Em outro caso, o código fonte para um programa desenvolvido pela Empresa X poderia incluir uma nota de direito autoral em alguma posição padronizada

Tipos de ataque sobre mensagens encriptadas
TIPO DE ATAQUE CONHECIDO AO CRIPTOANALISTA
Apenas texto cifrado algoritmo de encriptação
texto cifrado
Texto claro conhecido algoritmo de encriptação
texto cifrado
um ou mais pares de texto claro-texto cifrado produzidos pela chave secreta
Texto claro escolhido algoritmo de encriptação
texto cifrado
Mensagem de texto claro escolhida pelo criptoanalista, com seu respectivo texto cifrado gerado com a chave secreta
Texto cifrado escolhido algoritmo de encriptação
texto cifrado
texto cifrado escolhido pelo criptoanalista, com seu respectivo texto claro decriptado produzido pela chave secreta
Texto escolhido algoritmo de encriptação
texto cifrado
Mensagem de texto claro escolhida pelo criptoanalista, com seu respectivo texto cifrado produzido pela chave secreta
texto cifrado escolhido pelo criptoanalista, com seu respectivo texto claro decriptado produzido pela chave secreta

Se o analista de alguma forma for capaz de fazer a origem inserir no sistema uma mensagem escolhida por ele, então o ataque de texto claro escolhido é possível. Um exemplo dessa estratégia é a criptoanálise diferencial, explicada mais adiante. Em geral, se o analista for capaz de escolher as mensagens a encriptar, ele poderá escolher de forma deliberada padrões que talvez revelarão a estrutura da chave.

O Quadro Tipos de ataque sobre mensagens encriptadas lista dois outros tipos de ataque: texto cifrado escolhido e texto escolhido. Estes são menos empregados como técnicas criptoanalíticas, mas são possíveis meios de ataque.
Somente algoritmos relativamente fracos não conseguem resistir a um ataque de texto cifrado. Em geral, um algoritmo de encriptação é projetado para aguentar a um ataque de texto claro conhecido.

Duas outras definições merecem ser comentadas. Um esquema de encriptação é incondicionalmente seguro se o texto cifrado gerado por ele não tiver informação suficiente para determinar exclusivamente o texto claro correspondente, não importa quanto texto cifrado esteja à disposição. Ou seja, é indiferente quanto tempo um oponente tem, ele não tem como decriptar o texto cifrado, simplesmente porque a informação exigida não está lá. Com a exceção de um esquema conhecido como one-time pad (descrito mais adiante neste capítulo), não existe algoritmo de encriptação que seja incondicionalmente seguro. Portanto, tudo o que os usuários de um algoritmo de encriptação podem se esforçar para obter é um algoritmo que atenda a um ou a ambos os critérios a seguir:

  • O custo para quebrar a cifra ultrapassa o valor da informação encriptada.
  • O tempo exigido para quebrar a cifra supera o tempo de vida útil da informação.

Um esquema de encriptação é considerado computacionalmente seguro se um desses dois critérios for atendido. O problema é que é muito difícil estimar a quantidade de esforço exigido para criptoanalisar textos cifrados com sucesso.

Todas as formas de criptoanálise para esquemas de encriptação simétricos são projetadas para explorar o fato de que rastros da estrutura ou do padrão do texto claro podem sobreviver à encriptação e ser discerníveis no texto cifrado. Isso se tornará mais claro à medida que examinarmos diversos esquemas de encriptação simétrica. Veremos que a criptoanálise para esquemas de chave pública partem de uma premissa fundamentalmente diferente, a saber, de que as propriedades matemáticas do par de chaves possibilitam que uma das duas chaves seja deduzida a partir da outra.

Um ataque por força bruta envolve a tentativa de cada chave possível até que seja obtida uma tradução inteligível de texto cifrado para texto claro. Em média, metade de todas as chaves possíveis precisa ser experimentada para se obter sucesso. Ou seja, se houver X chaves diferentes, um intruso descobriria a verdadeira após X/2 tentativas, em média. É importante observar que há mais coisas em um ataque por força bruta do que simplesmente testar todas as chaves possíveis. A menos que seja fornecido um texto claro conhecido, o analista deverá ser capaz de reconhecê-lo como tal. Se a mensagem for simplesmente texto claro em inglês, então o resultado aparece facilmente, embora a tarefa de reconhecer o inglês tenha que ser automatizada. Se a mensagem de texto foi compactada antes da encriptação, então o reconhecimento é mais difícil. E, se a mensagem for de algum tipo mais geral de dado, como um arquivo numérico, e este tiver sido compactado, o problema se torna ainda mais difícil de automatizar. Assim, para suplementar o método por força bruta, é preciso haver algum grau de conhecimento sobre o texto claro esperado, além de algum meio de distinguir automaticamente o texto claro de dados aleatórios.

Técnicas de substituição

Examinaremos algumas técnicas de encriptação clássicas. Um estudo dessas técnicas nos permite ilustrar aquelas básicas da encriptação simétrica usadas hoje e os tipos de ataque criptoanalítico que precisam ser antecipados.

Os dois blocos de montagem básicos de todas as técnicas de encriptação são substituição e transposição. Vamos examiná-los nas duas seções seguintes. Por fim, discutiremos um sistema que combina substituição e transposição.

Uma técnica de substituição é aquela em que as letras do texto claro são substituídas por outras letras, números ou símbolos. Se o texto claro for visto como uma sequência de bits, então a substituição envolve trocar padrões de bits de texto claro por padrões de bits de texto cifrado.

Cifra de César

O uso mais antigo que conhecemos de uma cifra de substituição, e o mais simples, foi feito por Júlio César. A cifra de César envolve substituir cada letra do alfabeto por aquela que fica três posições adiante. Por exemplo,

claro: meet me after the toga party
cifra: PHHW PH DIWHU WKH WRJD SDUWB

Observe que o alfabeto recomeça no final, de modo que a letra após Z é A. Podemos definir a transformação listando todas as alternativas, da seguinte forma:

claro: a b c d e f g h i j k l m n o p q r s t u v w x y z
cifra: D E F G H I J K L M N O P Q R S T U V W X Y Z A B C

Vamos atribuir um equivalente numérico a cada letra:

Então, o algoritmo pode ser expresso da forma a seguir. Para cada letra em texto claro p, substitua-a pela letra do texto cifrado C:

C = E(3, p) = (p + 3) mod 26

Um deslocamento pode ser de qualquer magnitude, de modo que o algoritmo de César geral é

C = E(k, p) = (p + k) mod 26

onde k assume um valor no intervalo de 1 a 25. O algoritmo de decriptação é simplesmente

p = D(k, C) = (C – k) mod 26

Se for conhecido que determinado texto cifrado é uma cifra de César, então uma criptoanálise pela força bruta será facilmente realizada. Basta experimentar todas as 25 chaves possíveis. A Figura Criptoanálise por força bruta da cifra de César mostra os resultados da aplicação dessa estratégia ao texto cifrado do exemplo. Nesse caso, o texto claro aparece na terceira fileira.

Três características importantes desse problema nos permitiram usar a criptoanálise pela força bruta:

  • Os algoritmos de encriptação e decriptação são conhecidos.
  • Existem apenas 25 chaves para experimentar.
  • A linguagem do texto claro é conhecida e facilmente reconhecível.
Criptoanálise por força bruta da cifra de César
Criptoanálise por força bruta da cifra de César

Na maioria das situações de rede, podemos considerar que os algoritmos são conhecidos. O que geralmente torna a criptoanálise pela força bruta impraticável é o uso de um algoritmo que emprega um grande número de chaves. Por exemplo, o algoritmo Triple DES, utiliza uma chave de 168 bits, gerando um espaço de chave de 2168 , ou mais de 3,7 × 1050 chaves possíveis.

A terceira característica também é significativa. Se a linguagem do texto claro for desconhecida, então a saída de texto claro pode não ser reconhecível. Além do mais, a entrada pode ser abreviada ou compactada de alguma maneira, novamente dificultando o reconhecimento. Por exemplo, a Figura exemplo de texto compactado mostra uma parte de um arquivo de texto compactada usando um algoritmo chamado ZIP. Se esse arquivo for então encriptado com uma cifra de substituição simples (expandida para incluir mais do que apenas 26 caracteres alfabéticos), então o texto claro não poderá ser reconhecido quando for revelado na criptoanálise por força bruta.

exemplo de texto compactado
exemplo de texto compactado

Cifras monoalfabéticas

Com apenas 25 chaves possíveis, a cifra de César está longe de ser segura. Um aumento dramático no espaço de chave pode ser conseguido permitindo-se uma substituição arbitrária. Antes de prosseguir, definimos o termo permutação. Uma permutação é um conjunto finito de elementos S em uma sequência ordenada de todos os elementos de S, com cada um aparecendo exatamente uma vez. Por exemplo, se S = {a, b, c}, existem seis permutações de S:

abc, acb, bac, bca, cab, cba

Em geral, existem n! permutações de um conjunto de n elementos, pois o primeiro deles pode ser escolhido de n maneiras, o segundo, de n – 1 maneiras, o terceiro, de n – 2 maneiras, e assim por diante. Lembre-se da atribuição para a cifra de César:

claro: a b c d e f g h i j k l m n o p q r s t u v w x y z
cifra: D E F G H I J K L M N O P Q R S T U V W X Y Z A B C

Se, em vez disso, a linha “cifra” puder ser qualquer permutação dos 26 caracteres alfabéticos, então haverá 26! ou mais do que 4 × 10 26 chaves possíveis. Isso significa 10 ordens de grandeza a mais do que o espaço de chave para DES, e evitaria qualquer técnica de força bruta para criptoanálise. Essa técnica é conhecida como cifra por substituição monoalfabética, pois um único alfabeto de cifra (mapeando do alfabeto claro para um cifrado) é utilizado por mensagem.

Porém, existe outra linha de ataque. Se o criptoanalista souber a natureza do texto claro (por exemplo, texto em inglês não compactado), então o analista poderá explorar as regularidades da linguagem. Para ver como essa criptoanálise poderia prosseguir, damos um exemplo parcial aqui. O texto cifrado a ser resolvido é

UZQSOVUOHXMOPVGPOZPEVSGZWSZOPFPESXUDBMETSXAIZ
VUEPHZHMDZSHZOWSFPAPPDTSVPQUZWYMXUZUHSX
EPYEPOPDZSZUFPOMBZWPFUPZHMDJUDTMOHMQ

Como um passo inicial, a frequência relativa das letras poderá ser determinada e comparada com uma distribuição de frequência padrão para o inglês, como vemos na Figura Frequência padrão para o inglês. Se a mensagem fosse longa o suficiente, essa técnica talvez tivesse sucesso, mas, como essa é relativamente curta, não podemos esperar uma combinação exata. De qualquer forma, as frequências relativas das letras no texto cifrado (em porcentagens) são as seguintes:

Frequência padrão para o inglês
Frequência padrão para o inglês

Comparando esses dados com a Figura Frequência relativa de letras no texto em inglês, parece provável que as letras cifradas P e Z sejam equivalentes às letras do texto claro e e t, mas não se sabe ao certo quem é quem. As letras S, U, O, M e H são todas de frequência relativamente alta e é provável que correspondem às que estão no conjunto {a, h, i, n, o, r, s}. As letras com frequências mais baixas (a saber, A, B, G, Y, I, J) provavelmente estão incluídas no conjunto {b, j, k, q, v, x, z}.

Neste ponto, existem diversas maneiras de prosseguir. Poderíamos fazer algumas tentativas de atribuição e começar a preencher o texto claro para ver se ele tem um “esqueleto” pertinente a uma mensagem. Uma técnica mais sistemática é procurar outras regularidades. Por exemplo, talvez saber que certas palavras estão no texto. Ou então poderíamos procurar sequências repetidas de letras cifradas e tentar deduzir seus equivalentes no texto claro.

Uma ferramenta poderosa é examinar a frequência de combinações de duas letras, conhecidas como digramas. Uma tabela semelhante à Figura Frequência relativa de letras no texto em inglês poderia ser montada para mostrar a frequência relativa dos digramas. O mais comum deles é th. Em nosso texto cifrado, o digrama mais comum é ZW, que aparece três vezes. Assim, fazemos a correspondência de Z com t e de W com h. Depois, pela nossa hipótese anterior, podemos igualar P com e. Agora, observe que a sequência ZWP aparece no texto cifrado, e podemos traduzir essa sequência como “the”. Esse é o trigrama (combinação de três letras) mais frequente em inglês, o que parece indicar que estamos no caminho certo.

Frequência relativa de letras no texto em inglês
Frequência relativa de letras no texto em inglês

Em seguida, observe a sequência ZWSZ na primeira linha. Não sabemos que essas quatro letras compõem uma palavra completa, mas, se sim, ela tem a forma th_t. Nesse caso, S é igual a a. Até aqui, então, temos:

Somente quatro letras foram identificadas, mas já temos um bom pedaço da mensagem. A análise continuada das frequências, mais tentativa e erro, deverão facilmente gerar uma solução a partir desse ponto. O texto claro completo, com espaços incluídos entre as palavras, é o seguinte:

As cifras monoalfabéticas são fáceis de se quebrar porque refletem os dados de frequência do alfabeto original. Uma contramedida é oferecer vários substitutos, conhecidos como homófonos, para uma única letra. Por exemplo, a letra e poderia ser atribuída a diversos símbolos de cifra diferentes, como 16, 74, 35 e 21, com cada homófono usado em rodízio, ou aleatoriamente. Se o número de símbolos atribuídos a cada letra for proporcional à frequência relativa dela, então a informação de frequência de única letra é completamente extinta. O grande matemático Carl Friedrich Gauss acreditava ter criado uma cifra indecifrável usando homófonos. Porém, até mesmo com homófonos, cada elemento do texto claro afeta somente um elemento do texto cifrado, e padrões de múltiplas letras (por exemplo, frequências de digrama) ainda sobrevivem no texto cifrado, tornando a criptoanálise relativamente simples.

Dois métodos principais são usados nas cifras de substituição para reduzir a extensão da estrutura sobrevivente do texto claro no cifrado. Uma técnica é encriptar várias letras do texto claro, e a outra é usar vários alfabetos de cifra. Examinamos rapidamente cada uma delas.

Cifra Playfair

A cifra de encriptação de múltiplas letras mais conhecida é a Playfair, que trata os digramas no texto claro como unidades isoladas e as traduz para digramas de texto cifrado. O algoritmo Playfair é baseado no uso de uma matriz 5 × 5 de letras construídas usando uma palavra-chave. Aqui está um exemplo, solucionado por Lord Peter Wimsey em Have His Carcase, de Dorothy Sayers:

Nesse caso, a palavra-chave é monarchy. A matriz é construída com o preenchimento das letras da palavra-chave (menos duplicatas) da esquerda para a direita e de cima para baixo, e depois do restante da matriz com as outras letras na ordem alfabética. As letras I e J contam como uma só. O texto claro é encriptado com duas letras de cada vez, de acordo com as seguintes regras:

  1. Letras de texto claro repetidas que estão no mesmo par são separadas por uma de preenchimento, como x, de modo que balloon seria tratado como ba lx lo on.
  2. Duas letras de texto claro que estejam na mesma linha da matriz são substituídas pela letra à direita, com o primeiro elemento da linha vindo após o último, de forma rotativa. Por exemplo, ar é encriptado como RM.
  3. Duas letras de texto claro que estejam na mesma coluna são substituídas pela letra abaixo, com o elemento de cima da coluna vindo após o último, de forma rotativa. Por exemplo, mu é encriptado como CM.
  4. Caso contrário, cada letra de texto claro em um par é substituída por aquela que esteja em sua própria linha e na coluna ocupada pela outra letra de texto claro. Assim, hs torna-se BP, e ea torna-se IM (ou JM, a critério do cifrador).

A cifra Playfair é um grande avanço em relação às cifras monoalfabéticas simples. Primeiramente, enquanto existem apenas 26 letras, existem 26 × 26 = 676 digramas, de modo que a identificação de digramas individuais é mais difícil. Além do mais, as frequências relativas das letras individuais exibem um intervalo muito maior do que o dos digramas, tornando a análise de frequência muito mais difícil. Por esses motivos, a cifra Playfair foi, por muito tempo, considerada indecifrável. Ela foi usada como sistema de campo padrão pelo Exército britânico na Primeira Guerra Mundial, e ainda gozava de um uso considerável pelo Exército dos Estados Unidos e outras forças aliadas durante a Segunda Guerra Mundial.

Apesar desse nível de confiança em sua segurança, a cifra Playfair é relativamente fácil de ser quebrada, pois ainda deixa intacta grande parte da estrutura da linguagem de texto claro. Algumas centenas de letras de texto cifrado geralmente são suficientes para quebrá-la.

Um modo de revelar a eficácia da Playfair e outras cifras aparece na figura “frequência relativa de ocorrência das letras”. A linha rotulada com texto claro apresenta a distribuição de frequência dos mais de 70.000 caracteres alfabéticos presentes no artigo sobre criptologia da Enciclopédia Britânica. Essa também é a distribuição de frequência de qualquer cifra por substituição monoalfabética, pois os valores de frequência para letras individuais são os mesmos, apenas com diferentes letras substituídas pelas originais. O gráfico foi desenvolvido da seguinte maneira: o número de ocorrência de cada letra no texto foi contado e dividido pelo da letra mais utilizada. Usando os resultados da figura ” Frequência relativa de letras no texto em inglês”,  vemos que e é a letra empregada com mais frequência. Desse modo, e tem uma frequência relativa de 1, t, de 9,056/12,702 ≈ 0,72, e assim por diante. Os pontos no eixo horizontal correspondem às letras na ordem de frequência decrescente.

frequência relativa de ocorrência das letras

A figura “frequência relativa de ocorrência das letras” também mostra a distribuição de frequência que resulta quando o texto é encriptado usando a cifra Playfair. Para normalizar o gráfico, o número de ocorrências de cada letra no texto cifrado novamente foi dividido pelo número de ocorrências de e no texto claro. O gráfico resultante, portanto, mostra a extensão à qual a distribuição de frequência das letras, que torna trivial solucionar as cifras de substituição, é mascarada pela encriptação. Se a informação de distribuição de frequência fosse totalmente escondida no processo de encriptação, o desenho de frequências do texto cifrado seria achatado, e a criptoanálise usando o texto cifrado se tornaria efetivamente impossível. Como mostra a figura, a cifra Playfair tem uma distribuição mais achatada do que o texto claro, mas, apesar disso, ela revela muita estrutura para um criptoanalista trabalhar.

O gráfico também mostra a cifra Vigenère, discutida mais adiante.

Cifra de Hill

Outra cifra multiletras interessante é a de Hill, desenvolvida pelo matemático Lester Hill em 1929.

Conceitos da álgebra linear Antes de descrevermos a cifra de Hill, vamos revisar rapidamente alguma terminologia da álgebra linear. Nesta discussão, estamos preocupados com a aritmética de matriz módulo. O leitor que precisa relembrar a multiplicação e inversão de matrizes deverá consultar link desse parágrafo.

Definimos o inverso M–1 de uma matriz quadrada M pela equação M(M–1) = M–1 M = I, onde I é a matriz identidade. I é uma matriz quadrada que contém todos os elementos iguais a zero, exceto por 1’s ao longo da diagonal principal do canto superior esquerdo ao inferior direito. O inverso de uma matriz nem sempre existe, mas, quando sim, satisfaz a equação anterior. Por exemplo,

Para explicar como é determinado o inverso de uma matriz, começamos com o conceito de determinante. Para qualquer matriz quadrada (m × m), o determinante é igual à soma de todos os produtos que podem ser formados apanhando-se exatamente um elemento de cada linha e um de cada coluna, com certos termos do produto precedidos por um sinal de menos. Para uma matriz 2 × 2

o determinante é k11 k22 – k12 k21. Para uma matriz 3 × 3, o valor do determinante é k11 k22 k33 + k21 k32 k13 + k31 k12 k23 – k31 k22 k13 – k21 k12 k33 – k11 k32 k23. Se uma matriz quadrada A tiver um determinante diferente de zero, então o inverso da matriz é calculado como [A–1] ij = (det A)–1 (–1)i+j (Dji), onde (Dji) é o subdeterminante formado pela exclusão da linha j e coluna i de A, det(A) é o determinante de A e (det A)–1 é o inverso multiplicativo de (det A) mod 26.
Continuando nosso exemplo,

Podemos mostrar que 9–1 mod 26 = 3, pois 9 × 3 = 27 mod 26 = 1. Portanto, calculamos o inverso de A como:

O algoritmo de Hill

Esse algoritmo de encriptação utiliza m letras de texto claro sucessivas e as substitui por m letras de texto cifrado. A substituição é determinada por m equações lineares, em que cada caractere recebe um valor numérico (a = 0, b = 1, …, z = 25). Para m = 3, o sistema pode ser descrito da seguinte forma:

Isso pode ser expresso em termos de vetores de linhas e matrizes:

Ou

C = PK mod 26

onde C e P são vetores de coluna de tamanho 3, representando o texto claro e o texto cifrado, e K é uma matriz 3 × 3, indicando a chave de encriptação. As operações são realizadas com mod 26.

Por exemplo, considere o texto claro “paymoremoney” e use a chave de encriptação:

As três primeiras letras do texto claro são representadas pelo vetor (15 0 24). Então, (15 0 24)K = (303 303 531) mod 26 = (17 17 11) = RRL. Continuando dessa forma, o texto cifrado para o texto claro inteiro é RRLMWBKASPDH.

A decriptação exige o uso do inverso da matriz K. Podemos calcular det K = 23 e, portanto, (det K)–1 mod 26 = 17. Nesse caso, o inverso é:

Isso é demonstrado da seguinte maneira:

É fácil ver que, se a matriz K–1 for aplicada ao texto cifrado, então o texto claro é recuperado.

Em termos gerais, o sistema de Hill pode ser expresso da seguinte forma:

C = E(K, P) = PK mod 26
P = D(K, C) = CK–1 mod 26 = PKK–1 = P

Assim como na cifra Playfair, o ponto forte da cifra de Hill é que ela oculta completamente as frequências de única letra. De fato, com Hill, o uso de uma matriz maior esconde mais informações de frequência. Assim, uma cifra de Hill de 3 × 3 encobre não apenas informações de frequência de única letra, mas também de duas letras.

Embora a cifra de Hill seja forte contra um ataque apenas de texto cifrado, ela é facilmente quebrada com um ataque de texto claro conhecido. Para uma cifra de Hill de m × m, suponha que tenhamos m pares de texto claro/texto cifrado, cada um com tamanho m. Rotulamos os pares com Pj=(p1j p1j … pmj) e Cj=(c1j c1j … cmj ), de modo que Cj=PjK para 1≤j≤m e para alguma matriz de chave desconhecida K. Então, definimos duas matrizes m×m, X=(pij) e Y=(cij). Depois, podemos formar a equação matricial Y=XK. Se X tiver um inverso, podemos determinar K=X–1Y. Se X não puder ser invertida, uma nova versão de X terá chances de ser formada com pares adicionais de texto claro/texto cifrado, até que se obtenha uma matriz X a ser invertida.

Considere este exemplo. Suponha que o texto claro “hillcipher” seja encriptado usando uma cifra de Hill 2 × 2 para gerar o texto cifrado HCRZSSXNSP. Assim, sabemos que (7 8)K mod 26 = (7 2); (11 11)K mod 26 = (17 25); e assim por diante. Usando os dois primeiros pares de texto claro/texto cifrado, temos:

O inverso de X pode ser calculado:

Esse resultado é verificado testando-se o par restante de texto claro-texto cifrado.

Cifras polialfabéticas

Outra forma de melhorar a técnica monoalfabética simples é usar diferentes substituições monoalfabéticas enquanto se prossegue pela mensagem de texto claro. O nome geral para essa técnica é cifra por substituição polialfabética. Essas técnicas têm as seguintes características em comum:

  1. Um conjunto de regras de substituição monoalfabéticas é utilizado.
  2. Uma chave define qual regra em particular é escolhida para determinada transformação.

Cifra de Vigenère

A mais conhecida – e uma das mais simples – cifras polialfabéticas é a de Vigenère. Nesse es-quema, o conjunto de regras de substituição monoalfabéticas consiste nas 26 cifras de César, com deslocamentos de 0 a 25. Cada cifra é indicada por uma letra da chave, que é a letra do texto cifrado que substitui a letra do texto claro a. Assim, uma cifra de César com um deslocamento de 3 é indicada pelo valor de chave 3.

Podemos expressar a cifra de Vigenère da seguinte maneira. Considere uma sequência de letras em texto claro P=p0, p1, p2, …, pn–1 e uma chave consistindo na sequência de letras K = k0, k1, k2, …, km – 1, onde normalmente m<n. A sequência de letras em texto cifrado C=C0, C1, C2, …, Cn – 1 é calculada da seguinte forma:

Cálculo da cifra de Vigenère

Assim, a primeira letra da chave é somada à primeira letra do texto claro, mod 26, a segunda letra da chave é somada à segunda letra do texto claro, e assim por diante, pelas primeiras m letras do texto claro. Para as próximas m letras do texto claro, as da chave são repetidas. Esse processo continua até que toda a sequência de texto claro esteja encriptada. Uma equação geral do processo de encriptação é:

Ci=(pi+ki mod m) mod 26

Compare isso com a Equação 2.1 para a cifra de César. Basicamente, cada caractere de texto claro é encriptado com uma cifra de César diferente, dependendo do caractere de chave correspondente. De modo semelhante, a decriptação é uma generalização da Equação na figura “Cálculo da cifra de Vigenère”.

pi=(Ci–ki mod m) mod 26

Para encriptar uma mensagem, é preciso que haja uma chave tão longa quanto ela. Normalmente, a chave é uma palavra-chave repetida. Por exemplo, se a palavra-chave for “deceptive” [“ilusório”], a mensagem “we are discovered save yourself” [“fomos descobertos, salve-se”] é encriptada desta forma:

chave:          deceptivedeceptivedeceptive

texto claro:    wearediscoveredsaveyourself

texto cifrado:  ZICVTWQNGRZGVTWAVZHCQYGLMGJ

Expresso numericamente, temos o seguinte resultado:

A força dessa cifra é que existem múltiplas letras de texto cifrado para cada uma do texto claro, uma para cada letra exclusiva da palavra-chave. Assim, informações referentes à frequência de letra são ocultadas. Porém, nem todo conhecimento da estrutura do texto claro é perdido. Por exemplo, a figura “frequência relativa de ocorrência das letras” mostra a distribuição de frequência para uma cifra de Vigenère com uma palavra-chave de tamanho 9. Uma melhoria é obtida em relação à cifra Playfair, mas informações de frequência consideráveis ainda permanecem.

É instrutivo esboçar um método para quebrar essa cifra, pois ele revela alguns dos princípios matemáticos que se aplicam na criptoanálise.

Primeiro, suponha que o oponente acredite que o texto cifrado foi encriptado ou usando a substituição monoalfabética, ou uma cifra de Vigenère. Um teste simples pode ser feito para se distinguir esses dois cenários. Se uma substituição monoalfabética for empregada, então as propriedades estatísticas do texto cifrado deverão ser iguais às da linguagem do texto claro. Assim, referenciando a Figura “frequência relativa de letras no texto em inglês”, deverá haver uma letra de cifra com uma frequência relativa de ocorrência de aproximadamente 12,7%, uma com cerca de 9,06%, e assim por diante. Se apenas uma única mensagem estiver disponível para análise, não esperaríamos encontrar uma combinação exata do perfil estatístico da linguagem de texto claro. Entretanto, se a correspondência for próxima, podemos considerar uma substituição monoalfabética.

Se, por outro lado, uma cifra de Vigenère for utilizada, então o progresso da criptoanálise depende da determinação do tamanho da palavra-chave. Agora, nos concentraremos em como determinar o tamanho da palavra-chave. A ideia principal que leva a determinar o tamanho da palavra-chave é a seguinte: se duas sequências idênticas de letras de texto claro ocorrem a uma distância que seja um múltiplo inteiro do tamanho da palavra-chave, elas gerarão sequências de texto cifrado idênticas. No exemplo anterior, duas ocorrências da sequência “red” são separadas por nove posições de caractere. Consequentemente, em ambos os casos, r é codificado com a letra-chave e, e é codificado com a letra-chave p, e d é codificado com a letra-chave t. Assim, nos dois casos, a sequência é VTW. Indicamos isso anteriormente sublinhando as letras relevantes e sombreando os números relevantes do texto cifrado.

Um analista examinando apenas o texto cifrado detectaria as sequências repetidas VTW a uma distância de 9 e consideraria que a palavra-chave tem três ou nove letras de extensão. O surgimento de VTW duas vezes poderia ser por acaso, e não refletir letras de texto claro idênticas codificadas com letras-chave idênticas. Porém, se a mensagem for longa o suficiente, haverá diversas dessas sequências de texto cifrado repetidas. Procurando fatores comuns nos deslocamentos das diversas sequências, o analista deverá ser capaz de fazer uma boa escolha do tamanho da palavra-chave.

A solução da cifra agora depende de uma percepção importante. Se o tamanho da palavra-chave é m, então a cifra, por conseguinte, consiste em m cifras de substituição monoalfabéticas. Por exemplo, com a palavra-chave DECEPTIVE, as letras nas posições 1, 10, 19, e assim por diante, são todas encriptadas com a mesma cifra monoalfabética. Assim, podemos usar as características de frequência conhecidas da linguagem do texto claro para atacar cada uma das cifras monoalfabéticas separadamente.

A natureza periódica da palavra-chave pode ser eliminada usando-se uma palavra-chave não repetida que seja tão grande quanto a própria mensagem. Vigenère propôs o que é conhecido como um sistema de auto-chave, em que uma palavra-chave é concatenada ao próprio texto claro para oferecer uma chave corrente. Para o nosso exemplo,

chave:         deceptivedeceptivedeceptive

texto claro:   wearediscoveredsaveyourself

texto cifrado: ZICVTWQNGRZGVTWAVZHCQYGLMGJ

Até mesmo esse esquema é vulnerável à criptoanálise. Como a chave e o texto claro compartilham a mesma distribuição de frequência das letras, uma técnica estatística poderá ser aplicada. Por exemplo, pode-se esperar que e codificado por e, pela figura “frequência relativa de letras no texto em inglês”, ocorra com uma frequência de (0,127) 2 ≈ 0,016, enquanto t codificado por t ocorreria apenas com a metade dessa frequência. Essas regularidades podem ser exploradas para se conseguir sucesso na criptoanálise.

Cifra de Vernam

A principal defesa contra a técnica criptoanalítica descrita é escolher uma palavra-chave que seja tão longa quanto o texto claro e que não possua relacionamento estatístico com ele. Esse sistema foi introduzido por um engenheiro da AT&T, chamado Gilbert Vernam, em 1918. Seu sistema funciona sobre dados binários (bits), em vez de letras. O sistema pode ser expresso de forma sucinta da seguinte forma (figura “Cifra de Vernam”):

ci=pi ⊕ ki

onde:
pi = dígito binário na posição i do texto claro
ki = dígito binário na posição i da chave
ci = dígito binário na posição i do texto cifrado
⊕ = operação ou – exclusivo (XOR)

Compare isso com a Equação para a cifra de Vigenère.

Cifra de Vernam

Assim, o texto cifrado é gerado realizando-se o XOR (operação lógica ou-exclusivo) bit a bit entre texto claro e a chave. Por conta das propriedades do XOR, a decriptação simplesmente envolve a mesma operação bit a bit:

pi=ci ⊕ ki

que é comparada à equação pi=(Ci–ki mod m) mod 26.

A essência dessa técnica é a forma de construção da chave. Vernam propôs o uso de uma palavra-chave muito longa, porém que eventualmente era repetida. Embora esse esquema com uma chave longa apresente dificuldades de criptoanálise formidáveis, ele pode ser quebrado com um número suficiente de texto cifrado, com o uso de sequências de texto claro conhecidas ou prováveis, ou ambos.

TÉCNICAS DE TRANSPOSIÇÃO

Todas as técnicas examinadas até aqui envolvem a substituição de um símbolo de texto cifrado por um de texto claro. Uma espécie bem diferente de mapeamento é obtida realizando-se algum tipo de permutação nas letras do texto claro. Essa técnica é referenciada como uma cifra de transposição.

A cifra mais simples desse tipo é a técnica de cerca de trilho, em que o texto claro é escrito como uma sequência de diagonais, e depois lido como uma sequência de linhas. Por exemplo, para cifrar a mensagem “meet me after the toga party” com uma cerca de trilho de profundidade 2, escrevemos o seguinte:

A mensagem encriptada é

MEMATRHTGPRYETEFETEOAAT

Esse tipo de coisa seria trivial de ser criptoanalisada. Um esquema mais complexo é escrever a mensagem em um retângulo, linha por linha, e a ler coluna por coluna, mas permutar a ordem destas. A ordem das colunas, então, torna-se a chave para o algoritmo. Por exemplo,

Assim, neste exemplo, a chave é 4312567. Para encriptar, comece com a coluna rotulada com 1, neste caso, a coluna 3. Escreva todas as letras dessa coluna. Prossiga para a coluna 4, que é rotulada com 2, depois para a coluna 2, então para a coluna 1, por fim para as colunas 5, 6 e 7.

Uma cifra de pura transposição é facilmente reconhecida, pois tem as mesmas frequências de letra do texto claro original. Para o tipo de transposição de colunas mostrada, a criptoanálise é muito simples e envolve dispor o texto cifrado em uma matriz, além de mexer com as posições de coluna. As tabelas de frequência de digrama e trigrama podem ser úteis.

A cifra de transposição pode se tornar muito mais segura realizando-se mais de um estágio de transposição. O resultado é uma permutação mais complexa, que não é facilmente reconstruída. Assim, se a mensagem anterior for reencriptada usando o mesmo algoritmo,

Para visualizar o resultado dessa dupla transposição, designe as letras na mensagem de texto claro original pelos números que indicam a sua posição. Assim, com 28 letras na mensagem, a sequência original das letras é:

Depois da primeira transposição, temos:

que tem uma estrutura um tanto regular. Mas, depois da segunda transposição, temos:

Essa é uma permutação muito menos estruturada e muito mais difícil de se criptoanalisar.

MÁQUINAS DE ROTOR

O exemplo que acabamos de dar sugere que várias etapas de encriptação podem produzir um algoritmo que é significativamente mais difícil para criptoanalisar. Isso vale tanto para cifras de substituição quanto para de transposição. Antes da introdução do DES, a aplicação mais importante do princípio de múltiplas etapas de encriptação era uma classe de sistemas conhecida como máquinas de rotor.

O princípio básico da máquina de rotor é ilustrado na Figura “Máquina de três rotores com fiação representada por contatos numerados”. A máquina consiste em um conjunto de cilindros rotativos independentes, através dos quais pulsos elétricos podem fluir. Cada cilindro tem 26 pinos de entrada e 26 pinos de saída, com fiação interna que conecta cada pino de entrada a um único pino de saída. Para simplificar, mostramos somente três das conexões internas em cada cilindro.

Máquina de três rotores com fiação representada por contatos numerados

Se associarmos cada pino de entrada e saída a uma letra do alfabeto, então um único cilindro define uma substituição monoalfabética. Por exemplo, na Figura “Máquina de três rotores com fiação representada por contatos numerados”, se um operador pressionar uma tecla para a letra A, um sinal elétrico é aplicado ao primeiro pino do primeiro cilindro e flui pela conexão interna para o vigésimo quinto pino de saída.

Considere uma máquina com um único cilindro. Depois que cada tecla de entrada é pressionada, o cilindro gira uma posição, de modo que as conexões internas são deslocadas de acordo. Assim, é definida uma cifra de substituição monoalfabética diferente. Depois de 26 letras de texto claro, o cilindro estaria de volta à posição inicial. Assim, temos um algoritmo de substituição polialfabética com um período de 26.

Um sistema de único cilindro é trivial e não apresenta uma tarefa criptoanalítica formidável. O poder da máquina de rotor está no uso de múltiplos cilindros, em que os pinos de saída de um cilindro são conectados aos de entrada do seguinte. A Figura “Máquina de três rotores com fiação representada por contatos numerados” mostra um sistema de três cilindros. A metade esquerda da figura mostra uma posição em que a entrada do operador para o primeiro pino (letra a em texto claro) é direcionada pelos três cilindros para aparecer na saída do segundo pino (letra B em texto cifrado).

Com múltiplos cilindros, aquele mais próximo da entrada do operador gira uma posição de pino a cada toque de tecla. A metade direita da Figura “Máquina de três rotores com fiação representada por contatos numerados” mostra a configuração do sistema depois de um único toque de tecla. Para cada rotação completa do cilindro interno, o do meio gira uma posição de pino. Finalmente, para cada rotação completa do cilindro do meio, o externo gira uma posição de pino. Esse é o mesmo tipo de operação vista com os antigos marcadores de quilometragem (odômetros) de automóvel. O resultado é que existem 26 × 26 × 26 = 17.576 alfabetos de substituição diferentes usados antes que o sistema repita. O acréscimo de quarto e quinto rotores resulta em períodos de 456.976 e 11.881.376 letras, respectivamente. Assim, determinada configuração de uma máquina de 5 rotores é equivalente a uma cifra de Vigenère com um tamanho de chave de 11.881.376.

Esse esquema apresenta um desafio criptoanalítico formidável. Por exemplo, se o criptoanalista tentar usar uma técnica de análise de frequência de letra, ele enfrentará o equivalente a mais de 11 milhões de cifras monoalfabéticas. Talvez fosse preciso cerca de 50 letras em cada cifra monoalfabética para uma solução, o que significa que o analista necessita estar em posse de um texto cifrado com um tamanho de mais de meio bilhão de letras. O significado da máquina de rotor hoje é que ela aponta o caminho para a cifra mais utilizada de todos os tempos: Data Encryption Standard (DES), que será explicada mais adiante.

ESTEGANOGRAFIA

Concluiremos com uma discussão sobre uma técnica que, estritamente falando, não é encriptação — a saber, a esteganografia.

Uma mensagem em texto claro pode estar oculta de duas maneiras. Os métodos de esteganografia escondem a existência da mensagem, enquanto os métodos de criptografia a tornam ininteligível a estranhos por meio de várias transformações do texto.

Uma forma simples de esteganografia, mas demorada de se construir, é aquela em que um arranjo de palavras e letras dentro de um texto aparentemente inofensivo soletra a mensagem real. Por exemplo, a sequência de primeiras letras de cada palavra da mensagem geral soletra a mensagem escondida.

Diversas outras técnicas têm sido usadas historicamente, e alguns exemplos são:

  • Marcação de caractere: letras selecionadas do texto impresso ou datilografado são escritas com lápis por cima. As marcas normalmente não são visíveis, a menos que o papel seja mantido contra uma fonte de luz clara.
  • Tinta invisível: diversas substâncias podem ser usadas para a escrita sem deixar rastros visíveis, a menos que alguma química seja aplicada ao papel.
  • Perfurações: pequenos furos em letras selecionadas normalmente não são visíveis, a menos que o papel tenha uma fonte de luz no fundo.
  • Fita corretiva de máquina de escrever: usada entre as linhas digitadas com uma fita preta, os resultados de digitar com a fita corretiva são visíveis apenas sob uma luz forte.

Embora essas técnicas possam parecer arcaicas, elas possuem equivalentes contemporâneos. Propõe esconder uma mensagem usando os bits menos significativos dos frames em um CD. Por exemplo, a resolução máxima do formato Kodak Photo CD é de 3.096 por 6.144 pixels, com cada pixel contendo 24 bits de informações de cor RGB. O bit menos significativo de cada pixel de 24 bits pode ser alterado sem afetar muito a qualidade da imagem. O resultado é que você pode ocultar uma mensagem de 130 kB em uma única foto digital. Agora, existem diversos pacotes de software disponíveis que levam esse tipo de técnica à esteganografia.

A esteganografia tem diversas desvantagens quando comparada à encriptação. Ela exige muito overhead para esconder relativamente poucos bits de informação, embora algum esquema como o proposto no parágrafo anterior possa torná-la mais eficaz. Além disso, quando o sistema é descoberto, ele se torna praticamente inútil. Esse problema também pode ser contornado se o método de inserção depender de algum tipo de chave. Como alternativa, uma mensagem pode ser primeiramente encriptada, e depois escondida, usando a esteganografia.

A vantagem da esteganografia é que ela pode ser empregada pelas partes que têm algo a perder se a sua comunicação secreta (não necessariamente o conteúdo) for descoberta. A encriptação sinaliza o tráfego como importante ou secreto, ou pode identificar o emissor ou o receptor como alguém com algo a esconder.

Fim da aula 02

Click to listen highlighted text!