Anda di halaman 1dari 37

UNIVERSIDADE VEIGA DE ALMEIDA CURSO DE CINCIA DA COMPUTAO TPICOS AVANADOS EM REDES

ALGORITMOS DE CRIPTOGRAFIA

ALUNOS: CYNTHIA DIAS FERREIRA REBELLO FELIPE SEBASTIO CABRAL OLIVER AUGSTROZE RUTTER DRUMMOND RODRIGO MACHADO REBELLO

CAPTULO I Histria da Criptografia Durante milnios, generais, reis e rainhas buscavam formas seguras e eficientes de comunicao. A importncia de se manter em segredo mensagens sobre estratgias de guerra, ou informaes privilegiadas, fez com que fossem desenvolvidos cdigos e cifras, de forma a mascarar a mensagem desejada, garantindo assim que apenas o transmissor e o receptor tivessem acesso ao seu contedo. Departamentos especficos foram criados em diversas naes a fim de elaborar e desenvolver cdigos. Paralelamente, o outro lado tambm nasceu, surgiram os decifradores de cdigos, gerando uma corrida armamentista intelectual. A matemtica esteve sempre presente e ligada diretamente criao de novos cdigos e cifras, buscando sempre a sua evoluo. Evoluo essa que era, e ainda , mandatria devido ao constante ataque dos decifradores.

Assim que um cdigo era quebrado, um novo era gerado na tentativa constante de se manter frente dos decifradores. A informao se torna cada vez mais valiosa e com isso o processo de codificao de mensagens tem cada vez mais um papel maior na sociedade. Existem diversos relatos na histria de episdios envolvendo os cdigos em operaes durante guerras, casos em que o sigilo foi mantido com sucesso e casos onde criptoanalistas devendaram o cdigo dos criptgrafos inimigos, mas no divulgaram essa informao. Assim, podiam obter informaes extremamente importantes para tticas de defesa e ataque de forma sigilosa. Uma das primeiras formas utilizadas para se ocultar uma mensagem foi a esteganografia, do grego, steganos, que significa coberto e graphein, que significa escrever. Um exemplo interessante de esteganografia encontrado em As histrias, onde Herdoto narrou os conflitos entre Grcia e Prsia, ocorridos no sculo V a.C.. Uma das histrias a de Histaeu, que queria encorajar Aristgora de Mileto a se revoltar contra o rei persa. Para transmitir suas instrues em segurana, Histaeu raspou a cabea de um mensageiro, escreveu a mensagem no couro cabeludo e esperou que o cabelo crescesse. O mensageiro, que aparentemente no levava nada que o comprometesse,

viajou sem ser incomodado. Quando chegou ao seu destino, raspou a cabea, possibilitando a leitura da mensagem pelo destinatrio. evidente que a poca tolerava tamanha lentido. O grande perodo em que a esteganografia perdurou, demonstra que ela certamente oferece certa segurana, embora sofra de uma fraqueza fundamental: Se o mensageiro for revistado e a mensagem descoberta, ento o contedo da comunicao secreta imediatamente revelado. A interceptao da mensagem compromete toda a sua segurana. Juntamente com o desenvolvimento da esteganografia houve a evoluo da criptografia, do grego kriptos, que significa oculto. Ao contrrio da esteganografia, a criptografia tem como objetivo ocultar o significado da mensagem e no a mensagem propriamente dita. A vantagem da criptografia que, se o inimigo interceptar a mensagem codificada, ela est, a princpio, ilegvel e seu contedo no poder ser descoberto de imediato. Nasce ento a criptoanlise, cincia que permite decifrar uma mensagem sem conhecer a chave. Por volta do sculo X, os administradores rabes usavam a criptografia para codificar os segredos de Estado e proteger o registro de impostos. Geralmente, utilizavam um alfabeto cifrado apenas rearranjando o alfabeto original, mas tambm empregavam alfabetos que continham outros smbolos, a essa cifra se d o nome de Cifra de substituio monoalfabtica, onde cada letra do alfabeto original substituda por outra letra ou por um smbolo. Esta cifra permaneceu invulnervel por sculos. Foram os estudiosos rabes que inventaram a criptoanlise, definida anteriormente, ao obterem sucesso na descoberta de um mtodo para quebrar a cifra de substituio monoalfabtica. No sculo IX, Al-Kindi, um cientista conhecido como o filsofo dos rabes, inspirado em tcnicas utilizadas por telogos para examinarem as revelaes contidas no Coro, descreveu a tcnica de estudar a freqncia das letras para quebrar cdigos. O sistema consistia basicamente em conhecendo seu idioma, encontrar um texto diferente, na mesma lngua, suficientemente longo para preencher uma pgina. Ento contar a freqncia com que cada

letra aparece. Em seguida examinar o criptograma que se deseja decifrar e tambm classificar seus smbolos, com relao freqncia com que aparecem na mensagem. coerente fazer uma correspondncia entre as letras e os smbolos mais freqentes. Analisando, por exemplo, uma mensagem codificada na lngua portuguesa, pode-se dizer que o smbolo mais freqente na mensagem corresponde letra A. Analogamente, o segundo smbolo mais freqente corresponde letra E, e assim por diante. Vale observar que h letras que aparecem com a mesma freqncia, mas substituindo os smbolos mais freqentes torna-se mais fcil decifrar o restante, justamente por conhecer o idioma da mensagem e, conseqentemente, suas palavras. Os criptoanalistas estavam vencendo a guerra contra os criptgrafos. Cabia aos criptgrafos criar uma nova cifra, mais forte, algo que pudesse vencer os criptoanalistas. Por volta de 1460, o italiano Leon Battista Alberti (1404 1472), escreveu um ensaio sobre o que ele acreditava ser uma nova forma de cifra: Naquela poca todas as cifras de substituio exigiam um nico alfabeto cifrado para codificar cada mensagem. Alberti props o uso de pelo menos dois alfabetos cifrados, usados alternadamente, de modo a confundir os criptoanalistas em potencial. A grande vantagem do sistema de Aberti que a mesma letra do texto original no aparece necessariamente como uma nica letra no texto cifrado. Embora houvesse descoberto o avano mais relevante das cifras num perodo de um milnio, Alberti no conseguiu desenvolver sua idia: de transform-la num sistema completo de cifragem. Esta tarefa coube a um grupo de intelectuais que aperfeioaram a idia original, o alemo Johannes Trithemius (1462 1516), depois o italiano Giovanni Porta (1541 1615), e por fim o francs Blaise de Vigenre (1523 - 1596). Este ltimo tomou conhecimento dos trabalhos e examinou em detalhes as idias de Alberti, Trithemius e Porta, mesclando-as para formar uma nova cifra, coerente e poderosa. A cifra ficou conhecida como cifra de Vigenre em homenagem ao homem que a desenvolveu em sua forma final. A cifra de Vigenre consiste em at 26 alfabetos distintos para criar a mensagem cifrada. O primeiro passo montar o chamado quadrado de

Vigenre, um alfabeto normal seguido de 26 alfabetos cifrados, cada um deslocando uma letra em relao ao alfabeto anterior. Em resumo, o remetente da mensagem pode, por exemplo, cifrar a primeira letra de acordo com a linha 5, a segunda de acordo com a linha 14 e a terceira de acordo com a linha 21, e assim por diante.
QUADRADO DE VIGENRE j K l M n O p K L M N O P Q L M N O P Q R M N O P Q R S N O P Q R S T O P Q R S T U P Q R S T U X Q R S T U X W R S T U X W X S T U X W X Y T U X W X Y Z U X W X Y Z A X W X Y Z A B W X Y Z A B C X Y Z A B C D Y Z A B C D E Z A B C D E F A B C D E F G B C D E F G H C D E F G H I D E F G H I J E F G H I J K F G H I J K L G H I J K L M H I J K L M N I J K L M N O J K L M N O P

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

