Introdução


                                                                             Redes de Computadores
     Insti...
Princípio Básico de Funcionamento                                                                                         ...
Problemas de gerenciamento com chaves                                                                                     ...
Ciclo de vida de um certificado digital                                                                                   ...
Secure Socket Layer (SSL)                                                                                                 ...
Funcionamento SSL (handshake)                                                                                             ...
Próximos SlideShares
Carregando em…5
×

Aula29 extra

537 visualizações

Publicada em

Publicada em: Educação
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
537
No SlideShare
0
A partir de incorporações
0
Número de incorporações
2
Ações
Compartilhamentos
0
Downloads
27
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Aula29 extra

  1. 1. Introdução Redes de Computadores Instituto de Informática - UFRGS Aspectos de segurança em TCP/IP Secure Socket Layer (SSL) Instituto de Informática - UFRGS A. Carissimi -9-déc.-09 “Na Internet, ninguém sabe que você é um cachorro.” Aula 29 Peter Steiner, The New Yorker, julho 1993 Redes de Computadores 2 Aspectos de segurança em redes de computadores Criptografia ! Em segurança da informação é importante garantir três aspectos: ! Arte de codificar e decodificar mensagens de forma que a ! Confidencialidade decriptação seja impossível ! Integridade ! Disponibilidade ! Porém há outras duas correlacionadas: autenticidade e não repúdio "##$ decodificação ! Uso de criptografia auxilia na obtenção dessas propriedades %&'( Texto Puro Instituto de Informática - UFRGS Instituto de Informática - UFRGS codificação )*+$ ,+- ! Criptografia simétrica #.,/ Texto Puro decriptação ! Criptografia assimétrica A. Carissimi -9-déc.-09 A. Carissimi -9-déc.-09 Texto Puro Redes de Computadores 3 Redes de Computadores 4
  2. 2. Princípio Básico de Funcionamento Chaves Simétricas ! Codificação (cifrar): ! Uma mesma chave empregada pelo ! Determinar uma função f que a partir de um texto puro ( P) se obtém um texto remetente e pelo destinatário Texto cifrado (C) com ajuda de uma chave Kc ! Chave utilizada para codificar e decodificar os dados f (Kc , P) : P a C ! Usuários são responsáveis pela “proteção”da chave "##$ %&'( ! Problema de gerenciamento e distribuição Instituto de Informática - UFRGS Instituto de Informática - UFRGS )*+$ ,+- ! Decodificação (decifrar): das chaves #.,/ ! Permitir a operação inversa a partir de uma chave Kd ! Codificação e decodificação rápidas ! Empregado desde 1970 f (K , C) = P ou f ( K d , f ( K c , P)) = P A. Carissimi -9-déc.-09 A. Carissimi -9-déc.-09 d ! Algoritmo popular: K c = K d → simétrica ! DES (Data Encryption Standard) K c ≠ K d → assimétrica Texto Redes de Computadores 5 Redes de Computadores 6 Chaves Assimétricas Chave Pública e Privada ! Duas chaves distintas: "##$ "##$ %&'( %&'( ! Pública e Privada )*+$ )*+$ Texto ,+- ,+- ! Codificação e decodificação exige #.,/ #.,/ poder computacional maior que com Tom Laura chaves simétricas Texto codificado com a chave pública de Laura só pode ser decodificado com a chave privada de Laura. ! Facilita gerenciamento e distribuição "##$ %&'( das chaves Instituto de Informática - UFRGS Instituto de Informática - UFRGS )*+$ ,+- "##$ "##$ ! Chave pública é conhecida de todos #.,/ %&'( %&'( )*+$ )*+$ ! Chave privada é mantida secreta por ,+- #.,/ ,+- #.,/ seu proprietário Tom Laura ! Algoritmo popular: A. Carissimi -9-déc.-09 A. Carissimi -9-déc.-09 Texto codificado com a chave privada de Laura só pode ser ! RSA (Rivest-Shamir-Adleman) decodificado com a chave pública de Laura. Texto Como saber a chave pública de Laura ?? Redes de Computadores 7 Redes de Computadores 8
  3. 3. Problemas de gerenciamento com chaves Public Key Infraestrutura: Certificado Digital ! Número de chaves a serem mantidas Laura gera um par de chaves pública e privada e divulga a ! Simétrica: número de chaves = n2 chave pública através do registro de um certificado. ! Assimétrica: um par de chaves por usuário Laura ! Onde armazená-las? ! Como distribuí-las Certificado Instituto de Informática - UFRGS Instituto de Informática - UFRGS Laura Chave pública: Serial #1234567890 Expiração: 30/12/02 Assinado: AC A. Carissimi -9-déc.-09 A. Carissimi -9-déc.-09 Tom Tom solicita a chave pública de Laura para codificar dados a serem enviados a Laura. Redes de Computadores 9 Redes de Computadores 10 Certificados digitais Autoridade Certificadora e Autoridade de Registro 1. Solicitação de certificado ! Autoridade certificadora (AC) Autoridade Certificadora ! Responsável por emitir, renovar, revogar e gerenciar certificados digitais. 2a. Chave privada ! Cria e assina digitalmente os certificados emitidos Alice 2b. Emissão ! Emite listas de certificados revogados (LCR) ! Garante que o titular do certificado possui a chave privada que Certificado corresponde à sua chave pública Instituto de Informática - UFRGS Instituto de Informática - UFRGS 3. Solicitação de Alice ! Mantém registros de suas operações certificado Chave pública: Serial #1234567890 ! Autoridade de registro (AR) Expiração: 30/12/02 Assinado: CA ! Responsável pelo processo final na cadeia de certificação digital, realizando A. Carissimi -9-déc.-09 A. Carissimi -9-déc.-09 a identificação presencial dos interessados em adquirir certificados, 4. Recuperação do cerficado, coletando os documentos e encaminhando-os à Autoridade Certificadora isto é, da chave pública do correspondente. Redes de Computadores 11 Redes de Computadores 12
  4. 4. Ciclo de vida de um certificado digital PKI: Algumas Empresas Empresa Site Requisição Baltimore www.baltimore.com CertCo www.certco.com Certisign www.certisign.com.br CyberSafe Corp. www.cybersafe.com Digital Signature Trust Co. www.didsigtrust.com Expiração Validação da www.entrust.com requisição Entrust Technologies Inc. Instituto de Informática - UFRGS Instituto de Informática - UFRGS GTE CyberTrust www.cybertrust.com IBM Corp. www.ibm.com Microsoft Corp. www.microsoft.com www.nai.com Revogação Emissão Network Associates Inc. Rainbow Technologies Inc. www.rainbow.com A. Carissimi -9-déc.-09 A. Carissimi -9-déc.-09 Security Dynamics Technologies Inc. www.securitydynamics.com VeriSign Inc. www.verisign.com Xcert Int’l. Inc. www.xcert.com Uso Redes de Computadores 13 Redes de Computadores 14 Segurança e protocolos TCP/IP Protocolos orientados a segurança ! Constatação: os protocolos Internet (TCP/IP) não seguros! ! Necessidade de inserir garantias para segurança da informação Aplicação ! Duas “correntes” ideológicas: fim a fim versus infra-estrutura de rede PGP ... HTTPS SSMTP Transporte ! Corrente “fim a fim”: SSL ! Camada de aplicação: processo origem cifra e/ou protege integridade dos dados e os envia para o destino que executa a decifração e/ou verificação TCP Instituto de Informática - UFRGS Instituto de Informática - UFRGS ! Desvantagem: aplicação necessita “estar ciente” Rede IPsec IPv4 ! Camada de transporte (ou imediatamente acima – nova, sessão e/ou apresentação): tornar a segurança transparente para a aplicação (ex. SSL) Hardware A. Carissimi -9-déc.-09 A. Carissimi -9-déc.-09 ! Corrente “infra-estrutura de rede”: ! Camada de rede: autentica e/ou cifra os datagramas sem envolver as aplicações (ex. IPsec) Redes de Computadores 15 Redes de Computadores 16
  5. 5. Secure Socket Layer (SSL) Arquitetura SSL ! Desenvolvido originalmente pela Netscape. ! Conjunto de algoritmos de cifragem e opções distintas ! Versão 3.0 foi publicada como draft da Internet ! Compactação ! Base para a definição do Transport Layer Security (TLS) ! Restrições quanto a chaves e uso ! TLS é compatível com SSL versão 3.0 ! Projetado para fornecer cifragem de dados entre um cliente e um servidor web Instituto de Informática - UFRGS Instituto de Informática - UFRGS ! Não é limitado a web ! Organizado em duas camadas de protocolos: HTTPS (443) ! Protocolos específicos empregado no gerenciamento do SSL A. Carissimi -9-déc.-09 A. Carissimi -9-déc.-09 Aplicação Aplicação SSMTP(465) ! Usado no estabelecimento SSL/TLS SSL/TLS POP (995) ! SSL Record Protocol IMAP (993) TCP TCP ! Empregado na utilização de uma conexão segura Redes de Computadores 17 Redes de Computadores 18 Características SSL Protocolo Handshake ! Apresentação mútua ! Parte mais complexa do SSL. ! Negociação do algoritmo de cifragem (DES, IDEA, etc) e de chave de sessão ! Possibilita a autenticação mútua de clientes e servidores. ! Autenticação do servidor ao cliente e do cliente ao servidor (opcional) ! Negocia codificação, algoritmo MAC (Message Authentication Code) ! Autenticação do servidor ! Permite confirmação da identidade do servidor e chaves de criptografia. ! Cliente mantém listas de ACs com suas chaves públicas ! Empregado antes que qualquer dado seja transmitido. Instituto de Informática - UFRGS Instituto de Informática - UFRGS ! Obtém certificado do servidor (isto é, sua chave pública) ! Verifica autenticidade do certificado (assinatura de um AC) ! Autenticação do cliente (opcional) ! Análoga ao servidor cliente envia certificado ao servidor A. Carissimi -9-déc.-09 A. Carissimi -9-déc.-09 ! Sessão SSL ! Transferência de dados (cifrado) Redes de Computadores 19 Redes de Computadores 20
  6. 6. Funcionamento SSL (handshake) Funcionamento do SSL (envio de dados) CLIENTE Versão SSL + algoritmos compactação e cifragem + Nonce RA SERVIDOR Mensagem aplicação Versão SSL + preferências + certificado + Nonce Rb 1. AC do certificado está na lista? Fragmentação (16 KB) NÃO: avisa usuário SIM: Opcional: solicitação do - valida certificado com a chave pública da certificado do cliente Compactação AC e obtém chave pública do servidor Instituto de Informática - UFRGS Instituto de Informática - UFRGS 2. Gera chave de sessão K Texto compactado + chave sessão Envia chave de sessão K (pré-mestre) - cifrada Hash MD5 ou SHA-1 Change cipher Change cipher f(K, RA, RB) Avisa que iniciará a cifrar com a change cipher f(K, RA, RB) Cifragem simétrica com chave de sessão A. Carissimi -9-déc.-09 A. Carissimi -9-déc.-09 Finish handshake Avisa que iniciará a cifrar com a change cipher TCP Finish handshake Redes de Computadores 21 Redes de Computadores 22 Leituras complementares ! Tanenbaum, A. Redes de Computadores (4a edição), Campus 2003. ! Capítulo 8 ! Carissimi, A.; Rochol, J; Granville, L.Z; Redes de Computadores. Série Livros Didáticos. Bookman 2009. ! Capítulo 8, seções 8.1 (8.1.1 a 8.1.3), 8.3 Instituto de Informática - UFRGS A. Carissimi -9-déc.-09 Redes de Computadores 23

×