Criptografia e Aplicações

10,599 views
10,352 views

Published on

Conceitos de criptografia e aplicações.

Published in: Technology
0 Comments
22 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
10,599
On SlideShare
0
From Embeds
0
Number of Embeds
33
Actions
Shares
0
Downloads
1
Comments
0
Likes
22
Embeds 0
No embeds

No notes for slide

Criptografia e Aplicações

  1. 1. FATEC-SP 1º Semestre 2009 <ul><li> </li></ul><ul><li>“  ”  </li></ul>
  2. 2. FATEC-SP 1º Semestre 2009 <ul><li>Criptografia e Segurança da Informação </li></ul><ul><li>“ A mente humana não pode conceber uma cifra que a mente humana não possa resolver ” Edgar Allan Poe </li></ul>
  3. 3. SRL <ul><li>Profº Msc. Ramses Henrique Martinez </li></ul><ul><li>Edgar </li></ul><ul><li>Nichols </li></ul><ul><li>Victor </li></ul><ul><li>Wune </li></ul><ul><li>σ Ramon </li></ul><ul><li>δ David </li></ul>
  4. 4. Agenda <ul><li>Histórico da Criptografia </li></ul><ul><li>Algoritmos Criptográficos </li></ul><ul><li>DES </li></ul><ul><li>RSA </li></ul><ul><li>Hashs </li></ul><ul><li>Aplicações de criptografia </li></ul>
  5. 5. O que é Criptografia? <ul><li>O termo Criptografia surgiu da fusão das palavras gregas &quot;Kryptós&quot; e &quot;gráphein&quot;, que significam &quot;oculto&quot; e &quot;escrever&quot;, respectivamente. O objetivo da criptografia é que informações trocadas por dois meios não sejam facilmente lidas por algum possível interceptador. </li></ul>
  6. 6. História da Criptografia <ul><li>Antigo Egito </li></ul><ul><li>De acordo com pesquisadores, a criptografia foi usada pela primeira vez há mais ou menos a 4500 atrás. </li></ul>
  7. 7. História da Criptografia <ul><li>Esparta </li></ul><ul><li>O método mecânico mais antigo de codificação que se conhece é a chamada E scitala , que era de uso militar e foi utilizada durante a guerra entre Atenas e Esparta no século V a. C.  </li></ul>
  8. 8. História da Criptografia <ul><li>Júlio César </li></ul><ul><li>As mensagens eram transportadas por mensageiros e às vezes só chegavam dias depois ao seu destino. Por vezes esses mensageiros eram capturados no meio do caminho por seus inimigos e, para evitar que suas mensagens secretas fossem lidas, César criou uma forma de codificação que consistia em tornar as mensagens algo aparentemente sem sentido. </li></ul>
  9. 9. História da Criptografia <ul><li>Blaise de Vigenére – (1523 a 1596) </li></ul><ul><li>Texto: ATACARBASESUL </li></ul><ul><li>Chave: LIMAOLIMAOLIM </li></ul><ul><li>Texto cifrado: LBMCOCJMSSDCX </li></ul>
  10. 10. História da Criptografia <ul><li>Segunda Guerra Mundial </li></ul><ul><li>Os nazistas criaram uma máquina chama Enigma. Essa máquina se parecia com uma máquina de escrever antiga e, continha engrenagens de metal que se encaixavam complexamente umas nas outras e transformavam uma mensagem em um texto cifrado. Essas mensagens cifradas pelo Enigma só podiam ser decifradas por outra máquina Enigma calibrada exatamente como a máquina onde foi criada a mensagem </li></ul>
  11. 11. História da Criptografia <ul><li>Claude Shannon (1948) </li></ul><ul><li>Criador da Teoria da informação e transmissão de sinais digitais, baseados em seqüências de zeros e uns. Estabeleceu o esquema de transmissão de informação hoje clássico, com uma mensagem que parte de uma fonte, é codificada e emitida por um transmissor, passa por um canal de comunicação, sofre perturbações designadas por ruídos, e chega depois ao receptor, passando por um sistema de decodificação. </li></ul>
  12. 12. Algoritmos <ul><li>Definição : “É uma função matemática utilizada para cifrar e decifrar um determinado dado.” </li></ul><ul><li>Simétricos: A criptografia simétrica ou convencional se utiliza de uma mesma chave para encriptar e decriptar as mensagens ou utiliza uma chave para encriptar e outra para decriptar, mas obter uma chave da outra é um processo trivial. </li></ul><ul><li>Assimétricos ou de chave pública: </li></ul><ul><li>Os algoritmos assimétricos se utilizam duas chaves, uma privada, que deve ser mantida secreta, e outra pública que deve ser divulgada. </li></ul>
  13. 13. Algoritmos Simétricos <ul><li>Características: </li></ul><ul><li>Ambas as chaves precisam ser </li></ul><ul><li>compartilhadas previamente entre origem e destinatário, antes de se estabelecer o canal criptográfico desejado; </li></ul><ul><li>São algoritmos computacionalmente rápidos, se comparados com os algoritmos assimétricos; </li></ul>
  14. 14. Algoritmos Simétricos <ul><li>Características: </li></ul><ul><li>A chave deve ser trocada entre as partes e armazenada de forma segura, o que nem sempre é fácil de ser garantido; </li></ul><ul><li>A criptografia simétrica não garante a identidade de quem enviou ou recebeu a mensagem (autenticidade e não-repudiação); </li></ul><ul><li>Ex: DES, AES,RC4, Máquina Enigma </li></ul>
  15. 15. DES <ul><li>O Data Encryption Standard (DES) é o algoritmo simétrico mais disseminado no mundo. Foi criado pela IBM em 1977 e, apesar de permitir cerca de 72 quadrilhões de combinações (256), seu tamanho de chave,64 bits (56 para a chave e 8 para paridade) é considerado pequeno, tendo sido quebrado por &quot;força bruta&quot; em 1997 em um desafio lançado na Internet. </li></ul><ul><li>DES é tipo de cifra em bloco, ou seja, um algoritmo que toma uma string de tamanho fixo de um texto plano e a transforma, através de uma série de complicadas operações, em um texto cifrado de mesmo tamanho. </li></ul>
  16. 16. DES <ul><li>Antes dos rounds principais, o bloco é dividido em duas metades de 32 bits e processado alternadamente; este cruzamento é conhecido como &quot;esquema de Feistel&quot;. A estrutura de Feistel garante que a encriptação e desencriptação sejão processos bem similares - a única diferença é que as subchaves são aplicadas de modo reverso ao descriptografar, o resto do algoritmo é idêntico </li></ul>
  17. 17. DES <ul><li>Algoritmo de Feistel </li></ul><ul><li>Expansão - o bloco de 32 bits (metade do bloco) é expandido para 48 bits usando a permutação expansiva , representada pelo E no diagrama, através da duplicação de alguns bits. </li></ul><ul><li>Mistura de chaves - o resultado é combinado com uma subchave usando uma operação XOR. Dezesseis subchaves de 48 bits - uma para cada round - são derivadas da chave principal utilizando o agendamento de chaves </li></ul>
  18. 18. DES <ul><li>Algoritmo de Feistel </li></ul><ul><li>Substituição - após trocar a subchave, o bloco é dividido em oito pedaços de 6 bits antes do processamento pelo box de substituição ou S-box . Cada um dos oito S-boxes substitui os seis bits de entrada por quatro bits de saída de acordo com uma transformação não-linear, fornecida por uma lookup table . Os s-boxes fornecem o núcleo da segurança do DES - sem eles, a cifra seria linear e quebrada de forma trivial. </li></ul><ul><li>Permutação - finalmente, as 32 saídas das S-boxes são rearranjadas de acordo com uma permutação fixa, o P-box . </li></ul>
  19. 19. DES <ul><li>O Agendamento de chaves gera as subchaves. </li></ul><ul><li>56 bits da chave são selecionados dos 64 iniciais para a troca PC-1 - os oito bits restantes são, ou descartados, ou utilizados como bits de paridade. Os 56 bits são então divididos em dois blocos de 28 bits; </li></ul>
  20. 20. DES <ul><li>Cada metade é tratada separadamente. Em rounds sucessivos, as duas metades são rotacionadas à esquerda por um ou dois bits (especificado para cada round), e então uma subchave de 48 bits é selecionada para a troca PC-2 - 24 bits da metade esquerda e 24 da metade direita. As rotações (representadas como &quot;<<<&quot; no diagrama) significam que um conjunto diferente de bits foi usado em cada subchave; cada bit é usado em aproximadamente 14 das 16 subchaves. </li></ul><ul><li>O agendamento de chaves para descriptografar é similar - as subchaves estão em ordem reversa, se comparadas com a encriptação. Exceto por essa diferença, todo o processo é o mesmo da encriptação. </li></ul>
  21. 21. Algoritmos Assimétricos <ul><li>Características: </li></ul><ul><li>Os algoritmos assimétricos se utilizam duas chaves, uma privada, que deve ser mantida secreta, e outra pública que deve ser divulgada. Os algoritmos assimétricos mais conhecidos são o RSA, Diffie-Hellman, El Gamal e criptografia assimétrica por curvas elípticas. </li></ul>
  22. 22. Algoritmos Assimétricos <ul><li>Características: </li></ul><ul><li>Não é possível descobrir a chave pública através da chave secreta e vice-versa. Neste ponto encontra-se uma das propriedades mais importantes dos algoritmos de chave pública, juntamente com a capacidade de uma chave pública de decriptar uma mensagem encriptada pela chave privada e vice-versa. </li></ul><ul><li>São utilizados para se obter transações eletrônicas seguras </li></ul>
  23. 23. RSA <ul><li>RSA é um algoritmo de encriptação de dados, que deve o seu nome a três professores do Instituto MIT, Ron Rivest, Adi Shamir e Len Adleman; </li></ul><ul><li>Fundamenta-se em teorias clássicas dos números; </li></ul><ul><li>A RSA de 512 Bits já conseguiu ser quebrada por algoritmos complexos. </li></ul>
  24. 24. Funcionamento RSA <ul><li>Escolha de forma aleatória dois números primos grandes P e Q </li></ul><ul><li>Compute N = P*Q </li></ul><ul><li>Compute a função D = (P-1)*(Q-1). </li></ul><ul><li>Encontrar o valor de E na faixa 1 < = e < = (p – 1)(q – 1) tirando da fórmula ED = 1( mod( P – 1)( Q – 1)) ; </li></ul><ul><li>Sendo assim é conhecida a chave pública, formada pelo par de inteiros ( E , N ); </li></ul><ul><li>Representar a mensagem M que será transmitida como um inteiro na faixa { 1,........ N ); se a mensagem M for muito grande, deve-se colocá-la em blocos; </li></ul><ul><li>Criptografar M num criptograma C da seguinte forma: </li></ul><ul><li>C = M*E (mod N) ; </li></ul><ul><li>Decriptografar M utilizando a chave privada d e a fórmula D = CD (mod N) . </li></ul>
  25. 25. Hashs <ul><li>A criptografia hash permite que, através de uma string de qualquer tamanho, seja calculado um identificador digital de tamanho fixo, chamado de valor hash . O valor hash geralmente é formado por 16 bytes (no caso do MD-2, MD-4 e MD- 5) ou 20 bytes (no caso do SHA-1), mas pode se estender, embora não passe de 512 bytes. </li></ul><ul><li>Uma função hash é dita &quot; one-way ” pois uma vez obtido o valor hash h para uma string x , é computacionalmente impossível fazer o processo inverso, ou seja, encontrar um valor x tal que H ( x ) = h. </li></ul>
  26. 26. Hashs <ul><li>Diz-se ainda que H(x) é livre de colisão, significando que as funções hash devem garantir uma probabilidade mínima de que duas strings diferentes acabem por resultar no mesmo valor hash . Qualquer alteração na string original que deu origem ao identificador digital, mesmo que de um único bit, acabará por gerar uma alteração significativa no valor hash final. </li></ul><ul><li>Alguns exemplos de Algoritmos Hashs: </li></ul><ul><li>SHA, MD5. </li></ul>
  27. 27. Aplicações de Criptografia <ul><li>Certificado Digital : é um documento que contém a chave pública de uma pessoa (física ou jurídica) e os dados necessários para garantir sua identidade. </li></ul>
  28. 28. Aplicações de Criptografia <ul><li>Assinatura Digital: A assinatura digital faz uso dos conceitos de chave pública e privada. E funciona da seguinte maneira: é necessário que o usuário tenha um documento eletrônico e a chave pública do destinatário (um usuário pode ser tanto uma pessoa quanto uma instituição qualquer). Através de programas apropriados, o documento é então criptografado de acordo com a chave pública. </li></ul>
  29. 29. Aplicações de Criptografia <ul><li>A assinatura digital utiliza-se do conceito de “função hashing”, onde, a função hashing analisa todo o documento e gera um valor de tamanho fixo para o arquivo. Esse valor, conhecido como “valor hash”, é calculado com base nos caracteres do documento. Isso deixa claro que o arquivo em si não precisa, pelo menos teoricamente, ser criptografado (caso não seja algo secreto), mas sim acompanhado do valor hash. </li></ul><ul><li>Depois de gerado o hash, ele deve ser criptografado através de um sistema de  chave pública , para garantir a autenticação e o não-repúdio. O autor da mensagem deve usar sua  chave privada  para assinar a mensagem e armazenar o hash criptografado junto a mensagem original. </li></ul>
  30. 30. Resumo Assinatura Digital <ul><li>Processo de Assinatura Digital </li></ul>
  31. 31. Webgrafia <ul><li>http://hsw.com.br </li></ul><ul><li>http://pt.wikipedia.org/wiki/Seguran%C3%A7a_da_informa%C3%A7%C3%A3o </li></ul><ul><li>http://sosmatematica.com.sapo.pt/mundomatematico/criptografia.htm </li></ul><ul><li>http://pt.wikipedia.org/wiki/AES </li></ul><ul><li>http://www.redes.unb.br/security/criptografia/rsa/rsa.html#c-%20funcionamento%20do%20RSA </li></ul><ul><li>http://pt.wikipedia.org/wiki/Criptoan%C3%A1lise </li></ul><ul><li>http://pt.wikipedia.org/wiki/DES </li></ul><ul><li>http://pt.wikipedia.org/wiki/RSA </li></ul>
  32. 32. Webgrafia <ul><li>http://www.gta.ufrj.br/grad/07_1/ass-dig/TiposdeCriptografia.html </li></ul><ul><li>http://denialaccess.blogspot.com/2008/05/criptografia.html </li></ul><ul><li>http://www.numaboa.com/index.php?option=com_content& </li></ul><ul><li>view=article&id=553&Itemid=57 </li></ul><ul><li>http://starbase.cs.trincoll.edu/~crypto/historical/intro.html </li></ul><ul><li>http://www.nsa.gov/kids/home.cfm </li></ul><ul><li>http://cs-exhibitions.uni-klu.ac.at/index.php?id=277 </li></ul><ul><li>http://www.lsi.usp.br/~elima/seguranca_cripto.html </li></ul><ul><li>http://pt.wikipedia.org/wiki/Criptografia </li></ul>

×