a B C D E F G H I J K L M N O P Q R S T U X W X Y Z A

b C D E F G H I J K L M N O P Q R S T U X W X Y Z A B

C D E F G H I J K L M N O P Q R S T U X W X Y Z A B C

d E F G H I J K L M N O P Q R S T U X W X Y Z A B C D

e F G H I J K L M N O P Q R S T U X W X Y Z A B C D E

F G H I J K L M N O P Q R S T U X W X Y Z A B C D E F

g H I J K L M N O P Q R S T U X W X Y Z A B C D E F G

h I J K L M N O P Q R S T U X W X Y Z A B C D E F G H

I J K L M N O P Q R S T U X W X Y Z A B C D E F G H I

Q R S T U X W X Y Z A B C D E F G H I J K L M N O P Q

r S T U X W X Y Z A B C D E F G H I J K L M N O P Q R

s T U X W X Y Z A B C D E F G H I J K L M N O P Q R S

t U X W X Y Z 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 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 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 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 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 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 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

Para decifrar a mensagem, o destinatrio precisa saber que linha do quadrado Vigenre foi usada para a cifragem de cada letra, por isso deve existir um sistema previamente combinado para a mudana entre linhas. Conseguia-se isso por intermdio do uso de uma palavra-chave. O comunicado Caros, informo a todos que outra vez os criptgrafos esto na frente na corrida dos cdigos, pode ser codificado como Eaick, knwcjoo r hgfoj emg olhjc vvn gu ciwhvoxfshoj skvaf bs hrvblg nr qgtrzrs foj qgfixck, sendo que a palavrachave a primeira palavra, ou seja, toda a mensagem foi codificada usando cinco dos vinte e seis alfabetos de Vigenre. Mais especificamente, a primeira letra da mensagem foi codificada com o alfabeto que tem incio em C, a segunda com o alfabeto que tem incio na letra A, a terceira com o alfabeto que inicia em R, a quarta com o que inicia em O, a quinta com o que inicia em S, a sexta volta a ser codificada com o alfabeto que inicia em C e, assim por diante.

A grande vantagem da cifra de Vigenre que ela imune anlise de freqncia. Alm disso, a cifra tem um nmero enorme de chaves. Um criptoanalista no conseguiria decifrar a mensagem procurando todas as chaves possveis, porque o nmero de opes simplesmente grande demais: 2626. A cifra polialfabtica de Vigenre era considerada indecifrvel e tornou-se conhecida pela expresso francesa Le chiffre indchiffablen (A cifra indecifrvel). Finalmente os criptgrafos estavam em vantagem sobre os criptoanalistas. A criptografia estuda mtodos para codificar uma mensagem de forma que apenas seu destinatrio legtimo consiga interpret-la. A possibilidade de comunicao entre computadores pela internet trouxe novos desafios para a criptografia. Por ser relativamente fcil interceptar mensagens enviadas por linha telefnica, torna-se necessrio codific-las, sempre que contenham informaes sensveis, como transaes bancrias ou comerciais, ou at mesmo uma compra feita com carto de crdito. Imagine que uma empresa envia a um banco uma autorizao para uma transao de milhes de reais. Dois problemas imediatamente surgem. Primeiro que preciso proteger a mensagem para que no possa ser lida, mesmo que seja interpretada por uma concorrente, ou por um ladro de bancos. Por outro lado, o banco precisa ter certeza de que a mensagem foi enviada por um usurio da empresa, ou seja, como se a mensagem estivesse assinada. Desta forma, tornou-se necessrio inventar novos cdigos, que mesmo com a ajuda de um computador, fossem difceis de decifrar. Estes cdigos no foram criados para a comunicao entre espies e sim, para o uso em aplicaes comerciais. CAPTULO II Uso de Criptografia em Redes Em relao a informao que trafega em ambientes computacionais, ou seja, na comunicao de dados, podemos garantir a confiabilidade dos dados de diversas maneiras. Ao se basear nas camadas do modelo OSI, podemos ter algumas solues de criptografia para cada uma das camadas. Abaixo, iremos exemplificar as formas de aplicao da criptografia em cada uma das camadas, abrangendo as aplicaes, vantagens e

desvantagens.

2.1 Camada de Enlace Quando existir fragilidade de segurana no meio fsico, aplicamos a criptografia na camada de enlace do modelo RM/OSI. Um dos usos mais comuns em redes wireless, justamente pela fragilidade do meio fsico de transferncia. Nestas situaes todo pacote colocado em quadros criptografados e enviado diretamente ao destinatrio, independente do protocolo de rede utilizado. Quando o destinatrio recebe o quadro, este descriptografa, desempacota e lhe d o destino cabvel. Como a informao viaja dentro de quadros, temos a liberdade de escolha dos protocolos das camadas superiores e a criptografia est presente apenas entre os pontos de enlace onde o protocolo de criptografia est sendo utilizado, de maneira praticamente transparente ao usurio. Tomando como exemplo um link wireless, que aplica criptografia WEP para fazer a ligao de duas redes distintas, todo trfego das camadas superiores que ocorrer entre os dois dispositivos wireless estar criptografado. Os quadros de controle no so cifrados. 2.2 Camada de Rede A criptografia na camada de rede feita atravs da aplicao de protocolos, como o IPSec ao protocolo IP, no caso do IPv6 esse protocolo j nativo. Esta criptografia garante que os dados contidos nas camadas superiores no sero interceptados, garantindo confidencialidade. Esse tipo de criptografia pode ser utilizado em dois modos: no modo transporte onde ele trata diretamente todos ou alguns pacotes trocados entre duas entidades no modo tnel onde todo pacote da camada de rede colocado dentro de outro pacote IP que por sua vez recebe criptografia. Como atua na camada de rede as inferncias necessrias por parte do usurio so mnimas, sendo que muitas vezes estes nem tomam conhecimento de sua existncia.

2.3 Camada de Sesso/Transporte A utilizao de protocolos de criptografia, como o SSL e o TLS, nas camadas de seo e transporte agrega criptografia fim-a-fim, cifrando apenas a informao vinda da camada de aplicao e colocando dentro de pacotes IP que so enviados. Sendo assim uma comunicao especfica, entre duas entidades, criptografada e garantida sua confiabilidade. Porm, ao contrrio da criptografia nas camadas de enlace e rede, o protocolo de criptografia aplicado apenas nas aplicaes especficas e em determinadas situaes. possvel que apenas parte da informao entre cliente e servidor seja cifrada. Geralmente exige autenticao por ambas as partes, tanto o servidor como o cliente devem ter suas identidades conferidas, seja por senhas, certificados ou outra forma. 2.4 Camada de Aplicao A criptografia aplicada camada de aplicao trata os dados em seu formato original, seja um arquivo ou texto. Antes mesmo de serem considerados trfego na rede, pois a camada de apresentao que conduzir os arquivos ou textos para as camadas inferiores que trafegaro na rede. uma implementao de mais alto nvel, porm menos transparente ao usurio. Sendo utilizada, por exemplo, quando se deseja enviar algum arquivo de maneira que somente o destinatrio o compreenda. Alm disso, possvel autenticar esse arquivo garantindo a integridade e a irretratabilidade. Nesta camada a criptografia protege apenas o dado, no ocultando nenhuma outra informao, como o destino desse dado ou o meio por onde sero transportados.

