TLS e Canais Seguros
Transport Layer Security (TLS) é o protocolo que protege a maioria das comunicações na internet, combinando troca de chaves autenticada e criptografia autenticada para criar um canal confidencial e com integridade protegida entre dois pontos de extremidade.
Definition
Um protocolo de canal seguro, como o TLS, estabelece, entre duas partes, uma sessão que garante confidencialidade, integridade e autenticação de todos os dados trocados, realizando uma troca de chaves autenticada seguida de criptografia autenticada do tráfego.
Scope
Este tópico abrange os protocolos de canal seguro, com o TLS como exemplo central: o handshake que autentica o servidor (e opcionalmente o cliente) e estabelece chaves de sessão, a camada de registro que fornece criptografia autenticada, sigilo de encaminhamento (forward secrecy) e proteção contra downgrade, e as lições de ataques históricos. Ele aborda como os blocos criptográficos são montados em um protocolo implantado. Exclui a infraestrutura de certificados (PKI) e as primitivas individuais, que são tratadas em tópicos relacionados.
Core questions
- Como o handshake TLS autentica o servidor e concorda com as chaves de sessão?
- Como a camada de registro protege cada mensagem com criptografia autenticada?
- Como o sigilo de encaminhamento é alcançado e por que ele é importante para o tráfego gravado?
- Como os ataques de downgrade e renegociação são prevenidos?
- O que os ataques históricos (BEAST, POODLE, Heartbleed) ensinaram sobre o design de protocolos e implementações?
Key concepts
- handshake TLS
- camada de registro
- criptografia autenticada (AEAD)
- troca de chaves efêmeras (ECDHE)
- sigilo de encaminhamento (forward secrecy)
- autenticação de servidor e cliente
- ataques de downgrade e renegociação
- retomada de sessão
- negociação de suíte de cifras
Key theories
- Handshake mais protocolo de registro
- O TLS separa um handshake de troca de chaves autenticada — que verifica a identidade via certificados e deriva chaves de sessão — de uma camada de registro que criptografa e autentica dados de aplicação com essas chaves, compondo de forma limpa autenticação, acordo de chaves e proteção em massa.
- Sigilo de encaminhamento e proteção contra downgrade
- O TLS 1.3 exige Diffie-Hellman efêmero (curva elíptica) para sigilo de encaminhamento e vincula a transcrição do handshake ao agendamento de chaves para que um atacante ativo não possa forçar um downgrade para parâmetros mais fracos sem ser detectado.
Mechanisms
No TLS 1.3, o cliente envia suas partes de troca de chaves e parâmetros suportados; o servidor responde com sua própria parte efêmera Diffie-Hellman, certificado e uma assinatura sobre a transcrição do handshake, e ambos derivam chaves de sessão por meio de uma função de derivação de chaves (HKDF). A camada de registro então protege todos os dados com uma cifra AEAD (como AES-GCM ou ChaCha20-Poly1305). A transcrição é autenticada para evitar adulteração ou downgrade, e o handshake é concluído em uma única rodada, com retomada opcional de zero rodadas.
Clinical relevance
O TLS protege a grande maioria do tráfego da internet: HTTPS para a web, transporte seguro de e-mail, APIs, VPNs e mensagens, todos funcionam sobre ele. Sua correção determina diretamente se senhas, pagamentos e dados pessoais estão protegidos contra atacantes de rede. A migração do SSL/TLS inicial falho para o TLS 1.3 — e a análise que a acompanhou — é um modelo para a evolução de protocolos sob pressão do mundo real.
Evidence & guidelines
O TLS 1.3 é padronizado no RFC 8446 e é recomendado; SSL 3.0, TLS 1.0 e TLS 1.1 estão obsoletos (RFC 8996). O NIST SP 800-52 fornece orientação de configuração. O TLS 1.3 foi desenvolvido com extensa análise formal, removendo fraquezas legadas (troca de chaves RSA estática, modo CBC, renegociação) que permitiram ataques anteriores como BEAST, POODLE e a falha de implementação Heartbleed.
History
A Netscape criou o SSL em 1994-1995; o SSL 3.0 foi redesenhado pelo IETF como TLS 1.0 (1999) e refinado até o TLS 1.2 (2008). Uma década de ataques — BEAST, CRIME, POODLE, o bug de implementação Heartbleed, Logjam e FREAK — expôs fraquezas em modos legados e no tratamento de downgrade. O TLS 1.3 (RFC 8446, 2018) foi um grande redesenho com sigilo de encaminhamento obrigatório, um handshake mais rápido e análise de segurança formal.
Key figures
- Eric Rescorla
- Hugo Krawczyk
- Kenny Paterson
- Taher ElGamal
Related topics
Seminal works
- rfc8446
- stallings2017
- katz2020
Frequently asked questions
- Qual é a diferença entre SSL e TLS?
- TLS é o sucessor do SSL. SSL (versões 2.0 e 3.0) está obsoleto e inseguro; 'SSL' persiste como um termo coloquial, mas todas as conexões web seguras atuais usam TLS, sendo o TLS 1.3 a versão moderna.
- O TLS me protege de um site malicioso?
- O TLS apenas garante que você tem um canal confidencial e autenticado para o servidor nomeado no certificado — ele confirma que você está falando com aquele domínio, não que o domínio é confiável. Um site de phishing pode servir um certificado válido para seu próprio domínio (semelhante), então o TLS não atesta a honestidade do site.