Tópicos Avançados de Redes de Computadores
description
Transcript of Tópicos Avançados de Redes de Computadores
Tópicos Avançados de Tópicos Avançados de Redes de ComputadoresRedes de Computadores
ProfProf.. Fabiano Sabha Fabiano Sabha
CriptografiaCriptografia
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 3
História da CriptografiaHistória da Criptografia
A palavra criptografia vem do grego Kryptos, que significa “oculto”, “escondido” e de grapho, “escrita”. A melhor tradução, então, seria “escrita oculta”.
Desde que a humanidade lida com a palavra escrita, a necessidade de se escrever de forma que apenas determinadas pessoas possam ler. Para isso, diversas técnicas foram criadas, assim como técnica ira tentar driblar estes mecanismos.
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 4
História da CriptografiaHistória da Criptografia
O estudo da criptografia é chamado de criptologia, enquanto os esforços para quebrá-la são conhecidos como criptoanálise
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 5
Criptografia:Criptografia:
kriptós = escondido, oculto;grápho = grafia ESCRITA OCULTA
Criptologia:Criptologia:
Estudo da Criptografia Criptoanálise: Criptoanálise:
“Engenharia Reversa” da criptografia. Tentativas de “quebra” de criptografia.
Alguns termos...Alguns termos...
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 6
Esteganografia:Esteganografia: Capacidade de esconder mensagens secretas em um meio, de maneira que as mesmas passem despercebidas, como por exemplo, uma mensagem embutida em um arquivo de imagem.
Alguns termos...Alguns termos...
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 7
A conversão de informações sigilosas em algo sem sentido chamamos de encriptação.
Equivalente a encriptar, podemos usar os temos codificar, criptografar e cifrar. Para converter as voltas das informações em algo legível, realizamos o processo de decriptação. Equivalente ao termo decriptação, podemos usar os termos decodificar, decriptografar e decifrar.
Universo da CriptografiaUniverso da Criptografia
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 8
Para cifrar ou decifrar, utilizamos um algoritmo.
Algoritmo é uma receita ou procedimento passo a passo, uma lista de instruções a serem feitas em uma determinada ordem. Normalmente um algoritmo matemático utilizado na criptografia utiliza fórmulas matemáticas desde as mais simples até as complexas.
Pode-se apenas manipular bits ou usar fórmulas e mecanismos complexos para cifrar a informação.
Universo da CriptografiaUniverso da Criptografia
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 9
Mais termos ...Mais termos ...
Texto Claro ou Texto Simples:Texto Claro ou Texto Simples:
dados que queremos manter em sigilo Texto CifradoTexto Cifrado
dados criptografados
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 10
Algoritmo – Regra geralAlgoritmo – Regra geral
Seja T o texto original da mensagem;
Seja Ck( ) o algoritmo de critpografia, parametrizado pela chave k, Ck(T) é então o texto criptografado
Seja Dk( ) o algoritmo para descriptografar, ele usa a mesma chave k; então:
T = Dk(Ck(T))T = Dk(Ck(T))
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 11
Casos de CriptografiaCasos de Criptografia
A criptografia é um dos recursos mais importantes para proteção da informação, seja qual for o método para transformar uma informação legível em algo ilegível. A criptografia surgiu com a necessidade de garantir a confidencialidade da informação, seja ela acessada localmente ou em um trânsito.
Em 1900 a.c., Em 1900 a.c., os egípcios já utilizavam uma forma de criptografia que consistia num método simples de substituição dos hieróglifos com objetivo de confundir o interceptador de uma mensagem cifrada.
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 12
Casos de CriptografiaCasos de Criptografia
300 a.c. - 300 a.c. - Artha-sastra, um livro atribuído para Kautilya, foi escrito na Índia. Ele descrevia alguns processos criptoanálise, processo para quebra de código. 50 a.c. - 50 a.c. - Júlio César cria o famoso método de substituição, conhecido como “Cifra de César”. 1553 d.c. - 1553 d.c. - Giovan Belaso idealiza o conceito de uso de uma “password”, que seria utilizada pra cifrar e decifrar um texto.
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 13
Casos de CriptografiaCasos de Criptografia
- O rádio é inventado. Esse fato foi um relevante para criptografia, pois, durante os tempos de guerra, as comunicações poderiam ser interceptadas em massa. Nessa época, nascia a profissão criptoanalistas, decifradores de mensagens cifradas. 1917 - 1917 - Britânicos especialistas em criptografia, “quebram” o chamado “Telegrama de Zimmerman”, um método de comunicação utilizado pelos alemães durante a primeira guerra. Essa conquista favoreceu os Estados Unidos mudando a história da guerra.
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 14
Casos de CriptografiaCasos de Criptografia
1918 - 1918 - Os EUA empregam índios americanos da tribo de Choctaw para retransmitirem informações confidenciais em canais de comunicação inseguros. Como essa língua nativa era extremamente complexa e difícil de aprender, isso permitia um simples e efetivo mecanismo de criptografia. 1923 - 1923 - Arthur Scherbius, inventor da máquina Enigma, vende seu produto aos alemães que passam a utilizar na Segunda Guerra pra cifrar as comunicações militares. 1930 - 1930 - Os Britânicos desenvolvem uma maquina semelhante á Enigma, chamada TYPEX.
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 15
Casos de CriptografiaCasos de Criptografia
1937 - 1937 - Os japoneses inventam uma maquina de criptografia chamada Purple. Os EUA, através de Willian Friedmam, quebram o código gerado por essa máquina. 1939 - 1939 - Os aliados conseguem adquirir uma maquina Enigma depois de a inteligência polonesa ter conseguido capturar uma dessas maquinas alemã. 1940 - 1940 - “The Bombe”, uma maquina que decodificava mensagens geradas pela Enigma, foi inventada.
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 16
Casos de CriptografiaCasos de Criptografia
1939-42 -1939-42 - Uma vez que a máquina Enigma teve seu código “quebrado”, a batalha no Atlântico foi conquistada, fragilizando o domínio alemão, preservando-se muitas vidas a partir daí. 1942 - 1942 - Os EUA usam os Navajos, similares ao Choctaws. Informações importantes eram transmitidas na língua dos Navajos, dificultando o entendimento pelo inimigo. 1970 - 1970 - A IBM desenvolve a cifra “ Lúcifer”, que utiliza o algoritmo 3-DES, amplamente aceito no mundo e relativamente seguro.
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 17
Casos de CriptografiaCasos de Criptografia
1976 - 1976 - Surge o conceito de criptografia de chave-pública. 1977 - 1977 - Ronald Rivest, Adi Shamir e Leonard Adleman inventam o algoritmo de chave-pública RSA. 1990 - 1990 - Matemáticos as Suíça inventam o algoritmo IDEA (International Data Encryption Algorithm) para substituir o DES. IDEA usa 128 bits, 1991 - 1991 - Pretty Good Privacy (PGP) é atualizado por Phil Zimmerman, um americano. Atualmente esse algoritmo é muito utilizado principalmente na internet.
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 18
A importância da CriptografiaA importância da Criptografia
Além da confiabilidade, a criptografia pode ser utilizada também para garantir a integridade da informação. Através de algoritmos específicos podemos verificar se a informação não foi alterada, garantindo, assim, a integridade da mesma. Por fim, a criptografia pode ser utilizada também para garantir o não-repúdio,não-repúdio, também chamado de irretratabilidade.
Esse recurso tem uma aplicação forte no âmbito legal, utilizado para que as pessoas honrem a palavra através de suas “assinaturas digitais”.
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 19
Tipos de CriptografiaTipos de Criptografia
Substituição (cifra de césar)
O sistema utiliza a técnica de substituição simples. Na substituição simples cada letra da mensagem é substituída por letra ou símbolo. No caso de César a substituição é por outra letra, seguindo um deslocamento padrão (3):
Exemplo:Exemplo:
A = DB = EC = FD = GE = H
M – PE – HN – QS – VA – DG – JE – HM – P
Desta forma a Palavra “Mensagem”É Grafada
PHQVDJHP PHQVDJHP
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 20
Tipos de CriptografiaTipos de Criptografia
As substituições simples são vulneráveis a uma técnica de criptoanálise chamada Análise de Freqüência.
A analise de freqüência verifica os símbolos ou letras que aparecem mais no texto. De acordo com a língua de origem da mensagem, pode-se tentar substituir estes símbolos por letras de acordo com a freqüência em que eles aparecem no Em casos como César, porém, em que a substituição segue um padrão, o processo é ainda mais simples.
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 21
Tipos de CriptografiaTipos de Criptografia
Em 1586, Blaise de Vigenère escreveu um livro sobre cifras no qual publica sua Cifra de Vigenère . Esta cifra, baseada em César, traz como inovação a utilização de uma palavra como chave, de tamanho variável.
A substituição das letras do texto original acontece de acordo com a letra correspondente da chave, como no exemplo a seguir:
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 22
Tipos de CriptografiaTipos de Criptografia
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 23
Tipos de CriptografiaTipos de Criptografia
Chave : MUITOChave : MUITOTexto Claro: OUTROTexto Claro: OUTRO
Texto Cifrado: AOBKCTexto Cifrado: AOBKC
Deslocamento:Deslocamento:M – 12M – 12U – 20U – 20I – 8I – 8T – 19T – 19O – 14O – 14
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 24
Tipos de CriptografiaTipos de Criptografia
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 25
Tipos de CriptografiaTipos de Criptografia
Transposição As cifras alteram a posição das letras da mensagem, embaralhando-as segundo um padrão e fazendo com que apenas quem conhece este padrão consiga ler a mensagem. Cifras desde tipo são imunes à análise de freqüência, pois as letras que compõem a mensagem e o texto cifrado continuam as mesmas:
Exemplo: (texto cifrado)Exemplo: (texto cifrado)
OHORASECAESCNNNDALOOCIOTAPIOCSAORTNOHORASECAESCNNNDALOOCIOTAPIOCSAORTN
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 26
Tipos de CriptografiaTipos de Criptografia
Texto em claro: Texto em claro: Encontro às cinco horas no páteo da escola
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 27
Tipos de CriptografiaTipos de Criptografia
Transposição Na Grécia antiga, por exemplo, foi criado o Bastão Licurgo. A técnica consistia em enrolar uma tira de couro um em um bastão, para, depois, se escrever a mensagem ao lado deste. Depois desenrolando a tira, a mensagem ficava ilegível. Para que fosse possível lê-la, era necessário, enrola-la novamente no bastão. O “segredo”, ou chave, neste caso, era a própria técnica em si, e o bastão.
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 28
Tipos de CriptografiaTipos de Criptografia
Bastão Licurgo
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 29
Tipos de CriptografiaTipos de Criptografia
Os sistemas de transposição mais comum são os geométricos lineares e colunares. Consistem na colocação da mensagem em matrizes de tamanho variável, linha a linha, e a retirada do texto cifrado coluna a coluna (sistema colunar), ou vice e versa (sistema linear).
Texto cifrado: (chave = 3 [3 colunas])TED (1ª linha) ESI (2ª linha) XCD (3ª linha) TOO (4ª linha) ON – (5ª linha) = TEDESIXCDTOOON –
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 30
Criptografia ModernaCriptografia Moderna
Os sistemas modernos de criptografia não devem ser capazes de encriptar apenas texto, mas também imagens, áudio, vídeo. É necessária então, a capacidade de encriptar dados em formato binário. O tamanho da informação também não é conhecido de antemão.
Os algoritmos modernos de criptografia são divididos em duas famílias, aqueles que fazem Criptografia Simétrica Criptografia Simétrica e aqueles que fazem Criptografia AssimétricaCriptografia Assimétrica. Sistemas de criptografia simétrica utilizam a mesma chave para encriptar e para decriptar os dados. Além disso, os algoritmos de criptografia trabalham em dois modos, em blocobloco e em fluxo.
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 31
Criptografia ModernaCriptografia Moderna
Algoritmo de Bloco : Algoritmo de Bloco : Possuem tamanho fixo (64 bits) das informações que entram e saem. Para trabalharem tamanhos maiores dividem a informação.
Algoritmo de Fluxo: Algoritmo de Fluxo: Trabalham bit a bit (ou byte a byte), não havendo necessidade de completar as informações até um determinado tamanho. Algoritmos de fuxo, são mais complexos operacionalmente, mas trazem vantagens em termos de “performace”, sendo indicados para situação em que há necessidade de criptografia “on the fly”, como em streaming de vídeo e áudio.
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 32
Algoritmos SimétricosAlgoritmos Simétricos
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 33
Algoritmos SimétricosAlgoritmos Simétricos
DES – Data Encryption Standard O DES foi criado pela IBM, na década de 70, com nome origem de Lúcifer. Seu fundamento foi criado de forma a otimizar implementações em hardware, e foi desenvolvido originalmente para trabalhar com chaves de 128 bits de tamanho.
A NSA, agencia de segurança internacional americana, modificou o algoritmo para torná-lo mais resistente a ataques de uma técnica conhecida como Análise Diferencial , desconhecida na época, e reduziu o tamanho da chave para 56 bits .
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 34
Algoritmos SimétricosAlgoritmos Simétricos
Essa modificação acabou tornando-se cara demais, pois atualmente, o DES está sendo substituído devido ao pequeno tamanho de sua chave. O DES é um algoritmo de bloco (64 bits) e trabalha realizando uma serie de substituições (baseadas em matrizes conhecidas como S-boxes) e transposições, em 16 rodadas de modificação da informação.
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 35
Algoritmos SimétricosAlgoritmos Simétricos
3DES – Triple DES Com o passar do tempo, a chave de 56 bits do DES passou a não ser suficientemente grande para tornar ataques de Força Bruta improdutivos. Computadores relativamente baratos podem testar todas as possibilidades de uma chave de 56 bits (2.56 = 72057594037927936 possibilidades), tornando-o inseguro para uso em situações como comércio eletrônico e proteção de informações confidenciais.
Uma forma de minimizar o problema é a execução repetida dos DES para cada bloco, com chaves diferentes.
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 36
Algoritmos SimétricosAlgoritmos Simétricos
Desta forma, foi criado o padrão 3DES, que consiste no uso do DES 3 vezes para cada bloco. Com 3 chaves diferentes, gera-se uma chave efetiva de 168 bits. Normalmente, utiliza-se o 3DES nas seguintes configurações:EDE ( encripta, decripta, encripta)EEE ( encripta, encripta, encripta) Através da utilização da mesma chave nos passos 1 e 2, pode-se trabalhar também com chaves de 112 bits, A “performace” do 3DES, contudo, fica prejudicada, uma vez que são necessárias 3 execuções de DES para cada bloco, tornando-o 3 vezes mais lento que o DES.
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 37
Algoritmos SimétricosAlgoritmos Simétricos
AES – Advanced Encryption Standard Devido à fragilidade do DES, foi realizado um processo de seleção de um novo algoritmo para ser utilizado com padrão, o AES.
O processo envolveu diversos algoritmos, de diversas partes do mundo. Após uma avaliação detalhada de cada um dos concorrentes, foi selecionado como vencedor o algoritmo belga Rijndael.
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 38
Algoritmos SimétricosAlgoritmos Simétricos
O novo AES é capaz de trabalhar com chaves e blocos de 128, 192 e 256 bits. O algoritmo foi projetado de forma a ter alta “performance” em qualquer uma das formas a operar, e é capaz de tirar proveito de máquinas multiprocessadas.
Análises iniciais mostram que o AES é resistente aos ataques de análise diferencial.
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 39
Algoritmos AssimétricosAlgoritmos Assimétricos
A criptografia assimétrica difere da criptografia simétrica com relação às chaves utilizadas nos processos de criptografia e descriptografia. Na criptografia simétrica, a mesma chave é utilizada nos dois processos. Na assimétrica, são chaves diferentes. Esta característica traz diversas vantagens de troca de chaves, o maior problema no uso da criptografia simétrica. Para possibilitar a criação de algoritmos com essas características, são utilizadas diferentes técnicas matemáticas. Um dos recursos mais utilizados por esses algoritmos são os números primos.
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 40
Algoritmos AssimétricosAlgoritmos Assimétricos
Diffie-Hellman O primeiro passo em direção a criptografia assimétrica foi dado por dois pesquisadores, Whitfield Diffie e Martin Hellman, em 1974. Diffie e Hellman pensaram em uma situação na qual duas partes quisessem se corresponder de maneira segura com caixas trancadas por cadeado, sem fazer troca antecipada de chaves.
O Sistema Diffie-Hellman é implementado em diversos protocolos de comunicação segura, como o sistema de troca de Chaves IKE (Internet Key Exachange), utilizado em VPN’s IPSEC.
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 41
Algoritmos AssimétricosAlgoritmos Assimétricos
Texto ClaroTexto Claro
Texto CifradoTexto Cifrado
DecriptarChave Privada
EncriptarChave Pública
Principal Característica: Uso de Duas ChavesPrincipal Característica: Uso de Duas Chaves
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 42
Algoritmos de Resumo DigitalAlgoritmos de Resumo Digital
Não usam chave!
Funções usadas em criptografia garantem que não é possível a partir de um valor de hash retornar à informação original.
Os algoritmos em si não são secretos, Mas são usados em segurança!
É uma função matemática que recebe uma entrada de tamanho arbitrário produz um número (pequeno) como saída.
É possível que várias mensagens gerem o mesmo hash, mas deve ser difícil encontrar tal par
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 43
Algoritmos de Resumo DigitalAlgoritmos de Resumo Digital
Funções de sentido único ( One-Way) São funções matemáticas nas quais não é possível saber qual a entrada a partir do resultado, ou seja: Se y = F(x), não é possível conhecer x a partir de y Uma boa analogia às funções de sentido único é a mistura de tintas. Uma vez misturada tintas de diferentes cores, não é possível voltar às cores originais.
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 44
Algoritmos de Resumo DigitalAlgoritmos de Resumo Digital
Os algoritmos de hash são mais eficientes, em termos de velocidade, que os algoritmos de chave pública
Algoritmos mais usados em Hash:
MD5 – Message Disgest 5Saída de 128 bitsCriado por Ron Rivest SHA – 1 ( Secure Hash Algorithm)Saída de 160 bits Padrão FISPS do Nist
Tópicos Avançados de Redes de Computadores - Prof. Fabiano Sabha 45
Algoritmos de Resumo DigitalAlgoritmos de Resumo Digital
Funções de hasting são úteis quando precisamos gerar “resumos” da informação, que serão utilizados posteriormente para identificar eventuais modificações.
Um arquivo de 1 mb, por exemplo, gera um hash X. Se alterarmos apenas um bit dês de arquivo, o hash será completamente diferente de X , indicando que houve alteração.