CAPTULO III Algoritmos de Criptografia Os algoritmos de criptografia so divididos conforme o seu mtodo de criptografia. A criptografia pode ser divida em criptografia hash, simtrica, assimtrica ou quntica. Abaixo, iremos detalhar cada uma delas, explorando os seus algoritmos mais comuns e as suas vantagens e desvantagens. 3.1 Criptografia Hash Algoritmo de hashing representa o contedo de um fluxo que visa manter a sua autenticidade e integridade, uma espcie de impresso digital que tambm so conhecidos como digesto. Um hash pode ser comparado com um selo de embalagem que indica clara e inequivocamente se a embalagem j foi aberta ou violada. Consistente em uma sada fixa desta forma, independente do tamanho, forma ou tipo do arquivo, a cdigo gerado ser sempre de um nico tamanho consistente em 32 caracteres em hexadecimal / 128bits tendo tambm, ao contrrio da cifragem, que tida como operao de duas mos, ou seja, consegue-se cifrar e decifrar, o hash, por sua vez, transformam os dados do texto, claro ou cifrado, em uma operao de mo nica. Ou seja, no possvel obter o texto claro a partir de um resultado hash e qualquer alterao efetuada no arquivo, por mnima que seja, altera substancialmente o resultado hash. Exemplo:

Isto ocorre porque, mesmo se apenas um dos bits do arquivo for alterado, muitos bits do resultado sero afetados. Tal ao conhecida, dentro da metodologia, como efeito avalanche. Apesar dos dados no poderem ser recuperados a partir do hash gerado pelo mesmo, a mesma caracterstica que o torna fundamental e aplicvel em vrias reas. 3.1.1 Integridade de Arquivos Qualquer tipo de arquivo, por exemplo, um arquivo de texto ou um programa de computador, um fluxo de dados que produz um resultado hash nico. Quando um arquivo disponibilizado para download, no existe a garantia de que o arquivo baixado seja idntico ao original. Basta que ocorra um pequeno problema durante a transmisso que altere os dados recebidos para que a "cpia" no seja perfeita. Uma das maneiras de poder verificar se o arquivo baixado idntico ao disponibilizado conhecer o hash do arquivo original. 3.1.2 Segurana de Senhas Se um arquivo de senhas for roubado ou um banco de dados com registros de senhas for hackeado, possibilita facilmente acessos indevidos em locais imprprios. Como um hash no reversvel e, para serem usadas, as senhas precisam ser conferidas, muito mais prudente armazenar os resultados hash das senhas do que as prprias senhas. 3.1.3 Existncia de Arquivos em Duplicidade Boa parte dos programas se utiliza deste mtodo para verificar a existncia de arquivos duplicados, uma vez, como falado anteriormente, a numerao obtida do fluxo de dados dos arquivos independente de seu nome.

3.1.4 Assinaturas Digitais Para se obter uma assinatura digital vlida so necessrias duas etapas. A primeira criar um hash do documento. Este hash identifica unicamente e inequivocamente o documento do qual ele se originou. A seguir, o assinante submete o hash a um mtodo criptogrfico usando sua chave privada. Como o hash criptografado s pode ser recuperado usando a chave pblica do assinante, isto comprova a identidade da pessoa que assinou - a chamada assinatura digital - e como o hash recuperado identifica o documento, a assinatura est associada unicamente a este documento. Possibilitando a criao de

340.282.366.920.938.463.463.374.607.431.768.211.456 hashes de 128 bits a possibilidade de que dois conjuntos de dados diferentes produzam o mesmo hash no pode ser ignorada. Esta coincidncia de resultados conhecida como coliso. Existem duas formas bsicas de se diminuir a ocorrncia de colises: aumentando o nmero de bits do resultado hash e criando algoritmos que produzam hashes menos vulnerveis
3.1.5 Resistncia Coliso

A resistncia coliso consiste na busca de um mesmo cdigo hash gerado por um texto completamente diferente. Apesar das infinitas

possiblidades, nada pode garantir outra palavra gere o mesmo cdigo hash. Resistencia pr-imagem

A resistncia de pr imagem mede a dificuldade de criar um conjunto de dados que resulte num determinado valor hash, sem conhecer o texto que o originou.

Resistencia de segunda pr imagem

A resistncia de segunda pr imagem mede a dificuldade de criar um conjunto de dados que resulte num determinado valor hash, conhecendo o texto que o originou. A famlia de SHA (Secure Hash Algorithm) est relacionada com as funes criptogrficas. A funo mais usada nesta famlia, a SHA-1, usada numa grande variedade de aplicaes e protocolos de segurana,

incluindo TLS, SSL, PGP, SSH, S/MIME e IPSec. SHA-1 foi considerado o sucessor do MD5. Ambos tm vulnerabilidades comprovadas.
Algoritmo Tamanho de sada (bits) Tamanho dos blocos (bits) 512 512 512 1024 Comprimento Tamanho das palavras Varreduras (bits) (bits) 64 64 64 128 32 32 32 64 80 80 64 80 Operaes Coliso

SHA-0 SHA-1 SHA-256/224 SHA-512/384

160 160 256/224 512/384

+,and,or,xor,rotl +,and,or,xor,rotl +,and,or,xor,shr,rotr +,and,or,xor,shr,rotr

Sim Com falhas No No

Exemplos de Algoritmos Hash:


1. MD4: Desenvolvido em 1990/91 por Ron Rivest, vrios ataques

foram detectados, o que fez com que o algoritmo fosse considerado frgil.
2. MD5: O MD5 (Message-Digest algorithm 5) um algoritmo de

hash de 128 bits unidirecional desenvolvido pela RSA Data Security, Inc., descrito na RFC 1321, e muito utilizado por softwares com protocolo par-a-par (P2P, ou Peer-to-Peer, em ingls), verificao de integridade e logins. Existem alguns mtodos de ataque divulgados para o MD5.

3.

SHA-1 (Secure Hash Algorithm): Desenvolvido pelo NIST e NSA.

J foram exploradas falhas no SHA.


4. S. L. M. WHIRLPOOL: funo criptogrfica de hash desenvolvida por Paulo Barreto e

por Vincent Rijmen (co-autor do AES). A funo foi projeto NESSIE(Europeu). Foi tambm adotado

recomendada

pelo

pelo ISO e IEC como parte do padro internacional ISO 10118-3. 3.2 Criptografia Simtrica 3.2.1 Histrico A criptografia simtrica o modelo mais antigo de criptografia. Quando da criao da chave simtrica, existia um grande risco nos algoritmos de deciframento, pois, caso um intruso soubesse este algoritmo, ele poderia decifrar uma mensagem cifrada to facilmente quanto o destino. Diante da situao de risco, foi includa uma chave secreta para, junto com o algoritmo de ciframento. 3.2.2 Conceito A criptografia simtrica utiliza uma nica chave (elemento que d acesso mensagem oculta trocada entre duas partes) para ambas as partes e, portanto, deve ser privada. A chave deve ser usada tanto pelo remetente para codificar a mensagem numa ponta, como pelo destinatrio para decodific-la na outra.

. A soluo no uso da criptografia de chave privada prope que quando a origem cifra uma mensagem, ele utilize um algoritmo de ciframento e uma

chave secreta para transformar uma mensagem clara em um texto cifrado. O destino, por sua vez, ao decifrar a mensagem, utiliza o algoritmo de deciframento correspondente e a mesma chave para transformar o texto cifrado em uma mensagem em claro. O intruso, por no possuir a chave secreta, mesmo conhecendo o algoritmo, no conseguir decifrar a mensagem. A segurana do sistema passa a residir no mais no algoritmo e sim na chave empregada. A chave privada dever ser mantida em segredo pela origem e destino. 3.2.3 Vantagens A principal vantagem deste algoritmo a simplicidade, pois esta tcnica apresenta facilidade de uso e rapidez para executar os processos criptogrficos. Se as chaves utilizadas forem complexas, a elaborao de um algoritmo de chave privada se torna bastante fcil, porm as possibilidades de interceptao so correlatas aos recursos empregados, entretanto sua utilizao considervel no processo de proteo da informao, pois quanto mais simples o algoritmo, melhor a velocidade de processamento e facilidade de implementao. Podem ser citadas como vantagens da criptografia simtrica tambm: Velocidade, pois os algoritmos so muito rpidos, permitindo cifrar

