O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.
Conceitos de Criptografia
   e o protocolo SSL


    TchêLinux Ulbra Gravataí
      http://tchelinux.org/gravatai

       ...
Introdução
●   Início da Internet
    –   poucas pessoas
    –   uso restrito
    –   relação de confiança
    –   inciden...
Introdução
●   Internet cresce e explode nos anos 90
●   Internet passa a ser opção de negócios
    –   Porém ela não foi ...
Problemas de Segurança


A       B                    S



                Internet


C       D
Problemas de Segurança


●   Pacotes passam por vários pontos
    –   técnicas de roteamento IP
●   Pacotes podem ser:
   ...
Modelo TCP/IP

             ● FTP, HTTP, POP
Aplicação    ● Identificação de serviços




             ● TCP/UDP: garantia...
Técnicas de violação de dados
                           (nível de enlace)

             ●   Sniffer
                  –  ...
Técnicas de Violação de Dados
                  (Nível de Rede e Transporte)

             ●   IP spoofing
Aplicação      ...
Técnicas de Violação de Dados
                          (Aplicação)


              ●   Captura de senhas de aplicação
Apl...
Teoria do Caos
●   A Internet é totalmente insegura
    –   todo mundo vê
    –   todo mundo mexe
    –   ninguém tem cert...
Soluções
●   Melhorar a segurança
    –   Nível de Enlace: uso de switches
         ●   Melhora, mas não resolve
    –   S...
Princípios de Criptografia
●   usada até mesmo em guerras medievais
    –   cifra de César
    –   Variação da César: chav...
Ataques à criptografia
●   Criptoanálise: descobrir fragilidades
    –   Exemplo: análise de freqüência
●   Força Bruta: D...
Tipos de Criptografia

●   Algoritmos Simétricos
    –   apenas uma chave
    –   A mesma para cifrar de para decifrar
●  ...
Algoritmos Simétricos de Bloco
●   Simétricos: uma mesma chave
    –   usa­se k para cifrar um bloco
    –   usa­se o mesm...
Algoritmos de Bloco
             Bloco 1            Bloco 2           Bloco 3             Bloco 4         Bloco 5




    ...
Algoritmos Simétricos de Fluxo
●   Simétricos: uma mesma chave
●   Porém pode cifrar bit a bit
    –   não precisa de um b...
Estudo de caso: RC4
Chave K

                      Gerador de Bits                                       Gerador de Bits  ...
Força dos algoritmos Simétricos
●   Caso AES (simétrico)
    –   128 bits de chave
    –   2128  possíveis chaves = 340.28...
Tipos de Criptografia

●   Algoritmos Simétricos
●   Algoritmos Assimétricos
    –   uma chave é usada para cifrar
    –  ...
Algoritmos Assimétricos
●   usa­se uma chave ke para cifrar
●   porém, usa­se outra chave kd para decifrar
●   inviável de...
Uso da criptografia
●   Uso de algoritmos Assimétricos
●   Servidor fornece sua chave pública (Ke)
    –   mas mantém segr...
Problemas

●   Algoritmos Assimétricos são onerosos
    –   alto custo de processamento
    –   operações não suportadas p...
