1 / 29

Redes de Computadores I

Redes de Computadores I. SSL ( Secure Socket Layer ) TLS ( Transport Layer Security ) Gustavo Lacerda Coutinho Renan Galvão Machado e Silva. Introdução. Provê segurança em comunicações na Internet Integridade Autenticidade Confidencialidade. Motivação. Para que segurança?

tamika
Télécharger la présentation

Redes de Computadores I

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Redes de Computadores I SSL (Secure Socket Layer) TLS (Transport Layer Security) Gustavo Lacerda Coutinho Renan Galvão Machado e Silva

  2. Introdução • Provê segurança em comunicações na Internet • Integridade • Autenticidade • Confidencialidade

  3. Motivação • Para que segurança? • Dados muito importantes trafegando na rede • Surgimento do E-Commerce • Internet Banking • Arquitetura TCP/IP não provê conexões seguras

  4. Soluções • SSL v3, solução proprietária da Netscape • TLS v1.1, padrão aberto desenvolvido pela IETF (RFC 4346) • Diferenças entre TLS e SSL: • TLS é padronizado pelas RFC 2246 (v1.0) e RFC 4346 (v1.1) • TLS usa o algoritmo keyed-Hashing for Message Authentication Code (HMAC) enquanto o SSL apenas Message Authentication Code (MAC). O algoritmo HMAC produz hashes mais seguros que o algoritmo MAC

  5. Diferenças entre TLS e SSL (cont.) • No TLS nem sempre é necessário recorrer à raiz de uma AC (Autoridade de Certificação) para usar uma certificação. Pode ser usada uma autoridade intermediária • Novas mensagens de alerta • O algoritmo Fortezza de criptografia não é suportado, pois não é aberto ao público. (Política da IETF) • Campos dos cabeçalhos

  6. Criptografia • Mensagens em forma cifrada ou em código • Criptografia simétrica • Criptografia assimétrica

  7. Criptografia Simétrica • Chave única • Chave distribuída por uma canal inseguro • Processamento baixo • Tamanho da chave: 128 bits • Ex: DES (Data Encryption Standard), 3DES (Triple DES), IDEA (International Data Encryption Algorithm), RC2 e RC4 e AES (Advanced Encryption Standard)

  8. Criptografia Assimétrica • Chave pública • Divulgada pelo receptor • Usada pelo transmissor para encriptação • Chave privada • Pertencente somente ao receptor • Usada pelo receptor para decriptação

  9. Criptografia Assimétrica • Não há compartilhamento de um segredo • Alto processamento • Tamanho da chave: 1024 bits • Ex: RSA, Diffie-Helman e Fortezza

  10. Arquitetura TLS

  11. Protocolo de Registro • Encapsula mensagens de protocolos superiores • Durante transmissão: • Fragmentação • Compressão (opcional) • Aplicação do MAC • Encriptação

  12. Protocolos de Handshaking • TLS possui três protocolos de negociação • Protocolo Handshake • Protocolo ChangeCipherSpec • Protocolo de Alerta

  13. Protocolo Handshake (1) • Responsável pela negociação dos parâmetros de segurança • ID da sessão • Método de Compressão • Cipher Spec - algoritmo de criptografia a ser utilizado • Chave Mestre (master key) • Is Resumable – flag que indica se a sessão é reiniciável

  14. Protocolo Handshake (2) • Negociando os parâmetros Cliente Servidor ClientHello ServerHello Certificate* ServerKeyExchange ServerHelloDone Certificate Message* ClientKeyExchange ChangeCipherSpec Finished ChangeCipherSpec Finished Fim da negociação

  15. Protocolo ChangeCipherSpec • Composto por uma única mensagem • Sinaliza mudanças na estratégia de criptografia

  16. Protocolo de Alerta • Informa problemas na comunicação • Níveis de alerta • Dois tipos de mensagens • Alerta de Encerramento • Alerta de Erro

  17. Análise de Segurança • Três modos de autenticação: • Servidor e cliente autenticados • Somente servidor autenticado • Anonimato completo • Sujeito a ataques, em que o atacante se “posiciona” entre o cliente e o servidor • Suscetível a ataques de negação de serviço • Atacante inicia um grande número de conexões • Alto consumo de CPU do servidor, graças ao custo computacional de se utilizar criptografia.

  18. Perguntas • Por que a comunicação não se dá por chave simétrica desde o seu início? • Por que não se utiliza chave assimétrica durante toda a comunicação? • Para que serve o protocolo de handshake (negociação) ? • Quais serviços de segurança que o TLS provê? • Qual a condição necessária para deixar o canal protegido para ataques em que o atacante se “posiciona” entre o cliente e o servidor?

  19. Pergunta (1) 1. Por que a comunicação não se dá por chave simétrica desde o seu início?

  20. Resposta (1) 1. Por que a comunicação não se dá por chave simétrica desde o seu início? R: Porque não existe uma maneira segura de passar a chave secreta pela rede.

  21. Pergunta (2) 2. Por que não se utiliza chave assimétrica durante toda a comunicação?

  22. Resposta (2) 2. Por que não se utiliza chave assimétrica durante toda a comunicação? R: Pois este tipo de criptografia é muito custoso em termos computacionais, devido à quantidade de operações que são realizadas.

  23. Pergunta (3) 3. Para que serve o protocolo de handshake (negociação) ?

  24. Resposta (3) 3. Para que serve o protocolo de handshake (negociação) ? R: Serve para estabelecer os parâmetros de segurança que serão usados na comunicação, tais como, suíte de criptografia, método de compressão e chaves secretas.

  25. Pergunta (4) 4. Quais serviços de segurança que o TLS provê?

  26. Resposta (4) 4. Quais serviços de segurança que o TLS provê? R: Confidencialidade, integridade e autenticidade.

  27. Pergunta (5) 5. Qual a condição necessária para deixar o canal protegido para ataques em que o atacante se “posiciona” entre o cliente e o servidor?

  28. Resposta (5) 5. Qual a condição necessária para deixar o canal protegido para ataques em que o atacante se “posiciona” entre o cliente e o servidor? R: Basta o servidor estar autenticado.

  29. Referências Bibliográficas • [1] NETSCAPE. NETSCAPE. SSL 3.0 SPECIFICATION. •       http://wp.netscape.com/eng/ssl3/ • [2] Kant, K., Iyer, R., Mohapatra, P. Architectural Impact of Secure Socket Layer on         •       Internet Servers. Em Proc. Int. Conf. Computer Design, 2000. pág 7-9 • [3] SHACHAM, D., E BONEH, D. Improving SSL Handshake Performance via Batching.       •      Em ed. D. Naccache, editor, Proceedings of RSA 2001, volume 2020 (Springer- •      Verlag, 2001), pág 1-2. • [4] SUN. Introduction to SSL. •       http://docs.sun.com/source/816-6156-10/contents.htm#1041986 • [5] TECHONLINE. SSL and TLS Essentials: Securing the Web.            •       http://www.techonline.com/community/tec h_topic/ internet/feature_article/14364 • [6] WIKIPEDIA. Transport Layer Security. •       http://en.wikipedia.org/wiki/Secure_Socket_Layer • [7] TANENBAUM. TANENBAUM, A., Computer Networks. Prentice Hall, 1996. pág 864-868 • [8] RFC 4346 - The Transport Layer Security (TLS) Protocol Version 1.1 • [9] C. ÍNTIA. B.Um Mecanismo Para Distribuição Segura de Vídeo MPEG. Dissertação apresentada à Escola Politécnica da Universidade de São Paulo para obtenção do título de Mestre em Engenharia.2000. pág. 23-55.

More Related