uma grande quantidade de dados em pouco tempo. Os algoritmos de chave simtrica so geralmente menos custosos computacionalmente do que os algoritmos de chave assimtrica. As chaves so relativamente pequenas e relativamente simples,

permitindo gerar cifradores; Atinge aos objetivos de confidencialidade e de privacidade,

mantendo os dados seguros. 3.2.4 Desvantagens As principais desvantagens so:

A chave secreta deve ser compartilhada. Como cada par

necessita de uma chave para se comunicar de forma segura, para um uma rede de n usurios, precisaramos de algo da ordem de n chaves, quantidade esta que dificulta a gerncia das chaves; No permite autenticao do remetente, uma vez que qualquer

pessoa poder enviar uma mensagem criptografada com qualquer chave que esteja em seu domnio; No permite o no-repdio do remetente, ou seja, no garante

que um emissor de uma mensagem no ser capaz de negar que tenha enviado uma determinada mensagem; A chave deve ser trocada entre as partes e armazenada de forma

segura, o que nem sempre fcil de ser garantido. 3.2.5 Algoritmos Mais Utilizados 3.2.5.1 - AES uma cifra de bloco adotada como padro de criptografia pelo governo dos Estados Unidos. Espera-se que seja utilizado em todo o mundo e analisada extensivamente, assim como foi seu predecessor, o Data Encryption Standard (DES). O AES foi anunciado pelo NIST (Instituto Nacional de Padres e Tecnologia dos EUA) como U.S. FIPS PUB (FIPS 197) em 26 de Novembro de 2001, depois de 5 anos de um processo de padronizao. Tornou-se um padro efetivo em 26 de Maio de 2002. Em 2006, o AES j um dos algoritmos mais populares usados para criptografia de chave simtrica. O atual padro de criptografia dos EUA se originou de um concurso lanado em 1997 pelo NIST (National Institute of Standards and Technology). Nesse momento havia a necessidade de escolher um algoritmo mais seguro e eficiente para substituir o DES (Data Encryption Standard), que apresentou fragilidades. O novo algoritmo deveria atender a certos pr-requisitos como: ser divulgado publicamente e no possuir patentes; cifrar em blocos de 128 bits

usando chaves de 128, 192 e 256 bits; ser implementado tanto em software quanto em hardware; ter maior rapidez em relao ao 3DES, uma variao recursiva do antigo padro DES. Em 1998, na Primeira Conferencia dos Candidatos AES, apresentaram-se 15 candidatos e, um ano depois, na Segunda Conferencia, foram indicados 5 destes como finalistas: MARS, RC6, Rijndael, Serpent e Twofish. Em 2000, conhecido o vencedor: Rijndael. O algoritmo, criado pelos belgas Vincent Rijmen e Joan Daemen foi escolhido com base em qualidades como segurana, flexibilidade, bom desempenho em software e hardware etc. 3.2.5.1.1 Funcionamento No AES o nmero de rodadas depende do tamanho da chave, sendo Nr igual a 10, 12 e 14, para Nk igual a 4, 6 e 8, respectivamente. O algoritmo possui uma chave principal e, a partir dela, so geradas Nr + 1 chaves, geralmente chamadas de chaves de rodada, pois cada uma ser usada em uma rodada diferente. Alm disso, a prpria chave principal usada antes da primeira rodada. A chave principal alocada em uma matriz de 4 linhas e Nk colunas, e cada chave de rodada agrupada da mesma maneira que o bloco de dados. Em cada etapa, so executados substituies e transposies Substituio de bytes (byte substitution); Permutao de bytes entre grupos (shift rows); Substituio usando matrizes dos grupos (mix collumns); Execuo de um XOR com a chave (add round key); 3.2.5.1.2 RC4 Em 1987, Ron Rivest desenvolveu o algoritmo RC4 para a empresa RSA Data Security, Inc., lder mundial em algoritmos de criptografia. Foi, durante tempos, um segredo comercial muito bem guardado, muito popular, e utilizado