Estudo de Caso: RSA
   Para cifrar:        Ke = (173, 2237243)        Para decifrar: 
        e              Kd = (25829, ...
Força dos algoritmos Assimétricos
●   Caso RSA (assimétrico)
    –   512 bits de chave
         ●   significa N de 512 bit...
Complicações dos Assimétricos
●   Demorado mesmo com otimizações (Demonstrar)
●   números além da capacidade da ULA
●   Po...
Problemas na comunicação
●   Não existe garantia de autenticidade
    –   Ataque do Homem do meio

A                      ...
Problemas na comunicação
●   Não existe garantia de autenticidade
    –   Ataque do Homem do meio

A                      ...
Solução
●   Assinar a chave pública
    –   Cliente deve confiar em quem assina
    –   inviável falsificar assinatura
●  ...
Protocolo SSL

●   Servidor:
    –   cria par de chaves Ke e Kd
    –   Pede que certificadora assine a pública Ke
       ...
Protocolo SSL

●   Cliente:
    –   recebe chave Ke do servidor
    –   verifica assinatura
    –   cria chave de sessão k...
Protocolo SSL
●   No início do protocolo, cliente e servidor decidem quais 
    algoritmos irão usar
●   Muitas opções:
  ...
Conclusões
●   Protocolo SSL é seguro
    –   desde que seja verificada autenticidade
    –   certificadoras permitem aute...
Conclusões
                            (continuação)

●   Possível usar SSL sem certificadora
    –   SSH por exemplo
    ...
Conclusões
                            (continuação)

●   Homem do meio é mais sofisticado
    –   na prática, enviar emai...
Conclusões
                                    (continuação)

●   Outros assuntos de criptografia
    –   Algoritmos de HA...
Conclusões
                                (continuação)

●   Algoritmos Assimétricos são seguros?
●   Desafio:
    –   P ...
Conceitos de Criptografia e o
                protocolo SSL

                      Elgio Schlemer



             http://g...
Próximos SlideShares
Carregando em…5
×

Conceitos de Criptografia e o protocolo SSL - Elgio Schlemer

2.657 visualizações

Publicada em

Publicada em: Tecnologia, Negócios
  • DOWNLOAD THIS BOOKS INTO AVAILABLE FORMAT (Unlimited) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download Full EPUB Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... ACCESS WEBSITE for All Ebooks ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download EPUB Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download doc Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Responder 
    Tem certeza que deseja  Sim  Não
    Insira sua mensagem aqui

Conceitos de Criptografia e o protocolo SSL - Elgio Schlemer

  1. 1. Conceitos de Criptografia e o protocolo SSL TchêLinux Ulbra Gravataí http://tchelinux.org/gravatai Elgio Schlemer Ulbra Gravatai http://gravatai.ulbra.tche.br/~elgio 31 de Maio de 2008
  2. 2. Introdução ● Início da Internet – poucas pessoas – uso restrito – relação de confiança – incidente com Morris Worm – segurança ganha atenção: nasce o CERT
  3. 3. Introdução ● Internet cresce e explode nos anos 90 ● Internet passa a ser opção de negócios – Porém ela não foi concebida para isso – possui muitos problemas de segurança – não ideal para relações de sigilo e confiança
  4. 4. Problemas de Segurança A B S Internet C D
  5. 5. Problemas de Segurança ● Pacotes passam por vários pontos – técnicas de roteamento IP ● Pacotes podem ser: – lidos (interceptados), alterados ou falsificados – Forjados: TCP/IP não provê autenticação
  6. 6. Modelo TCP/IP ● FTP, HTTP, POP Aplicação ● Identificação de serviços ● TCP/UDP: garantia (ou não) de entrega Transporte ● identificação de processos ● IP: Roteamento Rede ● Identificação de máquinas (número IP) ● Ethernet Enlace ● Identificação de placas de rede (número MAC)
  7. 7. Técnicas de violação de dados (nível de enlace) ● Sniffer – Ferramenta para olhar pacotes alheios Aplicação – Solução: instalar switches? Transporte ● Sniffer sobre switch: – arp spoofing, mac flooding, mac spoofing, icmp  Rede redirect, dhcp spoofing são alguns exemplos de  técnicas para switches Enlace
  8. 8. Técnicas de Violação de Dados (Nível de Rede e Transporte) ● IP spoofing Aplicação – Falsificação de um número IP – finge ser outra máquina (autenticação!!) Transporte ● captura de sessões (TCP) Rede ● Solução:  Enlace – Regras de firewall (não 100%)
  9. 9. Técnicas de Violação de Dados (Aplicação) ● Captura de senhas de aplicação Aplicação – através de sniffers Transporte ● DNS spoofing Rede – falsificação de DNS – atender pelo domínio Enlace
  10. 10. Teoria do Caos ● A Internet é totalmente insegura – todo mundo vê – todo mundo mexe – ninguém tem certeza de quem é quem ● neste cenário coloca­se comércio eletrônico!!
  11. 11. Soluções ● Melhorar a segurança – Nível de Enlace: uso de switches ● Melhora, mas não resolve – Segurança Física ● só pessoas autorizadas – Introduzir segurança na Aplicação ● através do uso de criptografia
  12. 12. Princípios de Criptografia ● usada até mesmo em guerras medievais – cifra de César – Variação da César: chave k ● segredo na chave ● texto legível para quem conhece k
  13. 13. Ataques à criptografia ● Criptoanálise: descobrir fragilidades – Exemplo: análise de freqüência ● Força Bruta: Descobrir a chave – testar todas as possibilidades para k – Se chave de 16 bits = 216  possibilidades = 65536 ● um PC testanto 1000 por segundo levaria 1 minuto
  14. 14. Tipos de Criptografia ● Algoritmos Simétricos – apenas uma chave – A mesma para cifrar de para decifrar ● Simétricos podem ser: – De bloco – De fluxo
  15. 15. Algoritmos Simétricos de Bloco ● Simétricos: uma mesma chave – usa­se k para cifrar um bloco – usa­se o mesmo k para decifrar o bloco – Só pode cifrar um bloco inteiro ● não tem bloco inteiro? – espera mais dados – preenche com padding
  16. 16. Algoritmos de Bloco Bloco 1 Bloco 2 Bloco 3 Bloco 4  Bloco 5 PADDING 64 bits 64 bits 64 bits 64 bits  32 bits 32 bits arquivo 288 Bytes Chave K Chave K Chave K Chave K Chave K CIFRA CIFRA CIFRA CIFRA CIFRA Bloco 1 Bloco 2 Bloco 3 Bloco 4 Bloco 5 64 bits Cifrado 64 bits Cifrado 64 bits Cifrado 64 bits Cifrado 64 bits Cifrado arquivo CIFRADO com 320 Bytes (incluindo Padding)
  17. 17. Algoritmos Simétricos de Fluxo ● Simétricos: uma mesma chave ● Porém pode cifrar bit a bit – não precisa de um bloco – Usa XOR!! ● Ex: RC4
  18. 18. Estudo de caso: RC4 Chave K Gerador de Bits Gerador de Bits Chave K Pseudo Aleatório Pseudo Aleatório mesmos bits "aleatórios"  bits "aleatórios"  bits da mensagem  para XOR ...0101011 ...0101011 a ser transmitida para XOR ...0001110 ...0001110 XOR ...0100101 XOR Mensagem Mensagem Recuperada bits da mensagem  cifrada
  19. 19. Força dos algoritmos Simétricos ● Caso AES (simétrico) – 128 bits de chave – 2128  possíveis chaves = 340.282.366.920.938.463.463.374.607.431.768.211.456 – Força bruta: bilhões de anos – Com 256 bits, segurança eterna ● estima­se que nem todo o silício do Universo seria suficiente para  construir uma máquina que quebrasse 256 bits simétricos
  20. 20. Tipos de Criptografia ● Algoritmos Simétricos ● Algoritmos Assimétricos – uma chave é usada para cifrar – outra chave é usada para decifrar
  21. 21. Algoritmos Assimétricos ● usa­se uma chave ke para cifrar ● porém, usa­se outra chave kd para decifrar ● inviável deduzir kd de ke e vice­versa ● tornar ke pública e kd privada ● Distribui­se livremente ke ● Exemplos: RSA, DSA, El­Gamal, etc
  22. 22. Uso da criptografia ● Uso de algoritmos Assimétricos ● Servidor fornece sua chave pública (Ke) – mas mantém segredo quanto a privada (Kd) ● Cliente cifra dados com Ke do servidor ● Envia os dados cifrados ● Servidor abre com Kd
  23. 23. Problemas ● Algoritmos Assimétricos são onerosos – alto custo de processamento – operações não suportadas pela ULA ● Estudo de caso: algoritmo RSA de 32 bits – Ke = (e,n)  =>  Ke = (173, 2237243) – Kd = (d,n)  =>  Kd = (25829, 2237243)
  24. 24. Estudo de Caso: RSA Para cifrar:  Ke = (173, 2237243) Para decifrar:  e  Kd = (25829, 2237243) d  C= (Msg) mod n Msg = (C) mod n ● Cifrar o caractere 'A' (ASCII 65) – 65173 mod 2237243 = 1420954 ● Recuperar o 'A' (Decifrar): – 142095425829 mod 2237243 = 65 (aprox. 9 seg)
  25. 25. Força dos algoritmos Assimétricos ● Caso RSA (assimétrico) – 512 bits de chave ● significa N de 512 bits, logo P e Q são de 256 bits ● Achar P de 256 bits não significa testar 2256 bits! – Assimétrico precisam de chave muito maior para serem  seguros (atualmente pelo menos 1024 bits) ● Simétrico de 128 bits: ÓTIMO ● Assimétrico de 128 bits: PÉSSIMO
  26. 26. Complicações dos Assimétricos ● Demorado mesmo com otimizações (Demonstrar) ● números além da capacidade da ULA ● Porque não se usa Simétrico? – como estabelecer uma chave k comum? ● Solução: – usar o assimétrico apenas para trocar chave – cifrar tráfego com simétrico
  27. 27. Problemas na comunicação ● Não existe garantia de autenticidade – Ataque do Homem do meio A B Chave Pub de B? E
  28. 28. Problemas na comunicação ● Não existe garantia de autenticidade – Ataque do Homem do meio A B Ch av e P ? ub e B  de E Ke b d  B  B  (  de u fa ?  P lso Ke e av ) d Ch e B
  29. 29. Solução ● Assinar a chave pública – Cliente deve confiar em quem assina – inviável falsificar assinatura ● Certificadoras: – Como cartórios digitais
  30. 30. Protocolo SSL ● Servidor: – cria par de chaves Ke e Kd – Pede que certificadora assine a pública Ke ● gera um certificado (várias informações) – envia Ke assinada por uma certificadora para cliente
  31. 31. Protocolo SSL ● Cliente: – recebe chave Ke do servidor – verifica assinatura – cria chave de sessão k – cifra k com Ke do servidor – envia k cifrada com Ke
  32. 32. Protocolo SSL ● No início do protocolo, cliente e servidor decidem quais  algoritmos irão usar ● Muitas opções: – DES, 3DES, AES128, AES256, RC4, etc – Preferência por algoritmos de fluxo – Importante: algoritmos de bloco como o AES também  funcionam como fluxo (conversão) ● Demonstração com Navegador
  33. 33. Conclusões ● Protocolo SSL é seguro – desde que seja verificada autenticidade – certificadoras permitem autenticação – quem escolhe "confiar" nas certificadoras é o  fabricante do meu navegador – certificados são pagos!! – qualquer um pode ser uma certificadora
  34. 34. Conclusões (continuação) ● Possível usar SSL sem certificadora – SSH por exemplo – certos cuidados ● Navegador informa assinatura inválida – desconhecimento propicia Homem do Meio – muitos continuam navegando
  35. 35. Conclusões (continuação) ● Homem do meio é mais sofisticado – na prática, enviar emails funciona – as pessoas clicam nos links falsos ● Ideal seria cliente ter par de chaves – Bancos fazem isto para empresas – usuários exigira treinamento
  36. 36. Conclusões (continuação) ● Outros assuntos de criptografia – Algoritmos de HASH ● assinaturas digitais ● banco de dados ● senhas de sistema operacional (Viva o Linux) – Assinaturas digitais ● pela inversão do assimétrico
  37. 37. Conclusões (continuação) ● Algoritmos Assimétricos são seguros? ● Desafio: – P multiplicado por Q resulta em N. – Se N = 39.351.741.689.270.519 – Quais os valores de P e Q? ● DICA: P e Q são de 32 bits. ● Hoje se usa P e Q de, pelo menos, 512 bits
  38. 38. Conceitos de Criptografia e o protocolo SSL Elgio Schlemer http://gravatai.ulbra.tche.br/~elgio http://www.vivaolinux.com.br/artigos/verArtigo.php?codigo=7812

×