Académique Documents
Professionnel Documents
Culture Documents
Dbora de Jesus Bezerra Pedro Luiz Malagutti Vnia Cristina da Silva Rodrigues
SUMRIO
Criptografia na era da Internet (RSA para leigos)........ Cdigo Gentico......................................................... Anti-criptografia: comunicao com extra-terrestres..
Simulaes com criptografia de chave pblica................
Sepejampam bempem vinpindospos aopao espestrapanhopo munpundopo dospos cpdipigospos epe daspas cipifraspas!
1. INTRODUO
Enviar mensagens secretas uma tarefa muito antiga. O homem sentiu, desde muito cedo, a necessidade de guardar informaes em segredo; ela nasceu com a diplomacia e com as transaes militares. Generais, reis e rainhas, durante milnios, buscavam formas eficientes de comunicao para comandar seus exrcitos e governar seus pases. A importncia de no revelar segredos e estratgias s foras inimigas, motivou o desenvolvimento de cdigos, cifras e tcnicas para mascarar uma mensagem, possibilitando apenas ao destinatrio ler o contedo. As naes passaram a criar departamentos para elaborar sistemas criptogrficos; por outro lado, surgiram os decifradores de cdigos, criando uma corrida armamentista intelectual. Ao longo da histria, os cdigos decidiram o resultado de batalhas. medida que a informao se torna cada vez mais valiosa, o processo de codificao de mensagens tem um papel cada vez maior na sociedade. Tendo em vista a necessidade de se criar ferramentas capazes de proteger a informao e de prover segurana aos documentos armazenados e transmitidos pelas organizaes atravs do mundo, tem-se a motivao para o estudo da Criptologia.
A Criptologia a arte ou a cincia de escrever em cifra ou em cdigo; em outras palavras, ela abarca o conjunto de tcnicas que permitem tornar incompreensvel uma mensagem originalmente escrita com clareza, de forma a permitir normalmente que apenas o destinatrio a decifre e a compreenda.
Hoje em dia, entretanto, com o advento da comunicao eletrnica, a Criptografia deixou de ser unicamente segredo de estado, pois muitas atividades Internet. At recentemente, a criptografia era considerada uma arte; hoje em dia, entretanto, passou a ser considerada uma cincia. As aplicaes da Criptografia atualmente incluem: sigilo em banco de dados; censos; investigaes governamentais; dossis de pessoas sob investigao; dados hospitalares; informaes de crdito pessoal; decises estratgicas empresariais; sigilo em comunicao de dados; comandos militares; mensagens diplomticas; operaes bancrias; comrcio eletrnico; transaes por troca de documentos eletrnicos (EDI); estudo de idiomas desconhecidos; recuperao de documentos arqueolgicos, hierglifos; e at tentativas de comunicaes extraterrestres! Simplificadamente, temos o seguinte diagrama: essenciais dependem do sigilo na troca de mensagens, principalmente aquelas que envolvem transaes financeiras e uso seguro da
Codificao
Decifrao
Mensagem Original
Mensagem Secreta
Espionagem
Nosso objetivo neste mini-curso apresentar atividades com criptografia atravs de aparatos que possam efetivamente ser construdos com materiais simples (papel, palito, clipe, furador de papel, cola e tesoura) para explorar alguns aspectos matemticos destas construes. Os contedos matemticos envolvidos so comumente estudados no Ensino Fundamental (1. ao 9. anos) e incio do Ensino Mdio.
2
2. REAS DA CRIPTOLOGIA
A Criptologia a cincia que se ocupa da ocultao de informaes (criptografia) e da quebra das informaes ocultadas (criptoanlise). Uma informao pode ser escondida de duas maneiras diferentes: Ocultando a existncia da mensagem (esteganografia) Ocultando o significado do contedo da mensagem (criptografia propriamente dita)
reas da Criptologia
Esteganografia
A esteganografia estuda meios e mtodos para se esconder a existncia da mensagem. bastante utilizada na rea de segurana monetria, na autenticao de documentos, em imagens e nas gravaes em geral (msica, filmes, etc). Atualmente utilizada na luta contra a pirataria e o terrorismo. Vejamos alguns exemplos:
A marca dgua (na figura, a bandeira nacional) um recurso esteganogrfico presente nas notas de dinheiro que ajuda a combater a falsificao.
3
A esteganografia em imagens digitais visa inserir dados dentro de uma imagem, atravs da manipulao dos bits (um bit a menor parcela de informao processada por um computador; um bit comporta uma informao binria que somente pode assumir os valores 0 ou 1), de forma que ningum note a existncia de dados nesta imagem. Com as diversas possibilidades de envio e recepo de imagens digitais, e com a chegada da TV digital no Brasil, as tcnicas de esteganografia em imagens digitais podem ser muito teis no controle de cpias, uso e, entre outros, autoria das imagens. Veremos alguns usos desta tcnica aps estudarmos o sistema binrio de numerao.
Criptografia
Para codificarmos ou decodificarmos uma mensagem necessitamos de informaes confidenciais denominadas chave. A criptoanlise estuda formas de decodificar uma mensagem sem se conhecer, de antemo, a chave. Ela reconstri, a partir da mensagem codificada, a mensagem no seu formato original, com a ajuda de mtodos matemticos. Dizemos que a criptoanlise responsvel por quebrar o cdigo da mensagem codificada, o que permite transformar dados ou mensagens em alguma forma legvel. A criptografia, por outro lado, utilizada para proteger informaes e manter o sigilo de dados confidenciais. A criptografia utiliza mtodos para a produo e distribuio segura de chaves e estuda algoritmos que permitem transformar mensagens claras em formas de comunicao s inteligveis pelos emissores e pelos receptores envolvidos no processo. Apresentamos, a seguir, algumas definies usadas em Criptografia: Criptograma: Mensagem cujo contedo foi obtido a partir de uma tcnica de criptografia. Ciframento: Tcnica de criptografia para obter um criptograma a partir da mensagem. Deciframento: Tcnica de criptografia para obter a mensagem original a partir de um criptograma. Na cincia da criptografia estudam-se os cdigos e as cifras. No estudo de cdigos em geral no h a inteno de se esconder a informao, como, por exemplo, nos cdigos de barra, hoje em dia amplamente utilizados. Existem estudos matemticos profundos sobre os cdigos em geral (cdigos corretores de erros, cdigos baseados em teoria dos grupos ou em geometria algbrica, etc.).
Cdigos
Cdigos de Barras
Ultimamente todos os produtos vendidos em supermercados so identificados com cdigos de barras, formados por uma seqncia alternada de linhas brancas e pretas. Nestas barras esto contidas informaes sobre o fabricante, preo e origem. As barras pretas e brancas so convertidas, por meio de uma leitora tica, em dgitos binrios que podem ser entendidos pelo computador. Existem diferentes cdigos de barras, mas o mais comum constitudo de no mximo 113 linhas. A linha preta corresponde ao binrio 1 e a linha branca ao binrio 0 e cada grupo de sete linhas representa um nmero que aparece imediatamente abaixo do cdigo, mas no em geral a representao binria deste nmero. Na verdade, as barras mais compridas tm a funo apenas de separar as demais e as listras brancas e pretas que aparecem alternadamente podem ser de oito tipos: fina branca (0), mdia branca (00), grossa branca (000), muito grossa branca (0000), fina preta (1), mdia preta (11), grossa preta (111) e muito grossa preta (1111). Os cdigos de barras de produtos produzidos no Brasil comeam sempre com seqncia 789. A leitura deve ser feita em vrias direes diferentes. Se voc quiser mais informaes sobre a matemtica dos Cdigos de Barra, principalmente sobre o papel do dgito de controle, acesse o trabalho de Polcino Milies no site: http://www.mat.ufg.br/bienal/2006/mini/polcino.pdf. NMEROS DE CONTROLE A Identidade de um Livro ISBN Todo livro recente tem um nmero que sua identidade, o ISBN (International Standard Book Number): um nmero que consiste 10 dgitos, indicados pelo editor. Por exemplo, 0 19 859617 0
um nmero vlido de um ISBN. Os hfens podem aparecer em diferentes lugares, isto no tem importncia. O primeiro dgito da esquerda, 0, indica a linguagem utilizada no texto (no caso ingls); os prximos dois dgitos, 19, indicam a editora do livro (no caso Oxford University Press). Os prximos seis dgitos, 859617, formam propriamente o nmero do livro, sendo designado pelo editor. O ltimo dgito um nmero de controle. Ele o que nos interessa. Com ele poderemos descobrir se o livro foi corretamente numerado e mesmo corrigir algum erro simples. Para um ISBN da forma x1 x2 x 3 x 4 x5 x 6 x7 x 8 x9 - x 10, o ltimo dgito calculado da seguinte forma: primeiro multiplicamos o nmero por sua posio e depois somamos os resultados. O que obtemos : 1. x 1 + 2. x2 + 3. x 3 + 4. x4 + 5. x5 + 6. x 6 + 7. x 7 + 8. x8 + 9. x 9 A seguir, dividimos este nmero por 11 e tomamos o resto da diviso. Este ser o valor de x 10. No exemplo que estamos considerando, o clculo de x10 feito da seguinte maneira: 1. 0 + 2. 1 + 3. 9 + 4. 8 + 5. 5 + 6. 9 + 7. 6 + 8. 1 + 9. 7 = 253. Como 253 dividido por 11 resulta em resto 0, ento x 10 = 0. Se o resto for 10, devemos colocar a letra X no lugar de x 10. Com este mtodo de numerar livros, podemos detectar se algum erro simples foi feito ou se houve uma troca de posio de dois dgitos, estabelecendo assim uma espcie de controle, que evita erros simples de digitao. Como podemos fazer isto? Efetuamos primeiramente a seguinte conta: 1. x1 + 2. x2 + 3. x 3 + 4. x4 + 5. x5 + 6. x 6 + 7. x7 + 8. x8 + 9. x 9 + 10 . x10. e dividimos o resultado obtido por 11. Se o resto desta diviso no for igual a zero, o resultado est incorreto. De fato, mudar o valor de um dgito altera o valor do resto. Isto tambm acontece se ao escrevermos o nmero trocarmos a posio de dois dgitos, transpondo-os. Isto se deve ao fato de que todo nmero tem uma certa decomposio nica, usando 11 como base do sistema de numerao. Truque para adivinhar um nmero que est faltando no ISBN Se soubermos que apenas um nmero de um ISBN est ilegvel, podemos recuper-lo. Pea a algum para escolher um livro no conhecido por voc e ler o seu ISBN, mas dizendo y para um dos dgitos. Depois de fazer algumas continhas simples voc poder adivinhar o valor de y. Por exemplo, se o nmero for 0 20 11y 502 7
calculamos 0.1+2.2+0.3+1.4+1.5+y.6+5.7+0.8+2.9+7.10 = 6.y+136 Como s nos interessa o resto da diviso do nmero por 11 e 136 = 11.12 + 4, precisamos encontrar y para que 6.y + 4 seja um mltiplo de 11. Basta testar e ver que y = 3 funciona. Logo, o nmero procurado 3. Como feito o CPF (Cadastro de Pessoas Fsicas) O cadastro das pessoas fsicas (usado nas declaraes de imposto de renda) tem o seguinte formato: X1 X2 X3 X4 X5 X6 X7 X8 R - C1 C2 Os oito primeiros nmeros constituem o nmero bsico de inscrio da pessoa fsica no Cadastro Individual do Contribuinte. O nono algarismo, indicado pela letra R, indica a regio fiscal onde foi efetuada a inscrio. O dgito C1 um nmero verificador do nmero formado pelos nove algarismos anteriores (calculado tomando o resto por 11, como no ISBN) e C2 o dgito de controle que verifica a exatido dos dez algarismos anteriores (usando tambm o resto por 11). Clculo de C1: Cada um dos nove algarismos, a partir da direita multiplicado sucessivamente por 2, 3, 4, 5, 6, 7, 8, 9, 10 e os produtos resultantes so somados. A soma obtida ento dividida por 11 e C1 ser o quanto falta para 11 do resto desta diviso. Se este complemento for maior ou igual a 10, tomase o valor 0. Colocamos o valor encontrado de C1 na sua devida posio para iniciar o clculo de C2. Clculo de C2: Cada um dos dez algarismos, a partir da direita, multiplicado sucessivamente por 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 e os produtos resultantes so somados. O nmero C2 obtido ento de maneira anloga a C1. Exemplo: Vamos calcular os dgitos de controle C1 e C2 para o seguinte CPF: 123456785 Clculo de C1: 1.10+2.9+3.8+4.7+5.6+6.5+7.4+8.3+5.2 = 202. Dividindo 202 por 11, obteremos 4 como resto. Ento C1 = 11 4 = 7. Clculo de C2: 1.11+2.10+3.9+4.8+5.7+6.6+7.5+8.4+5.3+7.2 = 257. Dividindo este nmero por 11, obteremos resto 4. Logo C2 = 11 - 4 = 7. Assim o CPF completo : 123456785 77.
Como antes, se digitarmos ou escrevermos algum dgito errado, os dgitos de controle acusaro o erro, no legal? por isto que algumas mquinas recusam os CPFs digitados erroneamente. Porque no vale a pena ser bagunceiro: O algoritmo descrito acima para se calcular o CPF parece um tanto complicado, mas baseado em regras rigorosas que nos permitem detectar erros. Podemos inventar muitos algoritmos para gerar e embaralhar nmeros. O senso comum nos diz que quanto mais embaralhamos os nmeros, mais confusos e aleatrios sero os resultados obtidos. Isto entretanto no verdade. Vamos mostrar que do caos pode surgir a ordem e isto sem adentrar na Filosofia. Considere o seguinte algoritmo gerador de nmeros (devido a Donald Knuth): 0. Digite um nmero qualquer X com dez algarismos decimais. 1. Calcule Y = o algarismo mais significativo de X. As etapas 2 a 13 sero repetidas (Y + 1) vezes. 2. Calcule Z = o segundo algarismo mais significativo de X e v para a etapa k(3+Z). 3. Se X < 5.000.000.000, some 5.000.000.000 a X. 4. Substitua X pelos 10 algarismos centrais de X2. 5. Substitua X pelo resto da diviso de 1001001001X por 10.000.000.000 6. Se X < 1.000.000.000, some 98140556677 a X. Caso contrrio, substitua X por 10.000.000.000 X. 7. Troque os 5 algarismos menos significativos de X pelos 5 mais significativos e vice-versa (isto o mesmo que substituir X pelos 10 algarismos centrais de 10.000.000.001X). 8. Repita a etapa 5. 9. Subtraia 1 de cada algarismo no nulo de X. 10. Se X < 100.000, substitua X por X2 + 99.999. Caso contrrio, subtraia 99.999 de X. 11. A instruo a seguir deve ser realizada duas vezes: Se X < 1.000.000.000, multiplique X por 10. 12. Substitua X pelos 10 algarismos centrais de X.(X-1). 13. Se Y > 0 (ver etapa 1), subtraia 1 de Y e volte etapa 2. Caso contrrio, termine. Considerando todas as contores do algoritmo acima, espera-se que ele deva produzir uma quantidade infinita de nmeros aleatrios. Mas isto no acontece. Quando colocamos este algoritmo em um computador, ele converge, quase que imediatamente, para o nmero 6.065.038.420, o qual, transformado nele mesmo pelo programa. Com outro nmero inicial, a seqncia comea a repetir-se aps 7401 valores, num perodo cclico de comprimento 3178. Concluso: mesmo para ser bagunceiro preciso estudar muito.
Cifras
No estudo das cifras, o fundamental o ocultamento da informao; h uma unidade bsica de substituio formada por letras ou smbolos, isolados ou agrupados, e os mtodos de cifragem so divididos segundo sua natureza: mtodos de substituio (quando uma letra trocada por outra, em geral diferente dela), cifragem de transposio (em que as letras da mensagem so apenas permutadas, mas no substitudas) e cifragem mista. Vejamos com mais detalhes alguns destes mtodos criptogrficos.
Exemplo mtodo da permutao de colunas: Dada a mensagem original, deposite_um_milho_de_dlares_em_minha _conta_na_suia._nmero_dois_um_sete_seis. codifique a mensagem, utilizando o ciframento por transposio e a chave: 5 2 8 4 1 6 3 7. Divida a mensagem em bloco como exposto e aplique a chave dada em cada linha do bloco. O bloco constitudo de 8 colunas, que o nmero de dgitos da chave. Devemos permutar as colunas de lugar de acordo com o indicado, isto , a coluna 5 vira a primeira, a segunda fica onde est, a coluna 8 vira a terceira e assim sucessivamente . Veja como criptogradada: fica a primeira linha
10
Se voc utilizar um carto com a tabela acima e recortar as colunas, ser muito fcil cifrar ou decifrar a mensagem. Voc pode tambm elaborar maneiras criativas de se lembrar da chave; por exemplo, a palavra FLORA serve para lembrar o nmero-chave 23451 se usarmos a ordem em que as letras aparecem no alfabeto. No mtodo da transposio ocorre apenas um embaralhamento das letras, dispostas em uma ordem pr-determinada para cifrar e decifrar. Vejamos mais um exemplo: qual o contedo da mensagem AASBMEROSATE? A resposta simples se combinarmos a seguinte disposio:
Fcil, no? A nossa mente capaz de fazer coisas incrveis; leia as mensagens abaixo que andaram circulando pela Internet: Como pode.... d para ler tudo sem problema nenhum...rsrsrs
DE AORCDO COM UMA PQSIEUSA DE UMA UINRVESRIDDAE IGNLSEA, NO IPOMTRA EM QAUL ODREM AS LRTEAS DE UMA PLRAVAA ETSO, A NCIA CSIOA IPROTMATNE QUE A PIREMRIA E TMLIA LRTEAS ETEJASM NO LGAUR CRTEO. O RSETO PDOE SER UMA TTAOL BGUANA QUE VCO PDOE ANIDA LER SEM POBRLMEA. ITSO POQRUE NS NO LMEOS CDAA LRTEA ISLADOA, MAS A PLRAVAA CMOO UM TDOO.
Observe bem, as letras no foram alteradas, apenas mudadas de ordem. Isto no ocorre, entretanto, na mensagem a seguir:
11
Aprendendo Criptologia de Forma Divertida 3M UM D14 D3 VER40, 3S7AVA N4 PR4I4,O853RV4NDO DU4S CR14N4S 8B1NC4ND0 N4 4REI4. EL45 TR4B4LH4V4M MUI7O C0N57R1ND0 UM C4ATEL0 D3 AR3I4, C0M 70RR35, P4554R3L4S 3 P4554G3N5 1N7ERN4S. QU4ND0 ES74V4M QU4S3 T3RM1N4ND0, V310 UM4 0ND4 3 3S7RU1U 7UDO, R3DU21NDO 0 C4S7EL0 4 UM MON73 D3 4REI4 3 3SPUM4. 4CH31 QU3 D3P01S D3 74N70 35FOR0 3 CU1D4D0, 45 CR1ANC4S C4IR4M N0 CH0R0, CORR3R4M P3L4 PR41A, FUG1ND0 DA 4GU4, R1NDO D3 M405 D4D4S 3 C0M3C4R4M 4 C0NS7RU1R 0UTR0 C4573LO. C0NPR33ND1 QU3 H4V14 4PR3ND1D0 UM4 GR4ND3 L140; G4ST4M0S MU170 7EMP0 D4 NO554 V1D4 C0NS7RU1NDO 4LGUM4 C01S4 3 M41S 74RD3, UM4 0ND4 P0D3R4 V1R 3 DES7RU1R 7UD0 0 QU3 L3V4M0S 7ANTO 73MP0 P4R4 C0NS7RU1R.
Este ltimo texto no um exemplo de criptografia de transposio, mas sim de substituio, embora, convenhamos, de segurana mnima. Estudaremos os cdigos de substituio na prxima seo. A transposio e a substituio so frequentemente usadas como recursos poticos. Vejamos algumas poesias concretas estes recursos1:
ZEN
Zen uma poesia concreta de Pedro Xisto. Os dois outros poemas so de autoria de Augusto de Campos. Voc reparou na mensagem escondida? Leia com calma a ltima poesia, explicitamente: colocar a mscara.
12
(monoalfabtica) substitui-se cada caractere do texto por outro, de acordo com uma tabela pr-estabelecida. Por exemplo, na Segunda Guerra Mundial, era comum trocar cada letra pelo smbolo que estava acima do teclado da mquina de escrever. Vamos explorar vrios destes sistemas nas atividades prticas da prxima seo. Na criptografia contempornea, com o uso de computadores, substituise caracteres por blocos de bits. Este mtodo relativamente seguro em textos muito curtos.
secreta tanto para criptografar como para decifrar mensagens. As teorias clssicas de criptografia so todas baseadas em chaves simtricas, isto , a maneira de decifrar mensagens praticamente a mesma que foi usada para cifrar. Nos sistemas criptogrficos ditos assimtricos utilizam-se duas chaves diferentes, que pertencem apenas a um participante. Uma chamada chave pblica e todos tm acesso a ela; a outra secreta e deve ser guardada em sigilo.
13
Este sistema se assemelha ao que se usa em contas de banco; o nmero da conta-corrente de conhecimento pblico, mas a senha pessoal s conhecida pelo cliente. Veremos na prxima seo um mtodo chamado RSA, com chaves assimtricas, largamente em uso. O Algoritmo RSA (Rivest, Shamir, Adleman) foi descoberto em 1977 e se baseia em alguns princpios da Teoria dos Nmeros; sua segurana se deve dificuldade de fatorar nmeros extensos, uma dificuldade tecnolgica (por exemplo um nmero de 200 dgitos requer 4 bilhes de anos, supondo que o tempo de processamento de cada instruo de 1 microssegundo).
14
30 1 24 51 10 42 25 35
Esta
interessante
pea
arqueolgica
babilnica
data
de
aproximadamente 1800 aC, traz o clculo da raiz quadrada de 2 com sete casas decimais de preciso e est registrada em um tablete de argila com a escrita cuneiforme, como era uso na poca. Apesar de seu interesse histrico e matemtico ela no pode ser considerada uma verdadeiro achado criptogrfico, pois no houve inteno de quem a escreveu de esconder a mensagem; pelo contrrio, est claramente exposto o desejo de instruir a quem a l, evidenciado pelos componentes geomtricos nela gravados. Tambm a Pedra de Roseta, decifrada por Campollion em 1822, no pode ser considerada um registro criptogrfico; trata-se apenas de um texto escrito em trs lnguas: grego, egpicio demtico e com hierglifos. Na religiosos, como veremos a seguir. verdade os primeiros escritos
15
600 a 500 a.C. Escribas hebreus, escrevendo o livro de Jeremias, usaram a cifra de substituio simples pelo alfabeto reverso conhecida como ATBASH. Eles no usavam vogais na sua escrita e metade das consoantes eram substitudas pela outra metade, ordenadamente, mas na ordem inversa. Isto fazia com que a letra a (aleph) ficasse codificada pela letra t (taw) e a letra b (beta) pela letra s (shin), da o nome ATBASH. As cifras mais conhecidas da poca so o ATBASH, o ALBAM e o ATBAH, as chamadas cifras hebraicas. Datam de 600-500 a.C. e eram usadas principalmente em textos religiosos. Estas cifras baseiam-se no sistema de substituio simples (monoalfabtica). As trs so denominadas reversveis porque na primeira operao obtm-se o texto cifrado e, aplicando-se a mesma cifra ao texto cifrado, obtm-se o texto original. Este alfabeto foi usado para escrever parte dos rolos dos Escritos do Mar Morto.
487 aC Militares gregos desta poca usavam o basto de licurgo ou citale para enviar mensagens secretas.
Basto de Licurgo
16
ATIVIDADE: Com dois lpis iguais e uma fita comprida de papel voc pode facilmente e se seguro. A esteganografia tambm antiga. A Histria registra que na Grcia Antiga um mtodo utilizado baseava-se em raspar a cabelo de um escravo e tatuar uma mensagem em sua cabea; quando o cabelo j estivesse grande o suficiente para esconder a mensagem, o escravo era enviado ao destinatrio para que a mensagem pudesse ser entregue. preciso, claro, de muita pacincia. 50 a. C. Um dos primeiros sistemas de criptografia conhecido foi elaborado pelo general Jlio Csar, no Imprio Romano. Jlio Csar usou sua famosa cifra de substituio para encriptar comunicaes governamentais. Para compor seu texto cifrado, construir este sistema criptogrfico. Tente, veja se ele funciona
Csar alterou letras desviando-as em trs posies; A se tornava D, B se tornava E, etc. s vezes, Csar reforava sua encriptao substituindo letras latinas por gregas. O cdigo de Csar continua sendo usado at hoje. Atualmente denomina-se qualquer cifra baseada na substituio cclica do alfabeto de cdigo de Csar. Vejamos com um exemplo com mais detalhes; como vimos, Jlio Csar substituiu cada letra, pela terceira letra que a segue no alfabeto.
17
Segundo este sistema, a palavra MATEMTICA passa a ser PDWHPDWLFD. Letras acentuadas no so levadas em conta. ATIVIDADE: Cifre a mensagem abaixo usando o cdigo de Jlio
Csar: SOCORRAM-ME SUBI NO NIBUS EM MARROCOS. 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 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 ATIVIDADE: Decifre a mensagem: OHJDO FRQVHJXL
Ao invs de caminhar 3 letras para frente, podemos andar um outro nmero de letras e teremos um novo mtodo de cifrar mensagens. Este nmero a chave ou senha do sistema criptogrfico; ele deve ser conhecido apenas por que envia a mensagem e por quem a recebe. Podemos tambm transformar letras em nmeros, segundo uma ordem pr-estabelecida. Por exemplo: A=0 I=8 Q=16 Y=24 B=1 J=9 R=17 Z=25 C=2 K=10 S=18 D=3 L=11 T=19 E=4 M=12 U=20 F=5 N=13 V=21 G=6 O=14 W=22 H=7 P=15 X=23
Deste modo a letra codificada obtida da letra original, somando-se 3 ao nmero correspondente. E se o resultado ultrapassar 25? Caso isto ocorra, a letra codificada estar associada ao resto da diviso por 26 do nmero associado letra original somado com 3. Por exemplo, a letra Y corresponde originalmente ao nmero 24, somando-se 3, obteremos 24 + 3 = 27 e, dividindo 27 por 26, obteremos resto 1 que corresponde letra B. Assim Y deve ser codificado por B. ATIVIDADE (OBMEP 2007)
18
Se um espio conhecer a chave (a quantidade de letras que andamos), poder facilmente decifrar uma mensagem interceptada, trocando cada letra pela terceira anterior. Mas, no se conhecendo a chave, como decifrar mensagens criptografadas? Pense um pouco a respeito disso. Nas prximas sees voc aprender a decifrar facilmente as mensagens criptografadas no estilo Jlio Csar, mesmo desconhecendo inicialmente a chave. O mtodo de decifrao baseado no estudo da frequncia das letras de um determinado alfabeto.
19
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 B A D C F E H G J I L K N M P O R Q T S V U X W Z Y Observe que nenhuma letra ficou no seu lugar original. Neste caso, dizemos que houve um desordenamento. c) Usando a seqncia que aparece no teclado do computador: 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 Q W E R T Y U I O P A S D F G H J K L Z X C V B N M Aqui tambm houve desordenamento. Atividade: Usando o cdigo: 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 Z Y X W V U T S R Q P O N M L K J I H G F E D C B A Decifre a mensagem: Z TIZNZ V ZNZITZ Leia de trs para frente a mensagem decifrada.
Quantas maneiras diferentes de criptografar podemos construir? Digamos que em um planeta distante os alfabetos fossem formados por apenas trs smbolos: , e . Poderamos criptografar mensagens de seis maneiras diferentes:
A primeira dessas maneiras a trivial e no serve para codificar nada. Sem listar as mensagens, poderamos concluir que existem seis maneiras diferentes de permutar as letras deste alfabeto? claro que sim: para a primeira letra existem 3 possibilidades de O Princpio Multiplicativo da Contagem: Se uma deciso puder ser tomada de m maneiras codificao, para a segunda diferentes e se, uma vez tomada esta primeira apenas duas e para a deciso, outra deciso puder ser tomada de n terceira resta somente uma maneiras diferentes, ento, no total sero tomadas possibilidade. mxn decises.
20
Pelo Princpio Multiplicativo da Contagem, so 3.2.1= 6 as possibilidades. H uma notao muito til para se trabalhar como produtos do tipo acima, camada fatorial. Por exemplo, o fatorial de 3 3! = 3.2.1. No caso geral, para um inteiro positivo n, define-se n! = n.(n-1).(n-2). ... . 3.2.1 e, por conveno, 0! =1. Observe que dentre estas, so trs as possibilidades que mantm a ordem usual (1231) inalterada:
1 2 3 1 2 3 1 2 3
Digamos que em um outro planeta so quatro as letras empregadas: , , e . H, neste caso, 4 . 3 . 2. 1 = 4! = 24 maneiras diferentes de permutar as letras. Dentre estas, apenas 4 respeitam a ordem usual . So elas:
1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4
H 9 desordenamentos:
1 2 3 4 1 2 3 4 1 2 3 4
21
O que ocorre se usarmos as 26 letras de nosso alfabeto? Podemos inferir algo? Existem 26! maneiras diferentes de criptografar, isto d 403 291 461 126 605 635 584 000 000 possibilidades! Se, entretanto, quisermos preservar a ordem usual das letras, temos somente 26 maneiras, incluindo a trivial em que cada letra trocada por ela mesma. Em geral, se tivermos n letras, teremos n! = n . (n-1) . (n-2). . 3. 2.1 permutaes diferentes e somente n delas respeitam a ordem usual. possvel tambm calcular os desordenamentos (em que nenhuma letra fica no seu lugar natural). O nmero total de desordeamentos com n letras :
n !(
1 1 1 1 (1) n + + ... + ) 0! 1! 2! 3! n!
(para ver a deduo desta frmula veja o livro Anlise Combinatria e Probabilidade de Morgado, Pitombeira de Carvalho, Pinto Carvalho e Fernandez IMPA, 1991). Como curiosidade, com 26 letras o nmero de desordenamentos : 148 362 637 348 470 135 821 287 825. Com tantas possibilidades de codificao, parece extremamente difcil descobrir a chave para se quebrar um cdigo no estilo de Jlio Csar, caso desconheamos qual foi a maneira com que as letras foram inicialmente codificadas, no mesmo? No h esperana alguma de se testar todas as possibilidades. Apesar disto o cdigo de Jlio Csar e suas variaes so muito fceis de ser quebradas, como veremos a seguir. Como quebrar o cdigo de Jlio Csar MAPAS DE TESOUROS Vamos ilustrar a teoria da decifrao com um trecho de um conto do escritor Edgar Allan Poe, intitulado O Escaravelho de Ouro 2 . O personagem principal desta obra, em uma certa altura da obra, encontra um velho pergaminho que acredita ser um mapa de um tesouro, com os seguintes dizeres:
Este conto faz parte do livro Histria de Mistrio e Imaginao de Edgar Allan Poe, Editorial o Verbo, n . 15, Lisboa.
22
(53+305) )6*; 4826) 4.)4);806*;48+8 60))85;1(;:*8+83(88)5*+;46(;88*96*?;8)*(;485);5*+2:*(;4956* 2 (5*-4)88* ; 4069285);)6+8)4;1(9;48081 ; 8:81;48+85;4) 485 + 528806* 81(9;48; (88;4 ( ? 34;48) 4 ; 161 ; : 188; ?;
No conto, aps uma anlise baseada na frequncia das letras do alfabeto ingls feita pelo protagonista, a mensagem toma a seguinte forma:
A good glass in the bishops hostel in the devils seat forty-one degrees and thirteen minutes north-east and by north main branch seventh limb east side shoot from the left eye of the deaths-head a bee line form the tree through the shot fifty feet out.
Como isto foi obtido? A letra que aparece com mais freqncia na lngua inglesa a letra e; muitas vezes ela aparece dobrada ee. Na mensagem secreta acima o smbolo 8 aparece 33 vezes, muito mais do que as outras letras e portanto plausvel que 8 deva significar a letra e. Substituindo 8 por e, e tentando o mesmo esquema com outras letras possvel decifrar a mensagem. Sua traduo para o portugus :
Um bom vidro na hospedaria do bispo na cadeira do diabo quarenta e um graus e treze minutos nordeste e quarta de norte ramo principal stimo galho do lado leste a bala atravs do olho esquerdo da cabea do morto uma linha de abelha da rvore atravs da bala cinqenta ps para fora.
O conto ento revela, de uma maneira fantstica, como, a partir destas informaes, o personagem principal encontra um tesouro h muito tempo enterrado por um pirata que passou pelo lugar descrito na mensagem. O estudo da frequncia das letras do alfabeto constitui um mtodo eficaz para se quebrar mensagens no estilo de Jlio Csar. Frequncia aproximada das letras em portugus:
23
Para contrariar a regra, seria possvel escrever um texto longo sem a letra a? Voc consegue, certo? (Esta frase Voc consegue, certo? no tem a letra a), tente construir um texto com pelo menos 5 linhas. Atividade: Usando as frequncias das letras em portugus, decifre a mensagem abaixo e complete a tabela para registrar as substituies encontradas. Urtklm tr dqapuakcftr ltr iasqtr aj nmqsuouar lacfdqa t jakrtoaj tetfxm a cmjniasa t steait ntqt qaofrsqtq tr ruersfsufcmar akcmksqtltr.
Sugesto:Vamos observar a frequncia das letras na frase. Observe na tabela as ocorrncias: Letra t a r q s u m f k c Nmero de vezes que aparece na frase 18 16 13 9 8 6 6 6 5 5 Letra l j n i o e d p x Nmero de vezes que aparece na frase 4 4 3 3 3 3 1 1 1
Como a frequncia de letras em portugus segue a ordem; A E O R S I N ...., muito provavelmente a letra t deve ser a codificao da letra A, pois a mais frequente, assim como a letra a deve ser a codificao da letra E, que a segunda mais freqente, mas isto, por enquanto, s uma especulao. Se substituirmos t por A e a por E na mensagem criptografada, chegaremos a UrAklm Ar dqEpuEkcfAr lAr iEsqAr Ej nmqsuouEr lEcfdqE A jEkrAoEj AeAfxm E cmjniEsE A sAeEiA nAqA qEofrsqAq Ar ruersfsufcmEr EkcmksqAlAr.
24
Aprendendo Criptologia de Forma Divertida Ser que j conseguimos descobrir o que est escrito? Vamos analisar a terceira letra mais frequente; a letra r que aparece 13 vezes na frase. Ela pode estar codificando as seguintes letras ou O ou R ou S. Se r codificar O a mensagem fica: UOAklm AO dqEpuEkcfAO lAO iEsqAO Ej nmqsuouEO lEcfdqE A jEkOAoEj AeAfxm E cmjniEsE A sAeEiA nAqA qEofOsqAq AO OueOsfsufcmEO EkcmksqAlAO. Se r codificar R a mensagem fica: URAklm AR dqEpuEkcfAR lAR iEsqAR Ej nmqsuouER lEcfdqE A jEkRAoEj AeAfxm E cmjniEsE A sAeEiA nAqA qEofRsqAq AR RueRsfsufcmER EkcmksqAlAR. Se r codificar S a mensagem fica: USAklm AS dqEpuEkcfAS lAS iEsqAS Ej nmqsuouES lEcfdqE A jEkSAoEj AeAfxm E cmjniEsE A sAeEiA nAqA qEofSsqAq AS SueSsfsufcmES EkcmksqAlAS. Das trs opes acima a mais provvel a terceira, pois muitas palavras terminam em S. A quarta letra a ser analisada a letra q. Provavelmente ela a codificao da letra O ou da letra R. Se for da letra O, a mensagem fica: USAklm AS dOEpuEkcfAS lAS iEsOAS Ej nmOsuouES lEcfdOE A jEkSAoEj AeAfxm E cmjniEsE A sAeEiA nAOA OEofSsOAO AS SueSsfsufcmES EkcmksOAlAS. (observe a palavra nAOA em negrito, ela corresponde a alguma palavra em portugus?). melhor ficar com a segunda opo em que a letra q corresponde letra R: USAklm AS dREpuEkcfAS lAS iEsRAS Ej nmRsuouES lEcfdRE A jEkSAoEj AeAfxm E cmjniEsE A sAeEiA nARA REofSsRAR AS SueSsfsufcmES EkcmksRAlAS. A palavra Ej em negrito uma pista de que a letra j deve ser a codificao da letra m. Se for a mensagem se transforma em: USAklm AS dREpuEkcfAS lAS iEsRAS EM nmRsuouES lEcfdRE A MEkSAoEM AeAfxm E cmMniEsE A sAeEiA nARA REofSsRAR AS SueSsfsufcmES EkcmksRAlAS. A palavra MEkSAoEM deve ser a codificao de MENSAGEM. Logo k corresponde letra N e o corresponde letra G. Fazendo essas substituies: USANlm AS dREpuENcfAS lAS iEsRAS EM nmRsuGuES lEcfdRE A MENSAGEM AeAfxm E cmMniEsE A sAeEiA nARA REGfSsRAR AS SueSsfsufcmES ENcmNsRAlAS. Podemos reconhecer as palavras em negrito: lEcfdRE deve ser DECIFRE e REGfSsRAR deve ser REGISTRAR. Se assim for, l D, c C mesmo, f I, d F e s T. Fazendo estas substituies: USANDm AS FREpuENCIAS DAS iETRAS EM nmRTuGuES DECIFRE A MENSAGEM AeAIxm E CmMniETE A TAeEiA nARA REGISTRAR AS SueSTITuICmES ENCmNTRADAS. possvel decifrar agora? Se voc no conseguir, volte e releia o enunciado da atividade.
Se voc achou trabalhoso decifrar a mensagem da Atividade acima, saiba que existem vrios softwares que fazem esta tarefa brincando. Veja por exemplo os sites: http://demonstrations.wolfram.com/CipherEncoder/ e http://demonstrations.wolfram.com/LetterHighlightingInText/
25
Variaes: 1) Uma maneira de encriptar mensagens consiste em escolher uma palavra chave que deve ser mantida em segredo por quem as envia e por quem as recebe. Esta palavra no deve ter letras repetidas. Por exemplo, consideramos a palavra TECLADO. Para fazer a troca de letras, podemos usar a seguinte correspondncia: 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 T E C L A D O B F G H I J K M N P Q R S U V W X Y Z 2) Outra maneira para codificar mensagens feita trocando-se letras por nmeros, de acordo com a seguinte tabela: 1 2 3 4 5 1 A F L Q V 2 B G M R W 3 C H N S X 4 D I/J O T Y 5 E K P U Z
Por exemplo, a palavra LEGAL pode ser codificada como 31-15-22-1131. Este cdigo pode ser transmitido com as mos: os dedos da mo direita indicam as linhas e os da esquerda as colunas. O que dizem as mozinhas abaixo?
Construo de aparatos que ajudam a criptografar no estilo de Jlio Csar. Vamos apresentar quatro aparatos simples para agilizar a criptografia no estilo de Jlio Csar: as rguas deslizantes, o quadrado de Vigenre3, dois projetos: a lata de criptografar e o CD para criptografar. Como veremos, so todos variaes simples de um mesmo tema. Atividade: Copie, recorte e monte as rguas deslizantes, conforme as instrues na pgina seguinte.
Blaise Vigenre foi um diplomata francs, estudioso de Criptografia, que viveu no sculo XVI.
26
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
Copie e recorte os dois retngulos com as letras. Corte na linha pontilhada e encaixe a segunda fita no corte pontilhado da primeira. Veja como ficaro encaixadas:
27
As diferentes posies que a rgua deslizante ocupa quando movimentada podem ser simultaneamente visualizadas no quadrado de Vigenre:
Atividade: Utilizando a rgua deslizante ou o quadrado de Vigenre, decifre a mensagem: UHV JVUZLNBP KLJPMYHY UHKH Como voc fez para descobrir a chave? Atividade: Projetos prticos de criptografia no estilo de Jlio Csar
28
LATA DE CRIPTOGRAFAR
Codificao
CD PARA CRIPTOGRAFAR: Para confeccionar este aparato voc vai precisar de um CD que no tenha mais uso e tambm de sua caixinha. Reproduza e recorte o crculo e cole-o no CD. O CD deve ser encaixado dentro da caixinha. O quadrado com o furo no meio deve ser colocado na capa do CD. Para fazer a mquina funcionar voc deve recortar na parte detrs da caixinha dois pequenos retngulos, suficientes para introduzir os dedos e girar o CD.
Faa entalhes nestes locais que permitam colocar os dedos e girar o CD.
29
Aprendendo Criptologia de Forma Divertida Recorte este crculo e cole em um CD que j foi descartado. Encaixe o CD na posio usual dentro da caixinha.
C R C U L O P A R A C R I P T O G R A F A R
Recorte este crculo central e obtenha um quadrado com um furo no meio. Este deve ser colocado na capa do CD. Atravs deste furo pode-se ver o CD girar.
30
IDADE MDIA (476 a 1453) Na Europa, o perodo inicial desta poca tambm foi chamado de "perodo das trevas", e a criptologia no escapou desta "recesso". Muito do conhecimento sobre o assunto foi perdido porque era considerado magia negra ou bruxaria. Nesta poca, a contribuio rabe-islmica foi significativa, principalmente com o desenvolvimento da criptanlise para a substituio monoalfabtica. A denominao "Cifra", "Chiffre", "Ziffer", etc, como tambm "zero", utilizado em muitas lnguas, vem da palavra rabe "sifr", que significa "nulo". A Itlia foi a primeira a acordar, iniciando o movimento renascentista ao redor de 1300, sendo responsvel pelos primeiros grandes avanos. Veneza criou uma organizao especializada em 1452, cujo nico objetivo era lidar com a criptologia. Foram criadas trs secretarias que solucionavam e criavam cifras usadas pelo governo da poca.
Copie, recorte e monte o cubo. Olhe para uma face e veja um drago, olhe para uma aresta e veja um cavaleiro (So Jorge). Finalmente olhe para um vrtice e veja um rosto.
31
IDADE MODERNA (1453 a 1789) 1466 Leon Battista Alberti (1404-1472) conhecido como "o pai da criptologia ocidental", em parte porque desenvolveu a substituio polialfabtica. A substituio polialfabtica uma tcnica que permite que diferentes smbolos cifrados possam representar o mesmo smbolo do texto claro. Isto dificulta a interpretao do texto cifrado pela aplicao da anlise de frequncia dos smbolos. Para desenvolver esta tcnica, Alberti estudou os mtodos para quebrar cifras da poca e elaborou uma cifra que no podia ser quebrada por eles. Ele criou um disco de cifragem para simplificar o processo. Introduziu a tcnica de recifragem na criptografia. Alberti sugeriu o uso de um disco composto por dois anis concntricos: um externo, fixo, com 24 casas contendo 20 letras latinas maisculas (incluindo o Z, com U=V e excluindo H J K W Y) mais os nmeros 1, 2, 3, e 4 para o texto claro; e um interno, mvel, com as 24 letras latinas minsculas para o texto cifrado. Nestes discos, as 20 letras maisculas esto em ordem alfabtica e as 24 minsculas esto fora de ordem. Colocar as letras minsculas fora de ordem fundamental pois, caso estivessem em ordem, a cifra seria apenas uma generalizao do Cdigo de Csar. Ao que tudo indica, os cdigos inventados por Alberti no foram quebrados at os anos de 1800. Atividade: Copie, recorte e monte os discos giratrios, conforme as instrues da prxima pgina. Nos espaos vazios complete cada um deles com uma letra diferente sua escolha para que voc tenha sua maneira de criptografar.
32
DISCOS GIRATRIOS
Copie e recorte o disco maior e o disco menor. Copie e recorte tambm o pequeno trapzio do crculo menor, formando uma janelinha. Sobreponha os dois discos. Coloque um palito de dentes ou um clipe perfurando os centros dos discos para que um deles gire com relao ao outro.
Copie e recorte as letras do alfabeto abaixo, embaralhe-as e cole-as uma a uma nos espaos vazios do crculo maior.
33
1563 O fsico italiano Giambattista Della Porta (1535?-1615) foi o inventor do primeiro sistema literal de chave dupla, ou seja, a primeira cifra na qual o alfabeto cifrante muda a cada letra. Della Porta inventou seu sistema em 1563 e esta cifra foi utilizada com sucesso por mais de trs sculos.
Vejamos qual foi a inovao introduzida por Della Porta: preenchemos primeiramente uma tabela com 26 x 26 = 676 smbolos diferentes nossa escolha e em qualquer ordem. Vamos utilizar os nmeros naturais em sua ordem usual como um exemplo, mas, para dificultar smbolos a criptoanlise, devemos usar no convencionais, ordenados
aleatoriamente.
A v 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
1 27 53 79 105 131 157 183 209 235 261 287 313 339 365 391 417 443 469 495 521 547 573 599 625 651
B v
2 28 54 80 106 132 158 184 210 236 262 288 314 340 366 392 418 444 470 496 522 548 574 600 626 652
C v
3 29 55 81 107 133 159 185 211 237 263 289 315 341 367 393 419 445 471 497 523 549 575 601 627 653
D v
4 30 56 82 108 134 160 186 212 238 264 290 316 342 368 394 420 446 472 498 524 550 576 602 628 654
E v
5 31 57 83 109 135 161 187 213 239 265 291 317 343 369 395 421 447 473 499 525 551 577 603 629 655
F v
6 32 58 84 110 136 162 188 214 240 266 292 318 344 370 396 412 448 474 500 526 552 578 604 630 656
G v
7 33 59 85 111 137 163 189 215 241 267 293 319 345 371 397 423 449 475 501 527 553 579 605 631 657
H v
8 34 60 86 112 138 164 190 216 242 268 294 320 346 372 398 424 454 476 502 528 554 580 606 632 658
I v v
9 35 61 87 113 139 165 191 217 243 269 295 321 347 373 399 425 451 477 503 529 555 581 607 633 659
J v v
10 36 62 88 114 140 166 192 218 244 270 296 322 348 374 400 426 452 478 504 530 556 582 608 634 660
K v
11 37 63 89 115 141 167 193 219 245 271 297 323 349 375 401 427 453 479 505 531 557 583 609 635 661
L v
12 38 64 90 116 142 168 194 220 246 272 298 324 350 376 402 428 454 480 506 532 558 584 610 636 662
M v
13 39 65 91 117 142 169 195 221 247 273 299 325 351 377 403 429 455 481 507 533 559 585 611 637 663
N v
14 40 66 92 118 144 170 196 222 248 274 300 326 352 378 404 430 456 482 508 534 560 586 612 638 664
O v
15 41 67 93 119 145 171 197 223 249 275 301 327 353 379 405 431 457 483 509 535 561 587 613 639 665
P v
16 42 68 94 120 146 172 198 224 250 276 302 328 354 380 406 432 458 484 510 536 562 588 614 640 666
Q v
17 43 69 95 121 147 173 199 225 251 277 303 329 355 381 407 433 459 485 511 537 563 589 615 641 667
R v
18 44 70 96 122 148 174 200 226 252 278 304 330 356 382 408 434 460 486 512 538 564 590 616 642 668
S v
19 45 71 97 123 149 175 201 227 253 279 305 331 357 383 409 435 461 487 513 539 565 591 617 643 669
T v
20 46 72 98 124 150 176 201 228 254 280 306 332 358 384 410 436 462 488 514 540 566 592 618 644 670
U v
21 47 73 99 125 151 177 203 229 255 281 307 333 359 385 411 437 463 489 515 541 567 593 619 645 671
V v
22 48 74 100 126 152 178 204 230 256 282 308 334 360 386 412 438 464 490 516 542 568 594 620 646 672
W v
23 49 75 101 127 153 179 205 231 257 283 309 335 361 387 413 439 465 491 517 543 569 595 621 647 673
X v
24 50 76 102 128 154 180 206 232 258 284 310 336 362 388 414 440 466 492 518 544 570 596 622 648 674
Y v
25 51 77 103 129 155 181 207 233 259 285 311 337 363 389 415 441 467 493 519 545 571 597 623 648 675
Z v
26 52 78 104 130 156 182 208 234 260 286 312 338 364 390 416 442 468 494 520 546 572 598 624 650 676
Para criptografar, dividimos a palavra em pares de letras e procuramos o valor de cada par na tabela. Por exemplo, a palavra PATA, fica dividida como
34
PA-TA e no encontro da linha P com a coluna A temos o nmero 391 e na linha T com a coluna O temos o nmero 495. Logo PATA fica codificada como 391495. Observe que a repetio da letra A na palavra PATA no fica explcita na substituio por nmeros. Para decifrar s procurar na tabela os nmeros correspondentes e montar as palavras, lembrando que em cada par a letra da linha a primeira, seguida pela letra da coluna. Ou seja o procedimento simtrico. Desta poca datam os quadros de Giuseppe Arcimboldo (1527?-1593?); os objetos e animais escondem rostos que representam os quatro elementos da natureza: terra, fogo, ar e gua. Aprecie os recursos esteganogrficos de sua obra:
At mesmo o filsofo ingls Francis Bacon (15611626) se aventurou por cdigos criptogrficos. Na verdade ele inventou um cdigo criptoesteganogrfico bastante interessante: a partir de um texto suporte qualquer, sem codificao caracteres ligeiramente alguma, usam-se dois diferentes. Usaremos
exageradamente maisculas e minsculas, s para mostrar como funciona o mtodo. Cada grupo de 5 letras do texto suporte representa uma nica letra do texto que queremos criptografar. Para fixar as ideias, digamos que as minsculas valem 0 e as maisculas valem 1. Usamos ento um mtodo simples de substituio, trocando letras por sequncias de cinco zeros ou uns. Por exemplo, usando-se a tabela de substituio
35
A H O V
01110 D 10010 E 10000 F 10110 G 11010 K 11110 L 01001 M 00111 N 11101 R 01010 S 10100 T 00001 U 10111 Y 10101 Z 10001
a palavra GATO pode ser codificada usando-se o texto Um passarinho na gaiola: uMpAS 01011 G SArin 11000 A honaG 00001 T aioLA 00011 O
HISTRIA RECENTE (1790 a 1900) 1795 Na poca em que era secretrio de estado de George Washington, Thomas Jefferson (1743-1826), futuro presidente dos Estados Unidos, criou um mtodo simples, engenhoso e seguro de crifrar e decifrar mensagens: o cilindro cifrante. Durante a revoluo americana, Jefferson confiava cartas importantes a mensageiros que as entregavam pessoalmente. Porm, quando se tornou ministro americano para a Frana, os cdigos assumiram grande importncia na sua correspondncia porque os agentes de correio europeus abriam e liam todas as cartas que passavam pelos seus comandos. Apesar de, aparentemente, Jefferson ter abandonado o uso do cilindro cifrante em 1802, ele foi reinventado um pouco antes da Primeira Guerra Mundial e foi usado pelo exrcito americano e outros servios militares. O cilindro de Jefferson, na sua forma original, composto por 26 discos de madeira que giram livremente ao redor de um eixo central de metal. As vinte e seis letras do alfabeto so inscritas aleatoriamente na parte mais externa de cada disco de modo que, cada um deles, possua uma sequncia diferente de letras. Girando-se os discos pode-se obter as mensagens. Veremos como construir um cilindro
anlogo ao de Thomas Jefferson. H tambm um cadeado cifrante, conhecido como Cryptex, que usa o mesmo princpio (inveno de Dan Brown em O Cdigo Da Vinci).
36
(estilo Thomas Jefferson) necessrio ter dois conjuntos idnticos de crculos concntricos (com 4 crculos cada). Use os quatro crculos abaixo como modelo. Preencha os dois conjuntos de crculos de modo idntico, distribuindo como quiser as 26 letras do alfabeto em cada crculo. No exemplo, a mensagem clara LATA O texto criptografado pode ser qualquer outro alinhamento, por exemplo ISRV Os outros alinhamentos, em geral, no tm significado Quem recebe, alinha ISRV e procura nos outros alinhamentos palavras que faam sentido Para textos longos, fazemos a diviso das letras em blocos de 4.
Copie e recorte as peas da folha seguinte e com eles monte um cilindro de criptografar no estilo Jefferson.
37
38
1834 Louis Braille (1809-1852), educador francs, ficou cego aos 3 anos de idade. Interessou-se por um sistema de escrita, apresentado na escola Charles Barbier, no qual uma mensagem codificada em pontos era cunhada em papelcarto. Aos 15 anos de idade trabalhou numa adaptao, escrita com um instrumento simples. O Cdigo Braille consiste de 63 caracteres, cada um deles constitudo por 1 a 6 pontos dispostos numa matriz ou clula de seis posies. Mais tarde adaptou este sistema para a notao musical. Publicou tratados sobre seu sistema em 1829 e 1837. O Sistema Braille universalmente aceito e utilizado at os dias de hoje.
39
Louis Braille ficou cego devido a um ferimento no olho feito com um objeto pontiagudo que seu pai usava para fabricar selas de animais; o ferimento infeccionou e isto provocou tambm a perda da viso no outro olho, deixando-o com deficincia visual total. Como dissemos, o cdigo Braille baseado em um arranjo 3 x 2 de pontos, dispostos como nas pedras de um domin:
3 x2 (trs linhas e duas colunas)
Para registrar uma dada letra do alfabeto, alguns desses 6 pontos so marcados ou perfurados, de modo a se tornarem sobressalentes, para que possam ser sentidos com as pontas dos dedos das mos. Quando um ponto estiver marcado, usaremos um crculo negro e, quando no estiver, um crculo branco. Veja os exemplos:
Letra
Letra
Somente a primeira casa foi marcada: o ponto que est na primeira linha e na primeira coluna aparece em negro.
A letra k tem marcas pretas em dois pontos: o ponto da primeira linha e da primeira coluna e o ponto da terceira linha e primeira coluna.
ATIVIDADE: a) Quantos diferentes padres (disposies de pontos) podemos formar usando o sistema 3 x 2 descrito acima? b) Se quisermos codificar todas as letras minsculas, todas as letras maisculas, os algarismos: 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9, os sinais de pontuao: . (ponto final), : (dois pontos) ? (ponto de interrogao), ! (ponto de exclamao) e , (vrgula), os sinais de operaes matemticas: +, x. e , os padres obtidos nas dimenses 3 x 2 sero suficientes?
40
c) Quantos padres podemos formar se dispusermos pontos arranjados em um quadrado 2 x 2? E em um retngulo 1 x 4? Porque ser que eles no so usados? Eis aqui a maneira usual de codificar em Braille as letras minsculas e os algarismos:
a 1
b 2
c 3
d 4
e 5
f 6
g 7
h 8
i 9
j 0
Para codificar letras maisculas, usamos o smbolo: da letra que desejamos que seja a maiscula.
antes
Letra a minscula
41
Observe tambm que a mesma configurao de pontos usada ora para denotar algumas letras, ora para denotar os algarismos 1, 2, 3, 4, 5, 6, 7, 8, 9 e 0. A fim de evitar confuso, para representar os nmeros, usa-se um smbolo inicial, antecedendo as dez primeiras letras do alfabeto. Quando houver risco de confuso, para voltar novamente a usar o smbolo para significar letras, devemos anteced-las com outro smbolo inicial, indicando a restaurao, ou seja, indicando que os smbolos que viro sero novamente letras. Vejamos como so as representaes dos dez algarismos:
Smbolo restituidor para letra Simbolo para nmero
Letra a minscula
Letra b minscula
Letra c minscula
Letra d minscula
Letra e minscula
Letra f minscula
Letra g minscula
Letra h minscula
Letra i minscula
Letra j minscula
Voc deve ter notado na atividade anterior que apenas letras e nmeros no so suficientes para escrever todas as frases que usamos. Na verdade existem muitos outros smbolos que so usados em Braille; eles tambm variam de pas para pas. Veja alguns exemplos tpicos usados em portugus:
42
>
<
ndice inferior
expoente
2n a + b = b + a 2
expoente
ATIVIDADES PRTICAS COM O CDIGO BRAILLE Esta atividade tem o objetivo de simular a leitura em Braille de frases e frmulas matemticas feitas pelos deficientes visuais. Voc deve copiar e recortar as fichas e perfurar os crculos marcados em preto com um furador de papel (um clipe ou um palito tambm podem ser usados). Depois de recortadas, monte com as fichas algumas expresses matemticas para que um amigo consiga ler o que voc escreveu, mas sem que ele as olhe! Com as mos, seu amigo deve sentir as perfuraes de cada ficha e, a partir deste ponto, pode consultar a tabela para descobrir o valor da letra ou nmero correspondente que est lendo com suas mos. Mas observe: ele no pode de modo algum ver diretamente a ficha que est manuseando.
43
a 1
b 2
c 3
d 4
e 5
f 6
g 7
h 8
i 9
j 0
n >
o
(maior)
o>
<
Restituidor Letra
Maiscula
Nmero
Expoente
ndice inferior
Nas pginas seguintes esto apresentadas as fichas que devem ser manuseadas, em quantidade suficiente para a montagem de frmulas matemticas simples em Braille. Copie-as, recorte-as e perfure-as, mos obra!
44
>
45
46
maiscula
nm ero -
maiscula
nmero
nmero
nmero
nmero
o >
nmero
o >
<
<
nmero
47
EXPLORANDO CONCEITOS MATEMTICOS COM A LINGUAGEM BRAILLE Existem 26 = 64 configuraes que podem ser obtidas no cdigo de Braille usual 3 x 2. fcil descobrir que isto verdade, quando aplicamos o Princpio Multiplicativo da Contagem: h duas possibilidades para a primeira casa ou ela marcada ou no (ou pintamos de preto ou de branco) - do mesmo modo h duas possibilidades para cada uma das outras casas, o que resulta em 2 x 2 x 2 x 2 x 2 x 2 = 26 possibilidades.
2 2
O Princpio Multiplicativo da Contagem: Se uma deciso puder ser tomada de m maneiras diferentes e se, uma vez tomada esta primeira deciso, outra deciso puder ser tomada de n maneiras diferentes, ento, no total sero tomadas mxn decises.
Vale a pena explorar este exemplo com estratgias diferentes. Mtodo 1: Focando na quantidade de pontos - pintados ou no: Comeando com um s ponto, teremos s 2 possibilidades:
Com dois pontos h 4 possibilidades, pois h duas escolhas para cada uma das configuraes j vistas acima (com um ponto apenas):
J com trs pontos h 8 possibilidades (duas para cada uma das configuraes com dois pontos vistas acima):
Continuando assim, com quatro pontos teremos 16 configuraes distintas, com cinco pontos 32 configuraes e, claro, com 6 pontos chegaremos a 64 padres diferentes de pontos. Isto fcil de entender: cada configurao em um estgio anterior produz duas novas configuraes no estgio seguinte. Dentre as 64 possibilidades, temos dois casos extremos: um
48
em que nenhum dos pontos marcado e outro em que todos os seis pontos so marcados:
Em Braille, por motivos bvios, esta configurao no usada Na linguagem Braille, esta configurao tem a funo de referencial de posio, para auxiliar a indicar sinais grficos tais como a crase ou o trema. usada para indicar a letra acentuada .
Mtodo 2 Focando na quantidade pintada de pontos Com nenhum ponto marcado temos apenas uma configurao: Com apenas um ponto marcado, temos 6 possibilidades:
Todas estas configuraes tm ponto preto na casa com a seta, s est faltando uma que j foi contada, pois ela a primeira configurao do grupo anterior.
Todas estas tm ponto preto na casa com a seta, mas esto faltando duas que j foram contadas anteriormente. Todas estas tm ponto preto na casa com a seta, esto faltando trs que j foram contadas anteriormente
Resta somente esta ltima configurao que no apareceu em nenhum dos grupos anteriores.
49
Deste modo, com dois pontos pretos h 1 + 2 + 3 + 4 + 5 = 15 possibilidades. Com trs pontos marcados em negro, h 20 possibilidades. Veja:
Poderamos continuar agora exibindo todas as configuraes com 4 pontos negros (so 15 ao todo), todas com 5 pontos pretos (so 6 no total) e todas com 6 pontos negros (apenas 1), mas no faremos isto porque h um belo argumento de simetria aqui: Escolher 4 pontos para marcar com preto entre 6 pontos brancos o mesmo que escolher 2 pontos para marcar de branco entre 6 negros! De modo anlogo, o nmero de escolhas de 5 pontos para pintlos de preto dentre 6 pontos brancos o mesmo nmero de escolhas de 1 nico ponto para pintar de branco dentre 6 pontos negros. Simetricamente s h uma possibilidade em que todos os pontos esto marcados e s h uma possibilidade em que todos os pontos no esto marcados. Resumidamente, temos:
S I M E T R I A
50
Estes padres so encontrados nas combinaes, que passaremos a estudar. COMBINAES MATEMTICAS Existem situaes envolvendo contagens em que a ordem dos elementos importante e outras em que no. Para entender melhor este fato, vamos comparar os dois exemplos abaixo: 1. De quantas maneiras diferentes podemos estacionar 3 carros em 2 garagens? A resposta muito simples, se pensarmos da seguinte maneira: existem 3 possibilidades para preencher a primeira garagem, mas apenas duas para a estacionarmos na segunda; pelo Princpio Multiplicativo, o nmero total de maneira 3 x 2 = 6 possibilidades. Se A, B e C so os carros, essas 6 maneiras so as seguintes: AB, BA, AC, CA, BC e CB. 2. Quantas saladas de frutas diferentes podemos fazer usando duas das seguintes frutas: abacaxi, banana ou caqui? Procedemos como antes: primeiro escolhemos umas das trs frutas (3 possibilidades), depois a segunda e ltima fruta (2 possibilidades). Com isto teremos 3 x 2 = 6 possibilidades. Entretanto o nmero de saladas de frutas no 6 e sim 3. Porque? Se a, b e c so as frutas, essas 6 escolhas so as seguintes: ab, ba, ac, ca, bc e cb; mas uma salada de frutas feita com abacaxi e banana a mesma que uma feita com banana e abacaxi, ou seja ab = ba e de modo semelhante, ac = ca e bc = cb. O que importante observar aqui que quando duas frutas so permutadas, elas produzem a mesma salada. Neste caso a ordem de escolha das frutas no importante e o nmero correto de saladas 3 2 =3 2 O nmero 2 no denominador corresponde permutao de duas frutas. Ou seja, contamos tudo como se a ordem fosse importante e dividimos o resultado pelo nmero de permutaes de 2 elementos. Este ltimo exemplo o prottipo do que se chama em Matemtica de uma combinao simples. Observe bem o que fizemos: Aplicamos o Princpio Multiplicativo para se obter todas as possibilidades, respeitando a ordem (3 x 2 = 6). Dividimos o resultado obtido acima pelo nmero de permutaes da quantidade previamente combinada que d o tamanho de cada escolha (como combinamos fazer saladas com apenas 2 frutas, dividimos por 2! = 2, obtendo (3 x 2)/2 = 3).
No caso geral, se tivermos n objetos distintos nossa disposio e tivermos que escolher p objetos distintos dentre esses, obteremos as
51
combinaes simples de n elementos tomados p a p. claro que p deve ser menor ou igual a n. O nmero total dessa combinaes denotado por Cnp e calculado da seguinte maneira: n.(n 1)...(n ( p 1)) n! , ou, em notao fatorial: Cnp = Cnp = p !(n p )! p.( p 1).( p 2)...3.2.1 (voc sabe justificar porque vale esta ltima frmula?). No exemplo das saladas de frutas, n = 3, p = 2 e o nmero de saladas 3! 3.2! de frutas C32 = = = 3 . Vejamos mais um exemplo: 2!(3 2)! 2!1! 3. Quantos so os subconjuntos de {a, b, c, d, e} que possuem exatamente trs elementos? 5! 5.4.3! 3 = = 10 pois a ordem dos elementos A resposta C5 = 3!(5 3)! 3!2! listados em um conjunto no relevante. De fato os subconjuntos so os seguintes: {a,b,c}, {a,b,d}, {a,b,e}, {a,c,d}, {a,c,e}, {a,d,e}, {b,c,d}, {b,c,e}, {b,d,e}, {c,d,e}. AS COMBINAES E A LINGUAGEM BRAILLE Podemos analisar agora todas as possibilidades da escrita Braille em uma clula 3 x 2: Neste caso, o nmero de pontos que podemos combinar entre si n = 6. Nmero de pontos em preto p=0 p=1 p=2 p=3 p=4 p=5 p=6 Quantidade de cominaes distintas 6! 0 C6 = =1 0!(6 0)! 6! 1 C6 = =6 1!(6 1)! 6! 2 C6 = = 15 2!(6 2)! 6! 3 C6 = = 20 3!(6 3)! 6! 4 C6 = = 15 4!(6 4)! 6! 5 C6 = =6 5!(6 1)! 6! 6 C6 = =1 6!(6 6)!
52
Cnp =
2 Cn igual soma dos n-1 primeiros nmeros naturais. De fato, n! n.(n 1) 2 Cn = = = 1 + 2 + ... + (n 1) 2!(n 2)! 2 0 1 2 Cn + Cn + Cn + ... + Cnn = 2n
Para ver porque isto vlido, observe que Cnp o nmero de subconjuntos com exatamente p elementos do conjunto {1,2,...,n} e portanto 0 1 2 n Cn + Cn + Cn + ... + Cn o nmero total de subconjuntos de {1,2,...,n}. Devemos responder ento a seguinte pergunta: quantos so os subconjuntos de {1,2,...,n}? Para determinar um desses subconjuntos, olhamos para o nmero 1 e perguntamos: ele est ou no no subconjunto? Existem apenas duas respostas: sim ou no. Olhamos para o nmero 2 e repetimos a pergunta: 2 est ou no no subconjunto em considerao? Mais uma vez temos duas respostas e continuamos assim at o nmero n. No total teremos que tomar n decises e, cada uma delas, admite apenas duas possibilidades. Pelo Princpio Multiplicativo, existiro ento 2 x 2 x ... x 2 = 2n decises, e como cada deciso determina um e um s subconjunto, teremos que o nmero total de subconjuntos de {1,2,...,n} 2n. Atividade: a) Procedendo como na linguagem Braille, se ao invs de uma clula 3 x 2, tivermos uma 3 x 4, como a da figura, quantas configuraes diferentes teremos no total?
b) Em uma clula 3 x 4, quantas so as configuraes que possuem exatamente 5 pontos marcados? c) Em uma clula n x m, quantas configuraes diferentes podemos formar? d) Em uma clula n x m, quantas configuraes tm exatamente p pontos marcados?
53
1840 O Cdigo Morse Samuel Morse (1791-1872), um norteamericano, desenvolveu o cdigo que recebeu o seu nome a fim de enviar mensagens por telgrafo. Trata-se de um alfabeto cifrado em tons curtos e longos. A inveno do telgrafo alterou profundamente a criptografia e tornou imprescindvel a cifragem de mensagens.
O sistema de envio de mensagens a longa distncia usado por Morse utilizava o telgrafo (figura); seu suporte fsico usava correntes eltricas para controlar eletromans que funcionavam para emisso ou recepo de sinais. As mensagens eram enviadas usando pulsos (ou tons) eltricos curtos (ponto (.)) e longos (trao (-)) atravs de linhas telegrficas. Em 1851, uma conferncia internacional em Berlim, estabeleceu uma verso internacional que ainda est em uso at hoje. A mensagem de pedido de socorro SOS, por exemplo, bem conhecida e tem o seguinte aspecto:
54
Vamos entender como o tempo importante no envio de mensagens, estudando o que ocorre com o Cdigo Morse. ATIVIDADE: O tempo para envio de uma mensagem com o cdigo Morse dado pela seguinte tabela:
Vejamos qual o tempo total necessrio para enviar um SOS. Demora-se o tempo de envio de cada letra mais trs unidades de tempo entre cada letra.
Se pudssemos usar cdigos diferentes para as letras S e O, a fim de que o comprimento da mensagem SOS fosse mais curto, qual seria o menor comprimento possvel, utilizando esses novos cdigos? Poderamos usar
Assim um SOS teria comprimento total igual a 1 + 2 + 1 + 3 + 3 = 10 unidades de tempo (incluindo os espaos entre as letras). Por que os menores cdigos no esto associados ao S e ao O? O Cdigo Morse foi projetado para minimizar o tempo de transmisso de qualquer mensagem (em ingls), e no
55
especificamente para o SOS, ou seja, os cdigos de tamanhos mais curtos foram reservados para as letras que ocorrem com mais frequncia nesta lngua. Na verdade, Morse ao criar o sistema usou a contagem de frequncia de letras, s letras mais frequentes foram dados os cdigos com menores tempos de transmisso. Para as letras do alfabeto, usa-se no mximo quatro pontos ou traos e os cdigos podem ser constitudos somente por pontos, s por traos ou combinaes de ambos. Uma maneira de encontrar todos os cdigos possveis usar um diagrama de rvore. Comeando (comprimento pontos ou por 3), um o ponto prximo como (comprimento 1), ou um trao conjunto de cdigos possui dois traos,
mostrado ao lado. ATIVIDADE: Questo 1: Observe o tempo de transmisso para cdigos com 1, 2 ou 3 smbolos:
Complete o diagrama de rvore at o quarto galho e, para cada letra de cdigo, calcule o tempo de transmisso de cada cdigo obtido. Questo 2: Compare o tempo de transmisso com a frequncia das letras em ingls. A frequncia das letras em ingls obedece a ordem: E T A O N R I S H D L F C U M G P Y W B V K X J Q Z.
56
Os dois ltimos correspondem aos cdigos com maior comprimento, mas surpreendentemente os dois primeiros no. Apesar de sua idade, o Cdigo Morse ainda utilizado nos dias de hoje e sempre ser um meio vivel de comunicao de alta confiabilidade em condies difceis, especialmente quando outros meios falham. Ele sobrevive h mais de 150 anos e a sua longevidade deve-se forma original e eficiente com que foi criada. 1646 1716 Gottfried Wilhelm von Leibniz (1646-1716) foi um importante filsofo e matemtico alemo. Ele dizia que decifrar um pictograma parecido com resolver um problema em Cincia. Se um cientista tem apenas alguns poucos fatos acerca de um fenmeno que deseja explicar, ele pode conceber dezenas de boas teorias, da mesma maneira que um decifrador de cdigos pode tentar muitas decifraes para um texto criptografado curto; entretanto se muitos fatos devem ser explicados, o cientista trabalha como o criptgrafo que tenta decifrar um longo texto criptografado. Uma teoria bem formulada deve explicar centenas de fatos particulares e a confiana em sua validade anloga que temos quando um longo criptograma est sendo decifrado, j que muitos smbolos devem ser traduzidos simultaneamente. Leibniz inventou uma mquina de calcular mecnica, revolucionria para a sua poca. Leibniz entendeu como funcionava o sistema binrio de numerao e abriu as postas para o desenvolvimento da lgica que possibilitou a inveno dos computadores.
57
A escala binria utilizada at hoje e sua padronizao, conhecida como cdigo ASCII (American Standard Code for Information Interchange), permitiu que mquinas de diferentes fabricantes trocassem dados entre si. Caracteres imprimveis em ASCII:
Para entender como funcionam este e outros cdigos similares, vamos rever o sistema numrico usado pelos computadores: o sistema binrio de numerao. O SISTEMA BINRIO Aproveitando nossa experincia com o sistema Braille, vamos estudar agora um sistema anlogo em que as clulas possuem uma linha e seis colunas. Ele ser muito semelhante ao sistema usual da linguagem Braille 3 x 2,
58
pois existe uma correspondncia um-a-um entre as configuraes com clulas 3 x 2 e configuraes em clulas 1 x 6. Veja:
3x2
1x6
Sistemas do tipo 1 x n servem para escrever nmeros na base 2 e, assim sendo, tm muitas aplicaes na Matemtica e na Informtica, como o caso do Cdigo ASCII apresentado anteriormente. Podemos escrever qualquer nmero natural na base 2, utilizando-se para isto apenas os dgitos 0 e 1. Para compreender como isto pode ser realizado, trabalharemos, por simplicidade, com os nmeros que vo de 0 a 63. Dado um nmero qualquer (tomaremos como exemplo o nmero 41), veja como agrupar para escrever o nmero na base 2:
41 = 20 x 2 + 1
Formamos 20 pares, observe que sobra uma unidade.
41 = 10 x 4 + 1
Usamos os 20 pares anteriores para formar 10 grupos de quatro elementos cada um .
41 = 5 x 8 + 1
Usamos os 10 grupos de quatro elementos obtidos anteriormente para agrup-los em cinco grupos maiores com oito elementos cada.
41 = 2 x 16 + 1 x 8 + 1
Usamos os 5 grupos de oito elementos obtidos anteriormente para agrup-los em dois grupos maiores com dezesseis elementos cada. Note que sobra um grupo de oito elementos e tambm uma unidade.
41 = 1 x 32 + 1 x 8 + 1
Finalmente usamos os 2 grupos de dezesseis elementos que surgiram no estgio anterior para agrup-los em um nico grupo maior com trinta e dois elementos. Alm desses restam um grupo de oito e uma unidade simples.
Concluso: 41 = 1 x 25 + 0 x 24 + 1 x 23 + 0 x 22 + 0 x 21 + 1 x 20 . Esta expresso escrita abreviadamente na seguinte forma: 41 = (1 0 1 0 0 1)2 (lse: 41 um, zero, um, zero, zero, um, na base 2).
59
Os nmeros de 0 a 63 podem ser representados na base 2, de acordo com o seguinte diagrama de rvore:
60
COMO ESCONDER INFORMAO EM UMA IMAGEM DIGITAL As imagens digitais so construdas a partir de uma unidade bsica chamada pixel. Um pixel o menor elemento em um dispositivo de exibio (como por exemplo um monitor de vdeo), ao qual possivel atribuir-se uma cor. A cor de cada pixel determinada por uma sequncia definida de zeros e uns, ou seja, por um nmero binrio (em geral um nmero grande dividido em grupos menores de mesmo tamanho chamados bytes - um byte um conjunto de bits adjacentes que carrega uma informao, por exemplo um caractere). Nmeros prximos geram cores prximas. Se dois nmeros estiverem muito prximos, as cores a eles associadas podem ser imperceptveis ao olho humano e esta nossa incapacidade visual pode ser explorada para embutir em uma imagem inocente uma mensagem secreta.
61
Como fazer isto? Existem muitos mtodos, mas o mais simples deles pode ser executado atravs da alterao do dgito menos significativo, pois esta alterao a que torna o nmero original e o modificado os mais prximos possveis e, portanto, as cores a eles associados sero tambm bastante prximas. Vamos entender isto melhor; por exemplo, se quisermos modificar algum dgito do nmero 347187, qual deve ser o dgito que devemos alterar para obter um nmero prximo? Certamente o dgito 7 da casa das unidades. Vamos esconder, para exemplificar, a letra a em uma imagem, podendo da seguinte maneira: escrevemos a letra a em alguma forma binria: usando o cdigo ASCII a letra pode ser coficidada por 01100001, escolhemos uma imagem, descrita por seus bytes que compem seus pxeis, alteramos o ltimo algarismo desses bytes se eles no forem os mesmos da letra a e os mantemos se forem iguais.
letra a
Observe que nem todos os bytes foram alterados; as imagens associadas aos bytes originais e aos modificados sero muito prximas e no entanto a letra a ficou embutida na imagem.
62
Base 10
Base 2
Base 10
Base 2
Base 10
Base 2
Base 10
Base 2
0 1 2 3 4 5 6 7
8 9 10 11 12 13 14 15
16 17 18 19 20 21 22 23
24 25 26 27 28 29 30 31
a) Copie, recorte, perfure e corte as fendas dos cartes das pginas seguintes. b) Cada buraco representar o nmero 1 e cada fenda o nmero 0. Faa um mao com as cartas. Se voc colocar um palito (ou um canudo ou um clipe) por alguns dos buracos do mao, e levant-lo, algumas cartas cairo e outras ficaro presas no palito. Repetindo organizadamente este procedimento voc poder realizar vrias operaes com os nmeros binrios de 0 a 31. Veja algumas delas: Separar as cartas pares da mpares. Basta colocar o palito no primeiro furo direita e levantar. Todas os cartes com nmeros pares cairo. Com somente 5 colocaes do palito e levantamentos possvel colocar as cartas de 0 a 31 em ordem crescente. Embaralhe as cartas. Comece colocando o palito no primeiro buraco da direita (casa das unidades). Com cuidado levante o mao, deixando que as cartas caiam, mas mantendo a ordem. Coloque as cartas que caram na frente das demais
63
e repita o mesmo procedimento para todos os demais 4 buracos, sempre mantendo a ordem. Quanto terminar as cartas estaro em ordem. Pode-se localizar qualquer nmero de 0 a 31 com a colocao do palito e levantamento do mao 5 vezes. Isto se deve ao fato de que qualquer nmero natural tem representao nica na base 2. Veja como voc pode fazer para localizar a carta 23:
Coloque o palito na casa das unidades e levante o mao, descarte as que caram. A seguir coloque no buraco 21, levante e descarte as que caram. Prossiga, colocando o palito na casa 22, descarte as que caram. Coloque na casa 23, levante e descarte as que ficaram presas. Agrupe as cartas que caram nesta ltima vez e finalmente use o palito na casa 24. A carta que ficou presa a 23.
ATIVIDADE: 1. Se fizermos cartas com 6 buracos ao invs de 5, quantos nmeros diferentes obteremos? 2. Qual o nmero mnimo de buracos que teremos fazer nos cartes para representar os nmeros de 0 at 127? 3. Leia a prxima atividade O dia do aniversrio e descreva uma maneira de adivinhar o aniversrio de uma pessoa usando os cartes perfurados que voc fabricou.
64
31
=
)
2
30
=
)
2
16 + 8
+ 4 + 2 + 1
16 + 8
+ 4 + 2
29
=
1
+
1
1
)
2
28
=
1 + 4
)
2
16 + 8 + 4
16 + 8
27
=
1 +
1
2 +
1
1
)
2
26
=
1 +
1
2
)
2
16 + 8
16 + 8
25
=
1 +
1
1
)
2
24
=
)
2
16 + 8
16 + 8
23
=
1
16 +
1
16
)
2
22
=
65
1
16 +
1
16
1 + 2
)
2
+ 8 +
+ 2 + 1
21
=
1
16 +
1
16
0 +
1
1
)
2
20
=
1
16 +
1
16
)
2
19
=
1
16
0 +
1
16
1 + 1
)
2
18
=
1
16 +
1
16
0
+
)
2
+ 8
17
=
1
16 +
0
16
1
+
)
2
16
=
1
16
0
16
0
8
)
2
15
=
1
8
1
16
1
+
16
1 + 1
)
2
14
=
1
8
1
16
1
+
16
0
+
8
)
2
4 +
+ 4 + 2
13
=
1
8
1
16
0
+
1
16
)
+
12
=
1
8
1
16
0
+
)
2
+ 4 +
+ 8
+ 8
+ 4
66
11
=
1
8
0 +
1
2
1 + 1
)
2
10
=
1
8
0 +
1
2
)
2
9
=
1
8
0 +
1
1
)
2
8
=
1
8
)
2
7
=
1
4
)
2
6
=
1
4
1 + 2
)
2
+ 2 + 1
5
=
1
4
0 +
1
1
)
2
4
=
1
4
)
2
3
=
1
2
1 + 1
)
2
2
=
67
1
2
)
2
1
=
1
1
)
2
0
=
)
2
)
2
)
2
)
2
)
2
CARTES RESERVA
)
2
)
2
)
2
(
68
)
2
MGICA MATEMTICA
Para adivinhar o dia que uma pessoa nasceu
Um sim um no
dom seg ter qua qui sex sab 1 5 12 19 26 6 13 20 27 7 14 21 28 8 15 22 29 2 9 16 23 30 3 10 17 24 31 4 11 18 25
De dois em dois
dom seg ter qua qui sex sab 1 5 12 19 26 6 13 20 27 7 14 21 28 8 15 22 29 2 9 16 23 30 3 10 17 24 31 4 11 18 25 5 12 19 26
De quatro em quatro
dom seg ter qua qui sex sab 1 6 13 20 27 7 14 21 28 8 15 22 29 2 9 16 23 30 3 10 17 24 31 4 11 18 25
De oito em oito
dom seg ter qua qui sex sab 1 5 12 19 26 6 13 20 27 7 14 21 28 8 15 22 29 2 9 16 23 30 3 10 17 24 31 4 11 18 25 5 12 19 26
69
70
Podemos implementar todas as operaes que so realizadas na base 10 tambm na base 2. Existem mquinas simples que ajudam a entender como estas operaes so feitas. As fotos ao lado mostram uma mquina que efetua adies no sistema binrio com bolinhas de gude. Para ver o funcionamento da mquina consulte o site: http://www.youtube.com/watc h?v=GcDshWmhF4A&NR=1 Para ver detalhes de sua construo acesse: http://www.youtube.com/watc h?v=md0TlSjIags&feature=re lated
Continuamos agora nossa viagem histrica pelo reino da Criptologia. Sculo XX AS GRANDES GUERRAS MUNDIAIS Voc j pensou nisto? A Primeira Guerra Mundial foi guerra dos qumicos gs mostarda e o cloro. A Segunda Guerra Mundial foi guerra dos fsicos bomba atmica. A Terceira Guerra Mundial seria a guerra dos matemticos? controle sobre a informao.
Criptografia eletro-mecnica
Durante a Primeira e Segunda Guerras Mundiais proliferaram artefatos mecnicos construdos especialmente para o envio de mensagens secretas. A mquina Enigma foi um equipamento especialmente projetado para cifrar mensagens, constituindo-se um dos segredos mais bem guardados na
71
Segunda Grande Guerra. Ela era usada pelos alemes para proteger as comunicaes entre o comando e as embarcaes navais.
72
Para tornar ainda mais difcil, diferentes partes da mquina podem ser configuradas de diferentes maneiras. A menos que se saiba a configurao inicial da mquina, no se pode, em um tempo curto, decifrar as mensagens geradas por ela. Dentro da mquina Enigma h trs discos com cifras; estes discos so chamados de rotores e eles podem ser retirados e trocados. Cada rotor tem as letras de A a Z, com diferentes sistemas internos de fiao. A marinha alem dispunha de cinco rotores que o operador poderia escolher para serem colocados no espao interno da mquina, previsto para trs.
ATIVIDADE: Enigma?
posicionar cinco rotores nas trs diferentes posies da mquina b) Cada rotor pode ser posicionado inicialmente em 26 posies, uma para cada letra do alfabeto. Com trs rotores, quantas so as possibilidades de posicionamento inicial? Os rotores so conectados entre si. Cada vez que uma letra digitada, o rotor do canto direito gira em uma posio. O rotor do meio gira uma posio aps o primeiro rotor passar pelas 26 letras. Da mesma forma, o rotor da esquerda anda uma posio aps o rotor do meio passar pelas suas 26 posies; o sistema aproximadamente similar ao mecanismo de contagem de quilmetros de um automvel (hodmetro), exceto que o giro do rotor passa por vinte e seis posies em vez de dez. Depois de resolver a atividade acima, fcil concluir que existem
possibilidades para configurar inicialmente os rotores da mquina. Isto d 1054560 maneiras diferentes. Portanto, existem mais de um milho de
73
configuraes possveis para a posio inicial da mquina - mas ela ainda mais complicada! Alm das disposies mecnicas dos rotores, h as conexes eltricas (iguais aos centros telefnicos antigos). Na frente da mquina h uma placa de conexes de cabos eltricos. Ela usada para embaralhar ainda mais as mensagens e aumentar o nmero de configuraes iniciais.
Usando cabos com plugues nas extremidades, pode-se conectar pares de letras. Se, por exemplo, conectarmos A a B ento, ao digitar a letra A, a corrente eltrica segue o caminho associado letra B, e vice-versa. Usando-se apenas um cabo, quantas diferentes conexes podemos formar? A resposta S25 = 25 + 24 + 23 + 22 + ...+ 2 + 1 = (25.26)/2 = 325 maneiras. Isto porque colocando-se um plug em A, h 25 possibilidades de conexes com as outras letras. Colocando-se em B, h 24 possibilidades pois a conexo AB a mesma que a BA, colocando-se em C, h 23 outras conexes diferentes e assim sucessivamente at a ltima conexo YZ.
74
ATIVIDADE: Com a placa de conexes simplificada da figura ao lado, quantas ligaes diferentes podemos fazer ao utilizar: a) um cabo apenas b) dois cabos c) trs cabos d) quatro cabos?
A atividade acima mostra o quo complicado pode ser, mesmo com apenas 6 letras, encontrar o nmero total de conexes. Na verdade, a frmula para o nmero de maneiras de escolher m pares (no ordenados) dentre n objetos
De fato, comeamos primeiro a selecionar 2m dos n itens, respeitando a ordem. Ao escolher o primeiro item, temos n opes. Ao escolher o segundo item, temos n 1 opes ...ao escolher o 2m-simo item, temos (n 2m) + 1 opes. Assim, no total temos n(n-1)(n-2)(n-2m+1) escolhas ordenadas. Isto pode ser escrito como
Infelizmente, algumas dessas combinaes de m pares de n elementos so as mesmas, j que no nos interessam pares ordenados e nem a localizao de um par na escolha feita. Precisamos descontar esta contagem excessiva. Vamos aos descontos: os m pares podem ser escolhidos em qualquer ordem, assim temos m opes para o primeiro par, m 1 opes para o segundo par e assim por diante at que haja 1 opo para o ltimo par. Isto d m(m-1)21 maneiras. Portanto, h m! maneiras de organizar os m pares. Alm disso, a posio de um elemento dentro de um par no
75
importante e o nmero de descontos deve ser multiplicado por 2 para cada um dos m pares. Isto o mesmo que descontar por 2m. No total teremos ento que um conjunto de m pares tem m! 2m combinaes que podem ser identificadas, j que a ordem no levada em conta. Precisamos dividir o nmero de maneiras de escolher 2m itens por este valor porque s precisamos contar uma vez cada uma das m! 2 combinaes equivalentes. Nosso nmero final de maneiras de escolher m pares dentre n elementos portanto:
m
Exemplo: De quantas maneiras podemos escolher 2 pares dentre 6 objetos? Soluo: Aqui, n = 6 e m = 2, assim o nmero de maneiras
(e isto o que voc deve ter obtido na atividade anterior, tem b). Verifique para os outros itens. O que acontece com 4 cabos?). Exemplo: Quantas maneiras existem de escolher 10 pares de 26 letras? Soluo: n = 26, m = 10, ento a partir da frmula o nmero de maneiras
Finalmente podemos calcular o nmero aproximado de configuraes dos circuitos eltricos da mquina Enigma de trs rotores; o nmero
76
O processo de decifrao da mquina Enigma O processo de decifrao extremamente simples, desde que o receptor da mensagem saiba como a mquina Enigma foi configurada quando a mensagem foi cifrada. Um soldado alemo ao receber uma mensagem cifrada tinha apenas que digitar as letras cifradas em sua prpria mquina. Se sua mquina tivesse configurada exatamente da mesma forma como a do remetente da mensagem, as letras que apareceriam no painel de lmpadas formariam o texto original. desta forma que funciona o algoritmo ou mtodo de criptografia da mquina Enigma. A chave saber como a mquina foi inicialmente configurada. Como vimos, este tipo de criptografia conhecido como criptografia simtrica porque a operao de decifrar inversa operao de cifrar. A chave de decodificao tambm a mesma chave de codificao. Isto significa que se o inimigo souber o seu mtodo de encriptao (e durante a II Guerra Mundial, os aliados sabiam que os alemes estavam usando a Enigma), saberia decifrar as mensagens. A chave deve ser mantida em segredo. A fim de tornar o mais difcil possvel para os aliados descobrirem a chave da Enigma, os alemes alteravam a chave a cada dia, reconfigurando suas mquinas todas as noites, meia-noite. Os operadores de mquinas de codificao recebiam a cada ms uma folha com as chaves, com as informaes de como configurar suas mquinas em cada dia do ms. Um evidente risco de segurana havia com este sistema, pois bastava que os aliados interceptassem as folhas com as chaves que eles seriam capazes de ler as mensagens da Enigma. Por esta razo, as folhas com as chaves eram
77
extremamente bem guardadas e impressas com tinta solvel. Se elas fossem capturadas pelos Aliados, os soldados alemes mergulhavam as folhas na gua, limpando todas as informaes. Os alemes acreditavam que a segurana da Enigma residia no fato de que era impossvel calcular rapidamente a chave dentre bilhes e bilhes de possibilidades, alteradas dia a dia. Enquanto os aliados no se apossassem da folha com as chaves, eles achavam que a sua comunicao permaneceria segura. Eles no contavam com a inteligncia e astcia de Alan Turing e sua equipe que por volta de 1940 construram o primeiro computador operacional para o servio de inteligncia britnico - uma gigantesca mquina que utilizava tecnologia de rels, feito especificamente para decifrar mensagens cifradas pela mquina Enigma. Na verdade a histria toda comeou alguns anos antes. Por volta de 1930 os cientistas poloneses comearam secretamente a quebrar o cdigo da Enigma e, pouco antes da Segunda Guerra comear, eles passaram estas informaes para os governos da Frana e da Inglaterra. Durante a Segunda Guerra, os submarinos alemes patrulhavam o Oceano Atlntico e eram o terror dos navios ingleses e americanos. Como vimos, para se comunicarem eles faziam o seguinte: os rotores e conexes da mquina Enigma eram mudados de acordo com o dia, seguindo um livro de cdigos, a mensagem era ento datilografada usando o teclado inferior da mquina. Cada letra datilografada fazia iluminar uma outra letra do teclado superior. A mensagem codificada era enviada ento por rdio usando cdigo Morse. Estas mensagens eram interceptadas em certas estaes de escuta inglesas. Nestas estaes trabalhavam equipes de operadores 24 horas por dia, que ouviam e listavam as mensagens, transformando o cdigo Morse em letras.
78
Se apenas uma letra fosse decodificada errada, todo o trabalho de decifrao daquela mensagem estaria perdido. Estas estaes recebiam milhares de mensagens todos os dias. As mensagens interceptadas eram encaminhadas para uma central em Bletchley Park (na foto - localizada a 75 km de Londres), onde trabalhavam pessoas escolhidas inteligentes entre da um grupo as de mais O especialmente Inglaterra.
trabalho era liderado por Alan Turing, que, como vimos, ajudou a arquitetar um dos primeiros computadores, usados para a quebra de cdigos secretos. Esta central chegou a trabalhar com 7 mil pessoas, entre cientistas, operadores de mquinas e alimentadores de dados. Estas pessoas deviam manter segredo de suas atividades e trabalhavam em condies muito difceis. A central de Bletchley Park recebia aproximadamente 3.000 mensagens codificadas a cada dia das estaes de escuta. A nica maneira de se quebrar o cdigo do Enigma era comparar diferentes mensagens com outras para saber como os alemes tinham arranjado os rotores e conexes no dia em que foram enviadas. Deveriam descobrir em apenas duas horas qual das 158.000.000.000.000.000.000 possibilidades foi usada. Como algumas mensagens comeavam com as mesmas palavras (por exemplo descrevendo as condies do tempo), surgiram pistas de como o resto da mensagem estava codificado. Utilizando mquinas eletro-mecnicas eles puderam decifrar algumas mensagens em menos de uma hora, mas quando os alemes passaram a usar mquinas Enigma com quatro rotores, o tempo necessrio para decifrar mensagens subiu para dez meses. Em 9 de maio de 1941 os aliados capturaram um submarino alemo e conseguiram apoderar-se de manuais de navegao e livros de cdigos e sinais. Estes livros continham os cdigos navais da mquina Enigma; para que os alemes no notassem imediatamente o conhecimento de seus cdigos foi desenvolvida toda uma operao sigilosa envolvendo os que participaram da captura do submarino alemo. Cada uma das pginas do livro
79
de cdigos foi fotografada e analisada pela equipe de pesquisadores do Bletchley Park, como um segredo de estado. Nesta poca eles j podiam contar com um computador chamado Colossus (foto), projetado especialmente para decifrar mensagens secretas. Era um computador enorme que podia ler 5.000 letras por segundo atravs de um sistema fotoeltrico e todas as possveis combinaes eram geradas de mensagens com as codificadas mensagens do comparadas pelas
chaves
criptogrficas
Colossus, para revelar a configurao da mquina usada pelos alemes. Com este auxlio os ingleses conseguiram decifrar cdigos gerados por mquinas Enigma com 12 rotores. Em muitas aes a descoberta dos cdigos alemes auxiliou na vitria dos aliados. Inclusive no dia D pode-se prever de antemo o tamanho e a localizao das foras alems na Normandia. O uso de mquinas durante a Segunda Grande Guerra alavancou o desenvolvimento de computadores muito mais poderosos que o Colossus e a criao de cdigos muito mais complicados que o da mquina Enigma. Surgia assim a Era da Informtica. Para ver detalhadamente como a Enigma funcionava, acesse o site www.pbs.org/wgbh/nova/decoding/enigma.html. H tambm um filme intitulado Enigma, dirigido por Michael Apted que mostra a trama que envolveu a descoberta da decifrao da mquina alem. Para compreender melhor o funcionamento da mquina Enigma, apresentaremos aspecto externo. a seguir uma verso simulada, feita com papel. Apresentaremos tambm uma rplica em papel da mquina para visualizar seu
80
Configurao Inicial: Escolha a ordem dos rotores, a seguir escolha a letra inicial de cada rotor e coloque-a na primeira linha da mquina, deslizando o rotor para cima. Operao: Comece com a entrada na coluna mais direita e caminhe para a esquerda at o Refletor, retorne ento para a direita at encontrar a sada. 1. Se aparecer a seta, mova o rotor e seu vizinho da esquerda uma posio para cima. O rotor da direita sempre deve ser movido uma posio antes que cada letra seja codificada. 2. Localize a letra que voc quer codificar na coluna da Entrada. 3. Veja a letra adjacente na coluna da direita do rotor da direita. Localize-a na coluna da esquerda deste mesmo rotor. 4. Passe para o rotor central e repita o processo. 5. Passe para o rotor da esquerda e repita o processo. 6. Observe qual letra aparece no Refletor e procure ainda no Refletor outra letra igual que voc encontrou. 7. Veja qual a letra adjacente na coluna da esquerda do rotor da esquerda. Localize-a na coluna da direita deste mesmo rotor. 8. Passe para o rotor central e repita. 9. Passe para o rotor da direita e repita. 10. Observe qual a letra correspondente na coluna da Sada. Esta ser a letra codificada. 11. Repita para as demais letras da mensagem.
No exemplo descrito pelas setas cinzas usamos a ordem dos rotores I-II-III, as letras iniciais MCK e verificamos que a letra E codificada pela letra Q.
Estas trs faixas devem ser recortadas e colocadas sobre o corpo da mquina
81
Como operar com a mquina Enigma de papel: Como vimos anteriormente, a operao da mquina Enigma muito simples: quando uma letra do teclado pressionada, um contato mecnico feito, permitindo que uma corrente eltrica chegue ao rotor posicionado no lado direito; este sinal passa ento pelos trs rotores, da direita para a esquerda. As ligaes de fios dentro dos rotores produzem uma permutao das 26 letras do alfabeto. Depois da corrente passar da esquerda para a direita por dentro dos rotores, ela refletida, atravs de uma permutao fixa e retorna novamente pelos rotores, agora da esquerda para a direita. Os 26 contatos so conectados a pequenas lmpadas que iluminam a letra codificada em um painel superior ao teclado da mquina, assim que a tecla da letra original deixa de ser pressionada. O rotor do lado direito roda uma posio quando uma nova tecla pressionada, alterando deste modo a permutao das letras do alfabeto a cada apertar de tecla. Os outros rotores tambm giram, comandados pelo giro do primeiro rotor, como veremos em breve. A mquina Enigma de papel formada pelos seguintes componentes:
corpo da mquina, onde sero inseridos os trs rotores trs faixas de papel que representam os rotores instrues
Os contatos entre os rotores so indicados por letras, esquerda e direita de cada faixa de papel. As conexes do refletor esto marcadas no corpo da mquina na coluna correspondente. As indicaes das letras atuais dos rotores aparecem na primeira linha do corpo da mquina, na casa em cinza, elas serevm para indicar as posies iniciais dos rotores. As letras do teclado e as letras que so iluminadas no painel de sada, isto , as entradas e sadas da mquina esto na coluna Entrada/Sada. A montagem da mquina muito simples; basta cortar as trs faixas de papel que simulam os rotores e coloc-las sobre o corpo da mquina, na ordem desejada.
82
Para operar a mquina, vamos ilustrar com um exemplo, codificando a letra E a partir de uma configurao inicial que descreveremos abaixo:
83
Veja o que ocorre para codificar a letra E, com a configurao inicial (I em M, II C e III em K): comeamos colocando a letra E na entrada, subimos o rotor III uma casa e a letra E da entrada fica emparelhada com outra letra E do rotor III (na coluna da esquerda deste mesmo rotor), procure a letra E na coluna da esquerda, esta letra est associada letra Y do rotor do meio, procure Y na coluna da esquerda do rotor do meio, ela est emparelhada com a letra V do rotor da esquerda, procure V na coluna da esquerda do rotor I e veja que ele est emparelhado com a letra J no refletor. Inicie o caminho inverso: J do rotor da esquerda associa-se a P do rotor do meio, que se associa a D do rotor da direita e que finalmente produz Q como sada. Assim a letra E fica codificada pela letra Q. Para codificar outras letras, proceda da mesma maneira, no se esquecendo quando encontrar uma seta, movimente simultaneamente o rotor e seu vizinho da esquerda uma casa para cima. Para decifrar uma mensagem basta colocar os rotores nas posies e letras iniciais com que foram codificados e proceder exatamente como se faz na codificao, seguindo o caminho inverso nos rotores, pois, como vimos, as chaves da mquina Enigma so simtricas. A seguir apresentamos uma rplica em papel da mquina Enigma. As instrues de montagem esto no site http://paperreplika.com/index.php?option=com_content&view=article&id=527:german-m4naval-enigma-machine&catid=38&Itemid=200920
84
85
86
87
A mquina de Lorenz modelo SZ 42 (Lorenz era o nome do fabricante) possua 12 rotores que eram usados para embaralhar as letras de uma mensagem. Para criptografar mensagens, a mquina operava da seguinte maneira:
As letras da mensagem eram transformadas em nmeros binrios. Cada um desses nmeros binrios era somado, atravs da aritmtica binria, a outros nmeros produzidos pela mquina, obtidos pela rotao das engrenagens. A mensagem criptografada era transformada em pulsos eltricos e enviada como uma mensagem telegrfica.
88
O procedimento para decifrar a mensagem era praticamente o mesmo que o descrito acima, apenas invertendo-se os passos. Vejamos isto com mais detalhes: Transformando letras em nmeros: Cada letra era transformada em um nmero binrio de cinco algarismos, totalizando 25 = 32 caracteres diferentes, de acordo com a seguinte tabela:
A H O V 9 11000 00101 00011 01111 00100 B I P W 8 10011 01100 01101 11001 11111 C J Q X + 01110 11010 11101 10111 11011 D K R Y 4 10010 11110 01010 10101 01000 E L S Z 3 10000 01001 10100 10001 00010 F M T / 10110 00111 00001 00000 G N U 01011 00110 11100
Observe que, alm das 26 letras usuais, seis outros smbolos eram utilizados ou como sinais de pontuao ou para controlar a impresso. O significado desses ltimos seis smbolos no o usual. Por exemplo, o algarismo 9 na verdade era usado para separar palavras (espao em branco) e o smbolo + no denota a adio. Se apenas esta codificao fosse feita, o cdigo seria facilmente quebrado pelo mtodo do estudo da frequncia das letras, pois seria um cdigo de Csar. Para evitar isto, quando uma letra era introduzida na mquina, os rotores giravam e doze novos nmeros eram produzidos. Esses nmeros eram somados ao nmero associado letra e uma nova letra era produzida. A aritmtica desta adio, entretanto, no a usual; trata-se da adio binria: 0 + 0 = 0, 0 + 1 = 1, 1 + 0 = 1 e 1 + 1 = 0 Vejamos trs exemplos: 1. Codificando a letra P com a letra chave M:
P = 01101 (letra original)
Os rotores giram e produzem, por exemplo, o nmero 00111, que corresponde letra M.
89
A letra P se transforma na letra R (pois P + M = 01101 + 00111 = 01010 = R) 2. Codificando uma letra com ela mesma: A + A = 11000 + 11000 = 00000 = /, B + B = 10011 + 10011 = 00000 = /. . . . Z + Z = 10001 + 10001 = 00000 = /. Observe que o resultado sempre o mesmo! Isto ser explorado mais adiante para ajudar a quebrar o cdigo da Mquina de Lorenz. 3. Codificando a palavra MASSA utilizando-se a chave WXYZA Texto da MASSA mensagem Chave WXYZA Mensagem KVTH/ criptografada
00111 11001 11110 11000 10111 01111 10100 10101 00001 10100 10001 00101 11000 11000 00000
Como decifrar mensagens: A adio binria possui ela mesma como inversa, isto , se Texto da mensagem + Chave = Mensagem criptografada ento Mensagem criptografada + Chave = Texto da mensagem Vejamos isto nos trs exemplos anteriores: 1. Como P + M = 01101 + 00111 = 01010 = R, ento R + M = 01010 + 00111 = 01101 = P. 2. Como A + A = 11000 + 11000 = 00000 = /, ento A + / = 11000 + 00000 = 11000 = A. Analogamente para a repetio das demais letras do alfabeto. 3. Como MASSA + WXYZA = KVTH/, ento KVTH/ + WXYZA = MASSA. De fato, Mensagem KVTH/ criptografada Chave WXYZA Texto da MASSA mensagem
11110 11001 00111 01111 10111 11000 00001 10101 10100 00101 10001 10100 00000 11000 11000
90
Para facilitar a tarefa de crifrar e decifrar, usamos a tabela abaixo com todas as 32 x 32 = 1024 possibilidades:
Observe que esta matriz simtrica devido comutatividade da adio binria e tambm que na sua diagonal principal somente o smbolo / aparece. Apresentaremos mais adiante um cilindro de criptografar que torna prtica a consulta a esta tabela.
A Mquina de Lorenz com apenas duas engrenagens Para entender como funciona a Mquina de Lorenz, vamos construir um modelo simplificado constitudo de apenas um rotor, formado por duas engrenagens, uma grande (G) com as 14 primeiras letras do alfabeto e outra pequena (P) com quatro letras: dois As e dois Bs. Veja a figura:
91
I 9 J 10 K
H 8 7
G F 6
Engrenagem G
11 12 13 14 N 1 A 2 B 3 C 4 5
D A 1
A 2 3 B 4 B
Engrenagem P
+A+B chave
As engrenagens giram a cada letra que inserida na mquina e o resultado a soma binria da letra que foi inserida com a soma das letras que aparecem na engrenagem G e na engrenagem P. No caso ilustrado na figura, a letra original deve ser somada com A + B, resultando na letra criptografada. Para criptografar uma nova letra, as engrenagens giram uma posio (G no sentido horrio e P no sentido contrrio), e os mostradores da mquina exibem as letras B em G e A em P . Deste modo B + A deve ser somado segunda letra inserida. Para a terceira letra, novamente as engrenagens giram uma posio e assim sucessivamente at todas as letras terminarem. Exemplo: Com a mquina na posio inicial G = 1, P = 4 (como na figura acima), podemos codificar a palavra SALA (consulte a tabela acima ou utilize o cilindro de Lorenz que aparecer nas atividades prticas). S+A+B=S+G=8 A+B+A=A+G=B L+C+A=L+F=8 A+D+B=A+T=W Ou seja, SALA se transforma em 8B8W. Observe que o smbolo 8 aparece duas vezes, mas criptografando letras diferentes; por isso o mtodo da
92
contagem das frequncias das letras usado para quebrar cdigos no estilo de Jlio Csar no funciona com mquinas de Lorenz. Mas esta repetio no vai causar dificuldades na decifrao da mensagem? No, pois a operao de soma binria auto-invertvel; veja: 8+A+B=8+G=S B+B+A=B+G=A 8+C+A=8+F=L W+D+B=W+T=A Exemplo: Com a mquina na posio inicial G = 5, P = 2 (como na figura abaixo), codifique a palavra SALA DE ESTAR (Lembre-se que o espao em branco deve ser codificado como 9)
M 13 N 14 A 10 L 12 11 J K
Engrenagem G
1 2 3 4 D 5 E 6 F 7 G 8 9
H B 3
B 4 1 A 2 A
Engrenagem P
+E+A S+E+A=S+4 A+F+B=A+H L+G+B=L+A A+H+A=A+Q 9+I+A= 9 +S D+J+B= D+L E+K+B= E+P 9+L+A=9+Z E+M+A=E+8 S+N+B=S+Y T+A+B=T+G A+B+A=A+G R+C+A=R+F
93
muito fcil decifrar uma mensagem se soubermos quais foram as posies iniciais das engrenagens G e P. No nosso modelo simplificado existem apenas 14 x 4 = 56 possibilidades, mas na mquina de Lorenz verdadeira o nmero de possibilidades enorme. Como fazer ento para descobrir quais posies iniciais de G e P so as corretas, sem testar todas as possibilidades? Um mtodo para quebrar o cdigo da Mquina de Lorenz: Observando uma mensagem criptografada, possvel traar pistas que nos permitem chegar s chaves (isto s posies iniciais de G e P) da Mquina de Lorenz. Usamos para isto uma anlise probabilstica, a qual permite descobrir as chaves com uma boa margem de certeza, desde que a mensagem seja suficientemente longa. Esta anlise baseada na observao de que a maioria das mensagens alems continha muitos pares de letras repetidas (por exemplo, espaos duplos entre as palavras). Vejamos um exemplo: a mensagem 9999A99ESFINGE99DISSE99DECIFRA99ME99OU99TE99DEVORO9999 ser denotada pela letra M. Vamos assumir que as posies iniciais das engrenagens sejam: G = 7 e P = 3.
A 1 B 2 C 12 N 14 13 L M
Engrenagem G
3 4 5 6 F 7 G 8 H 9 I 11
10
J B 4
A 1 2 A 3 B
Engrenagem P
94
+G+B
que ser denotada pela letra C. Esta mensagem, assim como a original, tem 54 caracteres. Suponhamos agora que as posies iniciais das engrenagens (as chaves) no sejam conhecidas e que s tenhamos em mos a mensagem criptografada C. Ser possvel decifrar a mensagem? Podemos, a partir dela, descobrir as chaves, isto , as posies iniciais de G e P ? O mtodo a seguir permitir tentativamente descobrir essas chaves, com base no estudo de probabilidades, sem recorrer listagem completa de todas as possibilidades. Teste: a) Primeiramente transformamos a mensagem criptografada C em uma mensagem modificada, denotada por |C|, obtida somando-se o primeiro ao segundo caractere de C, a seguir o segundo com o terceiro e assim por diante at terminar a todos os componentes da mensagem. No exemplo que estamos acompanhando
C = UDENYK+C8FJIFYXWPHDH9Z9WPV9ADCENRR+J4UDCBYXWPWLDKF9VWH
+ + ...
...
++
95
e a mensagem modificada : |C| = (U+D)(D+E)(E+N)(N+Y)(Y+K)(K++)(++C)(C+8)(8+F)(F+J)(J+I)(I+F)(F+Y)(Y+X)(X+W) (W+P)(P+H)(H+D)(D+H)(H+9)(9+Z)(Z+9)(9+W)(W+P)(P+V)(V+9)(9+A)(A+D)(D+C) (C+E)(E+N)(N+R)(R+R)(R++)(++J)(J+4)(4+U)(U+D)(D+C)(C+B)(B+Y)(Y+X)(X+W) (W+P) (P+W)(W+L)(L+D)(D+K)(K+F)(F+9)(9+V)(V+W)(W+H) = |C| = C3FBGHYZLIFJO3C S4XXTYYQS3GURU KFI/ZTDSCUQN3CSSE+I4DGFU
Observe que |C| tem 53 caracteres, um a menos que C. (No confundir o smbolo + de operao, com o mesmo smbolo usado na criptografia). b) Adicionamos |C| com |Gi |, i = 1,...,14 e contamos o nmero de / em cada uma dessas 14 mensagens. Aquela que apresentar o maior nmero de / provavelmente ser a que fornecer a posio inicial i = i0 da engrenagem G. Para cada uma das 14 configuraes diferentes da engrenagem G, temos:
G1 = ABCDEFGHIJKLMNA... |G1| = GQU3NQCLF9XCTK... G2 = BCDEFGHIJKLMNAB... |G2| = QU3NQCLF9XCTKG... G3 = CDEFGHIJKLMNABC... |G3| = U3NQCLF9XCTKGQ... G4 = DEFGHIJKLMNABCD... |G4| = 3NQCLF9XCTKGQU... G5 = EFGHIJKLMNABCDE... |G5| = NQCLF9XCTKGQU3... G6 = FGHIJKLMNABCDEF... |G6| = QCLF9XCTKGQU3N... G7 = GHIJKLMNABCDEFG... |G7| = CLF9XCTKGQU3NQ... G8 = HIJKLMNABCDEFGH... |G8| = LF9XCTKGQU3NQC... G9 = IJKLMNABCDEFGHI... |G9| = F9XCTKGQU3NQCL... G10 = JKLMNABCDEFGHIJ... |G10| = 9XCTKGQU3NQCLF... G11 = KLMNABCDEFGHIJK... |G11| = XCTKGQU3NQCLF9... G12 = LMNABCDEFGHIJKL... |G12| = CTKGQU3NQCLF9X... G13 = MNABCDEFGHIJKLM... |G13| = TKGQU3NQCLF9XC... G14 = NABCDEFGHIJKLMN... |G14| = KGQU3NQCLF9XCT...
e adicionamos |C| com |Gi|, i = 1,...,14. Na verdade estas somas no precisam ser realizadas efetivamente; o que nos interessa o nmero de / em cada caso e isto pode ser obtido observando se os caracteres de cada fator so iguais.
|C| + |G1| = (C3FBGHYZLIFJO3CS4XXTYYQS3GURUKFI/ZTDSCUQ N3CSSE+I4DGFU) + (GQU3NQCLF9XCTKGQU3NQCLF9XCTKGQU3NQCLF9XC TKGQU3NQCLF9X)
96
Aprendendo Criptologia de Forma Divertida (no aparecem caracteres repetidos ocupando a mesma posio nos fatores; portanto no resultado nenhum / aparecer) |C| + |G2| = (C3FBGHYZLIFJO3CS4XXTYYQS3GURUKFI/ZTDSCUQN3CSSE+I4DGFU) +
(QU3NQCLF9XCTKGQU3NQCLF9XCTKGQU3NQCLF9XCTKGQU3NQCLF9XC)
(nenhum /) |C| + |G3| = (C3FBGHYZLIFJO3CS4XXTYYQS3GURUKFI/ZTDSCUQN3CSSE+I4DGFU) + (U3NQCLF9XCTKGQU3NQCLF9XCTKGQU3NQCLF9XCTKGQU3NQCLF9XCT) (trs / em negrito as letras repetidas na mesma posio) |C| + |G4| = (C3FBGHYZLIFJO3CS4XXTYYQS3GURUKFI/ZTDSCUQN3CSSE+I4DGFU) + (3NQCLF9XCTKGQU3NQCLF9XCTKGQU3NQCLF9XCTKGQU3NQCLF9XCTK) (apenas um /) |C| + |G5| = (C3FBGHYZLIFJO3CS4XXTYYQS3GURUKFI/ZTDSCUQN3CSSE+I4DGFU) + (NQCLF9XCTKGQU3NQCLF9XCTKGQU3NQCLF9XCTKGQU3NQCLF9XCTKG) (trs /) |C| + |G6| = (C3FBGHYZLIFJO3CS4XXTYYQS3GURUKFI/ZTDSCUQN3CSSE+I4DGFU) + (QCLF9XCTKGQU3NQCLF9XCTKGQU3NQCLF9XCTKGQU3NQCLF9XCTKGQ) (nenhum /) |C| + |G7| = (C3FBGHYZLIFJO3CS4XXTYYQS3GURUKFI/ZTDSCUQN3CSSE+I4DGFU) + (CLF9XCTKGQU3NQCLF9XCTKGQU3NQCLF9XCTKGQU3NQCLF9XCTKGQU) = /G/XUGSV3ZRAH8/QKB/VSGFLKLJXDX/4X8/I8B/8/8/Q3SI3LI/G/ (11 caracteres /, neste caso valeu a pena fazer a soma, pois trata-se da posio correta) |C| + |G8| = (C3FBGHYZLIFJO3CS4XXTYYQS3GURUKFI/ZTDSCUQN3CSSE+I4DGFU) + (LF9XCTKGQU3NQCLF9XCTKGQU3NQCLF9XCTKGQU3NQCLF9XCTKGQU3) (trs /) |C| + |G9| = (C3FBGHYZLIFJO3CS4XXTYYQS3GURUKFI/ZTDSCUQN3CSSE+I4DGFU) + (F9XCTKGQU3NQCLF9XCTKGQU3NQCLF9XCTKGQU3NQCLF9XCTKGQU3N) (um /) |C| + |G10| = (C3FBGHYZLIFJO3CS4XXTYYQS3GURUKFI/ZTDSCUQN3CSSE+I4DGFU) + (9XCTKGQU3NQCLF9XCTKGQU3NQCLF9XCTKGQU3NQCLF9XCTKGQU3NQ) (nenhum /) |C| + |G11| = (C3FBGHYZLIFJO3CS4XXTYYQS3GURUKFI/ZTDSCUQN3CSSE+I4DGFU) + (XCTKGQU3NQCLF9XCTKGQU3NQCLF9XCTKGQU3NQCLF9XCTKGQU3NQC) (um /) |C| + |G12| = (C3FBGHYZLIFJO3CS4XXTYYQS3GURUKFI/ZTDSCUQN3CSSE+I4DGFU) + (CTKGQU3NQCLF9XCTKGQU3NQCLF9XCTKGQU3NQCLF9XCTKGQU3NQCL) (cinco /) |C| + |G13| = (C3FBGHYZLIFJO3CS4XXTYYQS3GURUKFI/ZTDSCUQN3CSSE+I4DGFU) + (TKGQU3NQCLF9XCTKGQU3NQCLF9XCTKGQU3NQCLF9XCTKGQU3NQCLF) (dois /) |C| + |G14| = (C3FBGHYZLIFJO3CS4XXTYYQS3GURUKFI/ZTDSCUQN3CSSE+I4DGFU) + (KGQU3NQCLF9XCTKGQU3NQCLF9XCTKGQU3NQCLF9XCTKGQU3NQCLF9) (nenhum /)
97
Aps contar o nmero de / em cada uma das mensagens acima, selecionamos aquela que apresentar o maior nmero de /. Ela provavelmente ser a que fornecer a posio inicial da engrenagem G. No caso em questo a posio mais favorvel G7, a stima posio da engrenagem G. c) Testamos agora G7 com as 4 possveis posies de P: (j=1) G7 com P1:
UDENYK+C8FJIFYXWPHDH9Z9WPV9ADCENRR+J4UDCBYXWPWLDKF9VWH + GHIJKLMNABCDEFGHIJKLMNABCDEFGHIJKLMNABCDFGHIJKLMNABCDE + AABBAABBAABBAABBAABBAABBAABBAABBAABBAABBAABBAABBAABBAA VVVVBVV+... (mensagem sem sentido, no deve ser esta a posio correta)
98
Concluso: A partir de uma mensagem codificada suficientemente longa e sabendo-se que a mensagem original possui muitos caracteres repetidos, podemos encontrar as posies iniciais das engrenagens e decifr-la. Porque o mtodo descrito acima funciona? Para responder a esta pergunta, precisaremos estudar os princpios bsicos das probabilidades.
Noes de Teoria das Probabilidades A Teoria das Probabilidades estuda modelos que descrevem fenmenos aleatrios (alea em latim significa sorte, acaso). Sua origem relativamente recente e esteve ligada aos jogos de azar; por isto, os primeiros estudos probabilsticos descreviam situaes em que os eventos eram igualmente provveis (por exemplo, a chance de sair cara ou coroa no lanamento de uma moeda a mesma se ela for honesta).
Intuitivamente a probabilidade est diretamente relacionada com a frequncia que um evento se repete, quando o experimento subjacente realizado um nmero muito grande (tendendo ao infinito) de vezes. Esta conexo entre a Probabilidade e a Estatstica fundamental e pode ser tornada rigorosa a travs de um teorema, conhecido como a Lei dos Grandes Nmeros. Neste texto estas idias sero utilizadas sem formalismos. Quando realizamos um experimento constitudo de eventos elementares igualmente provveis, devemos selecionar com preciso qual o conjunto de todos os casos possveis (conhecido como Espao Amostral e usualmente denotado pela letra grega ). Devemos tambm escolher dentro de um subconjunto A que nos interessa ao estudo (estes subconjuntos so chamados de eventos) e assim definir a probabilidade de ocorrer A como quociente P(A) = nmero de casos favorveis = # (A) nmero de casos possveis # ( )
99
P(A B) =
ento P(A B) = P(A) + P(B) P(A B). Assim, se dois eventos so disjuntos, ento P(AUB) = P(A) + P(B). Dizemos que dois eventos so independentes se P(A B) = P(A) P(B); isto intuitivamente equivale a dizer que a ocorrncia de A em nada influencia a ocorrncia de B. Exemplo 1: Qual a probabilidade de se obter o / quando somamos dois caracteres quaisquer da Mquina de Lorenz? O espao amostral formado por 32 x 32 duplas de caracteres e somente 32 dessas duplas (as que possuem o primeiro e o segundo fatores repetidos) produziro, quando somarmos seus fatores, o smbolo /. Assim: P(/) = nmero de casos favorveis = 32 nmero de casos possveis 32x 32 = 1 3% 32
Exemplo 2: Qual a probabilidade de um smbolo da mensagem modificada |P1| ser igual a / , quando giramos um grande nmero de vezes a engrenagem P? Se a engrenagem P girada um grande nmero de vezes a partir da posio inicial j =1, obteremos a sequncia AABBAABB..., o que produz a mensagem modificada |P1| =/G/G/G/G... Logo P(|P1| = /) = 1 2
100
TESTE a) Transformamos a mensagem criptografada C em uma mensagem modificada, denotada por |C|, obtida somando-se o primeiro ao segundo caractere de C, a seguir o segundo com o terceiro e assim por diante at terminar a todos os componentes da mensagem. b) Adicionamos |C| com |Gi |, i = 1,...,14 e contamos o nmero de / em cada uma dessas 14 mensagens. Aquela que apresentar o maior nmero de / provavelmente ser a que fornecer a posio inicial i = i0 da engrenagem G. d) Testamos agora Gi com i = i0 com as 4 possveis posies iniciais de Pj, j =1,2,3,4, at encontrar uma mensagem que faa sentido. Faremos nosso raciocnio sobre a mensagem
M = 9999A99ESFINGE99DISSE99DECIFRA99ME99OU99TE99DEVORO9999
mas o raciocnio geral e se aplica a outras mensagens suficientemente longas. Usamos as posies iniciais G = 7, P = 3 para obter a mensagem criptografada:
C = UDENYK+C8FJIFYXWPHDH9Z9WPV9ADCENRR+J4UDCBYXWPWLDKF9VWH
Vamos dividir nossa anlise em dois casos: CASO 1: A posio inicial da engrenagem G a errada, isto , i0 7. No sabemos isto de antemo, mas, se de fato esta engrenagem estivesse na posio incorreta o nmero de caracteres / em |C| + |Gi|, deveria ser estatisticamente (e probabilisticamente) muito baixo. De fato, Se em alguma posio da mensagem |C| + |Gi| aparecer o caractere /, ento os smbolos nesta posio devem ser iguais, mas a probabilidade disto ocorrer j foi calculada no Exemplo 1:
1 3% 32
CASO 2: A posio inicial da engrenagem G a correta, isto , i0 = 7. Nada sabemos ainda sobre a posio inicial Pj; ela ser testada no final.
101
Como C = M + Gi + Pj, para i = i0 e para algum j {1,2,3,4} ento |C |= |M| + |Gi| + |Pj|, ou seja |C | + |Gi| = |M| + |Pj| (lembre-se a adio binria auto-invertvel). Voltemos ao nosso teste: se em alguma posio da mensagem |C| + |Gi| aparecer o caractere Simbolicamente: /, ento o mesmo deve ocorrer com |M| + |Pj|.
Mas existem apenas 4 possibilidades para Pj : P1 : AABBAABB... |P1| = /G/G/G/G.... P2 : ABBAABBA... |P2| = G/G/G/G/.... P3 : BBAABBAA... |P3| = /G/G/G/G.... P4 : BAABBAAB... |P4| = G/G/G/G/.... Assim, para que algum caractere de |M| seja igual a algum caractere de Pj, este smbolo deve ser fatalmente / ou G. Aqui entra o grande erro de se transmitir mensagens com muitas repeties: a chance de se obter muitos / em |M| grande, o que nos d pistas de como foram escolhidas as posies originais da mquina! Vejamos isto com mais detalhes: se algum caractere de |M| for igual a algum caractere de Pj, ento, s existem duas possibilidades:
A probabilidade de ocorrer a primeira situao ser indicada por P (|M| = G) e a segunda por P (|M| = /). Os dois eventos acima so disjuntos e portanto
P (|C| + |Gi| = / ) = P(|M| = |Pj|) = P (|M| = G e |Pj | = G) + P (|M| = / e (|Pj | = /)
102
e, para calcular P (|M| = / e (|Pj | = /) = P (|M| = / ) . P(|Pj | = /) = (1/2). P (|M| = / ) devemos fazer uma previso da frequncia de repeties de letras na mensagem original (isto claro, depende da lngua e do tipo de mensagem que se est enviando), j que a probabilidade de encontrarmos / na mensagem modificada |M| est vinculada diretamente ao nmero de repeties de caracteres na mensagem original M. Usando nossa mensagem
M = 9999A99ESFINGE99DISSE99DECIFRA99ME99OU99TE99DEVORO9999
vemos que existe 12 repeties em 54 letras e assim uma boa estimativa para P (|M| = / ) (12/54) = (2/9), aproximadamente 22%. Na verdade, como conhecemos a mensagem original, podemos refinar esta estimativa, escrevendo explicitamente |M| e contando os caracteres / (o resultado ser 14/53, aproximadamente 26%). Assim,
P (|C| + |Gi| = / ) = P(|M| = |Pj|) =
1 1 14 + . 0,147 64 2 53
Isto significa que, nas condies descritas acima, quando a posio da engrenagem G a correta, temos perto de 15% de que um caractere de |C| + |Gi| seja /, contra 3% do mesmo ocorrer se G estiver em alguma posio errada! No nosso exemplo, podemos fazer uma estimativa do nmero de / esperados nos dois casos:
Em uma posio errada, espera-se que apaream 3% de 53 = 1,5 caracteres / na mensagem (encontramos G1 0, G2 0, G3 3, G4 1, G5 3, G6 0, G8 3, G9 1,, G10 0, G11 1, G12 5, G13 2, G14 0) Na posio correta, espera-se que apaream 15% de 53 8 caracteres / na mensagem (na verdade encontramos G7 11).
103
SIMULAO DA MQUINA DE LORENZ Para confeccionar este aparato voc vai precisar de um CD que no tenha mais uso e tambm de sua caixinha. Reproduza e recorte o crculo e cole-o no CD. O CD deve ser colocado dentro da caixinha. Recorte o quadrado e coloque-o comodeve ser colocado na capa do CD. Para fazer a mquina funcionar voc deve recortar na parte detrs da caixinha dois pequenos retngulos, suficientes para introduzir os dedos e girar o CD. Recorte as janelinhas indicadas nas setas.
Faa entalhes nestes locais que permitam colocar os dedos e girar o CD.
104
Engrenagem Engrenagem P P Escolha seguir Escolha a a seguir uma das 4 posies um nmero iniciais de para entre 1 a 4P a posio inicial de P
105
CILINDRO PARA SOMAS BINRIAS DA MQUINA DE LORENZ Recorte e cole a aba para formar um cilindro. Cubra-o com outro cilindro transparente maior fabricado com a cruz da pgina seguinte. O aparato pode ser usado para cifrar com rapidez as somas binrias usadas na Mquina de Lorenz. Tabela
Cilindro transparente
9 9
9 9
ADIO DE LETRAS
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 9 8 + 4 3 /
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 9 8 + 4 3 /
/ G F R 4 C B Q S 3 N Z 8 K + Y H D I W 9 X T V P L U M O E J A
G / Q T O H A F 8 L P J S Y E K C W M D V U R 9 N 3 X I 4 + Z B
F Q / U K A H G 3 S E M L 4 P O B 9 J V D T X W + 8 R Z Y N I C
R T U / 3 9 W X K 4 I + Y S Z 8 V A N B C Q G H M O F P L J E D
4 O K 3 / N + Y U R C W X F B Q P J 9 Z I 8 L M H T S V G A D E
C H A 9 N / Q B J I 4 8 Z E Y + G U 3 X R W V T O M D L P K S F
B A H W + Q / C M Z Y 3 I P 4 N F T 8 R X 9 D U K J V S E O L G
Q F G X Y B C / L 8 + I 3 O N 4 A V Z 9 W R U D E S T J K P M H
S 8 3 K U J M L / F D H G R V T Z N A P E O Y + W Q 4 B X 9 C I
3 L S 4 R I Z 8 F / 9 B Q U W X M E C + N Y O P V G K H T D A J
N P E I C 4 Y + D 9 / X W A Q B O S R 8 3 Z M L G V J T H F U K
Z J M + W 8 3 I H B X / C V R 9 S O Q 4 Y N E K U A P F D T G L
8 S L Y X Z I 3 G Q W C / T 9 R J P B N + 4 K E D F O A U V H M
K Y 4 S F E P O R U A V T / H G + I D M J L 8 Z B X 3 W Q C 9 N
+ E P Z B Y 4 N V W Q R 9 H / C K L X 3 8 I J S F D M U A G T O
Y K O 8 Q + N 4 T X B 9 R G C / E M W I Z 3 S J A U L D F H V P
H C B V P G F A Z M O S J + K E / X L U T D 9 R 4 I W 3 N Y 8 Q
D W 9 A J U T V N E S O P I L M X / K G F H B Q 8 + C Y Z 3 4 R
I M J N 9 3 8 Z A C R Q B D X W L K / Y 4 + P O T H E G V U F S
W D V B Z X R 9 P + 8 4 N M 3 I U G Y / Q C A F S E H K J L O T
9 V D C I R X W E N 3 Y + J 8 Z T F 4 Q / B H G L P A O M S K U
X U T Q 8 W 9 R O Y Z N 4 L I 3 D H + C B / F A J K G E S M P V
T R X G L V D U Y O M E K 8 J S 9 B P A H F / C I 4 Q N 3 Z + W
V 9 W H M T U D + P L K E Z S J R Q O F G A C / 3 N B 4 I 8 Y X
P N + M H O K E W V G U D B F A 4 8 T S L J I 3 / 9 Z R C Q X Y
L 3 8 O T M J S Q G V A F X D U I + H E P K 4 N 9 / Y C R W B Z
U X R F S D V T 4 K J P O 3 M L W C E H A G Q B Z Y / + 8 I N 9
M I Z P V L S J B H T F A W U D 3 Y G K O E N 4 R C + / 9 X Q 8
O 4 Y L G P E K X T H D U Q A F N Z V J M S 3 I C R 8 9 / B W +
E + N J A K O P 9 D F T V C G H Y 3 U L S M Z 8 Q W I X B / R 4
J Z I E D S L M C A U G H 9 T V 8 4 F O K P + Y X B N Q W R / 3
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 9 8 + 4 3 /
C D E F
G H I
K L M N O P
Q R S
U V W X Y Z 9
106
107
Estamos chegando ao fim de nossa viagem pela histria da Criptologia. Nossa ltima parada ser na atual poca, em que os computadores desempenham um papel central na troca de mensagens sigilosas. 1977
108
EXEMPLO DO FUNCIONAMENTO DO SISTEMA RSA A idia transformar letras em nmeros e construir uma funo bijetora C definida no conjunto numrico obtido para us-la na codificao de mensagens. A funo inversa de C ser denotada por D e usada para decifrar as mensagens criptografadas. Qualquer funo bijetora serve para este processo funcionar; entretanto se for fcil obter D a partir de C, ser tambm fcil quebrar o cdigo, tornando o sistema frgil. O mtodo RSA nos fornece uma maneira de se obter as funes C e D com bastante segurana. Como implementar o RSA: 1) Escolha dois nmeros primos distintos p e q e seja n = p.q.
Faremos a escolha p = 2 e q = 5 como um exemplo. Neste caso n = 2.5 = 10. Estaremos interessados em obter o resto da diviso de um dado nmero por n. Neste exemplo em que n = 10, o resto sempre o algarismo das unidades do nmero, o que facilita muito o entendimento do mtodo. 2) Escolha um nmero c que no tenha fatores comuns e que seja menor do que (p-1).(q-1). No exemplo escolhido (p-1).(q-1) = 1.4 = 4 e c = 3 a nica opo. 3) Escolha um nmero d diferente de c tal que c.d 1 seja mltiplo de (p-1).(q-1). Seguindo o exemplo, vamos escolher d = 7. Este valor serve pois 3.7 1 = 20 = 5.4. Pronto! Podemos construir nossas chaves para cifrar e decifrar mensagens: Chave pblica (n, c) Ex: (10,3) Chave secreta (n, d) Ex: (10,7)
Como n =10, s conseguiremos trabalhar com nmeros menores do que 10. Por isto vamos codificar apenas palavras cujas letras so as nove mais frequentes em portugus: A, E, O, S, R, I, N, D e M. Efetuamos primeiramente uma pr-codificao, trocando as letras por nmeros: A 1 E 2 O 3 S 4 R 5 I 6 N 7 D 8 M 9
Usaremos os nmeros c e d escolhidos acima para fabricar funes bijetoras C : {1,2,3,4,5,6,7,8,9} {1,2,3,4,5,6,7,8,9}
109
C(n)
A funo C(n) definida do seguinte modo: elevamos o nmero n potncia c e tomamos o resto da diviso por 10 do resultado obtido. A funo D(n) obtida de modo similar: elevamos o nmero n potncia d e tomamos o resto da diviso por 10 do resultado encontrado. Vejamos um exemplo: vamos codificar a palavra ONDINA, usando as chaves do exemplo. O-N-D-I-N-A torna-se, devido pr-codificao, 3 7 8 6 7 1. Usamos a chave pblica c = 3 como potncia e calculamos: 33 - 73 - 83 - 6373 - 13, o que d 27 343 512 216 343 - 1. Tomamos o resto, na diviso por 10, de cada um destes nmeros.. O resultado 7 3 2 6 3 - 1. De fato a funo C tem os seguintes valores: n n3 C(n)=
resto da diviso 3 de n por 10
1 1 1
2 8 8
3 27 7
4 64 4
5 125 5
6 216 6
7 343 3
8 512 2
9 729 9
Transformando agora nmeros em letras, vemos que ONDINA fica codificada como NOEIOA. Para decifrar, procedemos de modo anlogo, usando a chave d: Fazemos a pr-codificao de NOEIOA, obtendo 7 3 2 6 3 1 e elevamos cada um desses nmeros potncia d = 7 : 77 37 27 67 37 17. Finalmente tomamos o resto da diviso desses nmeros por 10, ou seja, aplicamos a funo de decodificao D(n). n n7 D(n)=
resto da diviso 7 de n por 10
1 1 1
2 128 8
O resultado, claro, 3 7 8 6 7 1, que quando trocado por letras recupera a palavra ONDINA.
110
Para entender porque o mtodo acima funciona, leia o livro Nmeros inteiros e Criptografia RSA de Severino Collier. Ser que podemos descobrir d, a partir de c e de n? No caso em que n um nmero pequeno (no nosso exemplo n = 10), fcil descobrir seus fatores primos (2 e 5). Assim (p-1).(q-1) conhecido e no muito difcil encontrar a chave secreta d, a partir da chave pblica c. Entretanto, se p e q forem nmeros muito grandes, a fatorao de n muito demorada, praticamente impossvel com nossa tecnologia atual. E, de fato, esta deficincia tecnolgica o que permite a utilizao quase segura do sistema criptogrfico RSA. Para evitar que o cdigo seja quebrado pela contagem das frequncias das letras, pode-se agrupar as letras em blocos de diferentes tamanhos, antes de se iniciar o processo de codificao (depois disto os formatos dos blocos no podem mais ser alterados). Para ilustrar nossos estudos, vamos apresentar agora algumas simulaes simples com criptografia de chave pblica.
111
ATIVIDADE Nesta atividade voc vai recortar e montar um envelope que ser usado para receber em seu interior a mensagem M que A deseja enviar a B. Voc deve recortar tambm os dois adesivos que faro o papel das chaves CB e DB. Depois disto pronto, a) Voc far o papel do emissor A e um amigo do receptor B. Segure o envelope com voc, coloque a chave CB (que pblica) em um espao entre voc e seu amigo e entregue para ele a chave DB (que secreta). Somente seu amigo tem a posse de DB, enquanto que qualquer um pode ter acesso a CB. b) Escreva uma mensagem em um pedao de papel e coloque-o dentro do envelope. c) Proceda a pr-codificao, isto , feche o cadeado, colocando as duas trancas nas fechaduras. d) Levante a primeira dessas trancas e cole na fechadura correspondente o adesivo com a chave CB. Com isto voc acabou de criptografar a mensagem. e) Envie o envelope ao seu amigo. f) Aps receb-lo, ele levanta a segunda tranca, cola sua chave secreta DB e o envelope est aberto! A mensagem pode ento ser lida com segurana.
112
Chave Pblica
Chave Secreta
Adesivo
CB
DB
113
ENVIO DE MENSAGENS ASSINADAS COM CHAVE PBLICA Vimos que nos sistemas de chave pblica, cada pessoa possui um procedimento C para que os outros lhes enviem mensagens criptografadas - estes procedimentos so conhecidos por todos pois esto publicados em uma lista (como se fosse o nmero de nossa conta-corrente em uma lista de um banco, ou uma lista telefnica) e tambm um procedimento D que a pessoa deve guardar secretamente - sua senha secreta - para decifrar mensagens recebidas. Os procedimentos C e D anulam um o efeito do outro, ou seja as operaes C e D comutam e as operaes C seguida de D e C seguida de D so a identidade I(x) = x. Suponha que uma pessoa A, tenha procedimentos CA para cifrar mensagens e DA para decifrar. Do mesmo modo, suponha que uma outra pessoa B possua procedimentos anlogos CB e DB. A pessoa A deseja mandar pessoa B uma mensagem M. Ela faz isto enviando a seguinte mensagem codificada: CB(DA)(M) Quando B recebe a mensagem codificada, s ele pode decifr-la, pois s ele conhece DB. Assim, realizando a operao DB(CB(DA(M))) = DA(M) ele obtm DA(M). Observe que o processo para decifrar DA exige a chave CA que pblica! Deste modo ele consegue obter CA(DA(M)) = M, ou seja, ele e s ele consegue ler a mensagem enviada por A. A pessoa B tem certeza que foi A que lhe mandou a mensagem pois s ele poderia usar DA, isto , s ele consegue calcular DA(M) (a assinatura de A vem junto com a mensagem criptografada) e, em resumo, somente B consegue recuperar a mensagem pois s ele conhece DB e ele tem certeza que foi a pessoa A que lhe mandou a mensagem pois s A conhece DA. Veja como podemos simular esta situao toda usando envelopes: ATIVIDADE Nesta atividade voc vai recortar e montar um envelope que ser usado para receber em seu interior a mensagem M que A deseja enviar a B. Voc deve recortar tambm os dois adesivos (chaves) CA, DA, CB e DB. Depois disto pronto, a) Voc far o papel do emissor A e um amigo do receptor B. Segure o envelope com voc, coloque as chaves CA e CB (que so pblicas) em um espao sobre uma mesa entre voc e seu amigo. Segure com voc
114
sua chave secreta DA e pea ao seu amigo que ele segure e mantenha em segredo sua chave secreta DB . Somente voc tem a posse de DA, enquanto que qualquer um pode ter acesso a CA . Do mesmo modo, somente B conhece DB, enquanto todos podem ter acesso a CB. b) Escreva uma mensagem M em um pedao de papel e coloque-o dentro do envelope. c) Proceda a pr-codificao, isto , feche os cadeados, colocando as quatro trancas (duas de cada cadeado). d) Levante a tranca correspondente ao adesivo DA e cole este adeviso no local. No outro cadeado, abra a tranca CB e cole no local o dadesivo correspondente. Isto completa a criptografia da mensagem, isto voc obteve com a chave primeira dessas trancas e cole na fechadura correspondente o adesivo com a chave CB. Com isto voc acabou de criptografar a mensagem. Voc obteve CB ( DA (M) ). e) Envie o envelope ao seu amigo. f) Aps receb-lo, ele deve levantar a tranca do cadeado CB e completar a chave, colando seu adesivo secreto DB; a seguir deve levantar a tranca do cadeado com DA, e colar o adesivo pblico CA que estava sobre a mesa. Pronto! O envelope est aberto e a mensagem pode ser lida com segurana. Somente B pode realizar esta sequncia completa de decriptao (pois s ele tem a chave DB) e o envelope prova que a mensagem veio certamente de A, pois a assinatura DA ficou registrada nele.
115
CA
DA
CB
DB
Chave Pblica de A
Chave Secreta de A
Chave Pblica de B
Chave Secreta de B
DA CA CB
DB
116
Seja M o valor de uma carta. Ento CA(M) o valor da carta M codificada pela chave pblica de A. Podemos imaginar a carta M dentro de um envelope, como na atividade de criptografia de chave pblica com assinatura. Como jogar? 1o. ) O jogador A embaralha as cartas e as envia ao jogador B. 2o. ) O jogador B codifica as 52 cartas do baralho obtendo CB(M1), CB(M2), , CB(M52) (Ele coloca as cartas em envelopes e utiliza a chave pblica CB)
...
O segundo jogador (B) embaralha os envelopes e envia-os ao primeiro jogador (A).
117
3o. ) O jogador A escolhe 5 envelopes aleatoriamente e manda-os de volta ao jogador B. Estes envelopes contm as cartas que B utilizar no jogo. Digamos que dentro dos envelopes esto as cartas Mi1, Mi2, Mi3, Mi4 e Mi5. O primeiro jogador (A) no sabe quais foram as 5 cartas escolhidas pois elas foram codificadas por B. 4o. ) Recebendo os 5 envelopes vindos de A, o jogador B utiliza sua chave secreta DB e descobre quais so suas cartas: Mi1= DBCB(Mi1), Mi2= DBCB(Mi2), Mi3= DBCB(Mi3), Mi4= DBCB(Mi4), Mi5= DBCB(Mi5). (Este procedimento simulado pela colocao da chave DB no lugar correspondente do envelope) 5o. ) O primeiro jogador (A) seleciona agora suas cartas e as codifica com CA: como as cartas j estavam anteriormente codificadas por B, o resultado obtido ser: CACB(Mj1), CACB(Mj2), CACB(Mj3), CACB(Mj4), CACB(Mj5). Neste ponto precisamos ter a garantia que uma propriedade fundamental das chaves seja vlida: as chaves CA e CB devem comutar. Isto significa que as cartas codificadas acima so precisamente as cartas: CBCA(Mj1), CBCA(Mj2), CBCA(Mj3), CBCA(Mj4), CBCA(Mj5). 6o. ) O jogador A envia estas cartas duplamente codificadas (com 2 cadeados) ao jogador B que as decodifica com sua chave DB. O resultado ento : CA (Mj1), CA(Mj2), CA (Mj3), CA (Mj4), CA (Mj5). Observe que o jogador B no tem como conhecer as cartas do jogador A pois ainda elas esto codificadas com CA e somente o jogador A tem a chave secreta DA . 7o.) O jogador B envia estas 5 ltimas cartas ao jogador A, que finalmente as decodifica usando a chave DA, obtendo finalmente Mj1, Mj2, Mj3, Mj4 e Mj5. O jogo pode ento ser iniciado. Quando isto acontece, nenhum dos jogadores conhece as cartas do outro nem as cartas restantes. Note que as cartas do morto esto em poder do jogador A, mas codificadas com o cadeado CB e a chave DB encontra-se em poder do jogador B. Assim A no tem como decodific-las. No fim do jogo, os jogadores podem revelar suas chaves e verificar se houve ou no trapaa!
118
CDIGO GENTICO
Mensagens secretas codificadas com DNA Tinta com DNA impede falsificao A falsificao de assinaturas, cheques, testamentos, obras de arte e outros documentos pode deixar de preocupar a polcia aps a comercializao de uma tinta especial elaborada por dois argentinos. O mdico legista Rubn Simonetta, um dos inventores, disse ao jornal La Nacin que o produto uma tinta invisvel e inaltervel, com molculas encapsuladas do DNA da pessoa que vai utiliz-la, que deve ser aplicada sobre qualquer papel ou elemento suscetvel de ser adulterado. As molculas de DNA, que determinam caractersticas hereditrias como a cor dos olhos e do cabelo, constituem uma espcie de impresso digital, pessoal e nica. Voc se lembra de antigamente quando um fio de bigode valia mais do que uma assinatura em um documento? Bom, se for possvel extrair o DNA do fio de bigode, isto, de fato, verdade.
O uso do DNA para codificar mensagens Hoje em dia, com a engenharia gentica, possvel codificar mensagens em uma poro de DNA que fique camuflada entre uma quantidade enorme de molculas similares e que possam ser agrupadas em um espao muito pequeno (menor do que um ponto final em uma carta, por exemplo). Isto foi apresentado primeiramente por Viviana Risca de Nova Iorque, no ano de 2000. Uma poro de DNA uma cadeia de molculas denotadas pelas letras A, C, G e T, que so as iniciais de adenina, citosina, guanina e timina respectivamente. Essas bases ligam-se aos pares: as nicas ligaes possveis so AT, TA, CG e GC. O formato da dupla hlice do DNA deve-se ligao de uma cadeia de bases com sua base complementar. Por exemplo a seqncia TAGCCT tem como seqncia complementar ATCGGA. Uma seqncia de trs bases chama de cdon. Podemos usar os cdons para cifrar mensagens, de acordo, por exemplo, com a tabela: A CGA B CCA C GTT D TTG E GGC F GGT G TTT H CGC I ATG J AGT Chaves criptogrficas e DNA K AAG U CTG L TGC V CCT M TCC W CCG N TCT X CTA O GGA Y AAA P GTG Z CTT Q AAC - ATA R TCA , TCG S ACG . GAT T TTC : GCT 0 ACT 1 ACC 2 TAG 3 GAC 4 GAG 5 AGA 6 TTA 7 ACG 8 AGG 9 GCG
119
Por exemplo, a mensagem PERIGO VISTA, pode ser criptografada como GTG GGC TCA ATG TTT GGA CGA CCT ATG ACG TTC CGA. Esta seqncia de bases colocada entre duas pores de DNA com 20 bases cada. Estas 20 bases so conhecidas apenas por quem envia e por quem recebe a mensagem. A codificao da mensagem PERIGO VISTA tem 12 x 3 = 36 letras, que correspondem a 36 x 3 = 108 bases e que colocadas entre 20 bases iniciais e 20 bases finais perfazem 148 letras do cdigo gentico. Por exemplo, a mensagem acima pode ser criptografada usando inicialmente TCCCTCTTCGTCGAGTAGCA, a prpria mensagem GTGGGCTCAATGTTTGGACGACCTATGACGTTCCGA e o complemento de TCTCATGTACGGCCGTGAAT. Depois disto mistura-se algumas dessas molculas com fragmentos de mesmo tamanho de DNA. Somente quem conhece as 20 bases iniciais e as 20 bases finais ser capaz de extrair a mensagem, usando-se uma tcnica conhecida com reao de polimerase em cadeia, isolando assim o trecho de DNA que contm a mensagem a ser decifrada. Quem no conhece as bases iniciais e finais ficar com a tarefa de analisar 420 possibilidades de sequncias iniciais para encontrar o par correto de chaves. Desta maneira, pode-se enviar mensagens secretas, com segurana alta, em um espao de dimenses nfimas. TROCA DE BEBS Trs bebs nasceram ao mesmo tempo na maternidade e, por descuido, ningum se lembrou de colocar as identificaes neles. E agora, voc pode descobrir quem filho de quem? Abaixo est o resultado de um teste que feito com o DNA de cada um dos pais e dos bebs. A dica que o beb tem metade do DNA do pai e metade do DNA da me. Veja se consegue resolver a charada com base na posio dos tracinhos dos pais e dos filhos.
120
121
122
123
Impresso Digital Gentica A Impresso digital gentica foi desenvolvida pelo professor Alan Jeffreys na Universidade de Leicester, em 1984. A tcnica baseada no fato de que cada indivduo tem uma nica composio gentica, contida na molcula de DNA (cido desoxirribonuclico), que herdado dos pais biolgicos, sendo metade da me e metade do pai. O DNA pode ser extrado de clulas, coletado de materiais orgnicos e, aps processado, produz um padro de bandas ou a impresso digital do DNA. Os testes de DNA tm sido usados em criminalstica para resolver casos de homicdios, assaltos ou atentados; as secrees corporais encontradas na cena do crime podem ser comparadas s de um suspeito. comum a comparao entre 10 e 20 bandas. Experimentos tm demonstrado que nas pessoas relatadas a probabilidade de uma banda coincidir de uma em quatro, ou seja, a probabilidade de (estimada usando-se a Lei dos Grandes Nmeros). Assim, por exemplo, a probabilidade de duas bandas coincidirem igual a (1/4)2 = 1/16. Ou seja, uma chance em dezesseis. J probabilidade de 10 bandas coincidirem de (1/4)10 = 1/1048576, aproximadamente uma chance em 1 milho. Se admitirmos, entretanto, que a probabilidade de coincidncia de uma nica banda ser de 0,5, para a coincidncia de 10 bandas teremos (1/2)10= 1/1024, aproximadamente uma chance em mil. Esta discrepncia pode
124
dar origem a disputas judiciais; por isto um nmero maior de bandas devem ser comparadas. ATIVIDADE: a) A populao do Brasil de cerca de 200 milhes de habitantes. Supondo que p = 0,25, qual o nmero de bandas que precisam ser comparadas para se obter probabilisticamente uma chance em 200 milhes de se encontrar pessoas com essas bandas coincidentes? b) A populao mundial est estimada em 6,4 bilhes de pessoas. Com p = 0,25, qual o nmero de bandas que precisam ser comparadas neste caso? Mais geralmente, se p denota a probabilidade de coincidncia de uma nica banda em uma populao com H habitantes, o nmero n de bandas que devem ser comparadas para se ter uma chance de coincidncia no universo de H pessoas pode ser encontrado utilizando o logaritmo: pn = 1/H log (pn )= log (1/H ) n log p = - log H n = -(log H)/log p.
ANTICRIPTOGRAFIA: TERRESTRES
COMUNICAO
COM
EXTRA-
Todas as atividades feitas at agora tinham o objetivo de ocultar, de algum modo, as informaes de uma mensagem. Mas existe tambm o problema inverso: como fazer para que uma mensagem seja entendida de modo fcil por algum que no fala nossa lngua e no est acostumado com nossos cdigos de escrita? Admitindo-se a possibilidade de vida em outros planetas, quais seriam as maneiras mais simples de estabelecer comunicao com estes seres? Muita gente j pensou nisto, acredite. Uma primeira sugesto seria construir um enorme painel luminoso que pudesse ser visto do espao, provavelmente com alguma informao geomtrica (crculos, quadrados, algum teorema sobre tringulos, talvez). Uma outra sugesto estaria baseada na Aritmtica, na conhecida sequncia dos nmeros naturais: 1, 2, 3, ...; se algum sinal puder ser capturado por algum aliengena, esta sequncia poderia ser enviada como bip, bip-bip, bip-bip-bip,...Talvez alguma operao aritmtica elementar tambm pudesse ser enviada: bip-bip (tempo) bip-bip (tempo) bip-bip-bip-bip. Com uma sequncia de 0 e 1, podemos formar pxeis e transmitir mensagens e imagens (como feito nos monitores de vdeo). Por exemplo, qual ser a mensagem formada pela sequncia abaixo?
125
111011101000 100010101000 111010101000 001010101000 111011101110 000000000000 100010101110 100010101010 100010101110 100010101010 111011101010 000000000000
(pinte as respectivas casas marcadas com 1 na grade) Uma outra estranha maneira de se comunicar com extra-terrestres que tem interesse matemtico a apresentada por Martin Gardner em seu 6th Book of Mathematical Diversions from Scientific American, a qual descrevemos a seguir. A mensagem usa smbolos usuais do alfabeto, mas outros smbolos poderiam ser usados, sem problemas.
No difcil de descobrir o significado das coisas. Na linha 1 simplesmente esto declarados os smbolos que sero usados. Na linha 2 os 10 primeiros smbolos so identificados com os nmeros de 1 a 10. Na linha 3 os smbolos de + e = so introduzidos. Na linha 4 o sinal de subtrao introduzido e na linha 5 aparece o smbolo zero. A notao posicional apresentada na linha 6. Observe que J = NA. A seguir, na linha 7 aparece o
126
sinal de multiplicao e na linha 8 o sinal de diviso. Na linha 9 esto definidos os expoentes. Os nmeros 100 e 1000 aparecem na linha 10 e 1/10 e 1/100 na linha 11. Na linha 12 a vrgula usada na notao decimal introduzida e o sinal de aproximadamente igual aparece na linha 13, bem como o valor aproximado de Pi: 3,1416. Finalmente a linha 14 nos d a expresso: (4 x x 0,00923) / 3 (desde que interpretemos as prioridades dos smbolos de uma determinada forma). Que sentido tem esta ltima sentena? claro que ela sugere o volume de uma esfera. Mas porque o raio 0,0092? Bem, se algum do espao exterior receber esta mensagem e localizar o sistema solar, tomando o raio do Sol como unidade, descobrir que o raio do terceiro planeta mais distante desta estrela tem como medida de seu raio aproximadamente 0,0092 do raio do Sol. Acredita-se, desta forma que ele conseguir localizar o planeta Terra. Incrvel, no? Veja, a seguir, o significado dos smbolos usados na mensagem (as letras O e X no so usadas):
A 1
B 2
C 3
D 4
E 5
F 6
G 7
H 8
I J 9 10
K +
L =
M -
N 0
P x
R eleva do a
S 100
T 1000
U 1/10
V 1/100
W ,
127
(leia novamente, a partir da da avaliao linha, a resposta do problema segunda fipulando nalizada este semestre na Escola. A escolha profissioalternadamente uma linha)
nal a primeira alternativa e somente o bonito gesto realizado pelo senhor permanecer em nossa memria. A tribo do professor ainda no percebeu nossa enorme gratido pelo seu grandioso mtodo de comunicao.
(leia mais uma vez, a partir da segunda linha, pulando alternadamente uma linha)
ZERO VIRADO. vai tirar um para cima, voc tudo de baixo cola escrever fcil de passar Uma maneira
(Anamorfose)
128
129
SENHA
Copie, recorte a senha nos lugares indicados e sobreponha folha da pgina anterior para descobrir a mensagem secreta).
130
CDIGO DE PONTOS
O que significa a mensagem abaixo?
Simples, no ? Como variao use um barbante bem comprido, dando ns nos pontos:
131
MTODO GIRATRIO
132
CADEADO DE PAPEL
3. Gire o cadeado de 90, ele est quase pronto e deve ter o formato: 4. Dobre-o pela linha pontilhada para trs e, aps dobrar, abra ao meio como se fosse um livro. O resultado ser o seguinte (cadeado mgico fechado). A mensagem no verso ficou embaralhada.
133
Aqui nos despedimos, desejando que tenham tido uma boa diverso e uma boa aprendizagem!
134
REFERNCIAS
BERLOQUIN, P., 100 jogos numricos e 100 jogos lgicos, RBA , 208. FOLHA DE SO PAULO -20/07010 Caderno Fovest FOLHINHA DE SO PAULO (jornal FSP 26/04/03) GARDNER, Martin 6th Book of Mathematical Diversions from Scientific American. MALAGUTTI, P. L. Atividades de Contagem a Partir da Criptografia. Disponvel em http: //www.obmep.org.br. Acessado em 26/07/2010. MORGADO, PITOMBEIRA, CARVALHO, Combinatria e Probabilidade IMPA, 1991. FERNANDEZ, Anlise
SGARRO, A. Cdigos Secretos: Criptografia. Editora Melhoramentos: So Paulo,1989. Bletchley Park Site: http://www.bletchleypark.org.uk/. Acessado em 26/07/2010. http://paperreplika.com/index.php?option=com_content&view=article&id=527:german-m4naval-enigma-machine&catid=38&Itemid=200920 senha: paper-replika.com, acessado em 21/07/2010. http://mckoss.com/Crypto/Paper%20Enigma.pdf http://www.cimt.plymouth.ac.uk/resources/codes/default.htm,
21/07/2010. acessado em
135