largamente em software, como Lotus Notes, Apple Computers AOCE, Oracle Secure SQL, Internet Explorer, Netscape e Adobe Acrobat. Sete anos depois, surge numa mailing list dedicada criptografia (Cypherpunks) cdigo alegadamente equivalente ao RC4. Utilizadores com cpias legais puderam confirmar a compatibilidade. de realar, no entanto, que esta no a implementao comercial, e, como tal, habitualmente referida como ARC4 (Alleged RC4). As transformaes neste algoritmo so lineares, no so necessrios clculos complexos, j que o sistema funciona basicamente por permutaes e somas de valores inteiros, o que torna este algoritmo muito simples e rpido. Um raro exemplo de Barato, Rpido e Bom. De uma forma geral, o algoritmo consiste em utilizar um array que a cada utilizao tem os seus valores permutados, e misturados com a chave, o que provoca que seja muito dependente desta. Esta chave, utilizada na inicializao do array, pode ter at 256 bytes (2048 bits), embora o algoritmo seja mais eficiente quando menor, pois a perturbao aleatria induzida no array superior. 3.2.5.1.3 Aplicao e segurana Em criptografia, RC4 (ou ARC4) o algoritmo de criptografia de fluxo mais usado no software e utilizado nos protocolos mais conhecidos, como Secure Socket Layers (SSL) (para proteger o trfego Internet) e WEP (para a segurana de redes sem fios. RC4 no considerado um dos melhores sistemas criptogrficos pelos adeptos da criptografia, e em algumas aplicaes podem converter-se em sistemas muito inseguros. No entanto, alguns sistemas baseados em RC4 so seguros o bastante num contexto prtico 3.2.5.2 Algoritmo DES (Data Encryption Standard) O algoritmo DES um algoritmo simtrico de combinao de dois blocos fundamentais na criptografia: substituio e permutao (transposio). O algoritmo deriva sua fora de aplicaes repetidas dessas duas tcnicas, uma no topo da outra, para um total de 16 ciclos.

O algoritmo derivado dos conceitos da teoria de Shannon de informao secreta, publicada em 1949. Shannon identificou duas tcnicas para informao oculta: confuso e difuso. Em confuso, um pedao de informao mudado, ento os bits de sada no possuem nenhuma relao bvia com os bits de entrada. A difuso tenta propagar os efeitos de um bit de texto simples para outros bits no texto cifrado. As duas cifras do DES so substituies e permutaes. As substituies providenciam confuso sistematicamente, substituindo algum bit padro por outro. As transposies, chamadas permutaes no DES, providenciam difuso, reordenando-se os bits. O texto simples afetado por uma srie de ciclos de substituio depois de uma permutao. Embora a complexidade do algoritmo, ele repetitivo, o que o torna adequado para utilizao em um chip de propsito nico. Milhares de chips semelhantes esto disponveis no mercado para uso como componentes bsicos em dispositivos que usam criptografia DES em uma aplicao. Apesar do DES apresentar fraquezas conhecidas, acredita-se que estas fraquezas no limitem a efetividade do algoritmo seriamente. 3.2.5.3 3DES (Triplo Data Encryption Standard) O Triplo Data Encryption Standard o algoritmo DES com trs partes de 56 bits efetivos (8 bits so usados como bits de paridade), o que o torna uma chave de 168 bits muito mais difcil de ser violada. Embora a usabilidade natural do 3DES seja das trs partes de 56 bits, ele pode ser usado apenas com duas partes tornando-se uma chave de 112 bits que no to segura quanto forma usual, porm, mais rpida quando comparada quela por exigir menos processamento para cifrar e decifrar. 3.2.5.4 Outros Algoritmos 3.2.5.4.1 IDEA O International Data Encryption Algorithm (IDEA) foi criado em 1991 por James Massey e Xuejia Lai e possui patente da sua ASCOM Systec. Ele

um algoritmo de 128 bits. O algoritmo estruturado seguindo as mesmas linhas gerais do DES. Mas na maioria dos microprocessadores, uma implementao por software do IDEA mais rpida do que uma implementao por software do DES. O IDEA utilizado principalmente no mercado financeiro e no PGP, o programa para criptografia de e-mail pessoal mais disseminado no mundo. 3.2.5.4.2 Blowfish Algoritmo desenvolvido por Bruce Schneier, que oferece a escolha, entre maior segurana ou desempenho atravs de chaves de tamanho varivel. O autor aperfeioou-o no Twofish. Ele possui de 32 a 448 bits 3.2.5.4.3 Twofish uma das poucas cifras includas no OpenPGP. O Twofish uma chave simtrica que emprega a cifra de bloco de 128 bits, utilizando chaves de tamanhos variveis, podendo ser de 128, 192 ou 256 bits. Ele realiza 16 interaes durante a criptografia, sendo um algoritmo bastante veloz. A cifra Twofish no foi patenteada estando acessvel no domnio pblico, como resultado, o algoritmo Twofish de uso livre para qualquer um utilizar sem restrio. 3.2.5.4.4 RC2 Projetado por Ron Rivest (o R da empresa RSA Data Security Inc.) e utilizado no protocolo S/MIME, voltado para criptografia de e-mail corporativo. Tambm possui chave de tamanho varivel. Rivest tambm o autor dos algoritmos RC4, RC5 e RC6. 3.2.5.4.5 - CAST um algoritmo de cifra de bloco, sendo criado em 1996 por Carlisle Adams e Stafford Tavares. O CAST-128 um algoritmo de Feistel, com 12 a 16 iteraes da etapa principal, tamanho de bloco de 64 bits e chave de tamanho varivel (40 a 128 bits, com acrscimos de 8 bits). Os 16 rounds de iterao so usados quando a chave tem comprimento maior que 80 bits.

3.2.6 Vulnerabilidades da Criptografia Simtrica Como vulnerabilidades conhecidas, podemos citar: Quando a chave de ciframento a mesma utilizada para

deciframento, ou esta ltima pode facilmente ser obtida a partir do conhecimento da primeira, ambas precisam ser compartilhadas previamente entre origem e destino, antes de se estabelecer o canal criptogrfico desejado. Durante o processo de compartilhamento, a senha pode ser interceptada; por isso, fundamental utilizar um canal seguro durante o compartilhamento, independente do destinado comunicao sigilosa, uma vez que qualquer um que tenha acesso senha poder descobrir o contedo secreto da mensagem. Caso a chave utilizada seja curta, por exemplo uma chave de 2

bits, ela pode ser facilmente quebrada, pois basta um intruso testar no mximo 4 diferentes chaves at descobrir o segredo da transmisso. Por realizar operaes matemticas relativamente simples, o tempo computacional gasto pelos algoritmos de chave simtrica satisfatoriamente curto para ser implementado, sem adicionar sobrecarga nos sistemas fsicos atualmente no mercado. No existe um mecanismo de cifragem 100% seguro. Pode-se

tentar quebrar uma chave de vrias maneiras, tais como: Fora bruta (se dispe de um exemplar de uma mesma mensagem original e cifrada, e o algoritmo conhecido, basta tentar com todas as combinaes possveis de chaves at acertar), Cripto-anlise diferencial (para usar esta tcnica, necessrio que se possam cifrar as mensagens que se pretende, em funo de alteraes nessas mensagens e resultados na mensagem cifrada) e Criptoanlise linear (tenta definir a chave por aproximao linear em funo da informao recolhida de pares).

3.3 Criptografia Assimtrica 3.3.1 Histrico A criptografia assimtrica, ou criptografia de chave pblica foi criada em 1973 pelos pesquisadores James H. Ellis, Clifford Cocks, and Malcolm Williamson do GCHQ (Government Communications Headquarters) do Reino Unido. O mtodo pretendia resolver a questo da obrigatoriedade da troca de uma chave nica de encriptao entre o remetente e o destinatrio. No modelo proposto por Cocks e sua equipe, as partes envolvidas na comunicao utilizariam duas chaves diferentes (assimtricas) e

complementares, uma pblica e outra privada. A chave pblica seria enviada pelo destinatrio ao remetente, permitindo assim que esse a utilizasse para criptografar sua mensagem enquanto a chave privada seria mantida em sigilo, apenas em poder do seu titular (nesse caso, o destinatrio). apenas ela, seria possvel descriptografar a mensagem. 3.3.2 Conceito Para entender um pouco melhor esse mtodo, podemos criar um paralelo com uma pessoa (Receptor), com a qual muitas outras querem se comunicar secretamente. Assim, quando o Transmissor quiser dizer algo em secreto para o Receptor, o Receptor lhe enviar um cadeado aberto. Cadeado esse, que apenas ele possui a chave para abrir. O Transmissor escreve sua mensagem, coloca-a em uma caixa e tranca a caixa com o cadeado (chave pblica) enviado pelo Receptor. Ele por sua vez, ao receber, abre o cadeado com sua chave nica (chave privada). Nesse exemplo, o Transmissor pode enviar cpias do seu cadeado (chave pblica) para quantas pessoas forem necessrias, utilizando sempre sua mesma chave (chave privada) para abrir os cadeados. importante ressaltar que mesmo o Transmissor (que possui uma cpia do cadeado) no consegue abri-lo aps ele ter sido trancado (mensagem criptografada), isso s possvel com a chave privada e nica do Receptor. Com ela, e

3.3.3 Vantagens No compartilhamento da chave secreta (privada), pois para a

criptografia, basta-se a utilizao da chave pblica; No repdio, pois sua autenticidade pode ser confirmada; Fornece autenticao, pois possvel validar assinatura com a

chave privada atravs da chave pblica; escalvel, possibilitando que exista uma hierarquia de controle

e distribuio de chaves, que pode ser facilmente ampliada. 3.3.4 Desvantagens uma criptografia pois devido natureza matemtica dos seus

algoritmos, eles so computacionalmente intensivos; Requer uma autoridade de certificao, para que se possa

garantir a identidade e ter chaves pblicas confiveis. 3.3.5 Algoritmos Mais Utilizados 3.3.5.1 RSA O RSA atualmente o algoritmo assimtrico mais amplamente utilizado. Foi nomeado com as iniciais dos seus criadores: Ron Rivest, Adi Shamir e Len Adleman, todos do MIT, aonde ele desenvolvido em 1977. As chaves pblicas e privadas do RSA so construdas a partir da multiplicao de dois nmeros primos grandes, gerando um terceiro nmero. O conceito por trs disso que muito fcil fazer essa multiplicao, mas o processo inverso, conhecido como fatorao, muito mais complexo e demanda uma quantidade de tempo incrivelmente maior. Esse algoritmo utiliza apenas trs frmulas matemticas, uma para gerar suas chaves, uma para encriptar a mensagem e outra para descriptar a mensagem.

Um exemplo da fora do algoritmo RSA foi dado pelo Instituto Nacional de Pesquisa da Holanda, aonde em 1999 com o apoio de cientistas de 6 pases uma chave RAS de 512 bits foi quebrada. Mas, para isso, foram necessrias 300 estaes de trabalho e cerca de 7 meses. 3.3.5.2 ElGamal Criado por Taher Elgamal, um engenheiro eltrico, entre 1984 e 1985, o ElGamal outro algoritmo de chave pblica utilizado para gerenciamento de chaves. Sua matemtica difere da utilizada no RSA. Ao invs de utilizar grandes nmeros primos, o ElGamal conta com algo denominado "problema do logaritmo discreto". essa a sua segurana: A grande dificuldade e consequente enorme quantidade de tempo necessria para se calcular logaritmos discretos em um corpo finito. A encriptao do ElGamal, assim como a do RSA, consiste de tres componentes: o gerador de chaves, o algoritmo de encriptao e um de decriptao. O ElGamal utilizado em diversos produtos de criptografia, entre eles o GnuPG , que o utiliza como padro para assinaturas. 3.3.5.3 Diffie-Hellman Em 1976, Whitfield Diffie and Martin Hellman apresentaram no artigo "New directions in cryptography" o conceito da chave pblica. Criando assim, um dos primeiros algoritmos de chave pblica da histria, o mtodo DiffieHelman. Baseado no problema do logaritmo discreto, o mtodo criado pela dupla o criptossistema de chave pblica mais antigo ainda em uso. Pode ser utilizado para a distribuio de chaves, mas no para cifrar ou decifrar mensagens. 3.3.5.4 Curvas Elpticas Em 1985, Neal Koblitz e V. S. Miller propuseram uma inovao para os

algoritmos de chave pblica, a utilizao de curvas elpticas. Eles no inventaram um novo algoritmo criptogrfico, mas implementaram algoritmos de chave pblica j existentes, como o algoritmo de Diffie e Hellman, usando esse sistema. Os sistemas criptogrficos de curvas elpticas consistem em modificaes de outros sistemas (o ElGamal, por exemplo), que passam a trabalhar no domnio das curvas elpticas, em vez de trabalharem no domnio dos corpos finitos. Eles possuem o potencial de proverem sistemas criptogrficos de chave pblica mais seguros, com chaves de menor tamanho. Assim, fica resolvido um dos maiores problemas dos algoritmos de chave pblica: o grande tamanho de suas chaves. Porm, os algoritmos de curvas elpticas atuais, embora possuam o potencial de serem rpidos, so em geral mais demorados do que o RSA. 3.3.6 Aplicaes 3.3.6.1 Assinatura Digital Uma das grandes aplies da criptografia pblica a assinatura digital, que utilizada para garantir a autenticidade de quem envia mensagem, assim como a integridade do seu contedo. Suponha que o transmissor quer comunicar a o nascimento de seu filho para todos seus amigos (receptores), mas quer ter a garantia de que a mensagem realmente foi enviada por ele e que, mesmo que a mensagem no seja secreta, que ela chegue sem alteraes, como por exemplo, do sexo da criana. Para isso, o transmissor cifra a mensagem com sua chave privada e a envia para todos os receptores. Para que os receptores possam decifrar a mensagem e, assim verificar a sua validade, todos eles devem possuir tambm a chave pblica do transmissor. Assim, fica garantida a autenticidade, integridade e no repudiao da mensagem, pois caso apenas um bit seja modificado no contedo da mensagem, ou se outra pessoa assina-la, o sistema de verificao no ir reconhecer a assinatura digital.

importante salientar que essa forma de utilizao no garante a confidencialidade da mensagem j que qualquer pessoa que possua a chave pblica a poder abrir. Para obter, alem da assinatura digital, a confidencialidade, basta mesclar os dois mtodos. Primeiro o transmissor assina a mensagem, utilizando a sua chave privada. Em seguida, ela criptografa novamente a mensagem, dessa vez utilizando a chave pblica dos receptores. Assim, ao receber a mensagem, o receptor dever primeiramente decrifr-la com sua chave privada, garantindo a privacidade da mensagem e, em seguida, utilizar a chave pblica do transmissor para garantir a autenticidade da mensagem. 3.3.6.2 Protocolo SSL (Security Socket Layer) O protocolo SSL foi desenvolvido para que aplicativos cliente/servidor possam trocar informaes tendo a garantia de que o contedo dessa informao ser mantido integro, seguro e com sua veracidade comprovada. Todas conexes SSL so sempre iniciadas pelo cliente. Quando solicitada a conexo a um site seguro (https), o navegador solicita o envio do Certificado Digital e verifica se o certificado confivel, se o certificado valido e se est de fato relacionado com o site que o enviou. Aps essa etapa de confirmaes, a chave pblica enviada para que as mensagens possam ser trocadas. 3.3.7 Vulnerabilidades Conhecidas Como todo algoritmo, esse tambm pode ser burlado, mesmo que para isso se exija muito tempo. Ataques de fora bruta", aonde utilizando um computador para automatizar a tarefa so testadas exaustivamente todas as chaves possveis para determinado algoritmo, se tornam pouco prticos e eficientes devido a

quantidade de poder computacional e tempo so necessrios para realizar a tarefa . Suponha-se um computador executando um milho de instrues por segundo durante um ano inteiro. Assim, tendo uma chave assimtrica de 512 bits necessitaria de 30 mil computadores executando em paralelo um milho de instruo por segundo para ser quebrada (ou seja, um computador rodando um milho de instrues por segundo levaria 30 mil anos para efetuar a fatorao necessria); uma chave assimtrica de 768 bits demandaria 200 milhes de desses computadores; uma chave assimtrica de 1.024 bits demandaria 300 bilhes; e finalmente, uma chave de 2.048 bits exigiria 300 quinqilhes para ser quebrada. Alguns algoritmos tm sido desenvolvidos com o foco em atacar algoritmos de chave pblica. O RSA e o ElGamal j possuem ataques que so muitas vezes mais velozes do que uma abordagem de fora bruta. Na prtica, essas falhas podem ser evitadas ao se escolher tamanhos de chaves grandes o suficientes para que mesmo o melhor algoritmo de ataque leve tanto tempo para ter uma chance razoavel de "quebrar o cdigo" que simplesmente no se torna "rentavel" para o invasor pelo tempo e dinheiro que ele precisar investir na tarefa. Uma vulnerabilidade em potencial ao se utilizar chaves assimtricas a possibilidade de um ataque "man-in-the-middle" (homem no meio), no qual a comunicao das chaves pblicas interceptada por um terceiro (o "homem no meio") e ento modificada para fornecer chaves pblicas diferentes (para as quais, o invasor possui a chave privada). Para que o mtodo funcione sem levantar suspeitas, necessrio que o invasor consiga interceptar todas as mensagens e respostas, tendo o cuidado de reencripta-las posteriormente utilizando a chave pblica "correta" (a que foi de fato enviada pelo destinatario). Vejamos um exemplo prtico: Transmissor quer se comunicar com o Receptor, para isso, ela lhe envia seu cadeado (chave pblica), durante o percurso do cadeado, um Intruso o intercepta secretamente e troca esse cadeado por um cadeado o qual ele possui a chave (chave privada). O

Transmissor, ao receber o cadeado, o utiliza normalmente para trancar a mensagem e a envia de volta para o Receptor, junto com seu prprio cadeado (chave pblica) para ser utilizado pelo Receptor. Novamente o Intruso intercepta a mensagem, utilizando a sua chave para abrir seu cadeado e ter acesso a mensagem. Aps a mensagem ser lida ele a tranca utilizando o cadeado enviado originalmente pelo Receptor e o encaminha a mensagem. Uma outra forma bastante criativa foi desenvolvida, aonde medido precisamente o tempo que um hardware conhecido demora para encriptar um texto simples e essa informao utilizada para simplificar a busca por possveis chaves de decriptografia. So os chamados ataques "side-channel" aonde outras informaes podem ser analizadas como: consumo de energia do hardware, vazamentos eletromagnticos, analises dos sons produzidos durante a computao. 3.4 Criptografia Quntica A criptografia quntica engloba somente a troca segura de chaves utilizando para isso a mecnica quntica. Por este motivo a criptografia quntica tambm conhecida por Distribuio Quntica de Chaves ou QKD (Quantum Key Distribuition). A criptografia quntica deve ser utilizada em conjunto com outro tipo de criptografia, como a criptografia simtrica ou assimtrica. A criptografia quntica utiliza as propriedades da luz que pode apresentar propriedade corpuscular quanto ondulatria. Experimentos como o Efeito Fotoeltrico realizado por Einstein, quanto o experimento da Radiao do Corpo Negro, realizado por Plank, mostram o comportamento corpuscular da luz. Esse comportamento diz que a luz formada por partculas de tamanho pr-definido e massa zero, essas partculas so chamadas de Ftons. Alm dessa propriedade da luz, a criptografia quntica baseada na polarizao da luz. Segundo Tanenbaum 1997 A criptografia quntica se baseia no fato de que a luz se propaga em pequenos pacotes chamados ftons, que apresentam algumas propriedades peculiares. Alm disso, a luz pode ser polarizada ao passar por um filtro de polarizao. Ao se passar um feixe de ftons por um

filtro polarizante, os ftons que atravessarem este filtro, estaro polarizados com a direo do eixo deste filtro. Uma das propriedades mais importantes da Mecnica Quntica a impossibilidade de cpia da informao (estado) quntica, segundo o teorema da No-Clonagem. Por outro lado, no se pode medir ou obter informao de um estado quntico genrico, do qual no se tenha conhecimento a priori, sem que se perturbe o sistema. A idia da Criptografia Quntica est justamente na utilizao destas propriedades qunticas. Desse modo, se algum espio tentar ler (medir) a informao que est sendo enviada atravs de um canal quntico, ir modific-la, sendo possvel perceber sua presena. Protocolos qunticos para troca de chaves s foram desenvolvidos recentemente, como por exemplo, o BB84. 3.4.1 Protocolo BB84 Este protocolo foi proposto por Bennet e Brassart em 1984. Segundo Tanenbaum 1997 Para gerar uma chave nica, Alice precisa de dois conjuntos de filtros de polarizao. O primeiro conjunto consiste em um filtro vertical e um filtro horizontal. Essa escolha chamada base retilnea. Uma base apenas um sistema de coordenadas. O segundo conjunto de filtros idntico, exceto por estar deslocado 45 graus, de forma que um filtro abrange desde o canto inferior esquerdo at o canto superior direito, e o outro filtro abrange desde o canto superior esquerdo at o canto inferior direito. Essa escolha chamada base diagonal. Utilizando estes dois conjuntos de filtros, o transmissor escolhe nas bases uma direo zero e uma direo um e envia um conjunto de ftons, utilizando estas bases, para o receptor. O receptor utiliza as mesmas bases e tenta adivinhar qual foi a base utilizada para a transmisso. Aps o receptor realizar as medies, o mesmo envia para o transmissor quais foram as bases utilizadas para cada fton e o transmissor responde dizendo quais as bases estavam corretas. Os dois descartam as bases erradas e a chave secreta ser o resultado obtido com as bases corretas. Logo abaixo temos um exemplo em que Alice transmitir dados para Bob e Truddy tentar interceptar a mensagem.

Podemos ver que mesmo Truddy interceptando os ftons enviados por Alice para Bob, ela no consegue obter a chave secreta totalmente. Se algum espio tentar descobrir a chave secreta, ocasionar um aumento significativo de erro na transmisso da chave secreta e com isso, o transmissor e o receptor sabero que h algum invasor no canal e com isso podero fazer outra chave secreta. 3.4.4 Vulnerabilidades Conhecidas Os ataques consistem, basicamente, em tentar realizar uma medida da partcula em trnsito e tentar enviar uma partcula para B tentando se passar despercebido. Em um mundo ideal, isso no possvel devido ao teorema da no-clonagem o qual garante que no se pode obter informao sobre o

estado da partcula sem perturbar o sistema e, como as perturbaes introduzidas podem ser facilmente verificadas por A e B, estatisticamente falando, o uso de estados qunticos para transmitir a informao garantiria segurana absoluta.

No caso da transmisso quntica real, vrios problemas de ordem prtica aparecem. Tais problemas podem criar cenrios favorveis para a montagem de ataques. 3.4.4.1 Uso de ftons individuais A teoria da criptografia quntica consiste em enviar um fton por vez. Na prtica, o que se consegue emitir pulsos de luz de baixa intensidade (pequeno nmero de ftons) para cada bit. Sendo m o nmero de ftons esperado por pulso, um espio pode dividir o pulso em dois pulsos com um ou mais ftons (por exemplo, usando um espelho semi-prateado posicionado em um ngulo de 45 com a direo de propagao do pulso), medindo um dos feixes e deixando o outro passar sem interferncia. Assim, a impossibilidade prtica de conseguir transmitir e medir um fton de cada vez faz com que a segurana absoluta, de que a interferncia gerada por um espio seria necessariamente detectada, seja perdida. O mximo que se pode fazer, em termos de tecnologia atual e protocolo BB84, usar pulsos de luz extremamente fracos. Assim, se E desviar parte do pulso, diminuir o brilho do pulso transmitido para B abaixo do nvel de deteco dos aparelhos do mesmo. 3.4.4.2 Propriedades Fsicas do Canal O segundo problema de ordem prtica refere-se ao fato de as prprias qualidades fsicas do canal podem introduzir erros na transmisso. Assim, impurezas na fibra tica ou mesmo pequenas flutuaes nas suas propriedades ticas podem causar alteraes no estado dos ftons em trnsito, inclusive absorvendo alguns deles e impedindo a deteco por B. Para utilizao de um determinado canal importante conhecer previamente uma estimativa de erros deste canal o que, na prtica, deve ser medido experimentalmente. Intimamente relacionado com isso est a preciso dos detectores usados por B e dos polarizadores usados por A para preparar os ftons a serem enviados. As taxas de erro destes instrumentos, combinadas com a

qualidade da fibra, geraro uma quantidade de erros que pode ser confundida com interceptao pelos usurios do canal. Outro problema, intimamente relacionado a esse, diz respeito ao comprimento mximo da fibra usada. Usando feixes suficientemente fracos, a atenuao da fibra se torna um limitante em termos de distncia e, claro, a deteco e ampliao do sinal fatalmente mudaria o estado dos ftons, inviabilizando a transmisso quntica. 3.4.4.3 Confiabilidade do Canal Quanto aos ataques propriamente ditos, dentre as vrias estratgias disponveis para um espio, alm da diviso do pulso de luz em mais de um feixe, j discutida, deve-se garantir o uso de uma canal de transmisso confivel, ou seja, um canal no qual um espio no possa enviar e/ou alterar dados sem ser detectado. Caso contrrio, fcil ver que o espio poderia simplesmente interromper o canal fisicamente, posicionar seus equipamentos em algum ponto do caminho entre A e B, e se fazer passar por A, enviando ftons para B e, ao mesmo tempo, se fazer passar por B recebendo os ftons interessante notar que o mecanismo de ataque acima descrito, posicionar um transmissor/receptor executando BB84 entre A e B, poderia, em princpio, ser usado para se construir estaes repetidoras entre A e B que seriam seguras desde que efetivamente monitoradas e controladas pelos proprietrios legtimos do canal, aumentando indefinidamente as distncias de transmisso. 3.4.5 Limitaes da Criptografia Quntica Infelizmente com a tecnologia atual, ela s possvel a uma distncia mxima de 70km (utilizando fibra tica de altssima pureza e com um altssimo custo) e algumas centenas de metros utilizando o ar. Hoje em dia h um link quntico nos EUA dedicado entre a Casa Branca e o Pentgono. Tecnologias para um perfeito alinhamento dos polarizadores, fibras pticas mais apropriadas e amplificadores qunticos de sinais esto em desenvolvimento para ampliar a distncia de transmisso.

CAPTULO IV Questes Propostas 1 ) Explique a diferena entre a criptografia simtrica e

assimtrica? A criptografia simtrica utiliza uma nica chave (chave privada) para criptografar e descriptograr a mensagem. O intruso pode at saber o algoritmo utilizado, porm, sem conhecer a chave privada no ir conseguir ler a mensagem. Esta chave deve ficar em poder do transmissor e receptor da mensagem. Na criptografia assimtrica, as partes envolvidas na comunicao utilizariam duas chaves diferentes e complementares, uma pblica e outra privada. A chave pblica seria enviada pelo destinatrio ao remetente, permitindo assim que esse a utilizasse para criptografar sua mensagem enquanto a chave privada seria mantida em sigilo, apenas em poder do seu titular, nesse caso o destinatrio. descriptografar a mensagem. 2 ) Explique a diferena entre a criptografia quntica e os outros tipos de criptografia e porque a criptografia quntica tem que ser usada com algum outro tipo de criptografia? Enquanto os outros tipos de criptografia utilizam mtodos matemticos para a criao da chave de segurana, a criptografia quntica utiliza propriedades fsicas para o mesmo, mais especificamente, a criptografia quntica utiliza a mecnica quntica para a criao da chave de segurana. A criptografia quntica tem que ser usada com algum outro tipo de criptografia pois ela no realiza a criptografia dos dados, ela s realiza a criao da chave de segurana. Por este motivo a criptografia quntica tambm conhecido como Distribuio Quntica de Chaves ou QKD (Quantum Key Distribuition). Com ela, e apenas ela, seria possvel

3 ) Explique o algoritmo de criptografia RSA. O RSA atualmente o algoritmo assimtrico mais amplamente utilizado. Foi nomeado com as iniciais dos seus criadores: Ron Rivest, Adi Shamir e Len Adleman, todos do MIT, aonde ele desenvolvido em 1977. As chaves pblicas e privadas do RSA so construdas a partir da multiplicao de dois nmeros primos grandes, gerando um terceiro nmero. O conceito por trs disso que muito fcil fazer essa multiplicao, mas o processo inverso, conhecido como fatorao, muito mais complexo e demanda uma quantidade de tempo incrivelmente maior. Esse algoritmo utiliza apenas trs frmulas matemticas, uma para gerar suas chaves, uma para encriptar a mensagem e outra para descriptar a mensagem. 4 ) Em qual camada de rede deve ser utilizada a criptografia

quando houver fragilidade de segurana no meio fsico? Quando houver fragilidade de segurana no meio fsico, deve ser utilizada a criptografia na camada de enlace. Um exemplo seria a rede wireless pela fragilidade do meio fsico utilizado para a transferncia. 5 ) Porque o mtodo de cifras de substituio considerado falho? Pois analisando a frequncia em que cada smbolo aparece no texto criptografado junto com a frequncia que cada letra usada em determinada lngua podemos descobrir o que cada smbolo representa e assim descriptografar a mensagem. Analisando, por exemplo, uma mensagem codificada na lngua portuguesa, pode-se dizer que o smbolo mais freqente na mensagem corresponde letra A. Analogamente, o segundo smbolo mais frequente corresponde letra E, e assim por diante. Vale observar que h letras que aparecem com a mesma frequncia, mas substituindo os smbolos mais

frequentes torna-se mais fcil decifrar o restante, justamente por conhecer o idioma da mensagem e, consequentemente, suas palavras. 6 ) Explique a criptografia Hash. um algoritmo baseado no fluxo de dados do arquivo que gera um cdigo "nico" aps o seu calculo que baseia-se em algoritmo de disperso e apresentada em uma base hexadecimal. 7 ) Explique o algoritmo de criptografia AES e como ele foi criado. O atual padro de criptografia dos EUA se originou de um concurso lanado em 1997 pelo NIST (National Institute of Standards and Technology). Nesse momento havia a necessidade de escolher um algoritmo mais seguro e eficiente para substituir o DES (Data Encryption Standard), que apresentou fragilidades. No AES o numero de rodadas depende do tamanho da chave, sendo Nr igual a 10, 12 e 14, para Nk igual a 4, 6 e 8, respectivamente. O algoritmo possui uma chave principal e, a partir dela, so geradas Nr + 1 chaves, geralmente chamadas de chaves de rodada, pois cada uma ser usada em uma rodada diferente. Alm disso, a prpria chave principal usada antes da primeira rodada. A chave principal alocada em uma matriz de 4 linhas e Nk colunas, e cada chave de rodada agrupada da mesma maneira que o bloco de dados. Em cada etapa, so executados substituies e transposies Substituio de bytes (byte substitution); Permutao de bytes entre grupos (shift rows); Substituio usando matrizes dos grupos (mix collumns); Execuo de um XOR com a chave (add round key); 8 ) Explique a criptografia na camada de aplicao. A criptografia aplicada camada de aplicao trata os dados em seu formato original, seja um arquivo ou texto. Antes mesmo de serem

considerados trfego na rede, pois a camada de apresentao que conduzir os arquivos ou textos para as camadas inferiores que trafegaro na rede. uma implementao de mais alto nvel, porm menos transparente ao usurio. Sendo utilizada, por exemplo, quando se deseja enviar algum arquivo de maneira que somente o destinatrio o compreenda. Alm disso, possvel autenticar esse arquivo garantindo a integridade e a irretratabilidade. Nesta camada a criptografia protege apenas o dado, no ocultando nenhuma outra informao, como o destino desse dado ou o meio por onde sero transportados.

Bibliografia TANENBAUM, Andrew S. Redes de Computadores. Traduo do original Computer Network. 3 ed. 1997. Campus: Rio de Janeiro, RJ. COMER, Douglas E. Redes de Computadores e Internet. Traduo do original Computer Network and Internets with Internet Applications 4 ed. 2007. Porto Alegre: Bookman OLIVEIRA, Ronielton R. Criptografia Simtrica e Assimtrica - Os Principais Algoritmos de Cifragem SOARES, Luiz Fernando G. Redes de Computadores: das LANs, MANs e WANs s redes ATM. Luiz Fernando Gomes Soares, Guido Lemos e Sergio Colcher 2 ed. 1995. Campus: Rio de Janeiro, RJ. SOUZA, Lindeberg Barros de Redes de Computadores: Dados, Voz e Imagem. 8 ed. 2005. rica: So Paulo, SP. OLIVEIRA, Anderson. Criptografia Usando Protocolos Qunticos. Disponvel em: < http://www.ginux.ufla.br/files/mono-AndersonOliveira.pdf>. Acesso em: 20 de agosto de 2012. PAPANI, Fabiana. Um Pouco da Histria da Criptografia. Disponvel em:<http://projetos.unioeste.br/cursos/cascavel/matematica/xxiisam/artigos/16. pdf >. Acesso em: 18 de agosto de 2012. WIKIPEDIA. Public Key Cryptography. Disponvel em:<

http://en.wikipedia.org/wiki/Public-key_cryptography >. Acesso em: 20 de agosto de 2012. SCHLEMER, Elgio. Segurana em Redes. Disponvel em: <

http://www.inf.ufrgs.br/~elgios/trabs-html/redes/seg_rede.html >. Acesso em: 18 de agosto de 2012.

MAIA, Luis. Criptografia e Certificao Digital. Disponvel em: < http://www.training.com.br/lpmaia/pub_seg_cripto.htm >. Acesso em: 21 de agosto de 2012. WIKIPEDIA. Side Channel Atack. Disponvel em: <

http://en.wikipedia.org/wiki/Side_channel_attack >. Acesso em: 23 de agosto de 2012. AUSTREVE, Von. Criptografia RSA, Algoritmos e Implementaes. Disponvel em: < http://0fx66.com/blog/programacao/criptografia-rsa-algoritmose-implementacoes/ >. Acesso em: 23 de agosto de 2012. M., Vtor. SSL (Security Socket Layer). Disponvel em: < http://pplware.sapo.pt/informacao/ssl-secure-socket-layer/ >. Acesso em: 21 de agosto de 2012.

Anda mungkin juga menyukai